我已经在同一台服务器上安装了nagios和nrpe插件(centos 7)。
像check_disk这样的预安装服务运行良好,但我手动安装的插件总是会出现以下错误:
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_cpu -a 20 10
NRPE: Unable to read output
/usr/local/nagios/etc/objects/localhost.cfg:
define service{
use local-service
host_name localhost
service_description CPU
check_command check_cpu!20!10
notifications_enabled 0
}
/usr/local/nagios/etc/objects/commands.cfg
define command {
command_name check_cpu
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c check_cpu -t 30 -a $ARG1$ $ARG2$
}
/usr/local/nagios/etc/nrpe.cfg文件
command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20 -c 10
command[check_procs]=/usr/local/nagios/libexec/check_procs -w 30 -c 200
command[check_cpu]=/usr/local/nagios/libexec/check_cpu_perf.sh -w $ARG1$ -c $ARG2$
command[check_procs_cron]=/usr/local/nagios/libexec/check_procs -a cron
command[check_mem]=/usr/local/nagios/libexec/check_mem_ng.sh -w $ARG1$ -c $ARG2$
输出消息.log
Nov 29 19:52:03 localhost xinetd[25346]: START: nrpe pid=25575 from=::ffff:127.0.0.1
Nov 29 19:52:03 localhost nrpe[25575]: INFO: SSL/TLS initialized. All network traffic will be encrypted.
Nov 29 19:52:03 localhost xinetd[25346]: EXIT: nrpe status=0 pid=25575 duration=0(sec)
其他信息:
/etc/xinetd.d/nrpe
的输出:# default: on
# description: NRPE (Nagios Remote Plugin Executor)
service nrpe
{
flags = REUSE
socket_type = stream
port = 5666
wait = no
user = nagios
group = nagios
server = /usr/local/nagios/bin/nrpe
server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd
log_on_failure += USERID
disable = no
only_from = 127.0.0.1
}
从
netstat -at | grep nrpe
输出:tcp 0 0 localhost:51424 localhost:nrpe TIME_WAIT
tcp6 0 0 [::]:nrpe [::]:* LISTEN
有人有线索吗?谢谢
最佳答案
在命令配置文件中/usr/local/nagios/etc/objects/commands.cfg
而不是$user1$try和绝对路径-/usr/local/nagios/libexece/
重新启动nagios服务并检查。
我在你的问题中发现的另一件事是你说“check_disk work fine,but my manually intalled plugins always end with error”,在你的/usr/local/nagios/etc/nrpe.cfg文件中有check_disk commandcommand[check_disk]=/usr/local/nagios/libexec/check_disk -w 20 -c 10
的配置,但是没有check_cpu command的配置。因此,当您尝试执行这个/usr/local/nagios/libexec/check_nrpe -H localhost -c check_cpu -a 20 10
时,它实际上查询了nrpe.cfg文件,但没有找到check_cpu命令配置。
只需在nrpe.cfg文件中添加check_cpu的配置,它就可以工作了。
关于linux - Nagios:NRPE:无法读取输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33986728/