我们最近在我们的一个 Amazon EC2 实例上设置了Nagios
它作为其他实例的监控服务器。nrpe
它安装在我们的暂存服务器上stager
,似乎运行良好:
monitoring_server~: /usr/lib/nagios/plugins/check_nrpe -H xx.xx.xx.xx -p 5666
NRPE v2.12
问题是 - 当stager
在 Nagios 管理屏幕中查看远程服务器时 - 它似乎处于“关闭”状态。
该check_ping
命令显示:
monitoring_server~: /usr/lib/nagios/plugins/check_ping -H 'xx.xx.xx.xx' -w 5000,100% -c 5000,100% -p 1
PING CRITICAL - Packet loss = 100%|rta=5000.000000ms;5000.000000;5000.000000;0.000000 pl=100%;100;100;0
有人能提供一些关于如何实现这一点的指导吗?不知道还能做什么
答案1
由于您无法 ping EC2 实例,因此您必须使用不同的插件进行主机检查。
而且由于您要使用 NRPE,因此您可以使用指向端口 5556 的 check_tcp 作为主机检查。
答案2
我知道这是一篇旧帖子,但看到我之前的评论后,谷歌搜索将这个问题排在了相当靠前的位置。在 yum 更新后,我遇到了同样的问题,希望它对某些人有用。
对我来说,暂时的解决方法是降级我刚刚更新的 iputils。
$ yum update iputils
Output
Updated: iputils-20180629-10.amzn2.aarch64
$ yum downgrade iputils
Output:
Installed: iputils-20160308-10.amzn2.0.2.aarch64
为什么它在运行时有效:
$ /usr/lib/nagios/plugins/check_ping -H 'xx.xx.xx.xx' -w 5000,100% -c 5000,100% -p 1
但在 Nagios 中不行,因为 check_ping 使用用户 nagios 运行。
您可以使用以下命令在命令行中复制该问题:
$ sudo -u nagios /usr/lib64/nagios/plugins/check_ping -H 127.0.0.1 -w 5000,100% -c 5000,100% -p 1
Output:
/usr/bin/ping -n -U -W 10 -c 1 127.0.0.1
CRITICAL - Could not interpret output from ping command
解决方案:
运行此命令:
$ sysctl -w net.ipv4.ping_group_range="0 1000"
即使在更新的 iputils 包上也允许 Nagios 组拥有足够的权限来运行 ping。