黃麗娜 石力偉
(錫林郭勒盟氣象局,內(nèi)蒙古 錫林浩特 026000)
隨著信息網(wǎng)絡(luò)技術(shù)的快速發(fā)展及氣象信息化、現(xiàn)代化的有序推進(jìn),氣象信息網(wǎng)絡(luò)成為氣象行業(yè)中的重要組成部分。氣象觀測資料的采集與傳輸、預(yù)報預(yù)測服務(wù)產(chǎn)品制作與發(fā)布、氣象防災(zāi)減災(zāi)工作的開展等均離不開氣象信息網(wǎng)絡(luò)的支撐。目前,對氣象觀測數(shù)據(jù)傳輸時效性的要求越來越高。以錫林郭勒盟氣象部門為例,氣象觀測站采集到的數(shù)據(jù)每隔5 min 要自動上傳到內(nèi)蒙古自治區(qū)級氣象通信系統(tǒng)CTS2.0 中,如果有特殊天氣,可加密觀測至1 min,天氣雷達(dá)基數(shù)據(jù)每隔6 min要自動上傳一次。
為確保氣象數(shù)據(jù)傳輸具有高時效,要不斷升級氣象專網(wǎng)帶寬。目前,錫林郭勒盟氣象廣域網(wǎng)采用的是聯(lián)通MSTP、移動PTN 雙鏈路通信,雙鏈路互為備份。其中,聯(lián)通、移動鏈路在盟局至區(qū)局的帶寬均為100 MB、盟局至旗縣局的帶寬均為50 MB。由于錫林郭勒盟旗縣眾多,還要實現(xiàn)對雷達(dá)站鏈路的監(jiān)控,網(wǎng)絡(luò)管理人員需要監(jiān)控的廣域網(wǎng)鏈路多達(dá)34條。此外,還要對局域網(wǎng)進(jìn)行監(jiān)控,才能保障各個樓層的通信網(wǎng)絡(luò)能正常運行。但在運行過程中難免會出現(xiàn)故障,僅靠人力很難第一時間發(fā)現(xiàn)故障并排除,這會影響到氣象通信網(wǎng)絡(luò)暢通,因此,需要借助技術(shù)手段來發(fā)現(xiàn)并排出故障。
國內(nèi)外現(xiàn)有開源的網(wǎng)絡(luò)監(jiān)控技術(shù)較為成熟,并得到廣泛應(yīng)用,完全能滿足錫林郭勒盟氣象局對信息網(wǎng)絡(luò)運維管理的需求。本研究通過分析Zabbix、Nagios、ManageEngine、Prometheus、Kentik等網(wǎng)絡(luò)監(jiān)控系統(tǒng)的優(yōu)缺點,選取Zabbix 對錫林郭勒盟氣象信息網(wǎng)絡(luò)進(jìn)行監(jiān)控。
雷達(dá)站氣象專用網(wǎng)絡(luò)中的聯(lián)通、移動雙鏈路存在監(jiān)控難的問題。由于雷達(dá)站雙鏈路兩端是直接接入到交換機中的,要求在避免環(huán)路的同時,還能達(dá)到雙鏈路備份效果,所以配置了STP 生成樹協(xié)議。該協(xié)議通過ping 命令無法監(jiān)測單鏈路通斷情況,這是因為其中一條鏈路發(fā)生故障時,會自動切換到另一條鏈路,并不影響通信網(wǎng)絡(luò)的暢通。由于交換機無法像路由器那樣為每個端口都配置一個IP 地址,只能通過劃分vlan 的方式來配置一個IP 地址,所以用ping命令測試IP地址是否通暢的方法并不適用這種情況。單鏈路故障雖然在短時間內(nèi)不影響通信網(wǎng)絡(luò)暢通,但卻埋下了隱患。當(dāng)另一條鏈路也發(fā)生故障時,則通信網(wǎng)絡(luò)出現(xiàn)故障,所以必須要采取有效措施來發(fā)現(xiàn)單鏈路故障。
STP 生成樹協(xié)議把環(huán)形結(jié)構(gòu)變成樹形結(jié)構(gòu)。以H3C 交換機為例,配置STP 生成樹協(xié)議過程如下[1]:首先,查看STP 生成樹協(xié)議是否默認(rèn)開啟(命令為display stp brief);其次,開啟STP 生成樹協(xié)議(命令為stp enable 或stp global enable),關(guān)閉STP 的命令為undo stp enable 或undo stp global enable;最后,兩端交換機都開啟STP 生成樹協(xié)議,主端交換機設(shè)置為根交換機(命令為stp root primary),兩端交換機配置保護(hù)邊緣端口(命令為stp bpdu-protection)
通過簡單的網(wǎng)絡(luò)管理協(xié)議(SNMP)來實現(xiàn)對網(wǎng)絡(luò)設(shè)備數(shù)據(jù)的讀取。SNMP 是專門用于IP 網(wǎng)絡(luò)管理網(wǎng)絡(luò)節(jié)點(路由器、交換機、服務(wù)器、工作站等)的一種標(biāo)準(zhǔn)協(xié)議,也是一種應(yīng)用層協(xié)議。SNMP 由網(wǎng)絡(luò)管理站(NMS)、代理進(jìn)程(Agent)、被管對象(Management object)和管理信息庫(MIB)組成。SNMP 協(xié)議有三個版本,即SNMPv1、SNMPv2c、SNMPv3,目前應(yīng)用最為廣泛版本的是SNMPv2c和SNMPv3[2]。
以H3C 交換機為例,配置SNMP 簡單網(wǎng)絡(luò)管理協(xié)議過程如下:首先,查看SNMP 配置情況(命令為display current-configuration | i snmp);其次,啟動SNMP Agent服務(wù)(命令為snmp-agent);再次,配置團體名稱。設(shè)置讀團體名為pubilc(命令為snmpagent community read public),設(shè)置寫團體名為private(命令為snmp-agent community write private);最后,配置支持所有版本SNMP 協(xié)議(命令為snmp-agent sys-info version all)。
Zabbix 能監(jiān)控網(wǎng)絡(luò)設(shè)備、服務(wù)器等的參數(shù),能實時采集監(jiān)控數(shù)據(jù),統(tǒng)一保存到數(shù)據(jù)庫中,并將采集到的數(shù)據(jù)和設(shè)定閾值進(jìn)行比較,若發(fā)現(xiàn)異常,就觸發(fā)特定事件,產(chǎn)生相應(yīng)動作,從而發(fā)出告警通知。Zabbix通過C/S 模式來采集監(jiān)控數(shù)據(jù),通過B/S 模式來實現(xiàn)對Web 的管理。Zabbix 由Zabbixserver、Zabbix agent組成,Zabbix server 通過SNMP、Zabbix agent、ping 等來實現(xiàn)對遠(yuǎn)程網(wǎng)絡(luò)設(shè)備、服務(wù)器等的狀態(tài)監(jiān)視、數(shù)據(jù)收集等功能,交換機、路由器通過SNMP 來實現(xiàn)對數(shù)據(jù)的收集,服務(wù)器通過Zabbix agent 來完成對數(shù)據(jù)的收集[3]。
先開啟網(wǎng)絡(luò)設(shè)備的SNMP 功能,再登錄Zabbix的Web 頁面進(jìn)行配置。管理員通過賬戶登錄Web頁面,點擊進(jìn)入配置/主機,單擊頁面右上角“創(chuàng)建主機”按鈕,進(jìn)入“創(chuàng)建主機”頁面。由于主機名稱為唯一識別,網(wǎng)絡(luò)設(shè)備群組選擇Templates/Network devices,也可自建群組。接口(Interfaces)網(wǎng)絡(luò)設(shè)備選擇SNMP,服務(wù)器選擇客戶端,填寫設(shè)備相應(yīng)的IP 地址及端口號。網(wǎng)絡(luò)設(shè)備的鏈接模板選擇標(biāo)準(zhǔn)通用模板(Template Net Network Generic Device SNMP),也可根據(jù)設(shè)備廠家型號自建模板。選擇繼承及主機宏,更改{$SNMP_COMMUNITY}值為設(shè)備設(shè)置的團體名稱。其余選項選擇默認(rèn)值即可,點擊“添加”,完成主機創(chuàng)建,從而實現(xiàn)對設(shè)備狀態(tài)監(jiān)控、數(shù)據(jù)收集。
打開進(jìn)入相應(yīng)拓?fù)鋱D后,單擊右上角“編輯拓?fù)鋱D”,則當(dāng)前拓?fù)鋱D處于編輯狀態(tài),可進(jìn)行編輯配置。選擇地圖元素添加,單擊“新的組件圖標(biāo)”,跳轉(zhuǎn)至地圖元素設(shè)置頁面,“類型”選擇主機,“標(biāo)簽”更改為設(shè)備名稱,選擇相應(yīng)主機,關(guān)閉自動圖標(biāo)選擇,手動選擇圖標(biāo),單擊應(yīng)用完成主機的添加。選擇兩個主機,單擊鏈接添加,即可添加兩主機之間的鏈接,可對拓?fù)鋱D鏈路故障進(jìn)行報警顯示。點擊進(jìn)入“管理/一般”,單擊界面設(shè)置,展開下拉菜單,選擇“圖片”,即可對網(wǎng)絡(luò)設(shè)備圖標(biāo)及拓?fù)鋱D背景圖片進(jìn)行添加。錫林郭勒盟氣象廣域網(wǎng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 錫林郭勒盟氣象廣域網(wǎng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
3.4.1 NQA 技術(shù)實施。采用網(wǎng)絡(luò)質(zhì)量分析(NQA)技術(shù)對錫林郭勒盟氣象局上至區(qū)氣象局、下至旗縣氣象局的聯(lián)通、移動雙鏈路進(jìn)行監(jiān)控。NQA通過發(fā)送測試報文來對網(wǎng)絡(luò)性能或服務(wù)質(zhì)量進(jìn)行分析,可對響應(yīng)時間、網(wǎng)絡(luò)抖動、丟包率、文件傳輸速率等網(wǎng)絡(luò)信息進(jìn)行統(tǒng)計。要實現(xiàn)對網(wǎng)絡(luò)設(shè)備NQA數(shù)據(jù)的采集,必須先確定其對象標(biāo)識符(OID),再建立模板創(chuàng)建監(jiān)控項,主機調(diào)用模板,即可完成對NQA數(shù)據(jù)采集。錫林郭勒盟氣象局聯(lián)通路由器增加NQA監(jiān)控項如圖2所示。
NQA 測試以測試組形式進(jìn)行,每個測試組都具有一系列屬性,如測試類型、測試目的地址、測試目的端口、測試發(fā)包頻率等。以H3C路由器為例,配置NQA 測試組的過程如下[4]:①開啟NQA 客戶端功能,缺省情況下處于開啟狀態(tài)(命令為nqa agent enable);②創(chuàng)建管理員名為admin、操作標(biāo)簽為test 的NQA 測試組(命令為nqa entry admin test);③配置測試類型為ICMP-echo(命令為type icmp-echo);④配置探測報文的目的地址為192.168.5.11(命令為destination ip 192.168.5.11);⑤配置探測報文的源地址為192.168.5.12(命令為source ip 192.168.5.12);⑥配置探測頻率為1 000 ms(命令為frequency 1 000);⑦配置探測超時時間為900 ms(命令為probe timeout 900);⑧配置聯(lián)動項1,連續(xù)探測失敗5 次觸發(fā)聯(lián)動( 命令為reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type triggeronly);⑨啟動探測(命令為nqa schedule admin test start-time now lifetime forever)。
3.4.2 雷達(dá)站雙鏈路監(jiān)控。雷達(dá)站交換機移動連接端口為21口、聯(lián)通連接端口為4口,對端氣象局交換機移動連接端口為41 口、聯(lián)通連接端口為33口,通過模擬移動鏈路故障、氣象局交換機移動端口down、聯(lián)通鏈路故障、氣象局交換機聯(lián)通端口down,對雷達(dá)站交換機2 個連接端口各項數(shù)據(jù)進(jìn)行統(tǒng)計分析尋找規(guī)律。
測試結(jié)果如下:①正常狀態(tài)。雷達(dá)站交換機4口Bits received 2.3 Mbps、Bits sent 104 Kbps,21 口Bits received 2.57 Mbps、Bits sent 19.96 Mbps;②移動故障。雷達(dá)站交換機4 口Bits received 2.57 Mbps、Bits sent 20 Mbps,21 口Bits received 1.02 Kbps、Bits sent 2.32 Mbps;③聯(lián)通故障。雷達(dá)站交換機4 口Bits received 256 bps、Bits sent 2.31 Mbps,21 口Bits received 2.57 Mbps、Bits sent 19.85 Mbps。
總結(jié)測試規(guī)律,結(jié)合生成樹協(xié)議(雷達(dá)站交換機移動連接端口21 口為根端口、聯(lián)通連接端口4 口為后補端口),設(shè)置移動故障觸發(fā)器問題表達(dá)式為“{LeiDaShan_S5110:stp.root.port.last()}<>21”,設(shè)置聯(lián)通故障觸發(fā)器問題表達(dá)式為“{LeiDaShan_S5110:ifHCInOctets.4.last()}<=270”。
正常情況下,端口的通信模式為全雙工模式,數(shù)據(jù)可同時在兩個方向進(jìn)行傳輸,即可同時進(jìn)行發(fā)送和接收數(shù)據(jù)。半雙工模式下可在兩個方向傳輸數(shù)據(jù),但不能同時發(fā)送和接收數(shù)據(jù),這樣會影響數(shù)據(jù)傳輸效率。
網(wǎng)絡(luò)監(jiān)控平臺在運行之初便監(jiān)測到端口的半雙工模式告警,半雙工模式告警詳情如圖3所示。
圖3 移動端口半雙工模式告警
雷達(dá)站聯(lián)通鏈路配置的不同光芯分別承擔(dān)著氣象內(nèi)網(wǎng)數(shù)據(jù)傳輸及普通互聯(lián)網(wǎng)的任務(wù),雖是同一根光纜,但卻出現(xiàn)承擔(dān)氣象內(nèi)網(wǎng)數(shù)據(jù)傳輸?shù)墓庑竟收希袚?dān)普通互聯(lián)網(wǎng)數(shù)據(jù)傳輸?shù)墓庑菊5默F(xiàn)象,從而給值班人員造成聯(lián)通鏈路正常的假象。這是因為在默認(rèn)狀態(tài)下,通過移動鏈路來傳輸氣象數(shù)據(jù),對值班人員來說氣象內(nèi)網(wǎng)和互聯(lián)網(wǎng)都正常,無法察覺鏈路出現(xiàn)故障。
2021 年8 月17 日,通過網(wǎng)絡(luò)監(jiān)控平臺發(fā)現(xiàn)雷達(dá)站聯(lián)通鏈路出現(xiàn)故障,聯(lián)通運維人員排查后給予答復(fù),并對光纜故障進(jìn)行維修,此時為聯(lián)通整個光纜故障。2021 年8 月18 日,查看網(wǎng)絡(luò)監(jiān)控平臺,發(fā)現(xiàn)故障告警仍未解除,聯(lián)系聯(lián)通運維人員,給予的答復(fù)是17日20時已修復(fù)鏈路,經(jīng)值班人員確認(rèn)雷達(dá)站已于17 日晚上互聯(lián)網(wǎng)恢復(fù)正常,互聯(lián)網(wǎng)鏈路為聯(lián)通鏈路,但網(wǎng)絡(luò)監(jiān)控平臺告警仍未解除。值班人員進(jìn)一步核實,確認(rèn)氣象內(nèi)網(wǎng)聯(lián)通鏈路通信故障,聯(lián)通運維人員再次排查,排查結(jié)果為聯(lián)通光纜單芯故障,而非整個光纜故障。此次故障告警避免了因互聯(lián)網(wǎng)聯(lián)通鏈路恢復(fù)正常,而誤以為氣象內(nèi)網(wǎng)聯(lián)通鏈路也恢復(fù)正常的情況發(fā)生。雷達(dá)站聯(lián)通鏈路故障告警如圖4所示。
圖4 雷達(dá)站聯(lián)通鏈路故障告警
為做好對全盟汛期氣象服務(wù)的保障工作,確保汛期內(nèi)通信網(wǎng)絡(luò)安全穩(wěn)定運行,汛期前組織開展全盟氣象寬帶網(wǎng)應(yīng)急演練,網(wǎng)絡(luò)監(jiān)控平臺可對應(yīng)急演練過程進(jìn)行實時監(jiān)控,能保障應(yīng)急演練過程中的氣象通信網(wǎng)絡(luò)運行正常。演練開始前,通過網(wǎng)絡(luò)監(jiān)控平臺確認(rèn)各個鏈路運行是否正常,如果某個旗縣網(wǎng)絡(luò)鏈路出現(xiàn)故障,則該旗縣不參加應(yīng)急演練。演練過程中,登錄路由器相應(yīng)端口來執(zhí)行命令,用以模擬鏈路故障,通過網(wǎng)絡(luò)監(jiān)控平臺查看鏈路故障告警及備份鏈路啟用情況。因為網(wǎng)絡(luò)監(jiān)控平臺設(shè)置網(wǎng)絡(luò)設(shè)備大部分監(jiān)控項監(jiān)測間隔為1 min 或3 min,所以能及時對網(wǎng)絡(luò)故障進(jìn)行報警。最后,登錄路由器相應(yīng)端口執(zhí)行命令解除故障,通過網(wǎng)絡(luò)監(jiān)控平臺查看鏈路是否恢復(fù)正常。全盟氣象寬帶網(wǎng)應(yīng)急演練記錄如圖5所示。
圖5 全盟氣象寬帶網(wǎng)應(yīng)急演練記錄
基于Zabbix 的網(wǎng)絡(luò)監(jiān)控平臺自投入運行以來,可對錫林郭勒盟氣象局上至區(qū)局、下至旗縣局及雷達(dá)站的廣域網(wǎng)鏈路進(jìn)行實時監(jiān)控,解決了雷達(dá)站雙鏈路難監(jiān)控的問題,實現(xiàn)對鏈路故障及時告警,提高了發(fā)現(xiàn)故障和解除故障的效率。此外,該平臺還能采集網(wǎng)絡(luò)設(shè)備的其他參數(shù)(如端口通信模式、收發(fā)流量等),能及時發(fā)現(xiàn)網(wǎng)絡(luò)設(shè)備中存在的問題,提高了氣象信息網(wǎng)絡(luò)運維管理能力,保障了通信網(wǎng)絡(luò)的高效穩(wěn)定運行。