使用check_apt时,Nagios中的结果会出错

时间:2014-03-27 12:10:24

标签: linux debian nagios

我有1个Nagios"主人?"和3个奴隶跑。我从所有检查中的从服务器获取正确的数据,除了check_apt,其中所有从服务器都获得主结果。

今天的情况是我将其添加到hostgroups.cfg

define hostgroup {
        hostgroup_name  system-packages
        alias           APT status on all servers
        members         *
}

并将其添加到services.cfg

define service {
        hostgroup_name                  system-packages
        service_description             APT
        check_command                   check_apt
        use                             generic-service
        notification_interval           0 ; set > 0 if you want to be renotified
}

然后当我重新启动Nagios3时,主人报告需要更新3个包,然后一段时间其他报告进入,还有3个包。

我认为没问题,他们是在同一天安装的,所以不应该有所不同。

但后来我更新了主设备上的3个软件包,并且奴隶上的警告也消失了,所以不知何故奴隶从主人那里获得结果。

当我在一个奴隶上运行check_apt命令时,它会报告正确的数据:

user@remote-system:~$ /usr/lib/nagios/plugins/check_apt
APT CRITICAL: 3 packages available for upgrade (3 critical updates).

我在日志或其他任何内容中都没有收到任何错误。真的出于想法可能是什么问题,所以欢迎任何建议。

1 个答案:

答案 0 :(得分:4)

check_apt只能显示正在运行的主机(例如localhost)的结果。

要对其他主机运行check_apt,您需要某种代理。例如NRPEcheck_by_ssh(带键)。

这适用于正在检查"内部"的任何插件。像APT,负载,内存,磁盘使用,SMART健康等等。

编辑:为了澄清,将此检查应用于system-packages的服务def需要更像这样,因为现在您在localhost上运行check_apt进行每次检查:< / p>

define service {
    hostgroup_name                  system-packages
    service_description             APT
    check_command                   check_nrpe!check_apt
    use                             generic-service
}

或者也许check_nrpe_1arg,如果使用Debian / Ubuntu打包的NRPE。