Nagios配置详解
 
一、nagios简介
1、nagios基本介绍
官方网站:http://www.nagios.org/ 
     Nagios是一款用于系统和网络监控的应用程序。它可以在你设定的条件下对主机和服务进行监控,在状态变差和变好的时候给出告警信息。
 
2、Nagios更进一步的特征
1.监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
2.监控主机资源(处理器负荷、磁盘利用率等);
3.简单地插件设计使得用户可以方便地扩展自己服务的检测方法; 
4.并行服务检查机制; 
5.具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰
6.当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式); 
7.具备定义事件句柄功能,它可以在主机或服务的事件发生时获取更
8.自动的日志回滚; 
9.可以支持并实现对主机的冗余监控;  
10.可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;
Nagios通常由一个主程序(Nagios)、一个插件程序(Nagios-plugins)和四个可选的ADDON(NRPE、NSCA、
NSClient++和NDOUtils)组成。Nagios的监控工作都是通过插件实现的,因此,Nagios和Nagios-plugins是服务
二、nagios监控部署
1、下载所需软件包
Nagios主程序
1.nagios.3.2.0.tar.gz Nagios的主程序 
[root@localhost~]#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios.3.2.0.tar.gz 
Nagios 的插件 
[root@localhost~]#wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz
Nagios代理检测程序
[root@localhost~]#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz 
[root@UnixHot src]# ls 
[root@UnixHot src]# ls 
nagios-3.2.0.tar.gz nagios-plugins-1.4.13.tar.gz nrpe-2.12.tar.gz 
安装依赖包
[root@localhost~]#yum -y install httpd php gcc glibc glibc-common gd gd-devel
 
2、创建Nagios账户和组
[root@localhost~]# useradd -m nagios 
[root@localhost~]#groupadd nagcmd 
[root@localhost~]#usermod -a -G nagcmd nagios 
[root@localhost~]#usermod -a -G nagcmd apache
 
3、编译安装Nagios
[root@localhost ~]# tar xvf nagios-3.2.0.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/nagios-3.2.0/
[root@localhost nagios-3.2.0]# ./configure --with-command-group=nagcmd --with-nagios-user=nagios --with-nagios-group=nagios
[root@localhost nagios-3.2.0]# make all
[root@localhost nagios-3.2.0]# make install
[root@localhost nagios-3.2.0]# make install-init (生成init启动脚本)
[root@localhost nagios-3.2.0]# make install-config     (生成init启动脚本)
[root@localhost nagios-3.2.0]# make install-commandmode (设置相应的权限)
[root@localhost nagios-3.2.0]# make install-webconf (生成Apache配置文件nagios.conf)
 
4、为Nagios设置web验证密码
[root@localhost nagios-3.2.0]# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
注:第一次添加用时要使用“-c”参数,以后再添加用户就不需在使用“-c”。
 
5、设置Nagios开机启动
[root@localhost nagios-3.2.0]# chkconfig --add nagios
[root@localhost nagios-3.2.0]# chkconfig nagios on
 
6、修改selinux设置
两种方法: 
 (1) 直接关闭selinux
[root@localhost nagios-3.2.0]# cat /etc/sysconfig/selinux
SELINUX=disabled
[root@localhost nagios-3.2.0]# setenforce 0 
(2)根据selinux提示的结果设置selinux
chcon -R -t httpd_sys_content_t /usr/local/nagios/share/
chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ 
 
三、安装Nagios插件Nagios-plugin
Nagios-plugin插件提供了很多监控的模版,也可以自己手写。
[root@localhost ~]# tar xvf nagios-plugins-1.4.14.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/nagios-plugins-1.4.14/
[root@localhost nagios-plugins-1.4.14]# ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios  --with-nagios-group=nagios 
[root@localhost nagios-plugins-1.4.14]# make && make install
 
四、安装nrpe
    第一部分是主机外监控,比如:主机是否存活,WEB服务是否正常,MySQL服务是否正常等内容,再主机外通过访问
