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

Статус хоста Icinga 1 НЕДОСТУПЕН, но все проверки в порядке

Это с распределенной средой Icinga 1.

У меня около 100 хостов на клиенте / сателлите Icinga 1, которые застряли в состоянии UNREACHABLE. Все четыре проверки для каждого хоста возвращают состояние ОК, но общее состояние устройства НЕДОСТУПНО.

Проблема могла быть вызвана тем, что я оставил работающую Icinga 1 с неправильными разрешениями для / usr / lib64 / nagios / plugins / check_icmp. (check_icmp не имеет установленного бита suid.)

Поэтому я остановил Icinga и очистил файл сохранения состояния (state_retention_file = / var / spool / icinga / retention.dat) на спутнике, и это не помогло. Если я опустошу тот же файл на мастере, может ли это помочь?

ps показывает мои сценарии submit_check_result.sh submit_host_check.sh, работающие как зомби, но они живут недолго.

Мне пришлось восстановить на клиенте скрипты пересылки чеков.

Вот битые биты.

# BEGIN submit_check_result.sh
##############################

return_code=-1

case "$3" in
    OK)
        return_code=0
        ;;
    WARNING)
        return_code=1
        ;;
    CRITICAL)
        return_code=2
        ;;
    CRITICAL)
        return_code=2
        ;;
esac
/usr/bin/printf "%s\t%s\t%s\t%s\n" "$1" "$2" "$return_code" "$4" | /usr/sbin/send_nsca -H 111.14.219.31 -c /etc/nagios/send_nsca.cfg &
# END Check_result

##############################

BEGIN submit_host_result.sh

##############################

return_code=2

case "$3" in
    OK)
        return_code=0
        ;;
    WARNING)
        return_code=1
        ;;
    CRITICAL)
        return_code=2
        ;;
    UNKNOWN)
        return_code=2
        ;;
esac

END Check_host
##############################

И вот что, похоже, устранило проблему.

кот /etc/icinga/scripts/submit_check_result.sh

return_code=-1

case "$3" in
    OK)
        return_code=0
        ;;
    WARNING)
        return_code=1
        ;;
    CRITICAL)
        return_code=2
        ;;
    UNKNOWN)
        return_code=-1
        ;;
esac

# pipe the service check info into the send_nsca program, which
# in turn transmits the data to the nsca daemon on the central
# monitoring server
# submit to master Icinga den-mon-prod

/usr/bin/printf "%s\t%s\t%s\t%s\n" "$1" "$2" "$return_code" "$4" | /usr/sbin/send_nsca -H 111.14.219.31 -c /etc/nagios/send_nsca.cfg &

кот /etc/icinga/scripts/submit_host_check.sh

return_code=-1

case "$2" in
    UP)
        return_code=0
        ;;
    DOWN)
        return_code=1
        ;;
    DOWN)
        return_code=2
        ;;
    UNREACHABLE)
        return_code=3
        ;;
esac

/usr/bin/printf "%s\t%s\t%s\t%s\n" "$1" "$2" "$return_code" "$4" | /usr/sbin/send_nsca -H 111.14.219.31 -c /etc/nagios/send_nsca.cfg &