Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows、Linux和Unix的主机状态,
交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网
站运维人员,在状态恢复后发出正常的邮件或短信通知。

下面介绍怎么在Ubuntu上使用包管理的方式安装Nagios

监控端

用来安装Web环境,以及接收来自被监控主机的信息
其实Ubuntu安装Nagios只需要一条命令
sudo apt-get install nagios3 nagios-nrpe-plugin
Ubuntu会自动安装了Nagios所需的所有依赖,这其中包括了LAMP

安装过程中,会提示输入Nagsio Web管理员的密码
Nagios web的登录默认帐号是nagiosadmin

默认的监控脚本配置会安装在/etc/nagios-plugin/config下
监控脚本都在/usr/lib/nagios/plugins

被监控端

你需要运行以下命令安装nrpe
sudo apt-get install nagios-nrpe-server
需要修改/etc/nagios/nrpe.cfg
找到allowed_hosts=127.0.0.1这个是容许访问nrpe的机器,多个主机用’,’分隔,
注意不要留空格,“127.0.0.1, 192.168.1.12”是不工作的,必须是”127.0.0.1,192.168.1.12”;
然后重启nrpe

测试

在服务端打开你的IP/nagios3,输入nagiosadmin和你设置的密码就可以进去了


可能遇到的错误

  • 错误一

CHECK_NRPE: Error – Could not complete SSL handshake
这个就是上面空格的错误
allowed_hosts=127.0.0.1,192.168.1.100

  • 错误二

DISK CRITIAL - /run/user/1000/gvfs is not accessible: Permission denied
然后去个naigos FAQ上找了下,竟然官方说这是一个bug,为bug#615848. 问题原因是FUSE文件系统和权限不配的问题,这里简要说下解决方法
因为默认是自检,即对本机进行检查。官方给出的方法的忽略检查这个文件夹,因为检不检查这个文件夹都可以
vim /etc/nagios-plugins/config/disk.cfg
在command check_disk 和check_all_disks 最后加上 -A -i /run/user/1000/gvfs(此处可能有所不同,添加你自己的此文件夹的绝对路径即可),改后如下

1
2
3
4
5
6
7
8
9
define command{
command_name check_disk
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e -p '$ARG3$' -A -i /run/user/1000/gvfs
}
define command{
command_name check_all_disks
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -A -i /run/user/1000/gvfs
}

然后再重启Nagios3/etc/init.d/nagios3 restart就没有这个问题了

参考
https://my.oschina.net/julienbin/blog/69186
http://blog.csdn.net/wolfzhaoshuai/article/details/46473669