CACTI
一、簡介
Cacti是一款監控軟件,它是通過SNMP協議傳遞監控網絡中的主機的各項性能參數,然後通過RRDTOOL軟件繪圖,並且保存爲rrd文件,最後Cacti把它顯示出來。(建議使用spine採集器)
二、安裝
1、準備所需要的軟件包
Apache http://www.apache.org/
Mysql http://www.mysql.com/
Php http://www.php.net
Rrdtool http://oss.oetiker.ch/rrdtool/
Net-snmp http://www.net-snmp.org/
Cacti http://www.cacti.net/
其中apache、mysql、php通過yum安裝
2、安裝所需要的軟件
1.安裝LAMP
[root@cacti ~]# yum -y install httpd mysql-server php php-mysql mysql-devel php-snmp
[root@cacti ~]# chkconfig httpd on
[root@cacti ~]# chkconfig mysqld on
[root@cacti ~]# /etc/init.d/httpd start
[root@cacti ~]# /etc/init.d/mysqld start
安裝完成後,可通過以下程序測試
[root@cacti html]# cat inex.php
<?php
phpinfo();
?>
3.安裝rrdtool
Rrdtool安裝需要cairo、libxml2、pango庫支持,可通過yum安裝
[root@cacti ~]# yum -y install cairo-devel libxml2-devel pango-devel
[root@cacti ~]# tar zxvf rrdtool-1.4.7.tar.tar
[root@cacti ~]# cd rrdtool-1.4.7
[root@cacti rrdtool-1.4.7]# ./configure --prefix=/usr/local/rrdtool
[root@cacti rrdtool-1.4.7]# make && make install
[root@cacti rrdtool-1.4.7]# ln -s /usr/local/rrdtool/bin/* /usr/local/bin/
4.安裝net-snmp
[root@cacti ~]# tar zxvf net-snmp-5.6.1.1.tar.gz
[root@cacti ~]# cd net-snmp-5.6.1.1
[root@cacti net-snmp-5.6.1.1]# ./configure --prefix=/usr/local/net-snmp
[root@cacti net-snmp-5.6.1.1]# make && make install
[root@cacti net-snmp-5.6.1.1]# cp EXAMPLE.conf /etc/snmpd.conf
[root@cacti ~]# ln -s /usr/local/net-snmp/bin/* /usr/local/bin/
[root@cacti ~]# vim /etc/snmpd.conf
rocommunity public localhost #去掉註釋
[root@cacti ~]# /usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf
加入開機啓動
[root@cacti ~]# echo "/usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf " >>/etc/rc.local
5.安裝cacti
[root@cacti ~]# tar zxvf cacti-0.8.8a.tar.gz -C /var/www/html/
[root@cacti ~]# cd /var/www/html/
[root@cacti cacti]# ln -sv cacti-0.8.8a cacti
[root@cacti cacti]# useradd cacti
[root@cacti cacti]# chown -R cacti:cacti rra/ log/
[root@cacti ~]# mysql -uroot
#連接到mysql創建數據庫
mysql> create database cacti;
#創建cacti數據庫
#重載mysql授權表
mysql> grant all on cacti.* to cacti@'localhost' identified by '123';
#把數據庫cacti授權於用戶cacti
[root@cacti ~]# cd /var/www/html/
[root@cacti html]# mysql -ucacti -p123 cacti<cacti.sql #將cacti數據庫導入
修改網站配置文件,使用正確連接數據庫參數
[root@cacti html]# vim include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "123";
$database_port = "3306";
5、安裝spine
tar zxvf cacti-spine-0.8.8b.tar.gz cd
./configure --prefix=/usr/local/cacti-spine --with-snmp=/usr/local/net-snmp
make && make install
配置spine
vi /usr/local/cacti-spine/etc/spine.conf
根據實際情況修改以下東西:
DB_Host localhost
DB_Database cacti
DB_User cacti
DB_Pass cacti
DB_Port 3306
會看到安裝嚮導,點下兩個NEXT之後,出現以下:使用瀏覽器打開http://192.168.209.130/cacti/
默認用戶名和密碼admin,第一次登錄會要求更改密碼
三、使用
【1】使用默認模板和自定義腳本
1、需要添加主機,通過主機選項標籤
2、需要添加圖形樹,通過圖形管理把你需要的圖像附加在圖形樹下面
3、在主機模板裏面有默認的圖像,自己可以直接添加在你的圖形樹種
如果是自定義:
1)選擇採集方法最好採用數據輸入方法(自定義腳本),因爲數據查詢是通過XML來進行數據收集的
2)新建數據模板
3)添加數據源
4)添加圖形模板
5)圖形管理,添加圖形模板,最後把添加的模板關聯到某個圖形樹上
【2】使用cacti社區的腳本和模板
訪問連接:http://forums.cacti.net/viewforum.php?f=12&sid=4e3d4d685714e29030896e240e17f424
1、導入圖形模板和腳本
2、找到數據源和圖形模板
3、關聯到某臺主機,添加到圖形樹下
【3】插件的使用
1、可以添加如下插件
四、故障排查
【1】
1. 首先檢查一下rra/下面,有沒有數據,如果沒有檢查rra/ log/的擁有者是不是cacti
2. snmpwalk -v 2c -c public ServerIP 用來測試被控對象(serverIP)是否開啓了SNMP服
務
3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有CPU負
載的數據返回
4. /usr/local/bin/php /var/www/html/cacti/poller.php 用來測試PHP是否可以採集到數據
如果上面的都正確,但這步出錯,很有可能是PHP配置的問題,或開啓了SuLinux。
5. 如果按第2步snmpwalk能採集到數據,但第3步無法採集,可能是PHP設置的問題,修改
PHP.ini,很有可能是PHP權限問題。如果第4步正常而無法顯示圖,則可能是rra/ log/ 的
Owner不對
6. #crontab -e
*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
7、強制執行#/usr/bin/php /var/www/html/cacti/poller.php --force
8、通過查看日誌,cacti的系統工具裏面也可以查看日誌
9、通過數據源調試模式和圖像調試模式進行排查
10、系統工具裏面的重建數據採集
11、系統時間不準確,重新設置時間
12、數據庫表有損壞,修復#mysqlcheck -ao cacti –auto-repair -uroot -p
13、重啓snmpd服務#service snmpd restart,