自从现在几个小时以来,我一直试图创build自己的NRPE检查,但仍然失败。 我想使用2个检查: check_load , check_disk
我的问题是,NRPE不会将检查参数转发到nrpe.cfg指定的检查。
这是我的objects-config,它定义了两个远程检查:
define service{ use local-service host_name localhost service_description Disk-Space check_command check_nrpe!check_disk!20%!10% } define service{ use local-service host_name localhost service_description CPU-Load check_command check_nrpe!check_load!0.15,0.10,0.05!0.15,0.10,0.05 }
另外,这是我对check_nrpe commands.cfg :
# define nrpe command define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ -a $ARG2$ $ARG3$ }
最后,这是我的nrpe.cfg的必要部分:
command[check_load]=/usr/local/nagios/libexec/check_load -r -w $ARG1$ -c $ARG2$ command[check_disk]=/usr/local/nagios/libexec/check_disk -w $ARG1$ -c $ARG2$
我也启用了“命令传递选项”: dont_blame_nrpe=1 。 出于testing目的,我正在监视我自己的机器: allowed_hosts=127.0.0.1,::1,10.0.0.36
我面对的错误是这些:
NRPE:命令'check_load!0.15,0.10,0.05!0.15,0.10,0.05'未定义
NRPE:命令'check_disk!20%!10%'未定义
如果我删除commands.cfg的-a $ARG1$ $ARG2$部分,则不会显示这些错误。 但是如果我在nrpe.cfg回显执行的命令,它不包含任何参数: / usr / local / nagios / libexec / check_load -r -w -c (= echo output)
我在CentOS 6上运行。具有预定义参数的标准nrpe检查工作…
有谁知道可能的解决scheme