Snmp

通過 snmp 從瞻博網路交換機堆棧獲取詳細資訊以進行監控

  • February 15, 2017

我嘗試從交換機堆棧中獲取以下資訊以進行監控。以下是通過 ssh 登錄直接在交換機堆棧上執行的命令及其輸出:

root@stack> show virtual-chassis                 

Preprovisioned Virtual Chassis
Virtual Chassis ID: cf44.0df5.1234
Virtual Chassis Mode: Enabled
                                          Mstr           Mixed Neighbor List
Member ID  Status   Serial No    Model     prio  Role      Mode ID  Interface
0 (FPC 0)  Prsnt    GAxxxxxxx8 ex3300-48t 129  Master*     NA  2  vcp-255/1/2
                                                                3  vcp-255/1/3
                                                                1  vcp-255/1/1
1 (FPC 1)  Prsnt    GAxxxxxxx2 ex3300-48t   0  Linecard    NA  0  vcp-255/1/2
                                                                5  vcp-255/1/3
                                                                2  vcp-255/1/1
2 (FPC 2)  Prsnt    GAxxxxxxx3 ex3300-48t   0  Linecard    NA  1  vcp-255/1/2
                                                                3  vcp-255/1/3
                                                                0  vcp-255/1/1
3 (FPC 3)  Prsnt    GAxxxxxxx1 ex3300-48t   0  Linecard    NA  4  vcp-255/1/2
                                                                2  vcp-255/1/3
                                                                0  vcp-255/1/1
4 (FPC 4)  Prsnt    GAxxxxxxx7 ex3300-48t 129  Backup      NA  5  vcp-255/1/2
                                                                6  vcp-255/1/3
                                                                3  vcp-255/1/1
5 (FPC 5)  Prsnt    GAxxxxxxx5 ex3300-48t   0  Linecard    NA  4  vcp-255/1/2
                                                                6  vcp-255/1/3
                                                                1  vcp-255/1/1
6 (FPC 6)  Prsnt    GAxxxxxxx3 ex3300-48t   0  Linecard    NA  4  vcp-255/1/0
                                                                5  vcp-255/1/1

最後,我想檢查成員的數量和/或狀態(Prsnt/NotPrsnt),以及是否有角色更改(例如備份-> 主)。

使用 snmpwalk 我得到了一個巨大的條目列表,但沒有與上述任何值匹配。

那麼這是否意味著不可能從堆棧中獲取此資訊?

好吧,這是一個載入的…打破它

會員人數

考慮到通過 SNMP 描述 VC 的方式,您很可能不會明白這一點。OID 樹中沒有目前的“成員計數”值。您最好的選擇是步行.1.3.6.1.4.1.2636.3.40.1.4.1.1.1.2併計算返回的序列號(或使用成員 ID、MAC 或其他)。看起來您正在使用 Icinga,因此您可能需要使用腳本來獲取該 OID 併計算結果,因為 Icinga 不會為您執行此操作。我在 Nagios 的其他幾十種情況下也做類似的事情。(我根據其中一些情況編寫了一個快速腳本;使用它,或以它為例來做你想做的事:https ://gist.github.com/peelman/ef7b682de3af579c2896585385e18e7c )。

會員身份

我看不到(簡單的)方法可以獲取目前/不存在狀態。您可能只需要使用它,或者一個接一個地監控 VCP 介面。

角色變化

這將是使用陷阱的好方法;但是,如果您設置使用輪詢並且您正在靜態設置優先級,以便您知道您的主/備份大部分時間是什麼,那麼您可以查看下面的值.1.3.6.1.4.1.2636.3.40.1.4.1.1.1.3;節點 .0 將成為成員 0,節點 .1 將成為成員 1,依此類推。

值 1 是 Master,2 是 Backup,3 是 Linecard(在MIB本身中可用)。問題是,如果您將所有這些都留給預設虛擬機箱設置的動態,而不設置主控優先級靜態成員 ID(基於序列號)等,這些值可能會改變。

npeelman@nagios:~$ snmpwalk -v2c -c community ex3300-test.domain.tld .1.3.6.1.4.1.2636.3.40.1.4.1.1.1.3
JUNIPER-VIRTUALCHASSIS-MIB::jnxVirtualChassisMemberRole.0 = INTEGER: master(1)
JUNIPER-VIRTUALCHASSIS-MIB::jnxVirtualChassisMemberRole.1 = INTEGER: backup(2)

參考

引用自:https://serverfault.com/questions/832668