1. 程式人生 > >智慧運維挑戰

智慧運維挑戰

智慧運維,對應的架構如何設計,才能滿足以上的場景和未來需要,學術界眾說紛紜,我們可以選取。。。中的架構設計中來略見一斑。這個架構是由分析處理模組,模型管理,推薦決策,校驗應用四個主要模組構成。其對應的職責如下:

分析處理(LiftAnalyzeProcess):主要對於生產環境的實時的資料進行預處理,完成相關性分析,歸一化之後,之後通過模型匹配來輸出結果,此類結果包含系統內部的各種異常(單板,使用者行為,KPI指標,KQI指標等等),網路關鍵事件的各種預測結果(小區負荷,通道頻率,指紋覆蓋,天饋老化,容量趨勢),通過根因分析輸出的某一個特殊事件的上下文(對於某一種具體故障的所有相關資訊被蒐集,被確認,為後續的自動運維打下基礎)。這個模組實際就是一般機器學習中的推理模組的高階版本。

模型分類模組:主要職能是獲取歷史資料,進行機器學習,輸出各種推理模型。其中輸出上下文識別,預測,異常檢測模型到分析處理模組進行上下文處理,策略和規則等到推薦決策模組用於自動化運維。

推薦決策模組:基於分析處理的上下文識別來確定當前事件所處的環境,根據策略進行匹配對應的後續執行行為,而行為列表則是基於使用者的維護習慣學習得來。基於以上的組合,在發生某個事件時,通過策略自動匹配到特定使用者採取的後續動作,進行執行,達到自動運維的地步。

校驗應用:主要是對自動運維進行業務監控,防止整個自動化運維跑偏。

整個系統設計分析處理對應上述的智慧監測閉環,推薦決策對應於智慧控制閉環,兩個閉環可以分別演進;其次存在一個糾偏系統,這個是由大量的業務規則組成的,這也是由於通訊網路的重要性造成的,也是由於通訊網路生成(裝置商)和經營(運營商)分離的特性導致的;最後這個架構的特性仔細觀察可以發現存在超級管理者,在整個智慧運維過程中可以隨時切斷自動化,這也是因為通訊網路的影響比較大而導致;另外可以看到整個通訊網路機器學習中重要的推理模型種類分為需求,預測,推薦,模式四種,分別代表使用者對於結果的要求,預測行為,上下文識別行為,自愈行為

目前通訊網路一般由OSSEMSNE一層網路實體和兩層管理系統構成。上述的方案的智慧運維的訓練,分析,推薦,反饋系統和現有系統的關係如下圖,網元一般情況下會增加一個通用推理功能,其接收其他管理系統訓練後的推理模型,在實際生產環境中接收實時資料後,實時推理,這種方式的特點是對網路的反應具備實時性,這個稱之為自環;其次是在EMS中,對於本網路的資料進行訓練,得到推理模型,在收到資料後進行推理,或者把模型推送給網元。他具備了以上架構中的所有元素,區別在於由於成本和職責的定位,其主要面對資料量不太的情況,非實時的推理情況,不會採取叢集運算和大規模矩陣運算。最上面一層則是採取類似EMS,只不過其支援大資料量訓練,叢集計算,可能是第三方系統,同樣其訓練的模型可以在圖中的三個層次進行共享。

最後這個架構和當前各層生產系統的關係還體現在其主要設計為側掛系統,如Cognet報告中所述,即提供各種服務給當前生成系統,如果撤除智慧運維框架,現有生產系統也照樣執行,只是自動化程度降低而已。

對於智慧控制,這個專項領域相關論文進展不大。所以在解決方案的最有一部份,我們針對最先落地智慧檢測的一些典型問題,思路和相關演算法做一下討論,首先給看下面一張問題導圖

自上而下看,任何一個異常,在監測之後都希望找到其根本原因,根本原因則是通過故障傳播鏈來得到。一個故障傳播鏈需要從這樣幾個部分得到,

通過機器聚類學習在一些隨機事件中自動發現屬於同一類別的事件;通過異常事件之間的相關性分析,來發現這些事件的相關性有多大;通過異常服務和事件的相關性分析,找到導致異常服務的具體網路事件;通過全鏈路呼叫挖掘發現不同元件之間的關係。通過這樣一些關係的挖掘,找到故障傳播鏈。另外對於事件的預測也可以成為事件異常檢測的一種手段,因為如果發現檢測的值相離預測值較遠,則認為是異常。這些問題的通用演算法總結如下:

事件異常檢測:基於視窗,基於預測,基於近似性,基於隱式馬爾可夫模型,也有機器學習,整合學習,遷移學習,深度學習,深度生成模型等等

事件趨勢預測:有ARIMAEWMA、時序資料分解、RNN

事件相關性:基本演算法包括DTWMK最佳配對等

事件聚類:聚類用到的基本演算法包括DBSCANK-medoidsCLARANS

服務-事件相關:用基本演算法包括Pearson 關聯分析, J-MeasureTwo-sample test

故障傳播鏈:現有文獻中常見的演算法有:FP-GrowthApriori、隨機森林

機會和挑戰:

儘管智慧運維有著灼熱的前景,但是不可否認,未來依然是機會和挑戰共存。筆者認為,未來的挑戰來自如下幾個方面:

首先是演算法的挑戰,由於智慧運維屬於專業領域,人工智慧在這個領域的學術研究並不太多。目前的一些經典演算法主要集中在監測領域,對於控制領域的演算法和應用則需要從業人員自行研究,和計算機視覺,語言等直接可以拿到一些效果很好的演算法以及相關引數相比,智慧運維起點則低了很多,需要從基礎演算法的選擇,調優等探索開始,可借鑑性的論文也比較少;同時高水平的人工智慧學者目前也都處於目前最熱的視覺,語言等領域,本領域如果要提高影響力,則需要從資料,業務開源,公開比賽做起,如同谷歌李飛飛教授舉辦的ImageNet一樣把影象識別的識別率經過幾年的努力,直接超過了人類,這些則需要大家的共同努力

其次是資料同源的挑戰,不可否認目前在電信的領域沉澱著非常多的資料,不同資料來自不同廠商,型別也不同,例如關係型,物件型,日誌,檔案型等等,相互之間的資料關聯和訪問,以及訪問的效率也是一個非常大的挑戰。

最後一個是電信領域特有的問題,電信領域目前網路是生產和運營分離,由於不同運營商,以及不同地域的地理,經濟都不同,會直接影響到期業務模型。這樣對於生產商做出來的原始演算法模型,在不同的運營商不同的地域都需要重新訓練和調整,這個涉及到目前機器領域相關遷移學習的問題。這個也是本領域面臨的問題。

儘管存在一些問題,但是基於機器學習的智慧運維不可阻擋,周邊的生態環境已經發生變化,物聯網,虛擬化網路,巨大的資料量噴發,百舸爭流的經營常態都讓我們思考,未來,我們還能從智慧運維中期待到什麼?