Назад | Перейти на главную страницу

Nagios не возвращает данные из плагина, только check_apt

У меня очень странная проблема с Nagios. По какой-то причине кажется, что check_apt не работает, и я не знаю почему. Он действует так, как будто вообще не выполняет проверку.

У меня nrpe работает на разработке коробки, и все другие проверки работают нормально. На коробке с установленным nagios определение выглядит следующим образом.

define service{
    use                             generic-service         
    host_name                       development
    service_description             APT
    check_command                   check_nrpe!check_apt
    }

При «разработке» nrpe.cfg содержит следующую строку.

command[check_apt]=/usr/lib/nagios/plugins/check_apt -n

Кроме того, если я нахожусь на коробке с установленным Nagios и выполняю следующее, он работает!

/usr/lib/nagios/plugins/check_nrpe -H development -c check_apt

который возвращается

APT OK: 0 packages available for upgrade (0 critical updates).

Итак, что здесь не так? Казалось бы, другие плагины NRPE работают нормально, только APT, похоже, не работает, и запуск его вручную на коробке, похоже, работает. Предложения?

Проблема, которую я обнаружил, была в описании службы, хотя я думаю, что в Nagios есть ошибка или опция, которая не указана. Выходные данные отладки показали, что фактическая командная строка запускается в NRPE.

/usr/lib/nagios/plugins/check_nrpe -H server.mechsoft-vps1.com -c check_mysqld -a

Проблема здесь в том, что -a требует параметра. Однако проверка этого не делает. Изменение определения службы для добавления параметра устранило проблему.

define service{
    use                             generic-service         
    host_name                       development
    service_description             APT
    check_command                   check_nrpe!check_apt!1
    }

Попробуйте включить отладку в файле конфигурации nrpe nrpe.conf на вашем хосте разработки. Установите debug = 1, перезапустите nrpe, если он запущен как демон, и проверьте свой / var / log / messages или файл журнала nagios на наличие ошибок. Вы можете запланировать немедленную проверку вашей команды check_apt из веб-интерфейса Nagios.

Также попробуйте запустить с консоли с «правильным» пользователем, не как root, а как пользователь nagios. Или ваш nagios работает под root? В наших системах nagios работает как пользовательский nagios.

Если ваш nagios работает под пользователем nagios, попробуйте:

su -c '/ usr / lib / nagios / plugins / check_nrpe -H development -c check_apt' nagios

Ричард