Nagios и ошибка проверки PINGа

В какой то момент нагиос стал хаотично выдавать по разным сервисам в разное время ошибку:

CRITICAL — popen timeout received, but no child process

При этом ошибка не связана с реальной доступностью сервиса, все работало как положено.

Так вот, решение как оказалось простое — для проверки на пинг нужно отключить протокол IPv6.

Для этого открываем на редактирование файл /path/to/nagios/objects/commands.cfg

И там ищем два блока:

define command{
        command_name    check-host-alive
        command_line    $USER1$/check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5
        }

и

define command{
        command_name    check_ping
        command_line    $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
        }

И редактируем их до такого вида:

define command{
        command_name    check-host-alive
        command_line    $USER1$/check_ping -4 -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5
        }

и

define command{
        command_name    check_ping
        command_line    $USER1$/check_ping -4 -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
        }

То есть, всего лишь добавляем опцию -4, которая указывает, что нужно использовать только протокол IPv4.

После этого перезапуск нагиоса и проблема решена.

service nagios reload

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Post Navigation