【51CTO精選譯文】說到監控Linux設備,眼下有好多方法可供選擇。雖然有許多適用於生產環境的監控解決方案(比如Nagios、Zabbix和Zenoss)聲稱擁有漂亮的用戶界面、監控可擴展性以及全面報告功能等,但這些解決方案對我們大多數最終用戶來說恐怕是大材小用。如果你僅僅需要檢查遠程Linux服務器或桌面系統的基本狀況(比如處理器負載、內存使用情況和活動進程),不妨考慮使用Linux-dash。
Linux-dash是一個面向Linux系統、基於Web的輕型監控儀表板,它可以實時顯示系統的各種屬性,比如處理器負載、內存使用情況、磁盤使用情況、互聯網速度、網絡連接、RX/TX帶寬、已登錄用戶、運行中進程,等等。linux-dash並不隨帶用來存儲長期統計信息的任何後端服務器。你只要將linux-dash應用程序安裝到現有的Web服務器(比如Apache和Nginx服務器)上,就可以了。這是一種快速而簡單的方法,可以爲個人項目搭建遠程監控機制。
我在本教程中將介紹如何在Linux平臺上的Nginx Web服務器中安裝linux-dash。由於使用輕型引擎,Nginx Web服務器比Apache Web服務器更討人喜歡。
在Debian、Ubuntu或Linux Mint安裝linux-dash
首先,安裝Nginx Web服務器以及php-fpm組件。
- $ sudo apt-get install git nginx php5-json php5-fpm php5-curl
爲linux-dash應用程序配置Nginx,爲此需要創建/etc/nginx/conf.d/linuxdash.conf,步驟如下所示。在本示例中,我們將使用端口8080。
- $ sudo vi /etc/nginx/conf.d/linuxdash.conf
- server {
- server_name $domain_name;
- listen 8080;
- root /var/www;
- index index.html index.php;
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
- location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
- try_files $uri =404;
- expires max;
- access_log off;
- add_header Pragma public;
- add_header Cache-Control "public, must-revalidate, proxy-revalidate";
- }
- location /linux-dash {
- index index.html index.php;
- }
- # PHP-FPM via sockets
- location ~ \.php(/|$) {
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- fastcgi_split_path_info ^(.+?\.php)(/.*)$;
- fastcgi_pass unix:/var/run/php5-fpm.sock;
- if (!-f $document_root$fastcgi_script_name) {
- return 404;
- }
- try_files $uri $uri/ /index.php?$args;
- include fastcgi_params;
- }
- }
禁用默認站點配置。
- $ sudo rm /etc/nginx/sites-enabled/default
配置php-fpm,爲此需要編輯/etc/php5/fpm/pool.d/www.conf。確保編輯如下所示的"user"、"group"和"listen"指令。配置的其餘部分可以保留不變。
- $ sudo vi /etc/php5/fpm/pool.d/www.conf
- . . .
- user = www-data
- group = www-data
- listen = /var/run/php5-fpm.sock
- . . .
接着下載和安裝linux-dash。
- $ git clone https://github.com/afaqurk/linux-dash.git
- $ sudo cp -r linux-dash/ /var/www/
- $ sudo chown -R www-data:www-data /var/www
重啓Nginx Web服務器,並重啓php5-fpm,完成安裝的最後步驟。
- $ sudo service php5-fpm restart
- $ sudo service nginx restart
在CentOS、Fedora或RHEL上安裝linux-dash
在CentOS上,首先啓用EPEL軟件庫(具體參閱http://xmodulo.com/2013/03/how-to-set-up-epel-repository-on-centos.html),這一步必不可少。
安裝Nginx Web服務器和php-fpm組件。
- $ sudo yum install git nginx php-common php-fpm
想爲linux-dash應用程序配置Nginx,就要創建/etc/nginx/conf.d/linuxdash.conf,如下所示。
- $ sudo vi /etc/nginx/conf.d/linuxdash.conf
- server {
- server_name $domain_name;
- listen 8080;
- root /var/www;
- index index.html index.php;
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
- location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
- try_files $uri =404;
- expires max;
- access_log off;
- add_header Pragma public;
- add_header Cache-Control "public, must-revalidate, proxy-revalidate";
- }
- location /linux-dash {
- index index.html index.php;
- }
- # PHP-FPM via sockets
- location ~ \.php(/|$) {
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- fastcgi_split_path_info ^(.+?\.php)(/.*)$;
- fastcgi_pass unix:/var/run/php-fpm.sock;
- if (!-f $document_root$fastcgi_script_name) {
- return 404;
- }
- try_files $uri $uri/ /index.php?$args;
- include fastcgi_params;
- }
- }
下一步,配置php-fpm,爲此需要編輯/etc/php-fpm.d/www.conf。在該文件中,確保按如下設置"listen"、"user"和"group"等字段。配置的其餘部分則保留不變。
- $ sudo vi /etc/php-fpm.d/www.conf
- . . .
- listen = /var/run/php-fpm.sock
- user = nginx
- group = nginx
- . . .
下載linux-dash,並安裝到/var/www下面。
- $ git clone https://github.com/afaqurk/linux-dash.git
- $ sudo cp -r linux-dash/ /var/www/
- $ sudo chown -R nginx:nginx /var/www
最後,重啓Nginx Web服務器,並重啓php-fpm,將它們設成系統一啓動就自動開始運行。
- $ sudo service php-fpm restart
- $ sudo service nginx restart
- $ sudo chkconfig nginx on
- $ sudo chkconfig php-fpm on
在本示例中,我們配置了linux-dash,以便使用TCP端口8080。所以,確保防火牆沒有封阻TCP端口8080。
藉助linux-dash監控Linux機器
想從Web瀏覽器訪問linux-dash,只要在你的Web瀏覽器上進入到http://<linux-IP-address>:8080/linux-dash/。
下面是linux-dash的幾個屏幕截圖。Web儀表板包括幾個窗口組件,每個窗口組件顯示特定的系統屬性。你可以定製這個Web儀表板的外觀,只需重新排列及/或關閉其中一些窗口組件。linux-dash的開發者搭建的演示網站是http://afaq.dreamhosters.com/linux-dash/,有興趣的讀者不妨瀏覽。