我在CentOS 7机箱上安装了Nagios核心4.2.4来监控我的HP网络交换机。我想从最小的开始,所以这就是我安装它的方式:
yum -y install nagios nagios-plugins-all
在我的/etc/nagios/nagios.cfg中,我取消注释
cfg_dir=/etc/nagios/switches
然后我创建了这个"开关"文件夹并创建" ABCDESH01-01.cfg"在里面。它包含"定义主机"和"定义服务"用于check_ping。
define service{
use generic-service
host_name ABCDESW01-01
service_description PING
check_command check_ping!100.0,20%!200.0,60%
normal_check_interval 5
retry_check_interval 1
}
然后我用" systemctl start nagios"开始了nagios服务。然后我开始在/var/log/nagios/nagios.log
中看到重复的错误消息[1489462244] Unable to send check for host 'ABCDESW01-01' to worker (ret=-2)
[1489462424] Unable to run check for service 'PING' on host 'ABCDESW01-01'
我可以手动运行check_ping
# /usr/lib64/nagios/plugins/check_ping -H 10.0.3.131 -w 100.0,20% -c 200.0,60%
PING OK - Packet loss = 0%, RTA = 0.88 ms|rta=0.881000ms;100.000000;200.000000;0.000000 pl=0%;20;60;0
我没有触及command.cfg。它对我来说很好
define command{
command_name check_ping
command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
}
这两个"无法"错误意味着我如何修复它们?
nagios是否跟踪/var/spool/nagios/status.dat文件中的结果?现在为" servicestatus"全是0
servicestatus {
...
has_been_checked=0
check_latency=0.000
current_state=0
...
}
谢谢!
答案 0 :(得分:1)
在NagiosSupport的帮助下,我们发现SELinux处于导致问题的“强制”模式。通过运行shell命令setenforce = 0将其设置为“permissive”,现在一切正常。
答案 1 :(得分:0)
您可以将nagios selinux上下文设置为允许模式,如下所示:
# semanage permissive -a nagios_t
# semanage permissive -a nagios_script_t # for cgi
# semanage permissive -a nagios_admin_t # if you have selinux trouble with admin
没有意义完全禁用selinux。