我在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 . 它看起来很好
'check_ping'命令定义
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
...
}
谢谢!
2 回答
您可以将nagios selinux上下文设置为允许模式,如下所示:
没有意义完全禁用selinux .
在NagiosSupport的帮助下,我们发现SELinux处于导致问题的“强制”模式 . 通过运行shell命令setenforce = 0将其设置为“permissive”,现在一切正常 .