希望你们能发现我这里遗漏了什么。我无法让简单的 check_uptime 插件在 Nagios 中工作。
当我使用以下命令调用插件的帮助时:
/usr/local/nagios/libexec/check_uptime -h
结果是:
usage: /usr/local/nagios/libexec/check_uptime [-c OPTION]
This script checks uptime and optionally verifies if the uptime
is below MINIMUM or above MAXIMUM uptime treshholds
OPTIONS:
-h Help
-c CRITICAL MIN uptime (minutes)
-w WARNING MIN uptime (minutes)
-C CRITICAL MAX uptime (minutes)
-W WARNING MAX uptime (minutes)
-V Version
因此,我尝试在 nagios linux 服务器和 linux 客户端上实现此插件。我基本上希望该插件在名为机器1在格式中
check_uptime -w 15 -c 30
该插件在服务器和客户端上均可正常执行。该插件也存在于 /usr/local/nagios/libexec/check_uptime 下。
这是我的设置:
在服务器:
我将以下内容附加到/usr/local/nagios/etc/objects/commands.cfg
# 'check_uptime' command definition for linux hosts
define command{
command_name check_uptime
command_line $USER1$/check_uptime -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$
}
我将以下内容附加到/usr/local/nagios/etc/objects/hosts/machine1.cfg:
define service{
use generic-service
host_name machine1
service_description Uptime
check_command check_uptime
}
在机器1:
我将其附加到/usr/local/nagios/etc/nrpe.cfg:
command[check_uptime]=/usr/local/nagios/libexec/check_uptime -w 15 -c 30
然后我通过运行以下命令测试服务器上的配置:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
我收到 0 条警告和 0 条错误,但 Nagios 控制台上该服务显示为未知。
我错过了什么?
多谢你们!
答案1
没关系。我已经知道了。
看起来我必须调用 check_nrpe/usr/local/nagios/etc/objects/hosts/machine1.cfg如下:
define service{
use generic-service
host_name machine1
service_description Uptime
check_command check_nrpe!check_uptime
}
编辑:看起来,check_uptime 命令不应该在服务器端的 command.cfg 中使用 -H $HOSTADDRESS$ 参数来调用。一旦删除该参数,它就可以在服务器上运行。
希望这对其他人有帮助。
答案2
我只是想发表一下我的意见,我正在使用 Nagios Core 4.08,并且在我的commands.cfg
文件中我像这样使用它:
# comment: `check_uptime` this is to check system up time on linux boxes
define command {
command_name check_uptime
command_line $USER1$/check_uptime
}
然后host1.cfg
我做了以下事情:
# comment: Check uptime of the server
define service{
use local-service
host_name host1
service_description Uptime
check_command check_uptime
}
结果是这样的:
Uptime
OK 06-23-2015 07:52:48 0d 0h 4m 19s 1/4 Uptime OK: 7 day(s) 23 hour(s) 5 minute(s)
所以,只需简单添加,它就对我有用了。希望这对每个人都有帮助。抱歉,我不知道如何格式化。