无法让 Nagios 的 check_uptime 插件运行。状态未知?

无法让 Nagios 的 check_uptime 插件运行。状态未知?

希望你们能发现我这里遗漏了什么。我无法让简单的 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) 

所以,只需简单添加,它就对我有用了。希望这对每个人都有帮助。抱歉,我不知道如何格式化。

相关内容