TranslateProject/translated/tech/How to set up a web-based lightweight system monitor on Linux.md

8.3 KiB
Raw Blame History

在Linux上配置基于web的轻量级系统监控

有时候,我们作为普通用户或者系统管理员,需要知道系统运行是否良好。与系统状态相关的许多问题,都可以通过检查活动服务生成的日志文件来获得答案。然而,即便对于历经数个春秋的系统管理员而言,要检查日志文件的每个细节都不是件容易的事。这也是为什么他们依赖于监控软件的原因,监控软件能够从不同的源收集信息,并以易于理解的格式给出分析报告,如图表、可视化图像、统计数据等。

市面上流传着许多复杂的系统监控软件,诸如Cacti, Nagios, Zabbix, Munin此类。在本文中我们选取了一个轻量级的监控工具——Monitorix该工具设计用于在Linux/BSD上监控系统资源和许多熟知的第三方应用程序。由于专为资源有限的嵌入式系统而优化Monitorix以使用简单消耗内存资源少而著称。它内建了一个HTTP服务器用于提供web界面并使用PRDtool来存储时间序列统计数据该PRDtoo可以很容易地和任何脚本语言整合如PerlPythonshell脚本Ruby等。

主要特性

这里列出了Monitorix的主要特性。要查看完整列表请参阅官方网站

  • 系统负载和系统服务需求
  • CPU/GPU温度传感器
  • 磁盘温度和健康
  • 网络/端口流量和网络状况统计
  • 邮件统计
  • Web服务器统计ApacheNginxLight图片的
  • MySQL负载和统计
  • Squid代理统计
  • NFS服务器/客户端统计
  • Raspberry Pi传感器统计
  • Memcached统计

在Fedora, CentOS或者RHEL上安装并配置Monitorix

首先安装需要的软件包。注意在CentOS上你需要先设置 EPELRepoforge仓库。

$ 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的配置文件细节可以查阅http://www.monitorix.org/documentation.html

默认情况下内建的HTTP服务器监听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文件的如下区块。

<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)

Install all dependent packages first. 首先安装所有依赖包。

$ 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查看监控结果在你喜爱的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软件包(monitorix_x.x.x-izzy1_all.deb)。

使用下面的命令来安装Monitorix包。

$ sudo dpkg -i monitorix_x.x.x-izzy1_all.deb 

安装完成后我们需要像下面这样对Monitorix配置稍作修改。

用你喜爱的文本编辑器打开/etc/monitorix/monitorix.conf向下滚动文本直到你找到。搜索“raspberrypi = n”并用“y”替换“n”这将启用对Raspberry Pi时钟频率、温度和电压的监控。

编辑完成后重启Monitorix服务。

$ sudo service monitorix restart 

默认情况下Monitorix的内建HTTP Web服务器会被启用。要访问Monitorix的Web界面访问此地址http://:8080/monitorix。

Monitorix截图(Raspberry Pi上)

Monitorix主屏幕:

系统平均负载和使用情况图示:

活动进程图示:

在主屏幕中选择“Raspberry Pi”部分下的“时钟频率”你会看到Raspberry Pi的时钟频率、温度和电压的图示:

所有监控图示:


via: http://xmodulo.com/2014/05/web-based-lightweight-system-monitor-linux.html

译者:GOLinux 校对:校对者ID

本文由 LCTT 原创翻译,Linux中国 荣誉推出