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

Nagios / Icinga не сообщает о проблемах с RAID - с помощью check_raid

Я запускаю сценарий check_raid на нескольких машинах и только сегодня заметил, что одна из моих машин находилась в нерабочем состоянии, но меня не предупреждали. Сценарий возвращает "КРИТИЧЕСКИЙ", но Icinga считает, что это нормально.

Вот что я вижу на своей машине Icinga (я заменил диск):

SNMP OK - "CRITICAL: tw_cli:[c3(9650SE-4LPML): u0(RAID-10): REBUILDING 65%, Cache:Ri, Drives(4): p2=DEGRADED p0,p1,p3=OK]" 

Конфигурация этой машины очень проста:

define service{
use generic-service
host_name test
service_description RAID Status
check_command check_raid
}

Вот определение команды:

define command{
command_name    check_raid
command_line    /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -o ucdavis.80.3.1.1.13.47.117.115.114.47.98.105.110.47.112.101.114.108 -C public -r "OK"

И на проверяемой машине в snmpd.conf есть следующее:

extend .1.3.6.1.4.1.2021.80 /usr/bin/perl /usr/local/bin/check_raid.pl

Я использую последнюю версию скрипта, у кого-нибудь есть идеи, что я делаю не так? Всегда ли -r "ОК" возвращает ОК?

Скрипт nagios соответствует 3 из 4 условий возврата, поэтому он возвращает OK.

Из check_snmp документация:

-r, --ereg=REGEX
   Return OK state (for that OID) if extended regular expression REGEX matches

Ваш скрипт возвращает следующее (отредактировано мной для краткости):

"CRITICAL: [...] p2=DEGRADED p0,p1,p3=OK]" 

В check_snmp видит, что p0, p1, p3 в порядке и возвращает OK, игнорируя p2

Я бы попробовал без -r "OK" и подтвердите, что получили ожидаемые результаты. Если неправильный результат возврата сохраняется, я бы поэкспериментировал с --invert-search:

 --invert-search
    Invert search result (CRITICAL if found)