cacti自己能作的東西就是統計流量並以很漂亮的界面顯示出來。讓人欣喜的是,cacti也能夠安裝插件,經過插件,cacti的功能被進一步強大:能夠監控服務器狀態;發送郵件通知;短信通知等;還能夠msn通知喲~php
1.安裝cacti的PA
爲了讓cacti可以使用插件,必須先給cacti安裝一個補丁->Plugin Architecture。因爲對應不一樣的cacti的版本,都會有相應的PA。因此在安裝PA的時候,必定要選擇正確的版本喲。在
cactiusers.org你會找到不一樣的插件,固然也能夠找到PA啦。由於我們以前安裝的cacti的版本是0.8.7e因此我們就使用cacti-plugin-0.8.7e-PA-v2.6.zip。
cd /usr/share/cacti
wget http://mirror.cactiusers.org/downloads/plugins/cacti-plugin-0.8.7e-PA-v2.6.zip
unzip cacti-plugin-0.8.7e-PA-v2.6.zip
會獲得cacti-plugin-arch目錄。這裏面有cacti-plugin-0.8.7e-PA-v2.6.diff和pa.sql。這兩個文件是咱們最須要的。
導入數據庫文件
mysql -uroot cacti <cacti-plugin-arch/pa.sql
給cacti打補丁
patch -p1 -N <../cacti-plugin-arch/cacti-plugin-0.8.7e-PA-v2.6.diff
網上都這麼作,我也這麼幹了,並且打補丁的時候我也注意到了,有一些文件沒打成功,可是給忽略了。後來的事實告訴我,這樣打確實是不行,至少在我這不行。我鬱悶了一個晚上,次日醒來忽然想,那個補丁目錄裏還有一個files不知道是幹啥的。而後仔細讀了一下同級目錄的readme.txt。裏面提示說若是經過rpm包的方式安裝的建議,直接把files裏的文件直接覆蓋。我就鬱悶了,我之因此上一篇文章說要把安裝的cacti更新到最新的版本就是怕出現這樣的版本不一致的狀況,結果仍是發生了。最後仍是覆蓋了一下解決了問題。
rsync -avz ../cacti-plugin-arch/files-0.8.7e/* .
在打完補丁之後筆者出現了圖片按鈕不能正確顯示的狀況,仔細一看發現是圖片路徑不對,研究了半天才知道,須要修改一下global.php
vi include/global.php
$config['url_path'] = '/cacti/';
進入"Console"->"User Management"->"admin"->Realm Permissions把Plugin Management打勾:
你會發如今"configuration"下的"settings"下面是否是多了個"Plugin Management"點擊一下會列出已經安裝的插件:
2.安裝settings,thold,monitor插件
settings給不一樣的插件提供一些共用的信息,如郵件信息,dns信息。
monitor經過簡單明瞭的圖標提供服務器的運行狀態
thold提供設備異常預警。
cd plugins
wget http://cactiusers.org/downloads/settings.tar.gz
wget http://cactiusers.org/downloads/monitor.tar.gz
wget http://cactiusers.org/downloads/thold.tar.gz
for i in *.gz;do tar zxf $i;done
2.啓用插件
vi ../include/global.php
在$plugins = array();的下面加上以下內容
$plugins[] = 'settings';
$plugins[] = 'monitor';
$plugins[] = 'thold';
保存之後,再點擊"Plugin Management"就列出了已經安裝的插件:
導入monitor和thold的數據庫
mysql -uroot cacti <monitor/monitor.sql
mysql -uroot cacti <thold/thold.sql
3.使用插件
我們就按照從左到右從上到下的順序來看這三個插件吧
Monitor:
進入"Console"->"User Management"->"admin"->Realm Permissions把View Monitoring 打勾:
保存之後是否是發現多了一個"monitor":
可是當點擊"monitor"的時候發現會有一句錯誤
Warning: Invalid argument supplied for foreach() in /usr/share/cacti/site/plugins/monitor/monitor.php on line 199
仔細看一下這個文件,發現一條有用的信息:AND thold_enabled = "on",是否是由於我們如今還沒啓用thold呢?那我們就先啓用thold:
點擊"Plugin Management":
先點"Install"再點"Enable"當你看到:
graphs和monitor中間多了一個thold的時候,就成功啓用thold了。如今再點擊"monitor"也不報錯了。
配置monintor的話,找到"Console"->"Settings"->"Misc":
這裏不想法每項是幹啥的了,由於你總要有一個熟悉的過程嘛。
想添加被監視的設置話,在新創建設備的時候,會有個"Monitor Host",把它勾上,已經添加過的設備也能夠在這啓用。
Settings:
Settings做爲爲插件提供信息的插件,地位不可小視。找到"Console"->"Settings"->"Mail/DNS",正確設置"SMTP Options"和"DNS Options"以保證郵件能夠正常發現:
這裏筆者要說的就是建議mail servers選擇smtp,並正確設置smtp和dns信息。由於不管選擇phpmail仍是sendmail都要使用sendmail這程序,都要裝一個郵件系統。沒有必要吧,多一個程序多一個風險。設置完了能夠點一下右上角的"Send a Test Email"以肯定配置正確:)
爲啥要用139的郵箱呢?由於它有郵件到達短信提醒的功能。固然後面,咱們最好再作上msn和飛信的提醒。
Thold
配置完了郵件通知。咱們就須要出現問題的時候有通知了。那就有請thold出場了。找到"Console"->"Settings"->"Alerting/Thold",在"Default Alerting Options"裏,啓用"Dead Hosts Notificatios"並正確填寫警告的郵件地址:
郵件的內容呢?在添加設置的時候有個"Down Host Message"就是它了:
在又一次複習了cacti之後,我的以爲,cacti圖畫的是很漂亮.可是真要監控服務器的服務還真不大靠譜,看來要作到服務故障的及時報警非nagios莫屬.