Monitorix :支持服務器和樹莓派的輕量級系統(tǒng)監(jiān)控系統(tǒng)
有時候,無論是普通用戶還是系統(tǒng)管理員,都需要知道系統(tǒng)運行是否良好。與系統(tǒng)狀態(tài)相關的許多問題,都可以通過檢查運行的服務所生成的日志文件來獲得答案。然而,即便對于干過幾年的系統(tǒng)管理員而言,要檢查日志文件的每個細節(jié)都不是件容易的事。這也是為什么他們依賴于監(jiān)控軟件的原因,監(jiān)控軟件能夠從不同的源收集信息,并以易于理解的格式給出分析報告,如圖表、可視化圖像、統(tǒng)計數(shù)據(jù)等。
市面上流傳著許多復雜的系統(tǒng)監(jiān)控軟件,諸如Cacti, Nagios, Zabbix, Munin此類。在本文中,我們向您介紹一個輕量級的監(jiān)控工具——Monitorix,該工具設計用于在Linux/BSD上監(jiān)控系統(tǒng)資源和許多熟知的第三方應用程序。由于專為資源有限的嵌入式系統(tǒng)而優(yōu)化,Monitorix以使用簡單,消耗內存資源少而著稱。它內建了一個HTTP服務器用于提供web界面,并使用RRDtool數(shù)據(jù)庫來存儲時間序列統(tǒng)計數(shù)據(jù),RRDtool可以很容易地和任何腳本語言整合,如Perl,Python,shell腳本,Ruby等。
主要特性
這里列出了Monitorix的主要特性。要查看完整列表,請參閱官方網站:
- 當前系統(tǒng)負載和系統(tǒng)服務
- CPU/GPU溫度傳感器
- 磁盤溫度和健康度
- 網絡/端口流量和網絡狀況統(tǒng)計
- 郵件統(tǒng)計
- Web服務器統(tǒng)計(Apache,Nginx,Lighttpd)
- MySQL負載和統(tǒng)計
- Squid代理統(tǒng)計
- NFS服務器/客戶端統(tǒng)計
- Raspberry Pi傳感器統(tǒng)計
- Memcached統(tǒng)計
在Fedora, CentOS或者RHEL上安裝并配置Monitorix
首先,安裝需要的軟件包。注意,在CentOS上,你需要先設置 EPEL和Repoforge倉庫。
- $ sudo yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
完成上一步后,可以通過以下命令來安裝Monitorix:
- $ sudo yum install monitorix
要配置Monitorix,打開/etc/monitorix/monitorix.conf配置文件,并修改選項。關于Monitorix的配置文件細節(jié),可以查閱http://www.monitorix.org/documentation.html。
默認情況下,內建的HTTP服務器監(jiān)聽8080端口。因此,確保你的防火墻沒有阻止TCP 8080端口。
要啟動Monitorix,只需輸入以下命令:
- $ sudo service monitorix start
啟動你喜愛的Web瀏覽器,然后通過http://:8080/monitorix來訪問Monitorix的Web界面。
在Archlinux上安裝并配置Monitorix
在Archlinux上,可以從AUR上下載Monitorix包。
默認情況下,在Archlinux上是禁用了其內建HTTP服務器的。要啟用內建的HTTP服務器,請編輯/etc/monitorix.conf文件的如下區(qū)塊。
- <httpd_builtin>
- enabled = y
- host =
- port = 8080
- user = nobody
- group = nobody
- log_file = /var/log/monitorix-httpd
- hosts_deny =
- hosts_allow =
- <auth>
- enabled = n
- msg = Monitorix: Restricted access
- htpasswd = /var/lib/monitorix/htpasswd
- </auth>
- </httpd_builtin>
***,啟動Monitorix服務。
打開你喜歡的Web瀏覽器,然后通過http://:8080/monitorix來訪問Monitorix的Web界面。
在Debian和Ubuntu上安裝并配置Monitorix
對于Debian家族,Monitorix可以通過兩種方式安裝:手工安裝或通過第三方軟件倉庫。
手工安裝(用于Debian)
首先安裝所有依賴包。
- $ sudo apt-get install rrdtool perl libwww-perl libmailtools-perl libmime-lite-perl librrds-perl libdbi-perl libxml-simple-perl libhttp-server-simple-perl libconfig-general-perl libio-socket-ssl-perl
從http://www.monitorix.org/downloads.html下載Monitorix包,并安裝。
- $ sudo dpkg -i monitorix*.deb
在安裝期間,會要求你配置一個后端Web服務器。如果你正是用Apache,確保重啟Apache服務來重新加載Apache配置。
- $ sudo service apache2 reload
通過軟件倉庫安裝 (用于Ubuntu)
在/etc/apt/source.list中添加以下行來啟用Izzysoft倉庫。
- deb http://apt.izzysoft.de/ubuntu generic universe
下載并為軟件倉庫添加GPG密鑰。
- $ wget http://apt.izzysoft.de/izzysoft.asc
- $ sudo apt-key add izzysoft.asc
使用apt-get安裝Monitorix,所有依賴包也將自動安裝。
- $ sudo apt-get update
- $ sudo apt-get install monitorix
***,啟動Monitorix服務。
- $ sudo service monitorix start
要配置Monitorix,請使用文本編輯器編輯/etc/monitorix/monitorix.conf,并重啟Monitorix服務。
- $ sudo service monitorix restart
用于Ubuntu的內建Web服務器默認啟用。要從Web查看監(jiān)控結果,在你喜愛的Web瀏覽器中訪問http://8080/monitorix。
在Raspberry Pi上安裝并配置Monitorix
如果想要在Raspberry Pi(基于Debian)上安裝Monitorix,你不能使用上面提到的Izzysoft倉庫,因為它不提供Monitorix的ARM移植。取而代之的是,你可以參照如下基于Debian的手工安裝。
首先,安裝需要的軟件包。
- $ sudo apt-get install rrdtool perl libwww-perl libmailtools-perl libmime-lite-perl librrds-perl libdbi-perl libxml-simple-perl libhttp-server-simple-perl libconfig-general-perl libio-socket-ssl-perl
如果某些需要的軟件包沒有安裝,我們需要使用此命令來強制安裝。
- $ sudo apt-get -f install
從http://www.monitorix.org/downloads.html下載Monitorix軟件包(monitorixx.x.x-izzy1all.deb)。
使用下面的命令來安裝Monitorix包。
- $ sudo dpkg -i monitorix_x.x.x-izzy1_all.deb
安裝完成后,我們需要像下面這樣對Monitorix配置稍作修改。
用你喜愛的文本編輯器打開/etc/monitorix/monitorix.conf,向下滾動文本直到你找到。搜索“raspberrypi = n”,并用“y”替換“n”,這將啟用對Raspberry Pi時鐘頻率、溫度和電壓的監(jiān)控。
編輯完成后,重啟Monitorix服務。
- $ sudo service monitorix restart
默認情況下,Monitorix的內建HTTP Web服務器會被啟用。要訪問Monitorix的Web界面,訪問此地址http://:8080/monitorix。
Monitorix截圖(Raspberry Pi上)
Monitorix主屏幕:
系統(tǒng)平均負載和使用情況圖示:
活動進程圖示:
在主屏幕中選擇“Raspberry Pi”部分下的“時鐘頻率”,你會看到Raspberry Pi的時鐘頻率、溫度和電壓的圖示:
所有監(jiān)控圖示:
via: http://xmodulo.com/2014/05/web-based-lightweight-system-monitor-linux.html