相比与主动模式中服务器主动去被监控机上轮询获取监控数据的方式,被动模式则是在被监控机上面通过插件或脚本获取监控数据,然后将数据通过send_nsca发往监控机,最后监控机通过Nsca接收并解析数据,并传递给Nagios。这样做的一个很大的优势就是将除去处理数据的其他工作都放在了被监控机上面(包括了数据的传输),这样就避免了被监控机数量大时,一次轮询时间过长而导致监控反应延迟,这也是被动模式能承担更大监控量的关键。
在MonitorClient上面,使用nagios-plugins提供的插件,得出监控数据,然后将数据存为一个文件,利用输入重定向,通过send_nsca将数据发往MonitorServer.MonitorServer上面运行一个Nsca的守护进程(默认开5667年启端口),用来接收这些数据,然后做一个简单的处理(会和Nagios的服务文件进行对应,将多余的监控数据排除),然后将数据进行格式的转换,发给Nagios的“外部命令文件”(默认配置为“/usr/地方/Nagios/var/rw/nagios.cmd”在Nagios。cfg中定义的)。该文件是一个管道文件,也是nagios主程序的一个接口(用来接收监控数据),使用猫查看该文件时候,会出来经nsca处理后的数据格式。然后nagios主程序对数据进行处理(前台展示,警报)。
nsca(安装在MonitorServer上,用来接收并解析MonitorClient发来的监控数据,传递给nagios)
Send_nsca(安装在MonitorClient上,用来发送监控数据。)
vim/usr/local/nagios/etc/nagios.cfg
check_external_commands=1(启用,命令,文件)
command_check_interval=1(外部检查,,,命令文件尽可能经常)
vim/usr/local/nagios/etc/objects/template.cfg
定义服务{
名称,,,,,,,,,,,,,,passive_service
使用,,,,,,,,,,,,,,通用服务
max_check_attempts,,,,,,,3
active_checks_enabled,,,,,0
passive_checks_enabled,,,,1,
normal_check_interval,,,,,5
retry_check_interval,,,,,1,
notifications_enabled,,,,,1
notification_interval,,,,,5
notification_period,,,,,,24 x7
contact_groups,,,,,,,,,管理员
注册,,,,,,,,,,,,0}
vim/usr/local/nagios/etc/objects/command.cfg
定义命令{
command_name,,,,,,,,,,check_dummy
command_line,,,,,,,,,,/usr/地方/nagios/libexec check_dummy __arg1
美元}
vim/usr/local/nagios/etc/objects/XH_DemoTrade。cfg
定义服务{
使用,,,,,,,,,,passive_service
host_name,,,,,,,XH_DemoTrade
service_description,,
check_command加载,,,,,check_dummy
contact_groups,,,,,管理员
}
定义服务{
使用,,,,,,,,,,passive_service
host_name,,,,,,,XH_DemoTrade
service_description,,磁盘
check_command,,,,,check_dummy
contact_groups,,,,,管理员
}
定义服务{
使用,,,,,,,,,,passive_service
host_name,,,,,,,XH_DemoTrade
service_description,,logonService_aufront_common
check_command,,,,,check_dummy
contact_groups,,,,,管理员
}
定义服务{
使用,,,,,,,,,,passive_service
host_name,,,,,,,XH_DemoTrade
service_description,,http
check_command,,,,,check_dummy
contact_groups,,,,,管理员
}
http://nchc.dl.sourceforge.net/project/nagios/nsca wget - 2. - x/nsca 2.9.1/nsca 2.9.1.tar.gz
焦油zxvf nsca-2.9.1.tar.gz
。/配置
所有cp,。/src/nsca,/usr/地方/nagios/bin/
cp,。//nsca示例配置。cfg,/usr/地方/nagios/等
乔恩nagios。nagios,/usr/local/nagios/bin/nsca
乔恩nagios。nagios,/usr/local/nagios/etc/nsca.cfg
cp,初始化脚本,/etc/init。d/nsca
chmod + x/etc/init.d/nsca
chkconfig,——添加,nsca
vim/usr/local/nagios/etc/nsca.cfg
server_address=10.0.100.32,(这里务必使用对外表现的IP)
debug=1,,,,,,,,,,,(调试选项即日志选项,写入消息)
aggregate_writes=1,,,,,,(能够支持更大的监控量,建议开启)
max_packet_age=60,,,,,,null