員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團(tuán)隊(duì)的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。創(chuàng)新互聯(lián)公司堅(jiān)持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因?yàn)椤皩W⑺詫I(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),微信平臺小程序開發(fā),軟件按需開發(fā)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。
一、Cacti簡介
Cacti是一套基于PHP,MySQL,SNMP及RRDTool開發(fā)的網(wǎng)絡(luò)流量監(jiān)測圖形分析工具。
Cacti是通過 snmpget來獲取數(shù)據(jù),使用 RRDtool繪畫圖形,而且你完全可以不需要了解RRDtool復(fù)雜的參數(shù)。它提供了非常強(qiáng)大的數(shù)據(jù)和用戶管理功能,可以指定每一個(gè)用戶能查看樹狀結(jié)構(gòu)、host以及任何一張圖,還可以與LDAP結(jié)合進(jìn)行用戶驗(yàn)證,同時(shí)也能自己增加模板,功能非常強(qiáng)大完善。界面友好。軟件 Cacti 的發(fā)展是基于讓 RRDTool 使用者更方便使用該軟件,除了基本的 Snmp 流量跟系統(tǒng)資訊監(jiān)控外,Cacti 也可外掛 Scripts 及加上 Templates 來作出各式各樣的監(jiān)控圖。
cacti是用php語言實(shí)現(xiàn)的一個(gè)軟件,它的主要功能是用snmp服務(wù)獲取數(shù)據(jù),然后用rrdtool儲存和更新數(shù)據(jù),當(dāng)用戶需要查看數(shù)據(jù)的時(shí)候用rrdtool生成圖表呈現(xiàn)給用戶。因此,snmp和rrdtool是cacti的關(guān)鍵。Snmp關(guān)系著數(shù)據(jù)的收集,rrdtool關(guān)系著數(shù)據(jù)存儲和圖表的生成。
Mysql配合PHP程序存儲一些變量數(shù)據(jù)并對變量數(shù)據(jù)進(jìn)行調(diào)用,如:主機(jī)名、主機(jī)ip、snmp團(tuán)體名、端口號、模板信息等變量。
snmp抓到數(shù)據(jù)不是存儲在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目錄的rra文件夾下)。rrdtool對數(shù)據(jù)的更新和存儲就是對rrd文件的處理,rrd文件是大小固定的檔案文件(Round Robin Archive),它能夠存儲的數(shù)據(jù)筆數(shù)在創(chuàng)建時(shí)就已經(jīng)定義。
二、系統(tǒng)環(huán)境
Centos 6.x
nginx 1.4.4
php 5.3.27
mysql 5.1.72
三 、LNMP環(huán)境搭建
請見博文:http://coderleiws.blog.51cto.com/12066224/1900457
四、yum安裝所需環(huán)境
ntpdate 202.120.2.101 #ntp同步時(shí)間
1. [root@coderblog ~]# yum -y install epel-release #安裝epel擴(kuò)展源
2. [root@coderblog ~]# yum -y install net-snmp net-snmp-utils rrdtool #安裝所需環(huán)境
五、下載并安裝cacti
Cacti官方地址:http://www.cacti.net/download_cacti.php
1.[root@coderblog ~]# wget -cP /usr/local/src http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz #下載cacti源文件到/usr/local/src/
2.[root@coderblog ~]# cd /usr/local/src&&tar -xzvf cacti-0.8.8h.tar.gz #切換到/usr/local/src目錄 并且解壓縮包
3.[root@coderblog src]# cp -rf cacti-0.8.8g /usr/local/nginx/html/cacti #把源碼文件復(fù)制到網(wǎng)站根目錄
4.[root@coderblog ~]# /usr/local/mysql/bin/mysql #進(jìn)入mysql交互環(huán)境 輸入以下命令 )1.create database cacti; #創(chuàng)建cacti數(shù)據(jù)庫 )2.grant all on cacti.* to 'cactiuser'@'localhost' identified by 'cactiuser'; #創(chuàng)建cacti用戶并賦予cacti庫的所有權(quán)限 )3.FLUSH PRIVILEGES; #刷新 )4.quit #退出mysql交互環(huán)境
5.[root@coderblog ~]# mysql -uroot cacti < /usr/local/nginx/html/cacti/cacti.sql #導(dǎo)入cacti數(shù)據(jù)庫
6. vim /usr/local/nginx/html/cacti/include/config.php 確認(rèn)如下: $database_type = "mysql"; $database_default = "cacti"; $database_hostname = "127.0.0.1"; $database_username = "cactiuser"; $database_password = "cactiuser"; $database_port = "3306"; $database_ssl = false;
7. web訪問cacti并安裝 http://ip/cacti/ 點(diǎn)兩下“next” 和一次”Finish“ 即可 輸入admin admin 登錄,重新設(shè)置新的密碼
8. 執(zhí)行poller.php, 生成圖形, 加入計(jì)劃任務(wù) /usr/local/php/bin/php /usr/local/nginx/html/cacti/poller.php 會報(bào)錯(cuò) 按8.1修改并重啟相關(guān)服務(wù) 添加cron任務(wù) cront -e 增加: */5 * * * * /usr/local/php/bin/php /usr/share/cacti/poller.php 8.1 vi /etc/php.ini 修改date.timezone = Asia/Shanghai
9.配置SNMP文件
vim /etc/snmp/snmpd.conf 找到相似并修改成如下: view systemview included .1.3.6.1.2.1 access notConfigGroup "" any noauth exact all none none
view all included .1 80 去掉這行的注釋
10.設(shè)置PATH
11.rddtool顯示數(shù)據(jù)成功
至此 cacti簡單的安裝 就完成了.近期將根據(jù)這個(gè)博文,出相對的視頻.記錄自己的學(xué)習(xí)過程,如有不足,請大家指出