
我正在閱讀監控路由器和交換機頁面,特別是「監控 SNMP 狀態資訊」部分。
引用:
在上面的範例中,「-o ifOperStatus.1」指的是交換器上連接埠 1 的運作狀態的 OID。 「-r 1」選項告訴 check_snmp 外掛程式如果在 SNMP 結果中找到「1」則傳回 OK 狀態(1 表示連接埠上的「up」狀態),如果沒有找到則傳回 CRITICAL。 「-m RFC1213-MIB」是可選的,它告訴 check_snmp 插件僅載入「RFC1213-MIB」而不是系統上安裝的每個 MIB,這有助於加快速度。
所以,我正在嘗試他們的例子:
# /usr/lib/nagios/plugins/check_snmp --hostname=X.X.X.X --community=X --protocol=X --oid=ifOperStatus.5 -r1 -m RFC1213-MIB
SNMP OK - 1 | RFC1213-MIB::ifOperStatus.5=1
#
介面返回SNMP OK - 1
- 介面處於“up”狀態。我關閉了另一個介面並為該介面運行了相同的命令。
# /usr/lib/nagios/plugins/check_snmp --hostname=X.X.X.X --community=X --protocol=X --oid=ifOperStatus.6 -r1 -m RFC1213-MIB
SNMP OK - 2 | RFC1213-MIB::ifOperStatus.6=2
#
# snmpwalk -Os -cX -vX X ifOperStatus.6
ifOperStatus.6 = INTEGER: down(2)
#
返回SNMP OK - 2
- 介面已關閉
我不知道如何-r1
正常工作,因為即使它發現該介面已關閉,它也會傳遞給 Nagios 作為它的正常。有什麼想法我做錯了什麼嗎?
答案1
作為「解決方法」(即使實際上不是),人們可以使用-c
or-w
代替-r
,因為-r
似乎有某種錯誤。
# ./check_snmp --help | grep -E 'critical|warning'
-w, --warning=THRESHOLD(s)
-c, --critical=THRESHOLD(s)
#
例子:
# /usr/lib/nagios/plugins/check_snmp --hostname=X.X.X.X --community=X --protocol=X --oid=ifOperStatus.6 -c1
SNMP CRITICAL - *2* | IF-MIB::ifOperStatus.5=2
#