其端口即可得知。这些监控命令再安装 nagios-plugins-1.4.13.tar.gz时已经生成了,再/usr/local/nagios/libexec 
目录下。 
    第二部分是主机内监控,比如:要监控服务器的进程、磁盘使用等功能。这些功能的实现要依靠nrpe了,nrpe的工
作模式是C/S模式,在被监控主机中,开启nrpe监听,当听到监控服务器上所发出的命令,让它检查该服务器上的硬盘
使用信息时,它就会执行,并把信息传回,监控服务器。 
 
2、安装nrpe
[root@localhost ~]# tar xvf nrpe-2.12.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/nrpe-2.12/
[root@localhost nrpe-2.12]# ./configure 
[root@localhost nrpe-2.12]# make all
[root@localhost nrpe-2.12]# make install-plugin
[root@localhost nrpe-2.12]# make install-daemon
[root@localhost nrpe-2.12]# make install-daemon-config
[root@localhost nrpe-2.12]# make install-xinetd
 
3、配置nrpe
[root@localhost nrpe-2.12]# vim /etc/xinetd.d/nrpe 
# default: on
# description: NRPE (Nagios Remote Plugin Executor)
service nrpe
{
        flags           = REUSE
        socket_type     = stream
        port            = 5666
        wait            = no
        user            = nagios
        group           = nagios
        server          = /usr/local/nagios/bin/nrpe
        server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = 127.0.0.1 192.168.0.10 192.168.0.9
}
在only_from 添加要监控的主机的IP地址,中间以空格隔开。
 
4、添加端口
[root@localhost nrpe-2.12]# vim /etc/services  最后
nrpe 5666/tcp #nrpe
 
5、重新启动xinetd服务
[root@localhost nrpe-2.12]# service xinetd restart
[root@localhost nrpe-2.12]# netstat -anplt | grep 5666 | grep -v grep 
tcp        0      0 0.0.0.0:5666                0.0.0.0:*                   LISTEN      23187/xinetd     
 
6、修改配置文件commands.cfg加入对nrpe的支持
[root@UnixHot ~]# vi /usr/local/nagios/etc/objects/commands.cfg 
#nrpe set 
define command{ 
command_name check_nrpe 
command_line /usr/local/nagios/libexec/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ 
}
还可自行添加例如:
#ntp set
define command{ 
command_name check_ntp
command_line /usr/local/nagios/libexec/check_ntp -H $HOSTADDRESS
}
 
7、nrpe监控的模版
[root@localhost ~]# vim /usr/local/nagios/etc/nrpe.cfg
(默认有下面四个命令) 
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10 
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/hda1 
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z 
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200 
可以添加,例如:
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%
command[check_mem]=/usr/local/nagios/libexec/check_mem -w 80% -c 90%
command[check_gwapp_cm]=/usr/local/nagios/libexec/check_gwapp_cm
command[check_gwapp_cu]=/usr/local/nagios/libexec/check_gwapp_cu
command[check_gwapp_cnn]=/usr/local/nagios/libexec/check_gwapp_cnn
 
