使用 MRTG 搭配 BSNMP 監測系統網路流量
作者:Joe Horn( joehorn AT leobbs DOT net )
授權:[CC授權:姓名標示-非商業性-相同方式分享 2.5]
附註:安裝步驟適用於 FreeBSD 平台,其它 UNIX-Like OS 可能有所不同。
使用軟體:
安裝
使用 ports 來安裝 MRTG
# cd /usr/ports/net-mgmt/mrtg # make install clean
設定與啟動 BSNMP
設定 BSNMP
設定機器相關資訊與 community 名稱,請以編輯器開啟 /etc/snmpd.config,修改以下這幾行:
host := foobar
此為主機稱呼,請隨意(部份 FreeBSD 版本已經拿掉這個設定,如果沒看到就可以跳過)。 :p
location := "Room 200"
此為主機放置位置,改不改隨您高興囉。 :)
contact := "[email protected]"
此為聯絡資訊,可以留空字串。 XD
read := "public" write := "geheim" trap := "mytrap"
以上這些分別是讀、寫與 snmptrap 的 community 名稱,請一定要改掉。
接下來,請修改 /etc/rc.conf ,加入以下這行:
bsnmpd_enable="YES"
啟動 BSNMP
輸入以下指令來啟動 BSNMP 監控 daemon :
# /etc/rc.d/bsnmpd start
設定 MRTG
建立設定檔
用 cfgmaker 指令來抓取 SNMP 之設定資料:
# /usr/local/bin/cfgmaker [您剛剛設定的讀取用 community 名稱]@[欲監測之主機 IP/DN] > /usr/local/bin/mrtg.cfg
修改設定檔
修改 mrtg.cfg 內的資料,用編輯器開啟 /usr/local/bin/mrtg.cfg 並衡量情況修改成以下資料:
WorkDir: /usr/local/apache/htdocs/mrtg
- WorkDir 前面的 # 請拿掉,後面的絕對目錄指的是您的網頁放置目錄,請依照各主機之情況自行設定。
請將這行前面的 # 拿掉:
# Options[_]: growright, bits
並在下面加進這行:
Language: big5
也就是變成這樣:
# to get bits instead of bytes and graphs growing to the right Options[_]: growright, bits Language: big5
建立網頁與所需資料
複製網頁所需圖檔:
# cd /usr/local/share/examples/mrtg/images # cp * [MRTG產生流量圖表之網頁所在目錄]
- 後面的那個目錄就是您在設定 WorkDir 所用的目錄,請先確定該目錄是否存在。
用 indexmaker 初始化網頁:
# /usr/local/bin/indexmaker --title=xxx主機網路流量圖表 --rrdviewer='.' --output=[MRTG產生流量圖表之網頁絕對位置] /usr/local/bin/mrtg.cfg
- xxxx主機網路流量圖表為該網頁之標題,請自行衡量情況作修改,例如:
# /usr/local/bin/indexmaker --title=mail主機網路流量圖表 --rrdviewer='.' --output=/usr/local/www/MRTG/index.htm /usr/local/bin/mrtg.cfg
測試 MRTG
測試 MRTG 是否工作正常:
# /usr/local/bin/mrtg /usr/local/bin/mrtg.cfg
重複執行三次後,打開瀏覽器觀看產生之網頁是否正常。
正式執行
MRTG 需要依靠定時的指令執行才會更新資料。
請以讓系統每五分鐘執行以下指令:
/usr/local/bin/mrtg /usr/local/bin/mrtg.cfg
- 例如:
*/5 * * * * /usr/local/bin/mrtg /usr/local/bin/mrtg.cfg > /dev/null 2>&1