2006/08/07

MRTG (Windows) 部署安裝指南

本文參考 MRTG 官方網站說明製作。

軟體需求:
a. ActivePerl
b. MRTG
c. Microsoft Tools SRVANY.exe (Applications as Services Utility) and INSTSRV.exe (Service Installer)
d. Windows Management and Monitoring Tools (請於控制台 → 新增/移除程式?→ 新增或移除windows元件中選取。並於安裝後,於SNMP安全性新增 public 群體名稱)

安裝步驟:
Step 1: (安裝ActivePerl)
可從ActivePerl官方網站下載windows版本安裝程式。個人是下載了AS package版本。
將此版本解壓縮之後,執行批次檔 Installer.bat,依照預設值安裝即可。
預設安裝位置為 C:\perl,請於windows環境設定確認 C:\perl\bin 是否正確自動添加於 path 中。
(Now, 請重新啟動)

Step?2: (安裝MRTG)
於 MRTG 官方網站下載 windows 版本程式。個人下載了 mrtg-2.13.2.zip?版本。
將此壓縮檔解壓縮後放於你所偏好的位置,建議 C:\
解壓縮完成後,產生 C:\mrtg-2.13.2 位置。

Step 3: (建立mrtg.cfg)
於命令列模式中,進入 C:\mrtg-2.13.2\bin 資料夾。
首先確認 perl 路徑是否正常,執行 perl mrtg
將會產生如下說明:

Usage: mrtg <config-file></config-file>

mrtg-2.13.2 is the Multi Router Traffic Grapher.

If you want to know more about this tool, you might want
to read the docs. They came together with mrtg!

Home: http://people.ee.ethz.ch/~oetiker/webtools/mrtg/
這代表你的 ActivePerl 目前應該是正常動作中,先恭喜你。
接著,在同個位置執行?perl cfgmaker public@localhost --global "WorkDir: c:\Inetpub\wwwroot\mrtg" --output mrtg.cfg
如果沒有任何錯誤訊息,那將會在 C:\mrtg-2.13.2\bin 中產生 mrtg.cfg 的檔案。
(請檢查 mrtg.cfg,確認是否存在 WorkDir: C:\Inetpub\wwwroot\mrtg 這行,沒有則請自行加入。)

Step 4: (產生資料報表)
這是最簡單的步驟。在 C:\mrtg-2.13.2\bin 中,執行 perl mrtg mrtg.cfg 即可。
這時你一定會有疑問,為什麼會有 log 找不到的錯誤訊息產生哩?
這是因為資料是第一次執行,所以並沒有歷史資料,當然會有問題囉!
所以,同樣執行 perl mrtg mrtg.cfg 三次吧!有資料產生後,這錯誤訊息就會消失了。

Step 5: (檢視報表)
若您是依照方才的安裝目錄作設定,這時你會發現,C:\Inetpub\wwwroot\mrtg 底下多了一些檔案。
找到名為 localhost_X.html 的檔案(X可能為數字),開啟它即可。

Step 6: (自動產生報表)
觀察 mrtg 的運作流程,我們會發現每次運作 perl mrtg mrtg.cfg 之後,報表才會更新,這並非我們所樂見的。
因此我們需要做一些修改。

請在 mrtg.cfg 檔案中加入
RunAsDaemon: yes
這行指令,使 mrtg 不會執行一次便結束。
接著執行 start /Dc:\mrtg-2.13.2\bin wperl mrtg --logging=eventlog mrtg.cfg 來啟動新的設定檔。

這邊之所以採用 wperl 而不用 perl ,是為了讓程式能在背景執行。
若你想結束程式,則請進入工作管理員結束wperl即可。

Step 7: (建立windows service)
將 SRVANY.exe 以及 INSTSRV.exe 兩個檔案複製到 C:\mrtg-2.13.2\bin 中。
再建立一個名為 mrtg.reg 的登錄檔,利用文字編輯器,將以下內容貼上。

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRTG\Parameters]

"Application"="c:\\perl\\bin\\wperl.exe"

"AppParameters"="c:\\mrtg-2.13.2\\bin\\mrtg --logging=eventlog c:\\mrtg-2.13.2\\bin\\mrtg.cfg"

"AppDirectory"="c:\\mrtg-2.13.2\\bin\\"

接著執行instsrv MRTG c:\mrtg-2.13.2\bin\srvany.exe
之後你會發現windows?service中有個名為 MRTG 的服務,啟動它,則每次開機之後便會自動在背景執行服務了。

Step 8:
Enjoy it!

No comments:

Post a Comment

有什麼想說的嗎?

[遊記] 香港三天兩夜

在五月初起意找時間離開台灣去流浪,連續三年無視了公司的員工旅遊補助,今年終於給了自己動力離開台灣三天兩夜出去走走,即使目的地只是航程不到兩小時的香港。 決定了日期,向公司請好了休假,接下來就是要決定交通住宿,由於想要自己決定出發以及回來時間,方便起見捨棄了可能有特定優惠的機...