本文是在centos6.6上安裝0.8.8c版本cacti的詳細過程,以及我在安裝過程遇到的問題以及解決辦法。
工具/原料
centos 6.6系統
0.8.8c版本的cacti
方法/步驟
1、LAMP環境的配置
LAMP含義就是在Linux系統上安裝apache、mysql和php的集成環境,本次課程設計運行於centos 6.6系統上。環境的搭建過程如下:
第一步:安裝httpd、php和mysql
# yum install httpd php php-mysql php-snmp php-xml php-gd mysql mysql-server
第二步:開啟後臺服務
# service httpd start
# service mysqld start
第三步:更改mysql數據庫的root密碼
# mysqladmin -uroot password ********
# mysqladmin - -user=root - -password reload
2、安裝和配置net-snmp
因為cacti是通過 snmpget來獲取數據,所以需要配置snmp工具。
第一步:安裝net-snmp
# yum install net-snmp net-snmp-libs net-snmp-utils
第二步:配置net-snmp
它的配置文件位於/etc/snmp/snmpd.conf中,其中修改
view systemview include .1.3.6.1.2.1.1 為
view systemview include .1.3.6.1.2.1(為了監控多項信息,如下圖)
3、安裝rrdtool工具
因為cacti需要藉助rrdtool工具繪製圖形,而且你完全可以不需要了解RRDtool複雜的參數。它提供了非常強大的數據和用戶管理功能,可以指定每一個用戶能查看樹狀結構、host以及任何一張圖。
第一步:安裝rrdtool的軟件包
# rpm -ivh
第二步: 安裝rrdtool
# yum install rrdtool
4、正式安裝cacti
前期的工作完成之後,就可以安裝cacti了,Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網絡流量監測圖形分析工具。cacti是用php語言實現的一個軟件,它的主要功能是用snmp服務獲取數據,然後用rrdtool儲存和更新數據,當用戶需要查看數據的時候用rrdtool生成圖表呈現給用戶。因此,snmp和rrdtool是cacti的關鍵。Snmp關係著數據的收集,rrdtool關係著數據存儲和圖表的生成。
Mysql配合PHP程序存儲一些變量數據並對變量數據進行調用,如:主機名、主機ip、snmp團體名、端口號、模板信息等變量。
第一步:從官網下載cacti-0.8.8c.tar.gz軟件包
解壓放在/var/www/html/cacti中
第二步:創建cacti數據庫、用戶以及導入數據
# mysqladmin - -user=root -p create cacti
# mysql -uroot -p cacti < /var/www/html/cacti/cacti.sql
# mysql -uroot -p mysql
mysql> GRANT ALL ON cacti.* TO [email protected] IDENTIFIED BY ‘********’;
mysql> flush privileges;
第三步:配置cacti ( /var/www/html/cacti/include/config.php )
$database_type = “mysql”;
$database_default = “cacti”;
$database_hostname = “localhost”;
$database_username = “cactiuser”;
$database_password = “********”
第四步:設置目錄權限(其中rra文件下的數據是用於展示在網頁上的圖表上的,log文件下的cacti.log則紀錄了cacti的運行日誌)
# useradd cactiuser
# cd /var/www/html/cacti
# chown -R cactiuser rra/ log/
第四步:配置計劃任務(因為cacti利用poller向被管設備輪詢,所以需要每隔一段時間就得啟動)
# echo "*/5 * * * * cactiuser php /var/www/html/cacti/poller.php > /dev/null 2>&1">>/etc/crontab
# service crond restart
# service httpd restart
第五步:設置開機自啟動以及關閉防火牆
# vim /etc/rc.d/rc.local 添加如下:
/usr/sbin/service httpd start
/usr/sbin/service snmpd start
/usr/sbin/service mysqld start
/usr/sbin/service crond start
/usr/sbin/service iptables stop
/usr/sbin/setenforce 0
第六步:開始安裝cacti
在瀏覽器輸入自己的域名/cacti,默認用戶名和密碼都是admin
5、安裝過程中遇到的問題及解決辦法
️剛開始經常遇到一些低級的錯誤,比如重啟電腦都忘記開啟相關的後臺服務
️在導入cacti.sql時報告許多sql語法錯誤,我查看了一下cacti.sql的腳本,在創建數據表時,確實有語法不對。我下載了最新版的cacti版本,再次導入就成功了
️輸入域名後,顯示無法打開頁面等。有幾個原因:可能httpd相關服務沒開啟,防火牆沒有關閉等
解決辦法:service httpd start 或者 service iptables stop
️運行時cacti.log顯示警告多少秒過去了但還沒有開始輪詢,原因可能是系統時間不對、沒有開啟每5分鐘執行一次等。在這個過程中有一個小技巧,因為php /var/www/html/cacti/poller.php執行有時間間隔,為了查看日誌來判斷有沒有執行成功,還得等一段時間才能執行,紀錄在日誌裡,這裡可以採取:
php /var/www/html/cacti/poller.php —force > error.log 2>&1
即可立馬在error.log中查看執行結果
注意事項
注意一些後臺服務的開啟、還有cacti版本以及centos的版本,不同的版本它們的參數可能會不同。