在nrpe_local.cfg
添加以下命令:
command[check_mycommand]=/usr/lib/nagios/plugins/check_command 30 35
然后重新启动nrpe守护程序。
当我使用nrpe
执行此命令时,我收到以下错误:
NRPE: Command 'check_mycommand' not defined
我使用以下命令执行:
/usr/lib/nagios/plugins/check_nrpe -H hostname -c check_mycommand
我无法得到任何线索。
在我的nrpe_local.cfg
中,又添加了10个命令并且它们正常运行。
答案 0 :(得分:3)
您好我通过在配置文件中添加本地地址来解决此问题,因此nrpe.cfg
allowed_host = 127.0.0.1
,xxxx
其中xxxx
是我的 nagios服务器的IP 。
您还应该定义命令[check_disk]=/usr/lib/nagios/plugins/check_disk-w 20%-c 10%-p /var
非常重要,命令名称[check_disk]
与路径上指示的名称相同
多亏了这一点,我的问题得到了解决,我现在有了很好的监控。
YilmarHernández
答案 1 :(得分:3)
nrpe.cfg
中的命令应如下所示:
command[check_mycommand]=/usr/lib/nagios/plugins/check_command -w $ARG1$ -c $ARG2$
然后,您在services.cfg
文件(或其名称)中的服务检查应如下所示:
define service{
servicegroups Basic Functionality
host_name localhost
service_description Mycommand
check_command check_nrpe!check_mycommand -a '-w 30 -c 35'
use generic-service
}
如果它解决了您的问题,请告诉我。
答案 2 :(得分:2)
在我的nrpe_local.cfg中添加了以下命令:>
command[check_mycommand]=/usr/lib/nagios/plugins/check_command 30 35
尝试:
command[check_mycommand]=/usr/lib/nagios/plugins/check_command -w (warningTreshold) -c (criticalTreshold)
/etc/init.d/nagios-nrpe-server restart
确实杀死了已经运行的所有其他nrpe守护进程。 原因可能是它已经由不同的用户运行,这可能会导致冲突。 例如。 nagios-nrpe-server在用户root和用户nagios下运行
还要确保将Nagios服务器的IP地址添加到/etc/nagios/nrpe.cfg中的allowed_hosts:
allowed_hosts=<ip address of nagios server>
否则,您将无法使用Nagios的NRPE执行外部命令。
答案 3 :(得分:1)
您是否使用正确的配置文件启动了NRPE守护程序? (nrpe -c config_file -d) 你在那里使用的配置文件是nagios_local.conf还是nrpe_local.cfg?
答案 4 :(得分:1)
答案 5 :(得分:1)
我已通过在nrpe.cfg
文件中添加以下行并重新启动nrpe
来解决此问题。基本上,我们告诉nagios识别我们正在运行的命令。
command[check_var]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /var
command[check_slash]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh $ARG1$
答案 6 :(得分:1)
您好我得到了这个错误并且能够解决它: 在/etc/nagios/nrpe.cfg中你会看到:
command[check_var]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /var
command[check_slash]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh $ARG1$
但是我确定你已经被设定了: commend.cfg with:check_disk而不是check_slash
看到这条线说&#34;命令[check_slash]&#34;这就是command.cfg想要得到的。
答案 7 :(得分:0)
我有一个类似的问题并且在syslog中检查我可以看到nrpe在/ var / run /
中有写入问题Nov 6 08:30:05 xxxxxx nrpe[39777]: Cannot write to pidfile '/var/run/nrpe.pid' - check your privileges.
我在这里找到了:
https://bugs.launchpad.net/ubuntu/+source/nagios-nrpe/+bug/957367
解决方案很简单。只需编辑nrpe.cfg并更改:
pid_file=/var/run/nrpe.pid
到
pid_file=/var/run/nagios/nrpe.pid
手动杀死nrpe并使用/etc/init.d/nagios-nrpe-server start再次启动它
它对我有用。
答案 8 :(得分:0)
可能会帮助某人。
就我而言,问题出在错字。
我创建了文件/etc/nrpe.d/commands.cgf
而不是/etc/nrpe.d/commands.cfg
;)