Nagios分布式配置
1.1 Nagios主服务器端
1.1.1 NSCA插件安装与配置
[root@Nagios-Server ~]# cd /usr/local/src
[root@Nagios-Server ~]#tar --zxvf nsca-2.7.2.tar.gz
[root@Nagios-Server ~]#./configure&&make all
1>拷贝nsca相关文件至nagios目录
cp sample-config/nsca.cfg /usr/local/nagios/etc/
cp src/nsca /usr/local/nagios/bin/
2>然后将它们的权限都改成nagios.nagios(chown)
[root@Nagios-Server ~]#.chown nagios:nagios /usr/local/nagios/etc/nsca.cfg
[root@Nagios-Server ~]#.chown nagios:nagios /usr/local/nagios/bin/nsca
3>配置nsca.cfg(中心端)、send_nsca.cfg(分布端)中的password,与主监机的一致
[root@Nagios-Server ~]#vi /usr/local/nagios/etc/nsca.cfg
password=xxx
4>开启nsca程序
[root@Nagios-Server ~]#/usr/local/nagios/bin/nsca --c /usr/local/nagios/etc/nsca.cfg
5>开启防火墙5667端口
方式一:iptables --I RH-Firewall-1-INPUT --m state --state NEW --m tcp --p tcp --dport 5667 --j ACCEPT
方式二:添加服务端口
[root@Nagios-Server ~]# vi /etc/services
nsca 5667/tcp
重启服务并验证安装:
/etc/init.d/xinetd restart
netstat --na | grep 5667
1.1.2修改主配置文件
[root@Nagios-Server ~]#vi /usr/local/nagios/etc/nagios.cfg
check_external_commands=1
accept_passive_service_checks=1
accept_passive_host_checks=1
是否关闭自主检测:execute_service_checks<0/1>0为关闭自主检测,该选项可选
1.1.3修改服务与主机的监控
以下配置示例,该示例定义的服务与主机应该与分布式服务端相同
define host
define service
1.2分布式服务端
1.2.1 NSCA插件安装与配置
[root@Nagios-Server ~]# cd /usr/local/src
[root@Nagios-Server ~]#tar --zxvf nsca-2.7.2.tar.gz
[root@Nagios-Server ~]#./configure&&make all
1>拷贝nsca相关文件至nagios目录
cp sample-config/send_nsca.cfg /usr/local/nagios/etc/
cp src/send_nsca /usr/local/nagios/bin/
2>然后将它们的权限都改成nagios.nagios(chown)
[root@Nagios-Server ~]#.chown nagios:nagios /usr/local/nagios/etc/send_nsca.cfg
[root@Nagios-Server ~]#.chown nagios:nagios /usr/local/nagios/bin/send_nsca
3>配置nsca.cfg(中心端)、send_nsca.cfg(分布端)中的password,与主监机的一致
[root@Nagios-Server ~]#vi /usr/local/nagios/etc/send_nsca.cfg
password=xxx
1.2.2修改主配置文件
[root@Nagios-Server ~]#vi /usr/local/nagios/etc/nagios.cfg
enable_notifications=0
obsess_over_services=1
ocsp_command=submit_service_check_result
obsess_over_hosts=1
ochp_command=submit_host_check_result
1.2.3创建submit_service_check_restult脚本
[root@Nagios-Server ~]#vi /usr/local/nagios/libexec/submit_service_check_result
return_code=-1
case “$3” in
OK)
return_code=0
;;
WARNING)
return_code=1
;;
CRITICAL)
return_code=2
;;
UNKOWN)
return_code=-1
;;
esac
/usr/bin/printf “%s\t%s\t%s\t%s\n” “$1” “$2” “$return_code” “$4” | /usr/local/nagios/bin/send_nsca --H ip(主服务器端的ip) --c /usr/local/nagios/etc/send_nsca.cfg
1.2.4创建submit_host_check_restult脚本
[root@Nagios-Server ~]#vi /usr/local/nagios/libexec/submit_host_check_result
return_code=-1
case “$2” in
UP)
return_code=0
;;
DOWN)
return_code=1
;;
UNREACHABLE)
return_code=2
;;
esca
/usr/bin/printf ”%s\t%s\n” “$1” “$return_code” “$3” | /usr/local/nagios/bin/send_nsca --H 1.1.1.1(修改为主服务端的ip) -c
/usr/local/nagios/etc/send_nsca.cfg
1.2.5修改权限
[root@Nagios-Server ~]#
chmod +x /usr/local/nagios/libexec/submit_service_check_result
[root@Nagios-Server ~]#
chown nagios.nagios /usr/local/nagios/libexec/submit_service_check_result
[root@Nagios-Server ~]#
chmod +x /usr/local/nagios/libexec/submit_host_check_result
[root@Nagios-Server ~]#
chown nagios.nagios /usr/local/nagios/libexec/submit_host_check_result
1.2.6修改commands文件
在command.cfg文件中定义submit_service_check_result,submit_host_check_result命令
[root@Nagios-Server ~]#vi /usr/local/nagios/etc/objects/commands.cfg
define command
define command
1.2.7配置主机和服务
当分布式服务端定义了主机和服务时,同样需要在主服务端定义一次,有下几个参数无需在分布式服务端特殊定义。
check_freshness,freshness_threshold,passive_check_enabled,active_check_enabled
define host
define service