Nagios:NRPE:无法读取输出

时间:2015-11-29 19:00:15

标签: linux nagios centos7

我在同一台服务器(CentOs 7)上安装了Nagios和NRPE插件。

像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$

输出messages.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

有人有提示吗?感谢

1 个答案:

答案 0 :(得分:0)

在命令配置文件/usr/local/nagios/etc/objects/commands.cfg中 而不是 $ USER1 $ 尝试使用绝对路径 - / usr / local / nagios / libexec /

重新启动Nagios服务并检查。

我在你的问题中发现的另一件事是你说“check_disk工作正常,但我的手动安装的插件总是出错”并在你的 /usr/local/nagios/etc/nrpe.cfg file有 check_disk 命令command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20 -c 10的配置,但没有 check_cpu 命令的配置。因此,当您尝试执行此/usr/local/nagios/libexec/check_nrpe -H localhost -c check_cpu -a 20 10时,它实际上会查询您的 nrpe.cfg 文件,并找到 no check_cpu命令配置。 只需在nrpe.cfg文件中添加 check_cpu的配置,然后就可以了。