由於cacti 1.1.x系列發佈後,變化比較大,集成了很多插件,自帶自動發現功能,所以記錄下來,比較適合複製粘貼。
環境:CentOS 7.4
安裝前提
a、安裝系統補丁
yum update -y
b、開啓ntp,保證時間正確
yum install chrony -y systemctl enable chronyd systemctl start chronyd
c、禁用selinux,重啓生效
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config reboot
1、安裝mariadb 10.1
cacti 1.1.0 需要mysql >= 5.6 ,所以這裏選擇mariadb 10.1
yum install centos-release-openstack-ocata -y yum install mariadb-server -y
2、mariadb參數調整(最低要求)
max_heap_table_size = 128M max_allowed_packet = 32M tmp_table_size = 64M join_buffer_size = 64M innodb_buffer_pool_size = 512M innodb_doublewrite = off innodb_flush_log_at_timeout = 3
重啓mariadb讓配置生效
systemctl enable mariadb systemctl start mariadb
導入時區信息
mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root mysql
3、安裝lamp
yum install httpd php php-mysqlnd php-mbstring php-ldap php-process php-gd php-snmp php-pecl-zendopcache php-xml wget net-snmp-utils rrdtool -y echo "ServerTokens Prod" >> /etc/httpd/conf/httpd.conf echo "ServerSignature Off" >> /etc/httpd/conf/httpd.conf sed -i 's/;date.timezone.*/date.timezone = PRC/g' /etc/php.ini mkdir -p /var/lib/php/session chown -R apache:apache /var/lib/php/session systemctl enable httpd systemctl start httpd
4、下載cacti
cd /var/wwww/html wget http://www.cacti.net/downloads/cacti-1.1.0.tar.gz tar zxvf cacti-1.1.0.tar.gz mv cacti-1.1.0 cacti cd cacti chown -R apache:apache resource scripts log cache
5、給cacti建庫
mysql -u root -e "drop database if exists cacti" mysql -u root -e "delete from mysql.user where Host = 'localhost' and User = 'cactiuser'" mysql -u root -e "create database cacti default charset utf8mb4" mysql -u root -e "grant all on cacti.* to 'cactiuser'@'localhost' identified by 'cactiuser'" mysql -u root -e "grant select on mysql.time_zone_name to 'cactiuser'@'localhost'" mysql -u root -e "flush privileges" mysql -u root cacti < /var/www/html/cacti/cacti.sql
6、安裝嚮導
訪問http://ip/cacti 進入安裝嚮導
7、修改密碼
默認用戶密碼admin/admin,首次登陸要求改密碼,密碼長度和複雜度都比較嚴格,點贊。
8、定時任務
設置定時任務,在/etc/crontab 文件中添加一行
*/5 * * * * root /usr/bin/php -q /var/www/html/cacti/poller.php >/dev/null
9、配置自動發現(可選)
功能有點類似zabbix
a、定義snmp選項,比如snmp v2,community 爲abc b、定義掃描網段,比如192.168.0.0/24,定時掃描,發現snmp端口存活的機器自動添加到cacti, c、定義規則,將掃描到的機器,按照操作系統分類,放入不同的tree,劃不同的圖
10、安裝spine(可選)
spine是一個c寫的程序,性能比默認的poller.php要高很多。
yum install gcc libtool make autoconf mysql-devel net-snmp-devel help2man wget -y wget tar zxvf cacti-spine-1.1.0.tar.gz cd cacti-spine-1.1.0 ./bootstrap ./configure --with-mysql make cp spine /usr/local/bin/ cp spine.conf.dist /etc/spine.conf
/etc/spine.conf文件裏記得根據需要修改。
重裝
如果需要重裝,簡單的刪除數據庫,重新初始化即可(第5-7步)
漢化
cacti 1.1.x 支持中文,但是漢化不徹底,手癢的同學可以按照下面的辦法漢化:
1、安裝
yum install gettext -y
2、反編譯mo文件爲po文件
cd /var/www/html/cacti/locales/LC_MESSAGES /usr/bin/msgunfmt chinese_china_simplified.mo -o chinese_china_simplified.po
3、用文本編輯器修改文件
4、編譯po文件爲mo文件
/usr/bin/msgfmt chinese_china_simplified.po -o chinese_china_simplified.mo