開源監(jiān)控之Cacti
Cacti是一套基于PHP,MySQL,SNMP及RRDTool開發(fā)的網(wǎng)絡(luò)流量監(jiān)測圖形分析工具。Cacti是通過 snmpget來獲取數(shù)據(jù),使用 RRDtool繪畫圖形,而且你完全可以不需要了解RRDtool復(fù)雜的參數(shù)。它提供了非常強(qiáng)大的數(shù)據(jù)和用戶管理功能,可以指定每一個用戶能查看樹狀結(jié) 構(gòu)、host以及任何一張圖,還可以與LDAP結(jié)合進(jìn)行用戶驗證,同時也能自己增加模板,功能非常強(qiáng)大完善,界面友好。Cacti 的發(fā)展是基于讓 RRDTool 使用者更方便使用該軟件,除了基本的 Snmp 流量跟系統(tǒng)資訊監(jiān)控外,Cacti 也可外掛 Scripts 及加上 Templates 來作出各式各樣的監(jiān)控圖。
cacti是用php語言實現(xiàn)的一個軟件,它的主要功能是用snmp服務(wù)獲取數(shù)據(jù),然后用rrdtool儲存和更新數(shù)據(jù),當(dāng)用戶需要查看數(shù)據(jù)的時候用 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)建時就已經(jīng)定義。
官方最新的版本為2011年12月11號發(fā)布的Cacti 0.8.7i released!!!51CTO最新源碼下載地址為http://down.51cto.com/data/326466