一、monitorix

Monitorix是一款功能非常强大的免费开源轻型工具,目的在于监测Linux中的系统和网络资源。它可以定期收集系统和网络数据,并使用自己的Web界面,通过图形显示相关信息。Monitorix让用户可以监测系统整体性能,还有助于检测瓶颈、故障、不必要的超长响应时间及其他异常活动。

二、Monitorix功能简介

  • 监测系统负载平均数值、活动进程、每个处理器的内核使用情况、全局内核使用情况和内存分配情况。
  • 监测磁盘驱动器的温度和健康状况。
  • 监测文件系统的使用情况和文件系统的输入/输出活动。
  • 监测多达10个网络设备的网络流量使用情况。
  • 监测众多系统服务,包括SSH、FTP、Vsftpd、ProFTP、SMTP、POP3、IMAP、POP3、VirusMail和Spam。
  • 显示MTA Mail的统计数字,包括输入连接和输出连接。
  • 显示网络端口流量,包括TCP和UDP等。
  • 显示FTP的统计数字,使用FTP服务器的日志文件格式。
  • 显示本地或远程服务器的Apache统计数字。
  • 显示本地或远程服务器的MySQL统计数字。
  • 显示Squid代理Web缓存的统计数字。
  • 显示Fail2ban的统计数字。
  • 监测远程服务器(多主机)。
  • 能够按照每天、每周、每月或每年,通过图形或明文表格查看统计数字。
  • 能够缩放图形,以便更清楚地查看。
  • 能够定义每一行的图形数量。
  • 内置的HTTP服务器。

三、monitorix安装

(1)Monitorix安装到RHEL/CentOS/Fedora Linux上

首先,安装下列所需的程序包。

  1. # 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 wget

要是万一yum未能成功安装一个或多个上述程序包,那么你可以启用下列额外的软件库来安装它们。

启用EPEL软件库

启用RPMforge软件库

下一步,使用wget命令,下载最新版本的'Monitorix'程序包。

  1. # wget http://www.monitorix.org/monitorix-3.4.0-1.noarch.rpm

一旦成功下载,使用rpm命令安装它。

  1. # rpm -ivh monitorix-3.4.0-1.noarch.rpm
  2. Preparing...                ########################################### [100%]
  3. 1:monitorix              ########################################### [100%]

一旦成功安装,请查看一下主配置文件'/etc/monitorix.conf',根据你的系统添加一些额外的设置,启用或禁用图形。

最后,将Monitorix服务添加到系统启动项,并使用下面两个命令来开启这项服务。

  1. # chkconfig --level 35 monitorix on
  2. # service monitorix start

一旦你开启了这项服务,该程序会开始根据'/etc/monitorix.conf'文件里面的配置集,收集系统信息;几分钟过后,你会开始在以下位置,从浏览器看到系统图形:

  1. http://localhost:8080/monitorix/

如果你有处于启用状态的SELinux,那么图形看不见,你会在'/var/log/messages'或'/var/log/audit/audit.log'文件中看到大量的错误信息,这些错误信息显示了访问RRD数据库文件被拒绝。想清除这类错误信息和右见的图形,你就需要禁用SELinux。

想关闭SELinux,只要在'/etc/selinux/config'文件中将"enforcing"这一行改成"disabled"。

  1. SELINUX=disabled

上面这一更改会临时禁用SELinux,直到你重启机器为止。如果你希望系统总是在禁用模式下开启,就要重启系统。

(2)将Monitorix安装到Ubuntu/Debian/Linux Mint上

Monitorix的安装可以通过两种方式来完成,一种是使用Izzy软件库完成自动安装/更新,另一种是使用手动下载和安装.deb程序包。

Izzy软件库是一个试验性的软件库,但是来自该软件库的程序包应该适用于所有版本的Ubuntu和Debian等发行版。不过,我们无法保证绝对正确――所以,风险自负。如果你仍然想通过apt-get,添加该软件库以便自动更新,只要遵循下面提供的步骤,就可以实现自动安装。

使用Izzy软件库,自动安装

把下面这一行添加到你的'/etc/apt/sources.list'文件。

  1. deb http://apt.izzysoft.de/ubuntu generic universe

获得该软件库的GPG密钥,你可以使用wget命令来获得密钥。

  1. # wget http://apt.izzysoft.de/izzysoft.asc

一旦下载完毕,将该GPG密钥添加到apt配置,只需使用'apt-key'这个命令,如下所示。

  1. # apt-key add izzysoft.asc

最后,通过该软件库安装程序包。

  1. # apt-get update
  2. # apt-get install monitorix

使用.Deb程序包,手动安装

手动下载最新版本的.deb程序包,并安装它,并处理好所需的依赖项,如下所示。

  1. # apt-get update
  2. # apt-get install rrdtool perl libwww-perl libmailtools-perl libmime-lite-perl librrds-perl libdbi-perl libxml-simple-perl
  3. # wget http://www.monitorix.org/monitorix_3.4.0-izzy1_all.deb
  4. # dpkg -i monitorix_3.4.0-izzy1_all.deb

安装过程中,会进行Web服务器配置。所以,你需要重新装入Apache Web服务器,体现新的配置。

  1. # service apache2 reload

Monitorix随带一个默认配置,如果你想更改或调整一些设置,就要看一下'/etc/monitorix.conf'处的这个配置文件。一旦你完成了更改,重新装入服务,让新配置生效。

  1. # service monitorix restart

