Cacti是一套基于PHP,MySQL,SNMP及RRDTool開發(fā)的網(wǎng)絡(luò)流量監(jiān)測圖形分析工具。
創(chuàng)新互聯(lián)是一家專業(yè)提供環(huán)縣企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為環(huán)縣眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。
Cacti是通過 snmpget來獲取數(shù)據(jù),使用 RRDtool繪畫圖形,它提供了非常強(qiáng)大的數(shù)據(jù)和用戶管理功能,可以指定每一個用戶能查看樹狀結(jié)構(gòu)、host以及任何一張圖,還可以與LDAP結(jié)合進(jìn)行用戶驗(yàn)證,同時也能自己增加模板,功能非常強(qiáng)大完善。界面友好,Cacti 也可外掛 Scripts 及加上 Templates 來作出各式各樣的監(jiān)控圖。
一. 安裝apache
1.準(zhǔn)備工作
(1)yum方式安裝gcc、gcc-c++
# yum install gcc gcc-c++ -y
(2)安裝pcre
pcre下載地址:
http://jaist.dl.sourceforge.net/project/pcre/pcre/8.35/
#tar zxf pcre-8.35.tar.gz
#cd pcre-8.35
#./configure prefix=/usr/local/pcre
#make && make install
(3)安裝apr和apr-util
apr和apr-unit下載地址:
http://archive.apache.org/dist/apr/
1)解壓文件
#tar zxf apr-1.5.0.tar.gz
#tar zxf apr-util-1.5.3.tar.gz
#tar zxf httpd-2.4.9.tar.gz
2)將apr和apr-util拷到http的srclib目錄下,并去掉版本號
#cp -r apr-1.5.0 httpd-2.4.9/srclib/apr
#cp -r apr-util-1.5.3 httpd-2.4.9/srclib/apr-util
3)編譯安裝
安裝apr
#cd httpd-2.4.9/srclib/apr
#./configure --prefix=/usr/local/apr
#make && make install
安裝apr-util
#cd /root/httpd-2.4.9/srclib/apr-util/
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
#make && make install
2.正式安裝apache
Apache下載地址:
http://archive.apache.org/dist/httpd/
#cd httpd-2.4.9
#./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/
#make && make install
啟動apache服務(wù)
#service httpd start
安裝成功,啟動httpd服務(wù)并加入開機(jī)啟動
#chkconfig httpd on
二. 安裝mysql
1.準(zhǔn)備工作
(1)yum方式安裝ncurses-devel
#yum install ncurses-devel –y
(2)安裝cmake
cmake下載地址:
http://wwwNaNake.org/files/v3.0/
#tar zxf cmake-3.0.0.tar.gz
#cd cmake-3.0.0
#./configure
#make && make install
2.創(chuàng)建mysql的安裝目錄及數(shù)據(jù)庫存放目錄
#mkdir /usr/local/mysql/date -pv
/usr/local/mysql/ //mysql安裝目錄
/usr/local/mysql/data //存在數(shù)據(jù)庫
3.創(chuàng)建mysql用戶和用戶組
#groupadd mysql
#useradd -r -g mysql mysql
4.源碼方式安裝mysql
Mysql下載地址:
http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz
#tar zxf mysql-5.6.17.tar.gz
#cd mysql-5.6.17
#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DWITH_DEBUG=0
#make && make install
參數(shù)說明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安裝目錄
-DMYSQL_DATADIR=/usr/local/mysql/data //數(shù)據(jù)庫存放目錄
-DMYSQL_TCP_PORT=3306 //端口號
-DENABLED_LOCAL_INFILE=1 //允許從本地導(dǎo)入數(shù)據(jù)
5.配置mysql
(1)設(shè)置目錄權(quán)限
#chown mysql:mysql /usr/local/mysql/ -R
(2)初始化mysql數(shù)據(jù)庫
#cd /usr/local/mysql/
#./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/ --basedir=/usr/local/mysql/
(3)復(fù)制mysql服務(wù)啟動腳本
#cp ./support-files/mysql.server /etc/init.d/mysqld
(4)配置環(huán)境變量
#vim /etc/profile
添加:
PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
重新加載重啟生效
#source /etc/profile
(5)修改mysql主配置文件/etc/my.cnf
全部內(nèi)容如下:
6.啟動mysql
(1)開啟守護(hù)進(jìn)程,生成pid
#./mysqld_safe &
(2)啟動mysql
#service mysqld restart
7.設(shè)置mysql管理員密碼
#./mysqladmin password "123456" -u root
三. 安裝PHP
1.準(zhǔn)備工作
1)安裝zlib
zlib下載地址:
http://www.zlib.net/
#tar zxf zlib-1.2.8.tar.gz
#cd zlib-1.2.8
#./configure --prefix=/usr/local/zlib
#make && make install
2)安裝libpng
libpng下載地址:
http://sourceforge.net/projects/libpng/postdownload?source=dlp
注意:這里建議下載libpng-1.5.18版本,因?yàn)閘ibpng與zlib存在版本兼容的問題,如果版本不合適,會make的時報(bào)錯
已知 zlib-1.2.8和libpng-1.6.10之間就存在這種問題, zlib-1.2.8和libpng-1.5.18可以正常安裝,有篇文章對此問題進(jìn)行了一些描述
#tar zxf libpng-1.5.18.tar.gz
#cd libpng-1.5.18
#./configure --prefix=/usr/local/libpng
#make && make install
編譯的時候后面加上--with-zlib-prefix=/usr/local/zlib/,還是提示相同的錯誤
明明已經(jīng)安裝了zlib,為什么提示zlib沒有安裝,原來是沒有安裝zlib-devel,下面我們使用yum方式安裝zlib-devel
#yum install zlib-devel
下面編譯就成功了
#./configure --prefix=/usr/local/libpng --with-zlib-prefix=/usr/local/zlib/
再安裝
3)安裝freetype
freetype下載地址:
http://sourceforge.net/projects/freetype/files/freetype2/2.5.3/
#cd freetype-2.5.3
#./configure --prefix=/usr/local/freetype
#make && make install
4)安裝jpeg
jpeg下載地址:
http://www.ijg.org/files/
#tar zxf jpegsrc.v9.tar.gz
#cd jpeg-9/
#./configure --prefix=/usr/local/libjpeg
#make && make install
5)yum方式安裝fontconfig、gd、libxml2*、libjpeg-devel
# yum install fontconfig gd –y
# yum install libxml2* libjpeg-devel –y
2.正式安裝PHP
PHP下載地址:wgethttp://cn2.php.net/distributions/php-5.5.14.tar.gz
#tar zxf php-5.5.14.tar.gz
#cd php-5.5.14
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-gd --with-mysql=/usr/local/mysql/ --with-zlib-dir=/usr/local/zlib/ --with-png-dir=/usr/local/libpng/ --enable-gd-native-ttf --with-ttf --enable-gd-jis-conv --enable-mbstring --enable-sockets --enable-xml --disable-fileinfo
#make && make install
最后建立一個軟連接
ln -s /usr/local/php/bin/* /usr/local/bin/
四. 安裝rrdtool
1.準(zhǔn)備工作
(1)yum方式安裝cairo-devel、pango、pango-devel、libpng-devel、libart_lgpl-devel、intltool、freetype-devel
#yum install cairo-devel pango pango-devel libpng-devel libart_lgpl-devel intltool freetype-devel –y
(2)yum方式安裝perl-ExtUtils-CBuilder、perlExtUtils-MakeMaker
# yum install perl-ExtUtils-CBuilder perlExtUtils-MakeMaker –y
2.正式安裝rrdtool
rrdtool下載地址:
http://download.chinaunix.net/down.php?id=35595&ResourceID=9078&site=1
#tar zxf rrdtool-1.4.5.tar.gz
#cd rrdtool-1.4.5
#./configure --prefix=/usr/local/rrdtool --disable-tcl
#make && make install
2.增加鏈接
ln -s /usr/local/rrdtool/bin/* /usr/local/bin/
五. 安裝net-snmp
(1)yum方式安裝net-snmp
# yum install net-snmp* -y
(2)配置net-snmp(主配置文件/etc/snmp/snmpd.conf)
1)找到:
修改成:
其中的192.81.128.66就是你允許哪臺主機(jī)可以訪問到你(即cacti服務(wù)器)
2)找到:
將注釋去掉,即:
3)找到:
將注釋去掉
(3)啟動net-snmp
service snmpd start
監(jiān)控的端口是161,查看是否已打開
netstat -an |grep snmp
(4)驗(yàn)證是否有數(shù)據(jù)
1)localhost
# snmpwalk -v 2c -c public localhost
2)本機(jī)ip測試
# snmpwalk -v 2c -c public 192.81.128.66
192.81.128.66就是被監(jiān)控機(jī)的IP(這里測試的是本機(jī),所以就是本機(jī)IP)
六. 安裝cacti
cacti下載地址:
http://www.cacti.net/downloads/
1. 解壓cacti后,把cacti的目錄移到httpd里存放網(wǎng)頁的htdocs目錄,并去掉版本號
#tar zxf cacti-0.8.7h.tar.gz
#mv cacti-0.8.7h /usr/local/apache/htdocs/cacti
2.增加cacti用戶,并修改目錄權(quán)限
cd /usr/local/apache/htdocs
useradd catic
chown -R cacti.cacti ./
3.root身份登陸mysql,新建數(shù)據(jù)并授權(quán)
mysql -uroot -p
> grant all on cacti.* to cacti@'localhost' identified by '123456';
> flush privileges;
4.導(dǎo)入數(shù)據(jù)庫
cd /usr/local/apache/htdocs/cacti
# /sur/local/mysql/bin/mysql -u cacti -p123456 cacti < cacti.sql
vim include /config.php
這里有cacti連接使用的數(shù)據(jù)庫類型,用戶名,密碼信息,按照自己的需要進(jìn)行配置
并增加:$url_path="/cacti/";
5.配置apache(配置文件/usr/local/apache/conf/httpd.conf)
找到:
修改成:
檢測一下httpd的配置文件語法重啟httpd服務(wù)
/usr/local/apache/bin/apachectl configtest
yum install php-mysql -y
6.關(guān)閉防火墻和selinux,訪問cacti安裝界面
setenforce 0
service iptables stop
7.重啟apache服務(wù)
service httpd restart
七. 登陸cacti,進(jìn)行cacti安裝
1.在瀏覽器輸入http://192.81.128.66/cacti,進(jìn)入web界面
點(diǎn)擊Next
2.出現(xiàn)如1界面
依然點(diǎn)擊Next
3.出現(xiàn)如下界面,沒有錯誤,perfect
點(diǎn)擊Finish
重新訪問一下看看
這是就出現(xiàn)了cacti的登陸界面
4.第一次登陸,用戶名,密碼都是admin
7.這是成功登陸cacti
當(dāng)出現(xiàn)上圖情況時,cacti已安裝完畢,可正常使用。
但cacti默認(rèn)是使用cmc.php方式去畫圖的,但據(jù)說使用spine方式比較節(jié)省系統(tǒng)資源消耗,
8. 生成圖形文件
在界面中點(diǎn)擊graphs,圖形不顯示,使用如下命令生成圖形文件
/usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php
此時,圖片出現(xiàn)的可能都是亂碼,那個因?yàn)?usr/share/fonts/下沒有任何字符文件。
這個問題解決辦法很簡單,隨便拷一個.ttf的文件到/usr/share/fonts/下就可以了
就可以出圖了
9. 加入crontab服務(wù)
*/5 * * * * env LANG=C /usr/local/bin/php /usr/local/apache/htdocs/cacti/poller.php
10.過一段時間后,就會有數(shù)據(jù)圖了