許 燕,張 陽(yáng)
(中國(guó)移動(dòng)通信集團(tuán)海南有限公司 海南 海口 570000)
隨著移動(dòng)通信業(yè)務(wù)的發(fā)展和技術(shù)的革新,網(wǎng)絡(luò)的規(guī)模也在不斷變化,多代核心網(wǎng)設(shè)備同時(shí)提供通信服務(wù),核心網(wǎng)設(shè)備類(lèi)型也不斷更迭,單靠人工的登錄設(shè)備、檢查設(shè)備、日常巡檢、日常分析等人工運(yùn)維方式已不能有效地支撐網(wǎng)絡(luò)隱患的及時(shí)發(fā)現(xiàn)。為此,本文研究了一種移動(dòng)通信核心網(wǎng)自動(dòng)化巡檢系統(tǒng)。本文提到的解決方案基于開(kāi)源的框架搭建系統(tǒng),通過(guò)采集多專(zhuān)業(yè)多類(lèi)型的核心網(wǎng)設(shè)備信息、系統(tǒng)日志進(jìn)行分析,支持直接在Web 界面上靈活使用Python語(yǔ)言編寫(xiě)并配置定制個(gè)性化任務(wù)和解析命令,提供對(duì)核心網(wǎng)設(shè)備的監(jiān)測(cè)、巡檢等自動(dòng)化應(yīng)用[1],實(shí)現(xiàn)開(kāi)放式的運(yùn)維,突破了傳統(tǒng)運(yùn)維模式的禁錮,最大程度解放出維護(hù)人員的時(shí)間成本去做其他必須要人為干預(yù)的運(yùn)維工作,極大提高了運(yùn)維效率。
(1)整體架構(gòu)設(shè)計(jì)。本方案基于開(kāi)源架構(gòu),系統(tǒng)全部采用開(kāi)源軟件進(jìn)行開(kāi)發(fā),以Web 應(yīng)用形式呈現(xiàn),分為前端+后端+分布式存儲(chǔ),最大化節(jié)約資源成本。整體框架邏輯設(shè)計(jì)包括前端、后臺(tái)、存儲(chǔ)和部署方案4 個(gè)部分。前端采用開(kāi)源的Web 前端框架Angular 5。該框架Web 界面響應(yīng)快,時(shí)延小,可提升用戶(hù)使用體驗(yàn),快捷簡(jiǎn)易頁(yè)面操作更加適合一線網(wǎng)絡(luò)運(yùn)維人員。后臺(tái)以Spring boot 作為基礎(chǔ)框架構(gòu)建微服務(wù)、以Spring cloud 作為微服務(wù)管理框架,功能開(kāi)發(fā)和部署的周期短。系統(tǒng)前后端分離,通過(guò)API 應(yīng)用接口連接,便于其他系統(tǒng)接入。存儲(chǔ)采用分布式存儲(chǔ),包括配置數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)數(shù)據(jù)存儲(chǔ)。配置數(shù)據(jù)存儲(chǔ)使用穩(wěn)定、開(kāi)源的MariaDB 數(shù)據(jù)庫(kù)存儲(chǔ),完全兼容MySQL,可在自動(dòng)備份應(yīng)用的管理。業(yè)務(wù)數(shù)據(jù)存儲(chǔ)則采用ELK(elasticsearch+Logstash+Kibana)技術(shù)棧,可保障大數(shù)據(jù)量下的查詢(xún)響應(yīng)速度,存儲(chǔ)的數(shù)據(jù)安全、可靠、穩(wěn)定,并且后期擴(kuò)容擴(kuò)展方便,延伸性強(qiáng)。部署方案則使用開(kāi)源的容器化Docker 部署方式,實(shí)現(xiàn)應(yīng)用虛擬化,可快速打包應(yīng)用發(fā)布到任意Linux 服務(wù)器上,且滿足故障快速隔離、快速恢復(fù)等高可用需求,有效減少因開(kāi)發(fā)環(huán)境和部署環(huán)境硬件差異導(dǎo)致的兼容性問(wèn)題,縮短部署時(shí)間,節(jié)約部署時(shí)間成本。前后臺(tái)分離的開(kāi)源式的框架邏輯使得巡檢系統(tǒng)易擴(kuò)展可復(fù)用,數(shù)據(jù)穩(wěn)定可靠,部署時(shí)間短。
(2)硬件架構(gòu)部署。為了滿足網(wǎng)絡(luò)設(shè)備規(guī)模的變化和巡檢任務(wù)的增加和組合,系統(tǒng)硬件架構(gòu)需支持快速擴(kuò)展性能和容量,具備高可用性、負(fù)載均衡以及可擴(kuò)展性。硬件服務(wù)器可包括前端Web 應(yīng)用服務(wù)器和執(zhí)行解析服務(wù)器,單臺(tái)服務(wù)器內(nèi)存建議在128 G 以上、8 核以上CPU,存儲(chǔ)建議在2 T 以上。前端Web 應(yīng)用服務(wù)器承載任務(wù)配置、網(wǎng)元配置、方案配置、接口管理、安全管理5 個(gè)前端服務(wù)。執(zhí)行解析服務(wù)器主要承載巡檢系統(tǒng)主要的采集、執(zhí)行和解析服務(wù),并作為存放Web 應(yīng)用服務(wù)器冷備份,以實(shí)現(xiàn)Web 服務(wù)器的高可用性(HA)。執(zhí)行解析服務(wù)器之間使用分布式數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)級(jí)實(shí)現(xiàn)數(shù)據(jù)復(fù)制/副本、保障高可用(HA)。系統(tǒng)服務(wù)器連接至網(wǎng)管網(wǎng),通過(guò)執(zhí)行解析服務(wù)器對(duì)接入網(wǎng)元進(jìn)行連接采集,數(shù)據(jù)訪問(wèn)與安全控制需符合現(xiàn)場(chǎng)通信網(wǎng)絡(luò)安全要求。硬件架構(gòu)設(shè)計(jì)見(jiàn)圖1。
(3)軟件架構(gòu)。本方案中采集日志導(dǎo)入數(shù)據(jù)庫(kù)進(jìn)行集中存儲(chǔ),采用的ELK 技術(shù)棧的核心組件Elasticsearch支持先進(jìn)、強(qiáng)大的全文檢索功能,支持分布式的文件存儲(chǔ)、檢索功能,可實(shí)現(xiàn)巡檢日志的集中管理、快速檢索,模塊軟件結(jié)構(gòu)主要包括接口定制、解析定制、巡檢定制3 個(gè)部分,見(jiàn)圖2。
(4)系統(tǒng)數(shù)據(jù)工作流。該系統(tǒng)設(shè)計(jì)了靈活的容器化部署方式,每一個(gè)工作流都是一個(gè)容器,能夠支持系統(tǒng)功能快速遷移,利于推廣,支持快速擴(kuò)展新應(yīng)用需求,支持新網(wǎng)元快速接入、快速搬遷。采用kafaka 消息隊(duì)列進(jìn)行指令緩存及分發(fā),實(shí)現(xiàn)多網(wǎng)元并行處理,提升交互效率,見(jiàn)圖3。
(5)系統(tǒng)核心機(jī)制。自動(dòng)巡檢系統(tǒng)明確了5 個(gè)核心機(jī)制,主要是通過(guò)統(tǒng)一管理的權(quán)域控制和任務(wù)調(diào)度共同保障核心網(wǎng)絡(luò)安全。①網(wǎng)元鏈接控制機(jī)制。系統(tǒng)對(duì)于同一網(wǎng)元的多個(gè)指令,可設(shè)定同時(shí)連接的上限,大于上限數(shù)目的指令或任務(wù)會(huì)由隊(duì)列進(jìn)入緩存,系統(tǒng)會(huì)設(shè)置要求一段時(shí)間內(nèi)無(wú)動(dòng)作的連接在設(shè)定的一段時(shí)間后自動(dòng)釋放,不會(huì)繼續(xù)執(zhí)行。②網(wǎng)元登錄保護(hù)機(jī)制。系統(tǒng)會(huì)對(duì)于連續(xù)三次都無(wú)法連接的核心網(wǎng)設(shè)備進(jìn)行特殊標(biāo)記,在一段時(shí)間內(nèi)不會(huì)再對(duì)該設(shè)備進(jìn)行任何操作,并會(huì)將無(wú)法連接結(jié)果呈現(xiàn)告知給運(yùn)維人員,直到運(yùn)維人員確認(rèn)安全后可重新啟動(dòng)鏈接。③網(wǎng)元鏈接巡檢機(jī)制。系統(tǒng)可配置任務(wù)去定期清理無(wú)任何動(dòng)作的巡檢鏈接以釋放系統(tǒng)資源。④權(quán)限集中控制。系統(tǒng)前臺(tái)管理操作臺(tái)將集中控制各個(gè)功能模塊的認(rèn)證,統(tǒng)一控制系統(tǒng)使用人員基于模塊、功能、網(wǎng)元、專(zhuān)業(yè)、指令等多個(gè)維度的權(quán)限控制,保障系統(tǒng)網(wǎng)絡(luò)安全。⑤集中任務(wù)調(diào)度。系統(tǒng)設(shè)置任務(wù)調(diào)度中心,各巡檢任務(wù)將統(tǒng)一通過(guò)調(diào)度中心啟動(dòng)及監(jiān)控后臺(tái)的定時(shí)任務(wù),除此,系統(tǒng)增加了負(fù)荷過(guò)高的保護(hù)機(jī)制,通過(guò)設(shè)置任務(wù)優(yōu)先級(jí),當(dāng)系統(tǒng)服務(wù)器負(fù)荷超過(guò)閾值時(shí),會(huì)自動(dòng)停止配置的優(yōu)先級(jí)較低的任務(wù)。
本文針對(duì)核心網(wǎng)自動(dòng)巡檢需求部署了全網(wǎng)概覽大屏展示模塊及九大巡檢應(yīng)用模塊。全網(wǎng)概覽大屏是該系統(tǒng)的概覽窗口,是所有一線運(yùn)維人員使用該系統(tǒng)登錄的第一界面。該大屏可展示所有接入的巡檢任務(wù)和網(wǎng)元的統(tǒng)計(jì)概況,可通過(guò)圖形化界面直觀得到接入任務(wù)和接入網(wǎng)元總量,可分為專(zhuān)業(yè)域和設(shè)備廠家兩個(gè)維度,以圖形化界面動(dòng)態(tài)展示每個(gè)接入的核心網(wǎng)專(zhuān)業(yè)巡檢任務(wù)的正常率和成功率。九大應(yīng)用模塊是該系統(tǒng)的主要應(yīng)用部分,從功能種類(lèi)上可劃分為巡檢結(jié)果類(lèi)模塊、任務(wù)配置類(lèi)模塊以及管理類(lèi)模塊,具體說(shuō)明如下。
(1)巡檢結(jié)果類(lèi)模塊。包括巡檢概覽匯總、巡檢結(jié)果、日志管理3 個(gè)模塊。該類(lèi)模塊能夠支持運(yùn)維人員通過(guò)專(zhuān)業(yè)維度、網(wǎng)元維度、設(shè)備類(lèi)型維度、設(shè)備版本維度進(jìn)行多條件過(guò)濾,并以列表形式展示巡檢任務(wù)執(zhí)行情況、執(zhí)行結(jié)果、執(zhí)行日志,同時(shí)支持巡檢日志下鉆查看,并支持多條件維度一次性下載巡檢日志。
(2)開(kāi)放式任務(wù)配置模塊。包括連通性測(cè)試、網(wǎng)元管理、元任務(wù)管理、巡檢方案管理、命令閉鎖配置等5 個(gè)模塊。其中,連通性測(cè)試模塊可支持靈活根據(jù)設(shè)備廠家、設(shè)備類(lèi)型、專(zhuān)業(yè)域等維度探測(cè)網(wǎng)元可達(dá)性,生成連接成功和失敗的統(tǒng)計(jì)信息。網(wǎng)元管理模塊可支持配置多種協(xié)議連接類(lèi)型的網(wǎng)元接入。元任務(wù)管理模塊可支持靈活、按需配置不同專(zhuān)業(yè)、不同設(shè)備最基礎(chǔ)的巡檢命令作為一個(gè)元任務(wù),并支持在該模塊界面上使用Python 語(yǔ)言配置及變更解析規(guī)則,實(shí)現(xiàn)巡檢日志自動(dòng)診斷[2]。巡檢方案管理則可將不同條目的元任務(wù)組合成不同的巡檢方案,并支持自定義任務(wù)周期、任務(wù)網(wǎng)元對(duì)象。命令閉鎖模塊增強(qiáng)對(duì)命令的風(fēng)險(xiǎn)控制,支持對(duì)不同設(shè)備類(lèi)型等維度配置閉鎖命令列表,即使高危命令被“不小心”寫(xiě)入執(zhí)行任務(wù)中也不會(huì)被執(zhí)行,是巡檢系統(tǒng)的安全底線保障。
(3)系統(tǒng)管理平臺(tái)。該模塊是其余模塊管理的入口,可對(duì)本方案系統(tǒng)、軟件架構(gòu)、底層源配置進(jìn)行設(shè)置和更改。
基于開(kāi)源框架的核心網(wǎng)自動(dòng)巡檢系統(tǒng)前端界面操作簡(jiǎn)單,已應(yīng)用于軟交換核心網(wǎng)、數(shù)據(jù)核心網(wǎng)、信令網(wǎng)、IP承載網(wǎng)、短信專(zhuān)業(yè)、智能網(wǎng)、IMS 核心網(wǎng)等核心網(wǎng)設(shè)備的自動(dòng)化巡檢,滿足網(wǎng)絡(luò)維護(hù)領(lǐng)域的自動(dòng)化發(fā)展需要,實(shí)現(xiàn)將核心網(wǎng)日常運(yùn)維工作以機(jī)器換人,以人工執(zhí)行一臺(tái)網(wǎng)元且進(jìn)行日志分析的耗時(shí)來(lái)預(yù)估,該系統(tǒng)可將巡檢運(yùn)維時(shí)長(zhǎng)由平均60 min/人/天縮短至平均5 min/人/天,得以最大程度解放人工及運(yùn)維時(shí)間成本,有效提高網(wǎng)絡(luò)運(yùn)維工作效率。對(duì)于初入網(wǎng)絡(luò)運(yùn)維戰(zhàn)線的人員來(lái)說(shuō),該系統(tǒng)也有利于全方位了解網(wǎng)絡(luò)設(shè)備情況,集中在一個(gè)界面上學(xué)習(xí)不同專(zhuān)業(yè)、不同設(shè)備、不同運(yùn)維指令,變成界面版的“運(yùn)維藍(lán)皮書(shū)”。
無(wú)需系統(tǒng)開(kāi)發(fā)人員干預(yù),一線網(wǎng)絡(luò)運(yùn)維人員即可通過(guò)簡(jiǎn)單易操作的Web 界面,進(jìn)行網(wǎng)元接入、巡檢指令、巡檢任務(wù)等配置工作。不同專(zhuān)業(yè)、不同設(shè)備類(lèi)型、不同設(shè)備版本的網(wǎng)元均可通過(guò)配置連接方式、端口、IP、用戶(hù)名等多條件信息進(jìn)行采集接入。接入時(shí)選擇不同的接入專(zhuān)業(yè)域和設(shè)備廠家等維度權(quán)域即可實(shí)現(xiàn)分權(quán)分域管理。接入界面可即時(shí)進(jìn)行連通性測(cè)試,確保接入時(shí)網(wǎng)元可達(dá),避免無(wú)效接入。巡檢元任務(wù)即巡檢命令,可適配不同專(zhuān)業(yè)域不同網(wǎng)元的命令,一線運(yùn)維人員僅需在配置界面按照該網(wǎng)元的維護(hù)操作命令復(fù)制即可,不需特定的格式。網(wǎng)元和任務(wù)配置好后,使用人員自定義定制任務(wù)執(zhí)行時(shí)間,巡檢系統(tǒng)則會(huì)自動(dòng)執(zhí)行。自定義的接入方式和巡檢執(zhí)行方式有助于分權(quán)分域的管理和應(yīng)用。圖4 為網(wǎng)元接入配置和任務(wù)配置示例。
一線運(yùn)維人員可選擇自行使用簡(jiǎn)單的Python 語(yǔ)言在界面上進(jìn)行診斷規(guī)則的配置,系統(tǒng)會(huì)根據(jù)診斷規(guī)則在巡檢任務(wù)執(zhí)行后,自動(dòng)計(jì)算巡檢規(guī)則算法并直接呈現(xiàn)巡檢結(jié)果,也可提出診斷算法后由系統(tǒng)管理人員通過(guò)后臺(tái)管理平臺(tái)進(jìn)行規(guī)則批量導(dǎo)入。巡檢情況的自動(dòng)診斷省去了人工對(duì)巡檢情況的分析過(guò)程,減少人為漏看、錯(cuò)看、少看的情況,也可避免運(yùn)維“新人”因經(jīng)驗(yàn)不足導(dǎo)致判斷失誤的情況,診斷分析結(jié)果準(zhǔn)確可靠,且巡檢結(jié)果支持日志下鉆和下載。本系統(tǒng)將不同設(shè)備健康巡檢情況集中部署呈現(xiàn)在一個(gè)系統(tǒng)和一個(gè)操作Web 界面上,滿足當(dāng)今運(yùn)維集中化管理趨勢(shì),見(jiàn)圖5。
該系統(tǒng)與核心網(wǎng)設(shè)備建立了可“即時(shí)調(diào)用”的安全的連接,在該系統(tǒng)界面上不僅能夠采集不同設(shè)備的健康巡檢日志作為日常設(shè)備維護(hù)作業(yè)計(jì)劃的完成,也可額外新增新的深度巡檢任務(wù)作為節(jié)假日保障,還可擴(kuò)展其他功能,如衍生出參數(shù)核查、指標(biāo)提取、割接后系統(tǒng)觀察等應(yīng)用功能。
因該系統(tǒng)采用了開(kāi)發(fā)的應(yīng)用程序接口API,便于推廣延伸,利于多種終端及其他系統(tǒng)接入,可與其他第三方大數(shù)據(jù)建設(shè)項(xiàng)目平臺(tái)對(duì)接,在安全訪問(wèn)策略控制下對(duì)其提供核心網(wǎng)設(shè)備源數(shù)據(jù),如采集設(shè)備容量利用率數(shù)據(jù)用于容量預(yù)測(cè)系統(tǒng)、采集設(shè)備接口配置及日志數(shù)據(jù)用于拓?fù)涑尸F(xiàn)系統(tǒng)、采集設(shè)備核心網(wǎng)設(shè)備的硬件數(shù)據(jù)用于硬件管理系統(tǒng)。該系統(tǒng)提供了一個(gè)集中管理接口,將原本每新增第三方應(yīng)用平臺(tái)需要與所有核心網(wǎng)專(zhuān)業(yè)設(shè)備新增對(duì)接接口,且協(xié)商對(duì)接協(xié)議的運(yùn)維工作變更為只需與該系統(tǒng)對(duì)接即可采集到所有核心網(wǎng)專(zhuān)業(yè)設(shè)備的數(shù)據(jù)和信息。從經(jīng)濟(jì)效益上看,該系統(tǒng)大大節(jié)約了各核心網(wǎng)專(zhuān)業(yè)設(shè)備與第三方應(yīng)用平臺(tái)直接對(duì)接需要的時(shí)間和人力成本;從網(wǎng)絡(luò)安全上看,對(duì)于核心網(wǎng)設(shè)備而言,提取日志數(shù)據(jù)僅需提供一個(gè)對(duì)外應(yīng)用接口,核心網(wǎng)網(wǎng)絡(luò)安全性得到保障。參數(shù)核查功能示例見(jiàn)圖6。
本文提出了一種移動(dòng)通信核心網(wǎng)自動(dòng)巡檢系統(tǒng)的解決方案,研究并實(shí)現(xiàn)了核心網(wǎng)的自動(dòng)巡檢。從系統(tǒng)開(kāi)發(fā)層面來(lái)說(shuō),基于開(kāi)源框架的開(kāi)發(fā)方式,極大地節(jié)約了巡檢系統(tǒng)的開(kāi)發(fā)成本,一線運(yùn)維人員可直接在Web 界面參與任務(wù)配置和解析腳本配置,配置界面簡(jiǎn)單易懂,無(wú)需系統(tǒng)開(kāi)發(fā)人員干預(yù)。從系統(tǒng)延伸性層面上說(shuō),本文提到的解決方案易移植易擴(kuò)展易延伸,具有高可靠性,且可為第三方接口工具直接提供核心網(wǎng)絡(luò)數(shù)據(jù)支撐,不需要額外的接口和對(duì)接成本。從系統(tǒng)功能實(shí)現(xiàn)上說(shuō),該系統(tǒng)的研究和實(shí)現(xiàn),滿足了不同專(zhuān)業(yè)、不同協(xié)議版本的移動(dòng)核心網(wǎng)網(wǎng)元設(shè)備的自動(dòng)巡檢,推進(jìn)了移動(dòng)通信核心網(wǎng)的網(wǎng)絡(luò)運(yùn)維的自動(dòng)化??梢暬?、一鍵式的巡檢概覽界面為運(yùn)維人員提供了快速掌握全局網(wǎng)絡(luò)健康情況的方式,利于各層核心網(wǎng)網(wǎng)絡(luò)運(yùn)維工作人員和管理人員對(duì)網(wǎng)絡(luò)設(shè)備的集中化管理,極大提高了網(wǎng)絡(luò)運(yùn)維效率、具有較好的實(shí)踐應(yīng)用效果。