close
透過 cacti 這套用 php 開發的程式來監看網路環境,可以取代原本用 MRTG 的缺點,cacti 是透過 RRDTool 來做圖的,開發 RRDTool 這個工具的作者也就是原本開發 MRTG 的作者,不過 RRDTool 艱澀的語法表示實在是很難入門,所以就有熱心的人寫出了 cacti 這個管理的介面,可以幫助使用者設定複雜的 RRDTool 設定檔,對於網管來說,實在是個很方便、也很值得利用的工具。

如果有用 yum 來安裝套件的話,那要把 cacti 跟 RRDTool 安裝起來實在是再簡單也不過了,不過首先得先加入一個可供 yum 參考的 Repository - DAG !

> vi /etc/yum.repos.d/dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=0
enabled=1

建議在要安裝這些套件以前,先將 crond 的服務停止,才不會到時候 cacti 安裝好,設定都還不正確, cacti 就跑起來了。

再來就是檢查一下一些必備的程式安裝了沒:
httpd : 網頁伺服器是一定要裝的嘛,不然怎麼看呢
mysqld : 存放紀錄的地方,cacti 就是好在這個地方
phpmyadmin : 方便管理 MySQL
php-mbstring : 為了讓 MySQL 相容於雙位元的中文字
crontabs : 要讓 cacti 定時送出 snmp query 並且做圖、寫回資料庫等等動作
net-snmp : 用 snmp 協定跟被監控的機器溝通
net-snmp-utils : 像是 snmpwalk、snmpget之類的指令
net-snmp-perl : 有些外掛是用 Perl 寫的,所以這個套件也需要
perl-Net-SNMP : 同上

接著就是必備的核心了:
rrdtool
php-rrdtool
perl-rrdtool

以上皆可用 yum 來 check 安裝了沒,或是有無更新。都安裝完成了之後,接著就可以安裝 cacti 了:
cacti : 主要的程式,包括後台網站、以及一些外掛程式,還有一隻用 PHP 的方式執行的 poller 。
cacti-cactid : 利用 C 所開發的一隻 daemon,如果你覺得你每五分鐘要監看的目標太多了,怕五分鐘跑不完,可以考慮試著換成用 daemon 的方式來跑,效能快很多。

裝完 cacti 後,要記得 httpd 要重新啟動,因為預設的 cacti 網站設定寫在 /etc/httpd/conf.d/cacti.conf 中,要讓 httpd 重新載入。另外,預設的設定值只允許127.0.0.1存取,所以我們要來改變一下設定,看是要改成:
allow from all

或是可以加入多個子網段:
allow from all 192.168.1.0/24 192.168.2.0/24

然後別忘記改完之後要重新啟動 httpd。

重新啟動後,就可以連上網站看看囉~

oops.... :-ss
Error

You have created a new database, but have not yet imported the 'cacti.sql' file. At the command line, execute the following to continue:

mysql -u cactiuser -p cacti

別緊張,只是沒有建立資料庫而已嘛~
看你是要從 ssh command mode去建立還是用 phpMyAdmin 來建立都可以。

我是先用 phpMyAdmin 建立 cactiuser 這個帳號,並且設定密碼,然後再設定只允許經由本機 (localhost) 存取;然後再建立名為 cacti 的 database ,並且設定 cactiuser 擁有 cacti 這個 database 的最大權限。

接著再到 command mode 輸入 mysql -u cactiuser -p cacti */5 * * * * cacti php /var/www/cacti/poller.php &>/dev/null

預設是由 cacti 這個 user 來 run 這個工作,不過我覺得還要建立 user 很麻煩,所以都直接把這裏改為由 root 來執行,另外也要確認一下 rra/ 及 log/ 這兩個目錄的擁有者是否依然為 root (網路上的教學設定都是說要由 cactiuser ,反正就是 root 以外的角色來做 crontab 的工作,所以這兩個目錄的 owner 必須跟做 crontab 同一人,不過我這樣設定也 ok 哩,所以就沒深入去探討了)

都 ok 了之後,就可以讓 crond 起來了,順便可以進去 cacti 後台新增要監測的設備、主機等等,也可以查看記錄檔,看是不是有什麼地方有錯誤、或是安裝的外掛程式有問題。

晚點有空再來寫寫 cactid 的安裝及注意事項,還有分享一些有用的外掛監看程式。

(P.S. 寫到一半才發覺,沒有擷取一些畫面來點綴,感覺起來,實在是篇有點無味的筆記... :-? )
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 mattchen 的頭像
    mattchen

    痞子麥

    發表在 痞客邦 留言(1) 人氣()