Raid
Nagios/Icinga 未報告 RAID 中的問題 - 使用 check_raid
我在多台機器上執行 check_raid 腳本,今天我注意到我的一台機器處於降級狀態,但我沒有收到警報。腳本返回“CRITICAL”,但 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 “OK” 總是返回 ok 嗎?
nagios 腳本匹配 4 個返回條件中的 3 個,這就是它返回 OK 的原因。
-r, --ereg=REGEX Return OK state (for that OID) if extended regular expression REGEX matches
您的腳本返回以下內容(為簡潔起見由我編輯):
"CRITICAL: [...] p2=DEGRADED p0,p1,p3=OK]"
看到 p0 ,
check_snmp
p1, p3 正常並返回OK
,忽略 p2我會在沒有的情況下嘗試
-r "OK"
並確認你得到了你期望的結果。如果錯誤的返回結果仍然存在,我會嘗試--invert-search
:--invert-search Invert search result (CRITICAL if found)