munin是用于Linux系统(也可以监控windows系统)的监控软件。munin除了可以监控系统的各项数值之外,最大的好处是可以自己编写插件自定义监控需要的数值。整个系统的架构简单明了,操作方便。如果是使用Debian或者Ubuntu安装,安装过程也非常简单。munin除了可以监控结果,也可以设置报警。对于我个人对性能测试的工作来说,是个非常好的工具。

内容

munin整个使用下来,篇幅会有点大,包括展示、自定义插件。这边分成三个部分来说明。本次只讲安装和配置。

munin master和munin-node的安装;
web服务展示结果和动态查看结果;
插件编写与配置(mysql插件与自定义插件)。

架构示意图
Linux,Munin,性能监控

munin的架构非常简单。包含一个服务端munin和一个客户端munin-node。munin-node可以部署在多台机器上面,munin用于定时向一台或者多台机器收集监控的信息。munin收集到数据后会生成静态的html文件。为了展示监控的结果,需要一个web服务器。有了web也可以随时随地访问监控结果。


在服务器中配置 Munin

要配置服务器端和客户端,我们需要完成以下两步。

安装 Munin 服务器软件包并配置,使得它能从客户端收集数据。
安装 Munin 客户端,使得服务器能连接到客户端守护进程进行数据收集。
在 Linux 上安装 munin 服务器端

在基于 Ubuntu/Debian 的机器上安装 Munin 服务器:
 

复制代码
代码如下:

apt-get install munin apache2

在基于 Redhat/CentOS 的机器上安装 Munin 服务器:

 

在基于 Redhat 的机器上安装 Munin 之前,你需要确保 启用 EPEL 软件仓库,因为基于 Redhat 的机器的软件仓库默认没有 Munin。
 

复制代码
代码如下:

yum install munin httpd

在 Linux 上配置 Munin 服务器端

 

下面是我们要在服务器上启动 Munini 所进行的步骤:

在 /etc/munin/munin.conf 中添加需要监控的主机详情。
配置 apache web 服务器使其包括 munin 配置。
为 web 界面创建用户名和密码
重启 apache 服务器
步骤 1

在 /etc/munin/munin.conf 文件中添加主机条目。调到文件末尾添加要监控的客户端。在这个例子中,我添加了要监控的数据库服务器和它的 IP 地址。

示例:
 

复制代码
代码如下:

[db.linuxnix.com]
address 192.168.1.25
use_node_name yes

保存文件并退出。

 

步骤 2

在 /etc/apache2/conf.d 目录中编辑或创建文件 munin.conf 用于包括 Munin 和 Apache 相关的配置。另外注意一点,默认其它和 web 相关的 Munin 配置保存在 /var/www/munin 目录。
 

复制代码
代码如下:

vi /etc/apache2/conf.d/munin.conf

内容:

复制代码
代码如下:

Alias /munin /var/www/munin
<Directory /var/www/munin>
Order allow,deny
Allow from localhost 127.0.0.0/8 ::1
AllowOverride None
Options ExecCGI FollowSymlinks
AddHandler cgi-script .cgi
DirectoryIndex index.cgi
AuthUserFile /etc/munin/munin.passwd
AuthType basic
AuthName "Munin stats"
require valid-user
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault M310
</IfModule>
</Directory>

保存文件并退出。

 

步骤 3

现在为查看 munin 的图示而创建用户名和密码:
 

复制代码
代码如下:

htpasswd -c /etc/munin/munin-htpasswd munin

注意:对于 Redhat/Centos 机器,要访问你的配置文件,需要在每个路径中用 “httpd” 替换 “apache2”。

 

步骤 4

重启 Apache 服务器,使得 Munin 配置生效。

基于 Ubuntu/Debian :
 

复制代码
代码如下:

service apache2 restart

基于 Centos/Redhat :

复制代码
代码如下:

service httpd restart

在 Linux 上安装和配置 Munin 客户端

 

步骤 1

在 Linux 上安装 Munin 客户端
 

复制代码
代码如下:

apt-get install munin-node

注意:如果你想监控你的 Munin 服务器端,你也需要在服务器端安装 munin-node。

 

步骤 2

编辑 munin-node.conf 文件配置客户端。
 

复制代码
代码如下:

vi /etc/munin/munin-node.conf

示例:

复制代码
代码如下:

allow ^127\.0\.0\.1$
allow ^10\.10\.20\.20$
# 监听到哪个地址上
host *
# 以及哪个端口
port 4949

注意: 10.10.20.20 是我的 Munin 服务器,它连接到客户端的 4949 端口获取数据。

 

步骤 3

在客户端机器中重启 munin-node:
 

复制代码
代码如下:

service munin-node restart

测试连接

 

检查你是否能从服务器的连接到客户端的 4949 端口,如果不行,你需要在客户端机器中的防火墙打开该端口。
 

复制代码
代码如下:

telnet db.linuxnix.com 4949

访问 Munin web 页面

 

http://munin.linuxnix.com/munin/index.html
希望这些能对你配置基本的 Munin 服务器有所帮助。
Linux,Munin,性能监控