8、如何使用nrpe监控
在services.cfg里面添加服务“check_command check_nrpe!check_load
”即可,例:
define service { 
host_name Nagios-Server 
service_description check_load 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_load
 
五、检测主机是否存活
1、配置文件概述
如果安装上面的步骤,安装完成后,配置文件在安装时放在了/usr/local/nagios/etc/目录下 
[root@localhost ~]# cd /usr/local/nagios/
[root@localhost nagios]#l1 
-rw-rw-r-- 1 nagios nagios 11408 08-30 11:55 cgi.cfg (CGI配置文件) 
-rw-r--r-- 1 root root 26 08-30 11:56 htpasswd.users (Apache的验证密码文件) 
-rw-rw-r-- 1 nagios nagios 43776 08-30 11:55 nagios.cfg (主配置文件) 
drwxrwxr-x 2 nagios nagios 4096 08-30 11:55 objects (对象定义文件目录) 
-rw-rw---- 1 nagios nagios 1340 08-30 11:55 resource.cfg (资源配置文件) 
我们修要修改的的是nagios.cfg 和 objects 目录下的文件,来检测主机是否存活。
 
2、主配置文件nagios.cfg的配置
主配置文件的内容很多,对于这个版本,我们需要修改和添加的主要是对象配置文件,即:cfg_file=<file_name> 
cfg_file=/usr/local/nagios/etc/objects/commands.cfg (命令定义文件) 
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg (联系人信息定义文件) 
cfg_file=/usr/local/nagios/etc/objects/contactgroups.cfg (添加此行 联系人组定义文件) 
cfg_file=/usr/local/nagios/etc/objects/hosts.cfg (添加此行 主机定义文件) 
cfg_file=/usr/local/nagios/etc/objects/hostgroups.cfg (添加此行 主机组定义文件) 
cfg_file=/usr/local/nagios/etc/objects/services.cfg (添加此行 服务定义文件) 
cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg (时间周期定义文件) 
cfg_file=/usr/local/nagios/etc/objects/templates.cfg 
# Definitions for monitoring the local (Linux) host 
#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg (注释掉此行)
 
3、主机定义文件的配置
[root@localhost etc]# vi objects/hosts.cfg 
define host{ 
            host_name Nagios-Server 
            alias Nagios Server 
            address 192.168.0.11 
            check_command check-host-alive 
            check_interval 5 
            retry_interval 1 
            max_check_attempts 5 
            check_period 24x7 
            process_perf_data 0 
            retain_nonstatus_information 0 
            contact_groups sagroup 
            notification_interval 30 
            notification_period 24x7 
            notification_options d,u,r 
          } 
define host{ 
            host_name Linux-Server 
            alias Test Server 
            address 192.168.0.10 
            check_command check-host-alive 
            check_interval 5 
            retry_interval 1 
            max_check_attempts 5 
            check_period 24x7 
            process_perf_data 0 
            retain_nonstatus_information 0 
            contact_groups sagroup 
            notification_interval 30 
            notification_period 24x7 
            notification_options d,u,r 
          } 
define host{ 
            host_name Win-Server 
            alias Test Server 
            address 192.168.0.9 
            check_command check-host-alive 
            check_interval 5 
            retry_interval 1 
            max_check_attempts 5 
            check_period 24x7 
            process_perf_data 0 
            retain_nonstatus_information 0 
            contact_groups sagroup 
            notification_interval 30 
            notification_period 24x7 
            notification_options d,u,r 
          } 
 
4、主机组定义文件的配置
[root@localhost etc]# vi objects/hostgroups.cfg 
define hostgroup { 
hostgroup_name System-Admin 
alias system Admin 
members Nagios-Server,Linux-Server,Win-Server
在“members”后面添加以逗号分割。
 
5、服务定义文件的配置
[root@localhost etc]# vi objects/services.cfg 
#--------------------------Nagios-Server----------------------------------#
define service { 
host_name Nagios-Server 
service_description check-host-alive 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check-host-alive 
define service { 
host_name Nagios-Server 
service_description check-ssh 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_ssh 
define service { 
host_name Nagios-Server 
service_description check_load 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_load
define service { 
host_name Nagios-Server 
service_description check_mem
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_mem
define service { 
host_name Nagios-Server 
service_description check_users
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_users
}
define service { 
host_name Nagios-Server 
service_description check_total_procs
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_total_procs
}
define service { 
host_name Nagios-Server 
service_description check_zombie_procs
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_zombie_procs
}
#--------------------------Linux-Server----------------------------------#
define service { 
host_name Linux-Server 
service_description check-host-alive 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check-host-alive 
define service { 
host_name Linux-Server 
service_description check-ssh 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_ssh 
define service { 
host_name Linux-Server 
service_description check_load 
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_load
define service { 
host_name Linux-Server 
service_description check_mem
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_mem
define service { 
host_name Linux-Server 
service_description check_users
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_users
}
define service { 
host_name Linux-Server 
service_description check_total_procs
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_total_procs
}
define service { 
host_name Linux-Server 
service_description check_zombie_procs
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nrpe!check_zombie_procs
}
 
6、联系人定义文件配置
define contact{ 
contact_name nagiosadmin 
use generic-contact 
alias Nagios Admin 
service_notification_period 24x7 
host_notification_period 24x7 
service_notification_options w,u,c,r 
host_notification_options d,u,r 
service_notification_commands notify-service-by-email  这个命令在command.cfg中定义 
host_notification_commands notify-host-by-email        这个命令在command.cfg中定义 
email 187101*****@139.com 
}
 
7、联系组定义文件配置
[root@localhost etc]# vi objects/contactgroups.cfg 
define contactgroup { 
 
contactgroup_name sagroup 
alias system administrator group 
members nagiosadmin 
 
8、修改目录的所有者
[root@localhost etc]# chown -R nagios:nagios objects/ 
 
9、检测配置文件是否正确
[root@localhost etc]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 
Total Warnings: 0 
Total Errors: 0  
如果都是0说明配置成功了,如果有错误,可根据提示信息查找相关错误。 
 
10、启动Nagios服务
[root@localhost etc]# service httpd start
[root@localhost etc]# service nagios start
在浏览器输入网址: http://192.168.0.11/nagios/
 
六、Nagios监控Linux客户端的配置
1、添加Nagios用户
[root@localhost ~]# useradd -s /sbin/nologin nagios
 
2、安装Nagios插件nagios-plugin
Nagios-plugin插件提供了很多监控的模版,也可以自己手写。
[root@localhost ~]# tar xvf nagios-plugins-1.4.14.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/nagios-plugins-1.4.14/
[root@localhost nagios-plugins-1.4.14]# ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios  --with-nagios-group=nagios 
[root@localhost nagios-plugins-1.4.14]# make && make install
 
3、安装nrpe
[root@localhost ~]# tar xvf nrpe-2.12.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/nrpe-2.12/
[root@localhost nrpe-2.12]# ./configure 
[root@localhost nrpe-2.12]# make all
[root@localhost nrpe-2.12]# make install-plugin
[root@localhost nrpe-2.12]# make install-daemon
[root@localhost nrpe-2.12]# make install-daemon-config
[root@localhost nrpe-2.12]# make install-xinetd
 
4、配置npre
[root@localhost nrpe-2.12]# vim /etc/xinetd.d/nrpe 
# default: on
# description: NRPE (Nagios Remote Plugin Executor)
service nrpe
{
        flags           = REUSE
        socket_type     = stream
        port            = 5666
        wait            = no
        user            = nagios
        group           = nagios
        server          = /usr/local/nagios/bin/nrpe
        server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = 127.0.0.1 192.168.0.10 192.168.0.9
}
在only_from 添加监控服务器主机的IP地址。
 
5、添加端口
[root@localhost nrpe-2.12]# vim /etc/services  最后
nrpe 5666/tcp #nrpe
 
6、重新启动xinetd服务
[root@localhost nrpe-2.12]# service xinetd restart
[root@localhost nrpe-2.12]# netstat -anplt | grep 5666 | grep -v grep 
tcp        0      0 0.0.0.0:5666                0.0.0.0:*                   LISTEN      23187/xinetd     
 
7、修改文件的所有者
[root@localhost ~]# chown -R nagios:nagios /usr/local/nagios 
[root@localhost ~]# /etc/init.d/xinetd restart 
 
七、Nagios监控Windows客户端
1、监控服务器的配置
对与Nagios监控服务器不需要什么其它的配置,添加services.cfg即可。 
监控Windows 2003 Server的配置 例:
#-------------------------Win-Server----------------------------------------#
define service { 
host_name Win-Server 
service_description System Load
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nt!CPULOAD!-l 5,80,90 
define service { 
host_name Win-Server 
service_description Memory Usage
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nt!MEMUSE!-w 80 -c 90 
define service { 
host_name Win-Server 
service_description Disk-C Usage
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 
define service { 
host_name Win-Server 
service_description Disk-D Usage
check_period 24x7 
max_check_attempts 4 
normal_check_interval 3 
retry_check_interval 2 
contact_groups sagroup 
notification_interval 10 
notification_period 24x7 
notification_options w,u,c,r 
check_command check_nt!USEDDISKSPACE!-l d -w 80 -c 90 
 
2、监控客户端的配置
安装NSClient++ 
http://sourceforge.net/projects/nscplus/ 
下载后,双击运行即可,安装时会提示输入Nagios服务器的IP地址,安装完成后选中启动服务即可。
注:红色方块内填写Nagios监控服务器的IP地址。
 
3、效果图
八、nagios配置信息讲解
1、Nagios主机配置
  1.主机的配置:故名思议把需要监控的主机放在该文件里,在Nagios的监控界面上就会存在这些主机,当然,还有一
些其它的设置: 
  
define host{ 
             host_name Nagios-Server #设置主机的名字,该名字会出现在hostgroups.cfg和services.cfg中。 
             alias Nagios Server     #一个别名而已 
             address 192.168.0.11   #被监控主机的IP地址 
             check_command check-host-alive  #检查的命令 
             check_interval 1        #检查的时间间隔 
             retry_interval 1 
             max_check_attempts 5 
             check_period 24x7       #检查的时间段,一般的服务器都是7x24 
             process_perf_data 0 
             retain_nonstatus_information 0 
             contact_groups sagroup  #设置联系人组,当该主机出现了报警信息,就发信息给这个组 
             notification_interval 10  #提醒的时间间隔,这个单位是分钟哦,看过一些文档写是秒,用够就知道了。 
             notification_period 24x7   #提醒的时间段 
             notification_options d,u,r 
}
 
2、主机组的配置
   分组是很有必要的,可以根据操作系统类型,功能、区域等等很多进行有效的分组,才能达到预期的目的。
define hostgroup { 
                      hostgroup_name System-Admin  #组名字,可以根据应用调整 
                      alias system Admin 
                      members Nagios-Server,Linux-Server,Win-Server
#组成员用逗号隔开,这里的组成员是hosts.cfg定义的“host_name”这个的值。 
 
3、服务的配置
服务的配置是很重要的,也是配置最多的地方,对与每个主机要监控的服务,都在这个文件中列出,
还好的是并不复杂,只需修改“host_name”、“service_description、check_command”等一些字段。 
  
define service { 
               host_name         Nagios-Server         #主机名字,hosts.cfg中定义的 
               service_description check-host-alive    #所监控服务的描述,至于怎么描述合理,就只有发挥你的主   
                                                        观能动性了。 
               check_period 24x7     #检查的时间段 
               max_check_attempts 4 
               normal_check_interval 3 
               retry_check_interval 2 
               contact_groups sagroup 
               notification_interval 10 
               notification_period 24x7     #提醒的时间段 
               notification_options w,u,c,r  #在这四种情况下,通知联系人。 
               check_command check-host-alive   #检查的命令,在command.cfg中定义 
                } 
    w—报警(warning) 
    u—未知(unkown) 
    c—严重(critical) 
    r—从异常情况恢复正常 
 
4、联系人的配置
  联系人,顾名思义就是管理员了,根据值班的时间定义了。 
  
    define contact{ 
                   contact_name nagiosadmin  #联系人的名字 
                   alias Nagios Admin   #别名 
                   service_notification_period 24x7  #服务报警的时间段 
                   host_notification_period 24x7     #主机报警的时间段 
                   service_notification_options w,u,c,r #同上,就是在这四种情况下报警。 
                   host_notification_options d,u,r  #同上。 
                   service_notification_commands notify-service-by-email  #服务报警发消息的命令,在command.cfg中定义。 
                   host_notification_commands notify-host-by-email  #主机报警发消息的命令,在command.cfg中定义。 
                   email 187101*****@139.com  #给谁发email呢。 
            } 
 
5、联系人组配置
  联系组,定义哪些联系人分为一个组。
  
define contactgroup {    
                    contactgroup_name sagroup    #组名称
                    alias system administrator group  #组别名
                    members nagiosadmin  #组成员
        }