nagios server :10.45.30.226
nrpe client :10.45.25.111
在client端建立测试脚本,并在nagios server端测试通信是否成功,结果报错
[root@monitor-svr libexec]# ./check_nrpe -H 10.45.25.111 -c check_test
NRPE: Unable to read output
NRPE: Unable to read output
出现此报错按照以下思路解决,首先 确保server端/usr/local/nagios/etc/object/下的localhost里增加了host、serve. 并确保command里增加了check_nrpe的配置
(注:lz由于监控client的脚本有参数的,有直接执行结果的,故在command中增加了2个check_nrpe的配置,此方法比较蠢,如果有高手用过兼容两种的方法请分享)
其次:确保nrpe client端的nrpe.cfg中增加了command的配置
-w 和-c分别是warning和critical的阈值
如果以上都没问题,
再保证nrpe clinet端的/usr/local/nagios/libexec/下的脚本的权限
保证chmod 755 check_test 和chown nagios:nagios check_test
最后,如果还没有解决问题,确保你的脚本中是否涉及到用户切换,否则权限问题导致无法执行,比如需要在root缺陷下执行,需要visudo
将allow root to run any commands anywhere
涉及到tty
最后在nagios server端的command中增加sudo 即可