如何解决Nagios Check NRPE和执行脚本显示不同的输出
通过check_nrpe执行脚本并从本地服务器执行脚本时,将显示两个不同的输出。
脚本与此类似。
url="http://xxx.xxx.xxx.xxx:5000/v2/_catalog";
status="$(curl --write-out %{http_code} --silent --output /dev/null $url)"
if [ "$status" = 200 ]
then
echo "OK"
exit 0
else
echo "Not responding.Please check."
exit 2
fi
直接从本地服务器执行此脚本文件时,它将生成以下输出
[root@xxxxxlibexec]$ ./check.sh
OK
但是,当我通过check_nrpe从Nagios Core服务器执行此操作时,它将生成else块。
[root@xxxxx libexec]# ./check_nrpe -H xxx.xxx.xxx.xxx -p 5667 -c check_registry
Not responding.Please check.
NRPE CFG命令如下。
command[check_registry]=/usr/local/nagios/libexec/check.sh
我尝试重新启动NRPE和Nagios Core。还要仔细检查权限问题。
解决方法
这是由于curl和libcurl不匹配。 nagios用户无法正确卷曲。将包降级为相同的包。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。