1. 程式人生 > >CentOS7下安裝搭建Cacti

CentOS7下安裝搭建Cacti

時區 oca username ase serve topic flush 數據庫 mysql

1.搭建lamp環境

配置apache

[root@cacti-server ~]# yum -y install httpd

[root@cacti-server ~]# systemctl start httpd

[root@cacti-server ~]# systemctl enable httpd

[root@cacti-server ~]# firewall-cmd --permanent --add-service=http

success

[root@cacti-server ~]# firewall-cmd --reload

success

配置mariadb

[root@cacti-server ~]# yum -y install mariadb-server mysql-devel

[root@cacti-server ~]# systemctl start mariadb

[root@cacti-server ~]# mysql_secure_installation

Set root password? [Y/n]

Remove anonymous users? [Y/n] y

Disallow root login remotely? [Y/n] y

Remove test database and access to it? [Y/n] y

Reload privilege tables now? [Y/n] y

[root@cacti-server ~]# mysql -u root -p

MariaDB [(none)]> grant all privileges on *.* to test@localhost identified by ‘RedHat‘; 創建用於測試php和mariadb連通性的用戶

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;

[root@cacti-server ~]# systemctl restart mariadb

[root@cacti-server ~]# systemctl enable mariadb

[root@cacti-server ~]# firewall-cmd --permanent --add-port=3306/tcp

success

[root@cacti-server ~]# firewall-cmd --reload

success

配置php

[root@cacti-server ~]# yum -y install php php-mysql php-gd php-pear

[root@cacti-server ~]# vim /etc/php.ini

date.timezone =PRC 修改時區

[root@cacti-server ~]# vim /var/www/html/index.php 編輯測試頁面

<?php

$conn=mysql_connect(‘localhost‘,‘test‘,‘redhat‘);

if ($conn)

echo "database connect ok";

else

echo "database connect failure";

?>

<?php

phpinfo()

?>

[root@cacti-server ~]# systemctl restart httpd

測試

技術分享

2.安裝配置cacti

下載軟件

[root@cacti-server ~]# cd /usr/local/src/

[root@cacti-server src]# wget http://www.cacti.net/downloads/cacti-0.8.8f.tar.gz

[root@cacti-server src]# tar zxvf cacti-0.8.8f.tar.gz

[root@cacti-server src]# mv cacti-0.8.8f /var/www/html/cacti

創建cacti數據庫和cacti用戶,賦予權限

[root@cacti-server ~]# mysql -u root -p

MariaDB [(none)]> create database cacti default character set utf8;

MariaDB [(none)]> grant all privileges on cacti.* to cacti@localhost identified by ‘redhat‘;

MariaDB [(none)]> flush privileges;

把cacti.sql導入數據庫

[root@cacti-server cacti]# mysql -ucacti -predhat cacti < /var/www/html/cacti/cacti.sql

編輯config.php和global.php

[root@cacti-server cacti]# vim /var/www/html/cacti/include/config.php|global.php

$database_type = "mysql";

$database_default = "cacti";

$database_hostname = "localhost";

$database_username = "cacti";

$database_password = "redhat";

$database_port = "3306";

$database_ssl = false;

安裝rrdtool以生成圖像

[root@cacti-server src]# yum -y install rrdtool rrdtool-devel rrdtool-php rrdtool-perl

[root@cacti-server src]# yum -y install gd gd-devel php-gd ---rrdtool繪制圖像需要的圖形庫

安裝snmp服務

[root@cacti-server cacti]# yum -y install net-snmp net-snmp-utils php-snmp net-snmp-libs

編輯配置文件

[root@cacti-server ~]# vim /etc/snmp/snmpd.conf

41 com2sec notConfigUser 127.0.0.1 public

62 access notConfigGroup "" any noauth exact all none none

85 view all included .1 80

[root@cacti-server ~]# systemctl restart snmpd.service

[root@cacti-server ~]# systemctl enable snmpd.service

授權目錄權限

[root@cacti-server ~]# useradd -r -M cacti

[root@cacti-server ~]# chown -R cacti /var/www/html/cacti/rra/

[root@cacti-server ~]# chown -R cacti /var/www/html/cacti/log/

配置一個抓圖的計劃任務

[root@cacti-server ~]# crontab -e

*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php >> /tmp/cacti_rrdtool.log

瀏覽器訪問cacti管理頁面進行安裝

報錯

MySQL TimeZone Support ERROR: Your Cacti database login account does not have access to the MySQL TimeZone database. Please provide the Cacti database account "select" access to the "time_zone_name" table in the "mysql" database, and populate MySQL‘s TimeZone information before proceeding

**bash環境下執行 mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql

mysql環境下

mysql> use mysql;

mysql> GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost;

mysql> flush privileges;**

CentOS7下安裝搭建Cacti