原始出处:http://dongxin.blog.51cto.com/3486403/1771780
1. Nagios安装 - 服务端
安装扩展YUM源(2个都可以,但是epel-release只有6.7版本才可以,6.7以前版本不支持)
[root@localhost ~]# yum install -y epel-release
[root@localhost ~]# wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-6.repo
安装nagios服务以及相关支持服务:
[root@localhost ~]# yum install -y httpd nagios nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
创建用户和密码
[root@localhost ~]# htpasswd -c /etc/nagios/passwd nagiosadmin
检测配置文件
[root@localhost ~]# nagios -v /etc/nagios/nagios.cfg
上图表示 配置正确 没有问题
启动服务:
检测一下:
浏览器访问: http://ip/nagios
如果没有得到上面的结果,请检查selinux和iptables,输入上面建立的用户名和密码
可以看到我安装的版本是3.5.1。
2. Nagios安装 - 客户端
安装扩展YUM源(2个都可以,但是epel-release只有6.7版本才可以,6.7以前版本不支持)
[root@localhost ~]# yum install -y epel-release
[root@localhost ~]# wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-6.repo
安装nagios客户端服务
[root@localhost ~]# yum install -y nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe
编辑配置文件
[root@localhost ~]# vim /etc/nagios/nrpe.cfg
找到“allowed_hosts=127.0.0.1” 改为 “allowed_hosts=192.168.1.201”
allowed_hosts=192.168.1.201 定义服务器主机
找到” dont_blame_nrpe=0” 改为 “dont_blame_nrpe=1”
dont_blame_nrpe=1
启动服务
[root@localhost ~]# /etc/init.d/nrpe start
3. 监控中心(192.168.1.201)添加被监控主机(192.168.1.202)
编辑被监控主机配置文件
[root@localhost ~]# cd /etc/nagios/conf.d/
[root@localhost conf.d]# vim 192.168.1.202.cfg
define host{
use linux-server
host_name 192.168.1.202
alias 1.202
address 192.168.1.202
}
define service{
use generic-service
host_name 192.168.1.202
service_description check_ping
check_command check_ping!100.0,20%!200.0,50%
max_check_attempts 5
normal_check_interval 1
}
define service{
use generic-service
host_name 192.168.1.202
service_description check_ssh
check_command check_ssh
max_check_attempts 5
normal_check_interval 1
notification_interval 60
define service{
use generic-service
host_name 192.168.1.202
service_description check_http
check_command check_http
max_check_attempts 5
normal_check_interval 1
}
max_check_attempts 5 ;当nagios检测到问题时,一共尝试检测5次都有问题才会告警,如果该数值为1,那么检测到问题立即告警
normal_check_interval 1 ;重新检测的时间间隔,单位是分钟,默认是3分钟
notification_interval 60 ;在服务出现异常后,故障一直没有解决,nagios再次对使用者发出通知的时间。单位是分钟。如果你认为,所有的事件只需要一次通知就够了,可以把这里的选项设为0。
检测配置文件:
[root@localhost conf.d]# nagios -v /etc/nagios/nagios.cfg
重启服务:
去web查看一下监控情况
4--监控客户端硬盘,内存情况
#由于需要nagios调用的监控命令都需要在command.cfg模块中定义 而前面的check_nrpe在默认的command.cfg中时没有的
这里需要在command.cfg中将其加入进去 现在去服务器端编辑/objects/commands.cfg
[root@nagios conf.d]# vim /etc/nagios/objects/commands.cfg
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
定义check_nrpe编辑文件添加下面内容:
在服务器端配置被监控端的配置文件:
[root@localhost conf.d]# cd /etc/nagios/conf.d/
[root@localhost conf.d]# vim 192.168.1.202.cfg
define service{
use generic-service
host_name 192.168.1.88
service_description check_load
check_command check_nrpe!check_load
max_check_attempts 5
normal_check_interval 1
}
define service{
use generic-service
host_name 192.168.1.88
service_description check_disk_hda1
check_command check_nrpe!check_hda1
max_check_attempts 5
normal_check_interval 1
}
客户端查看check_load,check_hda1服务
[root@localhost ~]# df -h
[root@localhost ~]# vi /etc/nagios/nrpe.cfg
查看一下已经监控到了 ok