现在,将你的浏览器指向'http://localhost/monitorix/',开始查看显示你系统情况的图形。它只可以从本地主机加以访问;如果你希望允许访问远程IP,只要打开'/etc/apache2/conf.d/monitorix.conf'文件,将IP地址添加到'Allow from'语句。请参阅如下例子。

  1. <Directory /usr/share/monitorix/cgi-bin/>
  2. DirectoryIndex monitorix.cgi
  3. Options ExecCGI
  4. Order Deny,Allow
  5. Deny from all
  6. Allow from 172.16.16.25
  7. </Directory>

在你对上述配置进行了更改后,别忘了重启Apache。

  1. # service apache2 reload

四、Monitorix屏幕截图:

下面是一些屏幕截图,请参阅。

Monitorix Web界面

系统负载平均数值、活动进程和内存分配情况。

全局内核使用情况

每个处理器的内核使用情况

磁盘驱动器的温度和健康状况

文件系统的使用情况和输入/输出活动

eth0接口流量

系统服务需求

网络端口流量

Apache的统计数字

MySQL的统计数字

monitorix(linux)系统和网络监控公工具的更多相关文章

  1. 【转载】Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  2. Linux系统与性能监控

    原文地址:http://kerrigan.sinaapp.com/post-7.html Linux System and Performance Monitoring http://www.hous ...

  3. Linux系统和性能监控之CPU篇

    Linux系统和性能监控之CPU篇 性能优化就是找到系统处理中的瓶颈以及去除这些的过程.本文由sanotes.net站长tonnyom在2009年8月翻译自Linux System and Perfo ...

  4. 如何配置Linux系统的网络IP地址

    一台安装了Linux系统的电脑如果想要联网,首先要做的就是进行网络配置.今天小编就以CentOS6.4系统为例为大家介绍整个网络配置的过程,虽然只是以CentOS6.4系统为例,但是其它的Linux系 ...

  5. Linux系统NFS网络文件系统

    Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...

  6. CentOS(六)--Linux系统的网络环境配置

    Linux系统下的网络环境配置,Linux.Unix就是网络的世界,所以在Linux系统中如何配置网络环境变量是至关重要的,这里将会给出3种Linux系统下网络环境配置的方法! 在配置网络环境之前,首 ...

  7. LINUX系统下MySQL 压力测试工具super smack

    摘要:1.源文件下载地址:http://vegan.net/tony/supersmack/2.安装:注意在编译时,可以先把对应的libmysqlclient.so.*拷贝到/usr/lib3.测试: ...

  8. Linux 系统的网络基础_【all】

    网络基础 1.网线:568B: 白橙 橙色 白绿 蓝色 白蓝 绿色 白棕 棕色 2.交换机:电信号转发的网络设备,它可以为接入交换机的任2个网络节点设备提供电信号通信 3.路由器:连接局域网,广域网的 ...

  9. Linux系统基本网络配置之ifconfig命令

    Linux系统基本网络配置之ifconfig命令 一.Linux系统的网络配置基本包括:网络IP的配置.网关路由的配置.主机DNS的配置.主机名的配置等,本篇注重介绍网络IP的配置. 二.Linux系 ...

随机推荐

  1. 存储过程TYPE类型参数调试

    当我们写完一段存储过程后,必然需要调试运行一下写的代码是否能成功运行,当参数是字符,数字或日期时,可以直接在测试窗口输入值.但是类型如果是定义好的TYPE,就无法简单的输入. 一.自定义TYPE TY ...

  2. HDU2255(KB10-K 二分图最大权匹配)

    奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  3. php中的static静态变量

    今天碰到了一个php的小试题,一直没有明白为什么第三次循环是static静态变量没有起作用呢?想了好久才明白原理. <?php class MyClass{ function add($b){ ...

  4. linux服务器SSH破解预防方法

    1.linux服务器通过配置 /etc/hosts.deny 禁止对方IP通过SSH登录我的服务器 vim /etc/hosts.deny 2.不用SSH服务的默认端口22,重新设置一个新端口,最好设 ...

  5. Java 基础知识总结1

    作者QQ:1095737364    QQ群:123300273     欢迎加入! 1.数据类型:  数据类型:1>.基本数据类型:1).数值型: 1}.整型类型(byte  8位   (by ...

  6. CVE-2018-15688 systemd dhcp6组件越界写漏洞分析

    编译的话 , 用 ubuntu 18.10, 没有 patch 的源码下载路径 https://codeload.github.com/poettering/systemd/zip/3941f8329 ...

  7. 数据库批量操作中SqlParameter参数传递的问题

    数据库批量操作 比如会写:update T_AdminUsers set IsEnabled=@IsEnabled where Id in (@ids) 然后再SqlParameter("@ ...

  8. Nodejs 使用特定版本的SSL/TLS协议版本

    var options = { key: fs.readFileSync('./bin/privatekey.pem'), cert: fs.readFileSync('./bin/certifica ...

  9. 带你从零学ReactNative开发跨平台App开发(一)

    ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...

  10. Python笔记(四):异常处理机制与 open()

    (一)  异常处理机制概述 就像日常生活中会遇到各种意外情况一样(例如:你可能考虑过如果中了500w该怎么做),代码运行过程中也会遇到这种意外情况,python提供了这么一种机制,处理意外情况(就像如 ...