Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網絡流量監測圖形分析工具。它經過snmp來取數據,使用RRDtool繪畫圖形,並且你徹底能夠不須要了解RRDtool複雜的參數。它提供了很是強大的數據和用戶管理功能,能夠指定每個用戶能查看樹狀結構、host以及任何一張圖,還能夠與LDAP結合進行用戶驗證,同時也能自己增加模板,功能強大,界面友好。php
Cactihtml
是基於PHP語言開發的,在運行時須要PHP+MySQL的支持,首先咱們來安裝一個LAMP環境mysql
操做系統:linux
CentOS web
LAMP RPMsql
包搭建方式:數據庫
Yum install zlib libpng libjpeg freetype fontconfig gd php-mysql 服務器
1、安裝Apache 網絡
#yum install httpd* tcp
#chkconfig httpd on
2、安裝MySQL
#yum install mysql*
#chkconfig mysqld on
3、安裝PHP
#yum install php*
4、安裝rrdtool
Rrdtool
須要一些庫文件的支持,這些庫文件的安裝很是耽誤時間,在此咱們使用yum方式安裝
#yum
install cairo-devel libxml2-devel pango-devel pango libpng-devel freetype
freetype-devel libart_lgpl-devel intltool
下載網站:
http://oss.oetiker.ch/rrdtool/pub
#tar zxvf rrdtool-1.3.8.tar.gz
#cd rrdtool-1.3.8
# ./configure --prefix=/usr/local/rrdtool --disable-tcl
#make && make install
#ln -s /usr/local/rrdtool/bin/* /usr/local/bin/
5、安裝net-snmp
下載網站:
http://sourceforge.net/projects/net-snmp/files/net-snmp/5.3.4
選擇net-snmp-5.3.4.tar.gz
# tar zxvf net-snmp-5.3.0.1.tar.gz
#cd net-snmp-5.3.0.1
#./configure--prefix=/usr/local/net-snmp --enable-developer
Make && make install
#
cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf
#vi /usr/local/net-snmp/share/snmpd.conf
修改能夠訪問SNMP 的網段和community
# ln -s /usr/local/net-snmp/bin/* /usr/local/bin/
#/usr/local/net-snmp/sbin/snmpd–c/usr/local/net-snmp/share/snmp/snmpd.conf //
啓動SNMP
#echo"/usr/local/net-snmp/sbin/snmpd -c
/usr/local/net-snmp/share/snmp/snmpd.conf">>/etc/rc.local
//加入開機啓動
6、安裝cacti
下載網站:
http://www.cacti.net/download_cacti.php
選擇cacti for linux/unix in tar.gz format
#tar zxvf cacti-0.8.7h.tar.gz
#mkdir /var/www/html/cacti
#mv cacti-0.8.7h/* /var/www/html/cacti
#useradd cacti
#chown -R cacti:cacti /var/www/html/cacti
登錄MySQL,新建數據,並受權
#mysql –uroot –p
>use mysql;
>update user set password=PASSWORD("123456") where
user="root";
>flush privileges;
>quit
#mysql –uroot –p123456
Mysql>create database cacti;
Mysql>grant all on cacti.* to cacti@'localhost' identified by
'cacti';
Mysql>flush privileges;
導入cacti數據庫
#cd /var/www/html/cacti
# mysql -uroot -p123456 cacti < cacti.sql
修改cacti安裝配置文件
#vi /var/www/html/cacti/include/config.php
調整httpd配置
Vi /etc/httpd/conf/httpd.conf
Service httpd restart
cacti默認會在系統中找rrdtool、snmp的一些可程序文件路徑,若是以上安裝都正確的話會出現以下界面。注意:rrdtool、和net-snmp的版本要選擇正確
生成圖形文件
#/usr/local/bin/php /var/www/html/cacti/poller.php
加入cron服務,讓圖片上的流量定時變更
#crontab –e
*/5 * * * * env LANG=C /usr/local/bin/php /var/www/html/cacti/poller.php
注:如系統沒有安裝cron服務,請使用yum install vixie-cron安裝
七、LINUX被 控 主 機 設 置
Vi /etc /snmpd/snmpd/conf
第41行 192.168.0.251對應cacti服務器地址(默認是default),表示容許其查詢本機數據;
第62行 all表示開放全部的snmp查詢權限 (默認是 systemview)
第85行,去掉開頭的註釋符號,以便支持各類查詢訪問
Service snmpd start
客戶端須要開放的防火牆端口
/sbin/iptables -I INPUT -p udp --dport 161 -j ACCEPT
/sbin/iptables -I OUTPUT -p udp --dport 161 -j ACCEPT
/sbin/iptables -I OUTPUT -p udp --dport 199 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 199 -j ACCEPT
8、添加Monitor、thold 插件
經過訪問cacti 用戶站點 httpd://cactiusers.org,能夠下載PA補丁,Monitor 和 thold插件包文件,以及所需的依賴包。
1 導入補丁表,安裝補丁文件
tar zxf cacti-piugin-0.8.7g-PA-v2.8.tar.gz
Mysql -uroot -p123456 cacti < cacti-plugin-arch/pa.sql
Cd /var/www/html/cacti
Patch -p1 -N < ~/cacti-plugin-arch/cacti-plugin-0.8.7g-PA-v.2.8.diff
2 安裝Monitor、thold
Cd /var/www/html/cacti/plugins
Tar zxf ~/monitor-0.8.2.tar.gz
Tar zxf ~/settings-0.5.tar.gz
Tar zxf ~/thold-0.4.3.tar.gz
Mysql -uroot -p123456 cacti < monitor/monitpr.sql
Mysql -uroot -p123456 cacti < thold/thold.sql
3 調整cacti 配置以識別插件
在cacti系統的web控制檯中,單擊導航欄中「utilities」下的」user management」鏈接,修改管理員用戶admin的屬性,選中「plugin management」項,而後單擊「save」保存,以便經過web控制檯對插件進行管理。
刷新cacti控制檯頁面,左側導航欄中「configuration」下將多出來一個「plugin management」連接。單擊此連接進入插件管理頁面,經過「actions」按鈕可依次加載monitor、settings、thold插件,並啓用thold插件。
若發現頁面上方並未出現thold或者monitor選項卡,請再次修改管理員用戶admin的屬性,確認選中「view thresholds」、「view monitoring」而且保存便可。