緣起
今天查看訂閱的51CTO的郵件的時候,看到幾款Linux的性能監視工具,剛好前些日子在HP的臺式機機上配置了SVN服務器。於是想給機器上裝一下性能監視工具,除了幾個自帶的命令行工具(top,htop,iotop之類的)外,覺得Monitorix蠻酷的,於是就想安裝了試試。
正文
軟硬件條件: Ubuntu 12.10 , HP2080
Monitorix是一款功能非常強大的免費開源輕量型工具,使用Perl編寫,目的在於監測Linux中的系統和網絡資源。它可以定期收集系統和網絡數據,並使用自己的Web界面,通過圖形顯示相關信息。Monitorix讓用戶可以監測系統整體性能,還有助於檢測瓶頸、故障、不必要的超長響應時間及其他異常活動。 其官方地址是:http://www.monitorix.org/
安裝monitorix可以選擇從Monitrix網站上下載最新的安裝包(http://www.monitorix.org/downloads.html),也可以使用軟件庫自動安裝,不過後者更爲簡單,只需要一條命令(若干月後,我發現添加源然後apt-get安裝不如從官網上下載deb包,然後點擊安裝方便)。由於monitorix所在的軟件庫並不是Ubuntu的軟件庫中,而是在Izzy軟件庫中,所以需要將該軟件源添加到apt的軟件源列表中,apt-get update一下,然後在安裝。步驟如下:
1. 把下面這一行添加到你的'/etc/apt/sources.list'文件最後
deb http://apt.izzysoft.de/ubuntu generic universe
注意使用root權限操作
2. 下載並安裝軟件庫的GPG密鑰(關於什麼是GPG密鑰,可以參考WIKI上的解釋:http://zh.wikipedia.org/wiki/GnuPG)
wget http://apt.izzysoft.de/izzysoft.asc
sudo apt-key add izzysoft.asc
3. 更新軟件包源並安裝monitorix
sudo apt-get update
sudo apt-get install monitorix
4. 編輯/etc/monitorix.conf文件,找到如下的內容,將其中的enabled = y 改爲 n,結果如下
備註:這裏之所以這麼做,是爲了在Apache上運行Monitorix,而不是使用Monitorix內建的HTTP服務器。Monitorix中內建了一個HTTP Server,如果不想安裝諸如Apache,Nigix這樣的Web服務器,可以考慮啓用個內建服務器。
5. 啓動apache和monitorix 服務
sudo service apche2 restart
sudo service monitorix restart
備註:這裏原來使用的apache2 reload,經別人提醒說有問題,我查了一下,restart=stop+start,reload=重新讀取配置文件
6.輸入地址“http://localhost/monitorix/” 來參看結果
7.出現了一些小問題,我沒能看到性能監視的圖像,不知道爲何,圖像加載總是失敗,自己還有其他的事情要做,就先放一邊了,等有空了在來解決這個問題。
PS: 10分鐘後我解決這個問題了,我仔細看了上圖中的錯誤,could not save png to /usr/share/monitorix/imgs。想了想 ,原來是沒有寫權限的問題,chomd 777/usr/share/monitorix/imgs 之後,再次,在瀏覽器中鍵入http://localhost/monitorix/,就可以看到顯示負載的圖像了。
文件和配置
使用apt-get默認安裝時,Monitorix文件的位置:
- monitorix主配置文件在:/etc/monitorix.conf(也可能是/etc/monitorix/monitorix.conf,視具體的機器而定)
- 代碼位置:/usr/lib/monitorix
- cgi和生成的圖像在:/usr/share/monitrix/
- Monitorix的Apache配置文件:/etc/apache2/conf.d/monitorix.conf
#
# Monitorix is a lightweight system monitoring tool
#
Alias /monitorix /usr/share/monitorix
ScriptAlias /monitorix-cgi /usr/share/monitorix/cgi
<Directory /usr/share/monitorix/cgi/>
DirectoryIndex monitorix.cgi
Options ExecCGI
Order Deny,Allow
Deny from all
Allow from all
</Directory>
通過Allow from 可以指定可訪問的Monitorix的IP列表。
小結
更加具體的資料參考:http://os.51cto.com/art/201312/425377.htm。此外,遇到問題可以參考Monitorix的官方的FAQ。一開始的時候,我遇到一個問題500 Internet Server Error,在百度上搜了好久都沒有找到解決方法,後來在起官方的FAQ中發現瞭解決方法,也就是上面的步驟4.
關於GPG密鑰的問題,可以參考wiki的解釋(http://zh.wikipedia.org/wiki/GnuPG),也可以參考阮一峯的博客(http://www.ruanyifeng.com/blog/2013/07/gpg.html) .感覺這個軟件是否非常的有意思的軟件,並且發現阮一峯的文章具有非常好的可讀性。Google了阮一峯後,發現它是《軟件隨想錄:Joel談軟件》,《黑客與畫家》的譯者,而這兩本書我也看過的,確實非常的好。
遺留問題的解決表明:我在對待問題的方面還是不夠細心,如果能再仔細一點的話,就不會花費這麼多時間來處理這麼簡單的問題了。看來,很有很多的方面的事情需要學習並注意。