Cacti 圖形化監(jiān)控介面
話說 MRTG 的作者發(fā)展出功能更強大的 RRDtool 之後, 由於太過複雜難用, 因此又發(fā)展出以 RRDtool 為基底, 前端為 Web 介面的 Cacti 圖表系統(tǒng).
除了內建的系統(tǒng)資源圖表之外, 能自行加入各式 SNMP 流量圖表, 甚至透過外掛的 Scripts 和 Templates 建立各種不同的監(jiān)控圖, 是 Cacti 最迷人的地方.
以下是在 Fedora Core 1 安裝 Cacti 與新增 SNMP Hosts (IP Sharing & Linux NAT) 流量圖的操作記錄:
環(huán)境:
- Fedora Core 1
- Apache HTTP Server 2.0.x
- MySQL 3.23
- PHP 4.3.8
- Perl 5.8.3
1. 安裝需求套件
yum install mysql-devel net-snmp php-snmp freetype-devel libpng-devel libart_lgpl-devel net-snmp-utils wget ftp://rpmfind.net/linux/freshrpms/fedora/linux/1/rrdtool/rrdtool-1.0.49-1.1.fc1.fr.i386.rpm rpm -ivh rrdtool*.rpm (perl 需昇級至 5.8.3 才能安裝 rrdtool-1.0.49-1.1.fc1.fr.i386.rpm)
2. 取得並安裝 cacti
wget http://www./downloads/packages/Fedora/3/cacti-0.8.6h.fc3.i386.rpm rpm -ivh cacti*.rpm
cacti-0.8.5a.fc1.i386.rpm 這個 for Fedora Core 1 的版本使用過程中會出現(xiàn)不明的 SNMP Error, 所以改用 fc3 的 0.8.6h 版本
安裝成功後出現(xiàn)訊息: Be sure to follow steps 2 through 5 in the install guide for new Cacti installations. 參考頁面為: http://www./downloads/docs/html/install_unix.html
其他版本請參考 cacti 官方下載頁面: http://www./download_cacti.php
3. 建置 cacti 運行環(huán)境
mysqladmin -u root -p create cacti mysql -u root -p -A cacti < /var/www/html/cacti/cacti.sql mysql -u root -p -A mysql mysql> grant all privileges on cacti.* to cactiuser@localhost identified by ‘cactiuser‘; mysql> flush privileges; mysql> exit cd /var/www/html/cacti chown -R cactiuser log rra vi ./include/config.php
$database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cactiuser"; $database_password = "cactiuser";
vi /etc/crontab
*/5 * * * * cactiuser php /var/www/html/cacti/poller.php > /dev/null 2>&1
vi /etc/httpd/conf/httpd.conf
<Directory /var/www/html/cacti>
SSLRequireSSL Order allow,deny Allow from 192.168 someip.outside.your.lan
</Directory>
/etc/init.d/httpd reload
SSL 憑證的建立方式參考這篇: Apache HTTP Server + Mozilla Calendar / Sunbird 讓 Apache HTTP Server 不顯示版本編號的方法: 編輯 httpd.conf, 修改 ServerTokens 參數(shù)為 Prod
4. 第一次登入 cacti 頁面
開啟瀏覽器, 輸入網(wǎng)址: https://.ip/cacti/ (因 SSLRequireSSL 參數(shù)強迫 SSL 連線)
第一次連入時, 會出現(xiàn) Required Tool Path 的設定畫面. 設定完成後, 首次登入的帳號密碼皆為 admin, 登入後會出現(xiàn)重設密碼的畫面, 完成後才會進入 cacti 主畫面.
cacti 預設即有本機的 Memory Usage、Load Average、Logged in Users 和 Processes 等圖表, 點選 graphs 即可查看. (但要等 poller.php 執(zhí)行後才會有圖)
5. 新增網(wǎng)路流量圖
5.1 支援 SNMP 的 IP 分享器 (以 Vigor 2900 為例)
點選 console → New Graphs → Create New Host 輸入Description: Vigor2900 (或其他自定描述) 輸入 Hostname: 192.168.0.254 (IP Sharing 的內部 IP) 點選 Host Template: Generic SNMP-enabled Host 點選 create 出現(xiàn) Save Successful. 後點選 Create Graphs for this Host 勾選 Ethernet0 (LAN) 與 Ethernet1 (WAN) 點選 create
修改圖表抬頭, 讓圖表更容易閱讀
點選 console → Graph Management → Vigor2900 - Traffic - Ethernet0/1 原 Graph Fields: Title 為: |host_description| - Traffic - |query_ifDescr|/|query_ifIndex| 修改成: |host_description| - Traffic - LAN 點選 save 後, 依同樣步驟修改 Vigor2900 - Traffic - Ethernet1/4 為 WAN
5.2 Linux NAT with snmpd (建置參考: Building Linux NAT with MRTG network monitoring)
點選 console → New Graphs → Create New Host 輸入Description: Linux NAT (或其他自定描述) 輸入 Hostname: 192.168.0.254 (Linux NAT 的內部 IP) 點選 Host Template: Generic SNMP-enabled Host 點選 create 出現(xiàn) Save Successful. 後點選 Create Graphs for this Host 勾選 lo、eth0、eth1 點選 create
5.3 將新圖表加入 Tree View
點選 console → Graph Trees → Default Tree → Add 點選 Tree Item Type: Host 點選 Host: 指定的 Host (以上述 5.1 和 5.2 為例, 可選擇 Vigor2900 或 Linux NAT) 點選 create 點選 graphs → Tree Mode (預設即是 Tree Mode, 亦可點選樹的圖案) 原先只有 Host: localhost 的項目, 現(xiàn)在可點選 Host: 剛剛指定的 Host
後記:
在 Pentium II 333MHz, 192MB RAM 的環(huán)境下跑 cacti (預設 localhost + 一個 snmp host 圖表) 還蠻順的, 並不會影響系統(tǒng)效能. MRTG 可以安心退休了 :P
相關網(wǎng)頁:
Posted by Jamyy at 2006年03月05日 23:04
Trackback Pings
TrackBack URL for this entry: http://cha./cgi-bin/mt/mt-tb.cgi/175
您介紹的很棒耶~ 給您加油和鼓勵~~ 對了~ 怎麼都沒看見您自我介紹呢?
Posted by: 小米糕 at 2006年03月07日 02:20
謝謝您的鼓勵 關於自我介紹這個問題最近剛好也有想過 不過我構思非技術性文章的速度真的很慢 也許還要再蘊釀一陣子才會放上去吧 :P 香港網(wǎng)友 Enoch 這篇關於自我介紹的文章寫得不錯: http://enochng./index.php?op=ViewArticle&articleId=56904
Posted by: Jamyy at 2006年03月07日 09:47
你好! 我按照你的敘述進行配置,環(huán)境和所需的軟體都是一致的 但我用配置cacti那臺機的mozilla進行訪問時,得出的結果是:Forbidden You don‘t have permission to access /cacti on this server. cacti的目錄是/var/www/html 權限是775 和它在同一目錄/var/www/html下的文件都可訪問,為何cacti卻不能訪問呢?是不是要加一個名為cactiuser的用戶或組?
Posted by: liozhou at 2006年09月22日 11:45
Posted by: liozhou at 2006年09月22日 11:49
您好~
1. 請先確定 /var/www/html/cacti 的權限是 775 或 755
2. 請確定 httpd.conf 中, DirectoryIndex 是否包含 index.php
3. 請確定 httpd.conf 中, cacti 路徑的 Allow from 是否依照您的網(wǎng)路環(huán)境設定正確
4. 若啟用 SSLRequireSSL 設置, 則必須以 https:// 連線才能瀏覽, 否則一樣會出現(xiàn) Forbidden 的錯誤
Posted by: Jamyy at 2006年09月22日 13:15
問題已解決,謝謝! 我接觸linux的時間不是很長,所以還是想再向你請教一下:剛才發(fā)生問題的時候,我到網(wǎng)絡上去尋找相關的信息,看到有很多人的配置文檔中除了上述步驟外,都還配置了/etc/snmp/snmpd.conf 但在你的文章中卻沒有提及,配與不配置有什么差別嗎?
Posted by: liozhou at 2006年09月22日 16:27
啊... 真的沒提到這部份耶, 真是不好意思, 謝謝您的提醒 ^^‘ 其實這篇主要是架構在 MRTG 升級 Cacti 的情況下 而在建置 MRTG 的時候就有提到 snmpd 的設置了: http://cha./blog/archives/2005/03/building_linux.html 其實我對 snmp 也只是一知半解, 依樣畫葫蘆而已 :P 就我所知, 若 MRTG 只用來分析某個 host 或 device (蒐集非本機所產(chǎn)生的資訊), 則本機不需設置 snmpd 但若 MRTG 要統(tǒng)計的是本機的資訊 (如本機即為 NAT), 就必需在本機設置 snmpd 而 cacti 即預設蒐集本機資訊, 所以本機的 snmpd 是必備的
Posted by: Jamyy at 2006年09月22日 17:04
哦,原來是這個樣子,不過好彩我事先把snmpd啟動了。 謝謝此次你的幫助,我原來是做windows網(wǎng)絡管理的,現(xiàn)在進入linux網(wǎng)絡管理才幾個月的時間,所以碰到的問題也是多多??!比如一個postfix就差點讓我打了退堂鼓,最后無賴只有用exchange替代了。 在網(wǎng)上我也看到了有很多人在學習linux方面的編程語言,我沒有什么這方面的基礎,可很想往這方面發(fā)展,所以想請教一下我應該先從哪步開始呢?先學哪種linux語言比較好起步呢?
Posted by: liozhou at 2006年09月23日 10:18
歡迎你, Linux 的新朋友 :) 我之前是在微軟平臺寫 ASP 網(wǎng)頁程式的 自從轉換跑道當了網(wǎng)管後, 才開始使用 Linux 提到 Linux 的程式開發(fā), C 語言是公認的第一首選 但我是以 "管理者" (administrator) 和 "使用者" (application user) 的角度來切入 Linux 領域 Linux 上的程式開發(fā)對我來說並不是重點 所以我先學習 shell script 和 perl 這兩種語法簡單, 能達到管理需求的程序語言 當然, 從 IIS 跨足 Apache http server, PHP 也是一定要接觸的 C、Java 對我來說都太 "硬" 了, 而且也沒有這方面的需求... 必要的話, 我還是會在 MS 平臺用 VB 寫 (看得出來, 我都挑 "軟" 的吃 :P) 所以我恐怕沒能力推薦, 只能說, 先確立自己的學習目標, 再去瞭解與選擇適合的工具 (程式語言), 才是最理想的方式唄
Posted by: Jamyy at 2006年09月23日 11:16
英雄所見略同,我剛開始接觸linux的時候也是這么想的,身為一個網(wǎng)絡的管理者,適當?shù)墓ぞ呤菫榱烁奖阄业墓ぷ?,如果花在語言上的時間太多,那必然又會造成網(wǎng)絡管理上的疏忽。 其實我是商學院畢業(yè)的,玩電腦是我的愛好之一,沒想到畢業(yè)之后這個愛好竟讓我走上了網(wǎng)管之路。 現(xiàn)在我所管理的網(wǎng)絡還只是剛剛起步,可以說是一個windows和linux的合成體:windows 2003作為AD server exchange 2003作為mail server linux squid作為NAT vsftpd作為ftp server 最近的目標是再配置一臺apache 雖然再往后做都是我所不了解的區(qū)域,一步更會比一步難走,但我想這世界上應該沒什么事情是簡單的吧!當然這也需要你的更多幫助。交個朋友吧,我的E-MAIL:liozhou@163.com
Posted by: liozhou at 2006年09月23日 15:19
jamyy老大,你發(fā)給我的E-MAIL已經(jīng)開始折磨我了,超想看,可不管用什么方法都只能看到亂碼,請問你用的是哪個版本的系統(tǒng)?我也照著裝一個好了
Posted by: lio at 2006年09月26日 11:24
^^‘ 不好意思, 我後來試著用 UTF-8 編碼, 看來還是沒能成功... 我已經(jīng)寄了 gmail 邀請函給你, 你加入後應該就能正常通訊了 :)
Posted by: Jamyy at 2006年09月26日 13:39
請教各位,Cacti應該可以抓Windows平臺的Memory使用狀況吧,各位可知其Graph Templates應該要怎樣創(chuàng)建?
多謝!!
Posted by: Jely at 2007年02月08日 13:46
|