江蘇 繆振龍
首先介紹下單位的網絡環境,網絡核心是一臺華為S9306交換機。S9306交換機下連若干臺接入層交換機,供終端用戶接入。Zabbix 服務器通過HP A5120 交換機與核心交換機相連。Zabbix 服務器IP:172.28.28.56。S9306 交換機網管IP:172.28.28.3,下游所有接入交換機網管IP都屬172.28.28.0/24 網段。
Zabbix 監控客戶端的方法有很多種,常見方法主要包含兩種。一是在客戶端上安裝Zabbix Agent 程序,這種方法主要應用于各類服務器系統(Windows、Linux、Solaris 等),另一種是通過SNMP 協議進行監控。這個主要應用在無法安裝Zabbix Agent 程序的設備上,比如網絡設備。
主流網絡設備包括交換機、路由器、防火墻等,各廠家設備配置SNMP 協議的方法大同小異。SNMP 實現通常支持多個版本:典型的有SNMP v1、SNMP v2c 以及SNMP v3。在采用Zabbix 監控網絡設備之前,我們管理網絡設備都是借助仿真軟件,比如SecureCRT進行遠程配置管理,查看故障信息等。但這樣做的缺點是需要依次登錄每臺設備進行配置,并且無法及時發現網絡故障,運維管理較為不便?,F在,我們通過Zabbix軟件監控網絡設備,既可以及時了解各設備的運行狀態,當網絡設備出現故障時,又可以及時定位故障問題,提高管理效率。下文按步驟介紹Zabbix 如何通過SNMP協議監控網絡設備,當發生網絡故障時,Zabbix 服務器會及時告警。由于需下載相關SNMP 組件,確保Zabbix服務器能夠正常訪問外網。
程序如圖1 所示。

圖1 連接時系統提示
我們以企業最常用的華為、H3C 交換機及路由器為例說明。
1.華為S 系列交換機(如S9306、S5238),如圖2 所示。

圖2 配置華為交換機
2.華為AR 系列路由器(如AR3260、AR2240)

3.H3C/HP 交換機/路由器(如H3C U200-S 等)


配置完成后,在Zabbix服務器上執行snmpwalk 命令,測試是否能正常獲取到設備的SNMP 信息。這里以華為S9306 交換機為例,如圖3 所示。

圖3 測試華為交換機
在Zabbix Web 端,按如下方式添加主機。如果主機數量較多,也可以在“配置”-“自動發現”設置IP地址范圍來自助添加主機。
1.配置-主機-填寫SNMP 接口信息
2.配置-主機-關聯SNMP 模板
說明一下,剛開始配置時,經網上查閱,需要借助第三方軟件Getif。該軟件會根據網絡設備的管理IP 和團體名獲取網絡設備接口的OID 值。然后在主機監控項中添加需要監控的端口OID。但這個方法較為繁瑣,而且需要監控的網絡接口過多,逐個添加比較麻煩,筆者感覺不太實用。幸好Zabbix 作為一款強大的企業級監控工具,我們可以在“配置”-“模板”中搜索SNMP相關模板。經筆者親身實踐,建議接入層交換機關聯Template Module Generic SNMPv2,核心/匯聚層交換機 關 聯Template Module Interfaces SNMPv2。主 要原因是經實際測試,接入層交換機上連接了若干用戶主機,如果關聯Template Module Interfaces SNMPv2模板,用戶的日常開關機會造成接入層交換機接口狀態改變,觸發Zabbix 告警,實際上這種端口狀態的變化是正常的,不需運維人員關注。而在核心/匯聚交換機上,所連端口一般是接入交換機的上聯口。這種端口狀態的變化需要運維人員關注。
3.修改SNMP 模板宏變量
因為內置的SNMP 模板的團體名宏變量為默認值public。我們需要修改它,保持和網絡設備端團體名一致。在“配置”-“模板”-“對應的SNMP 模板”-“宏”-修改模板宏$SNMP_COMMUNITY的值為xxzx_zabbix。
等一段時間后可以發現Zabbix 服務器能成功收集到網絡設備的狀態信息,在“監測”-“最新數據”-搜索對應主機,可以看到獲取到的網絡設備的各項最新數值,包括各接口狀態等。在“監測”-“圖形”,選擇對應的主機,可以看到其接口狀態流量的圖表顯示。
至此,我們完成了Zabbix 對網絡設備的監控配置。在運維實踐中,單獨的實時監控還是不夠的。我們需要給觸發器配置告警動作,當網絡設備出現故障時,能通過郵件或短信告警,實現自動化運維。