Nagios 监控网站配置

nagios如何监控网站状态是否正常是一个很重要的监控需求。我们可以使用自带的check_http插件来监控网页,具体参数可通过./check_http -h查看,假设域名为www.example.com,那么可以监控命令如下:

# ./check_http -H www.example.com -u /index.html

通过Nagios监控网页一般有两种方式,一种是直接通过Nagios监控主机配置监控服务监视网页;另一种是在某一安装了NRPE 的客户端主机上配置监控命令,通过NRPE监控网页情况,再将结果传回给Nagios监控主机。通过一个装有NRPE 的客户端作为桥的方式可以使主机更加安全,减轻Nagios主机的负担,同时可以避免在Nagios主机上配置DNS等不必要的麻烦。

方式一、直接通过Nagios主机监控网页

只需要在Nagios 的配置文件里添加一个服务即可,配置内容如下
修改./etc/objects/commands.cfg,增加如下内容

# 'check_web' command definition
define command{
command_name check_web
command_line $USER1$/check_http -H www.example.com
}

修改./etc/objects/localhost.cfg,增加如下内容

define service{
use local-service ; Name of service template to use
host_name localhost
service_description www.example.com
check_command check_web
notifications_enabled 1
}

方式二、通过NRPE监控网页

需要修改两台主机的配置文件,修改NRPE的配置文件,增加如下内容

#check web
command[check_web]=/usr/local/nagios/libexec/check_http -H www.example.com -u /index.html

修改Nagios配置文件,增加如下内容

#the check_apache on the remote host.
define service{
use generic-service
host_name hostname
service_description web
check_command check_nrpe! check_web
}