• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于微服務的電網云平臺運維技術研究綜述

      2023-04-26 08:20:58樵永鋒
      計算機測量與控制 2023年4期
      關鍵詞:運維架構監(jiān)控

      陳 碩,喬 林,李 釗,袁 野,樵永鋒,程 旭

      (1.國網遼寧省電力有限公司 信息通信分公司,沈陽 110001;2.國網遼寧省電力有限公司,沈陽 110001;3.東北大學 計算機科學與工程學院,沈陽 110819;4.丹東東方測控技術股份有限公司,遼寧 丹東 118002;5.沈陽農業(yè)大學 經濟管理學院,沈陽 110866)

      0 引言

      近年來,由于云計算技術的大力發(fā)展,其被廣泛應用于各行業(yè)。與傳統的信息化系統相比,云計算具有更復雜的技術架構,并且具有的資源池化、彈性供給等特征,使得企業(yè)信息化更節(jié)約、更便捷和更易操控,提高了企業(yè)面對外部環(huán)境變化的應對能力,從而提升了企業(yè)的業(yè)務敏捷性[1]。

      隨著信息化建設的迅速發(fā)展,國家電網有限公司(以下簡稱公司)信息化建設覆蓋生產經營各個環(huán)節(jié)。傳統的以物理服務器和網絡為主體構建的架構存在擴展性不高、穩(wěn)定性不強、維護成本較高等問題,已經難以滿足企業(yè)的業(yè)務需求。微服務架構的出現,使得公司的信息化系統有了新的發(fā)展方向,微服務應用體系架構如圖1所示。

      圖1 微服務應用體系架構

      微服務架構的應用滿足了公司業(yè)務的不斷開拓,通過容器化技術實現業(yè)務功能的分拆,實現軟件資產復用和數據共享。微服務架構具有高擴展性、高穩(wěn)定性以及低運營成本等優(yōu)點。然而隨著微服務應用數量幾何式增長發(fā)展,部署于云平臺上的微服務運維面臨新的困難和挑戰(zhàn),即大規(guī)模微服務錯綜復雜關系環(huán)境下的感知監(jiān)控、資源保障以及故障分析問題。

      本文首先從基于微服務電網云平臺運維面臨的工作變化以及問題展開,對目前現有的微服務感知監(jiān)控、資源調配以及故障分析3個主要運維技術算法進行總結綜述。此外,對每種運維技術方法進行了優(yōu)缺點分析。最后,根據目前運維技術的研究現狀以及企業(yè)的實際需求做出進一步展望。

      1 基于微服務云平臺的運維技術

      微服務通過容器、微服務框架等方式支撐應用在云上部署和運行,主要針對新建業(yè)務應用或新建模塊,將存在眾多復雜業(yè)務子模塊、且子模塊間緊密耦合的傳統單體應用,以合理的業(yè)務層面維度,拆分為多個模塊化微服務[2]。微服務的訪問統一由云上的API網關進行負載、匯總、轉發(fā),微服務的注冊、發(fā)現和服務治理通過云上的分布式服務總線實現。針對大規(guī)模微服務的云平臺應用了云計算、虛擬化、微服務等相關技術,電網云平臺中心基于微服務架構的運維工作發(fā)生了變化,并且對應面臨同樣的問題,主要包括3個運維技術:

      1)云平臺上的微服務具有漂移特點,對微服務云平臺監(jiān)控要求更高。

      傳統架構下,業(yè)務應用固化運行在特定的機器資源之上,可以構建資源和業(yè)務應用的對應關系。此外,業(yè)務的運行方式相對簡單,變化不多,監(jiān)控運維任務相較容易。然而在微服務架構下,微服務應用和資源環(huán)境不再存在固化的依賴關系,并且為了保證微服務應用的運行穩(wěn)定,需要根據資源特性和空閑情況進行合適的資源調配,這就極大地增加了監(jiān)控的運維成本以及復雜度。

      傳統監(jiān)控感知技術利用CMDB(配置管理數據庫)的構建、資源和應用側的指標采集分析等手段[3-5],識別并管理業(yè)務應用與資源環(huán)境之間的依賴關系,通過資源與應用的監(jiān)控指標也基本能及時發(fā)現業(yè)務異常。然而,傳統監(jiān)控方式需要對每一個微服務添加多個監(jiān)控模塊以收集不同監(jiān)控指標數據,造成了額外的運營成本;并且傳統依靠資源設備指標采集分析的單一監(jiān)控手段,既對云平臺有侵入式性能降低,也無法滿足微服務架構業(yè)務的監(jiān)控需求;此外,無法探測并識別不斷動態(tài)變化的微服務運行情況,對業(yè)務日志的關聯關系分析也缺少有效手段。

      2)微服務基于云平臺彈性資源特點,對云資源保障要求更高。

      云資源是寶貴資源,為微服務提供資源的方式是“需多少用多少”。因此,云平臺必須根據微服務和業(yè)務應用的資源使用情況,及時供給差額資源,回收閑置資源。

      傳統架構下,由物理服務器等為業(yè)務應用提供運行資源,資源供給相對固定,當業(yè)務應用資源欠缺時,由信息調度統籌資源調度安排,資源調度不僅受運維人員經驗影響,且耗時較長。

      在云平臺環(huán)境下,大量的業(yè)務應用以分布式的方式分派給由底層云平臺計算資源組成的資源池中,需要云資源調度進行橫向伸縮和縱向伸縮。橫向伸縮由云平臺自帶功能能夠實現自動伸縮。但縱向伸縮涉及部署在云平臺資源上的微服務和應用,當縱向伸縮時,云主機需要啟停,從而導致微服務和應用也需同步啟停。因此,對資源的精準識別和智能資源調度策略要求更高。

      3)云平臺上的大規(guī)模微服務的調用復雜,微服務的故障分析難度更大。

      在傳統架構下,業(yè)務應用與服務之間的調用關系相對比較固化,一般按照展示層、應用層、數據層、數據庫分層實現,應用服務與日志文件、數據架構集中存儲管理,通過在資源和應用側獲取業(yè)務運行指標數據,有經驗的運維人員也能快速完成故障定位。

      在云環(huán)境下,微服務架構帶來了更優(yōu)的可擴展性、獨立升級性、易維護性、業(yè)務健壯性等能力,大的業(yè)務按照功能職責拆分成獨立的服務應用模塊,但隨著電網業(yè)務規(guī)模的不斷發(fā)展,相應的業(yè)務服務數量也不斷增加,服務間的調用關系越來越錯綜復雜,給故障發(fā)現和快速定位帶來更大的挑戰(zhàn)。

      云平臺運維工作的各項工作都是相互關聯,監(jiān)控運維為資源調度以及故障分析提供多方位監(jiān)控指標數據支撐;故障分析工作不僅需要應用側監(jiān)控數據,還需云資源的各項指標;資源調度同樣需要根據故障分析反饋的分析報告以及監(jiān)控數據進行精準的資源調度?;谖⒎占軜嫷倪\維工作之間的關系如圖2所示。

      圖2 各運維工作之間的關系圖

      2 云平臺運維的國內外研究現狀

      隨著云計算的不斷深入應用,企業(yè)核心業(yè)務向云端遷移帶來整個IT架構變化,虛擬化技術在提升資源利用率的同時,也加大了運維技術的復雜度。尤其是作為云服務的一個新興的分支,包含微服務業(yè)務的的云平臺運維技術得到國內外研究機構的廣泛關注。

      2.1 國外研究現狀

      隨著越來越多的企業(yè)組織由傳統的C/S架構向云計算、大數據、移動互聯網驅動下的動態(tài)靈活的云架構轉型,對云管理平臺、云環(huán)境運維的需求也出現了爆發(fā)性增長。為了應對云環(huán)境的復雜性,簡化虛擬化環(huán)境的控制與管理,加速云資源的部署和擴展,國外的相關研究機構對云運維管理技術已開展了深入研究。

      IBM公司在Tivoli[6]產品的基礎上推出適用于云環(huán)境的運維管理解決方案,簡化云管理并實現數據中心自動化,向云運維轉型。該解決方案是一套能夠幫助運營團隊有效管理混合環(huán)境并加速云服務交付的ITSM[7]解決方案,涉及了服務臺、應用性能管理、系統和工作負載自動化、云管理、IT運維和網絡管理、IT運營分析等多個維度。

      BMC公司也在云運維領域大力布局,研發(fā)的BMC Cloud Lifecycle Management[8]系統能夠幫助企業(yè)實現云服務的高速可靠交付,同時利用智能分析工具,提早預測并解決性能問題,監(jiān)控并預測資源消耗情況,以更加直觀的方式進行運維管理,提高資源利用率,幫助企業(yè)降低云服務成本。此外,BMC還推出TrueSight Pulse系統[9],是一個基于SaaS的實時的基礎設施監(jiān)控解決方案,能夠優(yōu)監(jiān)控并化所有的環(huán)境,包括移動網頁應用、主機操作系統和云平臺。

      惠普公司采用SaaS模式研發(fā)運維產品[10],其APM(應用程序性能管理)解決方案提供靈活的交付模式,用戶可以選擇內部、SaaS或混合環(huán)境的任意組合,以符合現有平臺和業(yè)務模式的需要。主要包括SaaS綜合Web應用性能監(jiān)控服務HP AppPulse Active和針對移動應用的性能監(jiān)管SaaS軟件HP AppPulse Mobile.

      除了云計算公司在自有運維產品的研發(fā)布局以外,還有一部分開源的運維工具,如Zabbix、Nagios、Ganglia和Zenoss Core等。作為一個企業(yè)級開源運維平臺,Zabbix[11]擁有精致的WEB界面,不僅能夠采集多種監(jiān)控數據,例如分布式系統監(jiān)控數據以及網絡監(jiān)控數據,還具有部署簡單的優(yōu)點,提高運維人員的工作效率,降低工業(yè)部署成本。同樣地,Nagios[12]作為一款開源的企業(yè)級監(jiān)控系統,不僅能夠對系統各項參數進行監(jiān)控,同時可以對多種基本服務類型進行監(jiān)控。此外由加州大學伯克利分校發(fā)起的非企業(yè)級開源工具,目的為了監(jiān)控網絡節(jié)點的Ganglia[13]也已被廣泛應用到各種操作系統和處理器架構上。

      國外研究機構對云運維技術的研發(fā)主要有兩種技術路線:一是將IT運維軟件和服務的適用范圍擴展到云環(huán)境、云平臺甚至混合云環(huán)境,二是將已有的IT運維軟件結合云技術、云平臺以SaaS的形式提供給客戶。前者要求運維廠商針對云計算環(huán)境、云基礎設施的特征,提升軟件對底層環(huán)境的兼容性,添加面向云環(huán)境的特性,克服虛擬環(huán)境、混合環(huán)境的復雜性給運維軟件帶來的全新挑戰(zhàn)。后者則要求運維廠商利用自有的數據中心或與公有云IaaS或PaaS提供商合作,基于互聯網為客戶交付運維軟件的使用權。另外,目前流行的開源運維工具等大部分來自國外,雖然這些開源產品功能非常強大,但對技術要求很高,且動態(tài)開發(fā)困難,對于應用系統、微服務等業(yè)務監(jiān)控的難度較大。

      2.2 國內研究現狀

      隨著云計算技術在國內的引入和廣泛普及,云平臺的運維技術也得到快速發(fā)展。包括傳統的云計算服務企業(yè)和小規(guī)模創(chuàng)新企業(yè),為國內的云運維轉型提供了更有益的實踐、更豐富的技術發(fā)展路徑。

      阿里巴巴在DevOps實踐中,提出智能化、自動化運維[14],實現了故障智能預測以及自動化業(yè)務調度,提高了運維效率。此外,還提供了無人值守發(fā)布、無人介入運維等解決方案,實現了全天候發(fā)布、自動化周發(fā)布過千次、無人值守、小于半小時自動化上線驗證、日常運維工作無人介入式處理等目標。

      華勝天成自主研發(fā)的天成云IaaS資源管理平臺從客戶建設IaaS云的業(yè)務需求出發(fā),提供全面的解決方案[15]。該管理平臺能對多樣的虛擬化資源池進行統一管理,幫助客戶實現數據中心的資源可見、能力可控、服務實時和質量可知。作為支撐數據中心云計算業(yè)務的核心系統,天成云IaaS資源管理平臺具備資產管理、資源管理、服務管理、交付管理、監(jiān)控管理、計費管理、報表管理以及系統管理能力,能實現針對云平臺的一站式運維。

      廣通軟件公司的Broadview NCC[16]云虛擬化控制中心幫助大型企事業(yè)單位構建私有云IaaS,為企業(yè)數據中心的云計算基礎架構提供市場領先的IaaS私有云運維管理解決方案,從而提高企業(yè)的業(yè)務服務質量、降低業(yè)務運行成本。

      此外,還有一些適用于中小企業(yè)的運維管理云服務平臺。北塔軟件推出的“代維寶”運維管理云服務平臺,采用創(chuàng)新的SaaS云服務模式,使中小企業(yè)的運維成本更低、效率更高、管理更容易。銀信科技推出的中小企業(yè)云運維平臺也是一個運維管理云服務平臺,有助于實現基礎設施自動化,利用SaaS模式為中小企業(yè)提供低成本、高效率的IT基礎設施標準化、自動化運維。

      總體上,國內的云平臺運維技術也與國外技術的兩條技術路徑類似。一部分運維企業(yè)將運維軟件和服務的適用范圍擴展到云環(huán)境、混合云環(huán)境,提供綜合的云管理/運維平臺,一部分運維企業(yè)將已有的IT運維軟件與云技術、云平臺相結合,最終以SaaS的服務模式交付給客戶。

      3 微服務云平臺運維技術主要研究內容

      3.1 微服務云平臺的監(jiān)控運維

      云計算是需要按需分配計算資源,以提高應用程序的可用性和可擴展性,同時降低運營成本的一種技術[17]。在這種情況下,需要進行云資源管理以改善云,因此,對云資源的運行狀態(tài)進行監(jiān)控運維顯得尤為重要[18]。

      在構建大規(guī)模微服務的云平臺智能運維過程中,為了清楚、完整、詳細地收集整理表達運維知識,同時也為后續(xù)的云資源的動態(tài)調配以及故障分析等運維工作,需要獲取微服務業(yè)務運行的全方位數據,識別并構建業(yè)務與資源、業(yè)務與日志的關聯關系,及時掌握微服務業(yè)務的動態(tài)運行情況。

      一個名為DARGOS[19]的分布式云監(jiān)控架構被提出,其能夠滿足多租戶云平臺對物理資源和虛擬資源的監(jiān)控。此外,一個基于微服務的物聯網中間件分布式監(jiān)控系統[20]也被設計并實現,該監(jiān)控系統不僅可以從主機和容器中獲取性能數據,還可以收集從前端到微服務的調用以及日志,并進行映射或重現。

      除了重新開發(fā)云平臺監(jiān)控工具與系統,還有一些研究在現有監(jiān)控運維系統進行改進以提高監(jiān)控運維效率。

      基于OpenStack的監(jiān)控子系統采集到的監(jiān)控數據特征以及局限性,針對基于微服務架構的復雜依賴關系以及細粒度監(jiān)控問題,文獻[21]提出了解決方案并對其進行評估,使得監(jiān)測的數據量與未檢測到的異常發(fā)生率大大降低。

      黑匣子監(jiān)控方法被用來跟蹤大規(guī)模的微服務[22],能夠對架構指標、應用性能和網絡性能等進行監(jiān)控,并且實現了透明性。此外,將微服務日志與黑匣子方法結合[23],以被動追蹤方式進行監(jiān)控,實現了應用透明和非侵入性,減少了收集的監(jiān)控數據的大小。

      國內也有一些研究人員和企業(yè)對微服務架構的監(jiān)控進行研究與嘗試。文獻[24]以可擴展全鏈路應用服務監(jiān)控為目標,設計并實現了一種柔性微服務監(jiān)控框架,可用于監(jiān)控微服務狀態(tài)和不斷變化的服務負載,并且為了避免單點故障,使用 Raft 算法增強了數據一致性。文獻[25]公開了一種微服務應用全鏈路性能實時監(jiān)測系統及其檢測方法。該方法通過數據收集、數據存儲、彈性伸縮配置和集成調度等模塊的協調運作,實現對微服務性能的實時監(jiān)控與分析。

      企業(yè)對微服務架構的云平臺監(jiān)控也進行了嘗試,并且進行了工業(yè)部署。國網山東省電力公司應用一種基于微服務開發(fā)模式的 APM 應用性能監(jiān)控平臺[26],利用APM探針采集監(jiān)控數據,目前仍在建設中。應用性能管理架構工作流程如圖3所示。

      圖3 應用性能管理架構

      盡管APM 應用性能監(jiān)控平臺已經被應用到企業(yè)中,然而其具有侵入性的數據采集方式使其難以被廣泛接受。除利用APM探針采集數據以進行監(jiān)控外,還有基于微服務的調用信息獲取監(jiān)控數據以實現監(jiān)控的方法。

      文獻[27]公開了一種全鏈路監(jiān)控方法。該方法在接收到用戶發(fā)送http請求后,生成一個調用鏈邏輯ID用于標記調用鏈。同時,利用微服務調用標記對微服務的調用順序以及嵌套關系進行標記。最后,利用上述的調用鏈邏輯ID和微服務調用標識生成監(jiān)控信息,對微服務架構進行全鏈路監(jiān)控。文獻[28]則通過發(fā)送給對應微服務生成的調用請求信息,并利用調用請求信息生成對應的監(jiān)控數據標識,根據監(jiān)控數據標識獲取微服務的業(yè)務日志,以實現業(yè)務監(jiān)控。

      除上述利用對調用等信息進行標記的方法,還有嵌入額外的監(jiān)控模塊進行采集數據的方式。文獻[29]提出了一種基于微服務架構的應用監(jiān)控系統,并定義了響應時間、并發(fā)數和調用鏈相關監(jiān)控指標。該系統采用集中分布式結構,包含客戶端與服務器端,其中客戶端嵌入監(jiān)控對象收集監(jiān)控數據;服務器端則匯總并分析監(jiān)控數據,建立邏輯回歸模型,確定調用鏈路在正常情況下的安全置信區(qū)域,并對異常情況進行報警。以及通過部署獨立運行的采集模塊與微服務通信,收集微服務之間接口調用的信息,并根據收集到的信息進行微服務運行狀態(tài)的分析,可以將微服務的監(jiān)控粒度細化到接口[30]。通過埋點,收集服務間的相互調用關系的數據,作為服務調用信息,對所述服務調用信息進串聯和存儲,建立服務調用鏈路,通過可視化界面,展示所述服務調用鏈路,以實現對服務鏈路的監(jiān)控[31]。雖然基于微服務調用信息的方法可以實現全鏈路監(jiān)控,但其額外嵌入的采集模塊增加了企業(yè)部署的成本,同時影響系統性能。

      3.2 微服務云平臺的資源調度

      微服務架構下,業(yè)務應用被分派到底層資源池中進行計算,然而資源配置的差異使得分配難度大大提高;同時,由于大規(guī)模微服務的應用,也對資源調配的實時性有更高的要求。因此,自動監(jiān)測微服務的資源使用情況,做出即時的資源調度決策,實時資源調度作業(yè),可以保障云平臺上的微服務資源需求。云資源調度的基本流程框架如圖4所示。

      圖4 資源調度基本框架流程圖

      一些研究對傳統算法進行改進,計算云資源均衡狀態(tài),進而調度資源,以實現負載均衡[32-34]。文獻[32]改進了傳統的蟻群算法,該算法能夠根據用戶任務,計算云資源均衡、時間成本均衡和負載均衡方案,仿真實驗證明了該算法可以有效地保持整個云系統平臺的運載均衡。文獻[33]則改進了傳統的遺傳算法,提出一種基于多精英協同進化的遺傳算法,該方法具有更快的收斂速度以及更高的求解效率。同樣地,文獻[34]改進了珊瑚礁優(yōu)化算法,融合better-offspring和multicrossover策略以提高算法收斂速度,該算法降低了調度成本的同時,增強了資源負載均衡。

      雖然,針對云資源調度問題研究較為成熟,并且很多研究通過改進傳統方法就可以實現較好的效果。然而,微服務之間的復雜調用關系以及云資源配置差異,使得這些方法難以直接應用于微服務架構上。

      張鼎超等人設計的一個高性能計算環(huán)境的微服務運維平臺[35]包含了服務部署、服務監(jiān)控和服務伸縮等功能。其中服務伸縮功能通過監(jiān)控多種指標數據以及指標負載計算縮放比例,進而部署資源。文獻[36]根據訪問流量和各微服務之間的業(yè)務關系,準確且全面地確定目標擴容微服務,隨后對需擴容微服務對應的容器鏡像實例進行擴容,實現資源調配。由于該方法是依據微服務的訪問流量進行計算,具有一定的準確定性。文獻[37]首先抓取微服務監(jiān)控平臺的實時監(jiān)控的多元數據指標,并進行預處理,隨后對處理后的數據進行線性回歸的彈性伸縮容預測,并對預測結果進行服務資源彈性伸縮處理策略匹配。

      除基于流量、業(yè)務關系等監(jiān)控數據進行微服務縮擴容,還有基于負載指標進行微服務伸縮計算的方法。

      文獻[38]以非線性回歸為核心,通過分析當前負載、已建立模型等進行提前資源調配,以提高實時性,降低響應時間,實現資源彈性供給。文獻[39]根據微服務的實例運行數據,得到預定義負荷程度指標值并與預期值進行對比以計算擴容系數,根據計算的縮擴容系數調整微服務實例數。

      文獻[40]提出基于負載關系圖的微服務自動伸縮方法。該方法定義了用于描述各微服務之間的負載強度關系的微服務負載關系圖,并基于此圖計算各微服務的伸縮需求。該方法在面對大規(guī)模微服務情況下,仍能保持高效的并行性。然而,該方法的觸發(fā)條件使用閾值法,使得伸縮操作存在一定滯后性。

      上述是根據流量、負載等指標,對微服務進行縮擴容處理的方法,以達到負載均衡。還有針對微服務任務、應用以及資源調配的方法,同樣可以滿足云平臺上的微服務資源需求。

      郭駿等人針對大規(guī)模微服務資源調度設計了新的調度系統[41],該系統的調度算法采用的模糊PID算法能夠較好地兼容該系統。

      文獻[42]提出通過將各個微服務訪問資源請求進行排序,對優(yōu)先訪問的資源進行鎖定的方式進行控制的方法,減少了微服務訪問的隨機性以及由此引起的資源不合理利用。與之類似的,文獻[43]根據微服務的預定狀態(tài)信息和調度微服務的業(yè)務的權重確定微服務的重要性以及容量調節(jié)的緊迫性,進而合理的選擇優(yōu)先進行資源調度的微服務,從而能夠準確定位業(yè)務的瓶頸微服務,及時優(yōu)化業(yè)務執(zhí)行效率。

      針對微服務任務調度問題,文獻[44]提出了一種面向交叉微服務鏈的任務調度算法,該算法融合蟻群算法與模擬退火算法,緩解了微服務調用鏈間出現的交叉資源競爭問題。

      微服務容器調度系統[45]從臨時節(jié)點中獲取待轉移微服務容器對節(jié)點運行參數的需求信息,將該需求信息與對個目標節(jié)點的實際運行情況進行匹配,隨后系統可以自動地進行容器轉移,提高調度效率。

      文獻[46]提出了一種云環(huán)境下拓撲感知的微服務應用調度方法。該方法能夠對微服務應用整體執(zhí)行全局調度,在考慮單個微服務的資源需求的同時,也兼顧了微服務整體拓撲特征,保障了集群整體資源利用率,降低了微服務應用之間的通信成本。

      隨著機器學習的發(fā)展,利用機器學習和神經網絡進行預測,可以實現提前進行資源調度,進而提高資源利用率,增強負載平衡。

      機器學習能夠從大量數據中快速、準確地提取有效特征的優(yōu)點,使其可以被應用到大規(guī)模微服務資源調配任務上。文獻[47]提出基于機器學習技術的微服務任務調度技術,通過將數據位置及特征和計算任務類型或特征輸入任務調度器,以機器學習預測的方式給出任務運行節(jié)點,有效判斷相對優(yōu)化的任務執(zhí)行位置。

      神經網絡的非線性、并行性、高運算速度、高復雜度等特點,意味著面對大規(guī)模微服務資源調度問題上具有更高的適用性。文獻[48]通過預先訓練的第一神經網絡模型預測新增微服務的資源懸崖和最優(yōu)資源分配區(qū),從而通過最優(yōu)資源分配區(qū)為新增的微服務的資源分配提供更準確的參考,進而實現資源負載均衡。

      3.3 微服務云平臺的故障分析

      故障診斷技術是支撐云平臺實現智能運維的核心,是利用多種手段與技術,對故障信息進行分析、推理的過程。一個完整的故障診斷過程首先通過感知技術獲取被診斷系統原始信息;隨后利用特征工程對原始信息集合進行特征提取,得到有利于診斷故障的有效信息集合;對有效信息進一步處理,計算出能夠反映故障模式的不變特征量;最后基于以上信息進行故障定位、成因分析等工作,進而確定被診斷系統狀態(tài),定位系統故障位置,反饋系統故障成因,提供系統故障解決策略。完整的故障診斷基本過程如圖5所示。其中檢測信息部分可以由監(jiān)控系統提供監(jiān)控數據,以及傳感器技術提供原始信息。故障診斷技術的重點則集中在診斷結論部分,即故障分析。

      圖5 故障診斷基本過程示意圖

      隨著大規(guī)模微服務應用的上云運行,系統軟硬件形態(tài)、運行規(guī)模、系統結構與運行方式等日益多樣化和復雜化,業(yè)務產生的故障隱患多種多樣,業(yè)務系統節(jié)點內和節(jié)點間的關聯影響越來越多變。這使得運維人員無法在大量監(jiān)控告警事件中快速、準確地分析確定故障位置、故障原因,從而影響故障處理的實時性和準確性。

      目前,微服務故障檢測主要包括基于軌跡或圖拓撲法、基于日志文件法和基于監(jiān)控數據度量法,如圖6所示。其中執(zhí)行軌跡、關系依賴圖、故障傳播圖等等均屬于基于圖或拓撲方法,其優(yōu)勢在于能夠利用拓撲來描述微服務之間的相關聯系,并且圖的拓撲結構適合大規(guī)模微服務應用。

      圖6 故障檢測算法分類圖

      文獻[49-50]均基于執(zhí)行軌跡進行微服務故障診斷。主要區(qū)別在于文獻[49]收集服務組件的請求處理流的執(zhí)行軌跡,而文獻[50]則采用向系統注入故障并收集故障執(zhí)行軌跡的方式;二者使用不同的編輯距離分別評估異常程度與相似程度,最終依據各自執(zhí)行軌跡與評估結果,進行故障定位與故障成因分析。

      服務關系依賴圖可以很好地呈現各微服務之間的依賴關系,為運維人員提供清晰的可視化效果,幫助運維人員快速、準確地發(fā)現異常、故障并進行解決[51]。文獻[52]采用先判異常后定位的方式進行故障根因定位。該方法首先獲取微服務的性能指標數據,并判斷是否出現異常;隨后構建微服務依賴圖,并采用反向追蹤根因分析算法進行異常評分并排序,實現故障根因定位。同樣地,文獻[53]基于服務依賴圖刻畫監(jiān)測到服務間的異常傳播,利用回歸分析建立異常服務集合;隨后利用圖中心度算法尋找故障服務,并定位異常API。

      除此之外,基于故障傳播圖與基于圖譜進行故障定位也有一些研究?;诠收蟼鞑D的微服務故障根因定位方法首先通過相關性分析構建故障傳播圖,隨后利用改進的隨機游走算法進行搜索故障節(jié)點,實現微服務故障定位[54]?;趫D譜分析的微服務故障定位方法在微服務運行時實時更新維護圖譜,其中圖譜包括運行架構、服務部署、服務調用以及監(jiān)控數據等等;在故障發(fā)生時,分析節(jié)點的監(jiān)控數據并計算異常度,可以得到故障根因[55]。

      基于日志法主要是收集日志文件,從中提取大量的日志告警數據信息,建立日志信息分析模型,并分析故障原因。

      使用機器學習方法基于歷史日志訓練故障分類模型,以進行故障判斷可以提高運維自動化能力。文獻[56]將微服務日志數據按照時間間隔劃分,隨后進行特征提取,并選擇樸素貝葉斯、支持向量機與隨機森林3種分類算法訓練,得到故障預測模型,證明了機器學習在故障分析任務上的可行性。為了避免對每一個微服務進行故障分析判斷,提高資源利用率,降低故障分析成本;使用拓撲檢測模型對微服務進行故障可能性排序,利用機器學習方法基于可能發(fā)生故障的微服務的日志進行訓練,得到微服務異常判斷模型[57]。

      基于日志信息的方法與其他方法進行結合同樣可以實現故障定位與分析。文獻[58]首先利用包含異常的日志信息生成故障項目庫,隨后依賴對微服務的權重以及故障項目庫得到頻繁故障項目集合,利用頻繁故障項目集構建故障樹,實現快速故障定位。文獻[59]通過構建完善的調用鏈跟蹤體系,收集含有業(yè)務請求調用鏈信息的日志信息,隨后基于調用鏈維度對日志信息進行聚合分析,結合實際情形給出相應分析策略,提高微服務系統的服務異常故障定位準確度。

      基于監(jiān)控數據度量法則是根據監(jiān)控系統給出的監(jiān)控數據信息,通過特定的算法分析時段內的系統性能,從而判斷故障。方法[60]通過對業(yè)務進行異常檢測計算異常時間窗口,并基于異常窗口內的調用鏈數據進行故障定位分析,實現故障根因自動定位。將神經網絡與監(jiān)控數據度量相結合,可以充分利用神經網絡高復雜度非線性映射能力,故障分析時使用訓練好的故障診斷模型可以對得到的異常數據指標圖進行快速、準確的診斷[61]。

      除上述方法外,隨著深度學習的發(fā)展,其針對大規(guī)模數據的強特征提取能力,非常適合大規(guī)模微服務應用所產生多模態(tài)數據。文獻[62]首次將深度學習方法引進微服務故障診斷中。該方法利用深度學習方法從已有的數據中進行學習發(fā)生故障的特征信息并建立模型,仿真實驗也證明了深度學習方法在微服務故障監(jiān)測中的可行性。

      4 微服務云平臺運維工作與相關技術發(fā)展趨勢

      4.1 微服務云平臺運維工作

      隨著云計算技術的普及,以及企業(yè)的大規(guī)模微服務業(yè)務的應用,基于工業(yè)需求以及市場需要,微服務云平臺運維工作的發(fā)展方向應向著智能化、自動化、可視化等方向發(fā)展,結合國內外研究現狀與主要研究內容,可以將微服務云平臺運維工作發(fā)展趨勢概括如下。

      1)運維智能化:云計算的迅猛發(fā)展驅使IT架構中云架構和傳統架構走向融合。傳統的運維服務難以滿足新式架構,使得運維服務需要從單純的人工模式發(fā)展為智能模式。此外隨著IT系統越來越復雜和IT設備的多樣化,傳統運維“救火式”的被動故障處理能力已經嚴重影響了企業(yè)業(yè)務的發(fā)展,只有智能化的運維方式才能維持企業(yè)信息系統的安全、穩(wěn)定運行。通過預測分析模型,自主定位問題、發(fā)現問題,綜合分析之后上報信息,形成高度智能化的運維體系,可以極大地提高IT運維效率,保障企業(yè)云平臺運行穩(wěn)定。

      2)運維自動化:為了能夠快速響應業(yè)務用戶需求,并滿足云計算時代的大規(guī)模微服務業(yè)務變革需求,實現運維自動化是必不可少的。自動化技術不但能幫助IT人員從固定、煩瑣的日常維護工作中解放出來,提高IT人員的工作效率;還可以使整個運維流程變得規(guī)范、高效,提高IT系統的運維效率,為企業(yè)的業(yè)務變革提供良好的技術手段和基礎。

      3)運維可視化:云平臺運維不論是從基礎環(huán)境監(jiān)控,還是業(yè)務優(yōu)化管理上來說都面臨著一系列新的挑戰(zhàn)。運維可視化可以做到屏蔽運維提供的服務背后的所有實現細節(jié),而向用戶提供一種高效、一致性、透明化、用戶友好的服務。運維的自動化最終要實現可視化,復雜的運維工作流必須通過可視化來表達,可視化后的自動化才能讓所有人理解一致、執(zhí)行一致、結果一致。

      4)運維多樣化:云平臺運維工作需要結合多個運維技術,單一的運維手段難以滿足企業(yè)需求。目前,工業(yè)界已有很多單一化的IT運維產品,然而在復雜的云環(huán)境下無法滿足IT運維的各類需求。因此,融合多種運維手段,將各種運維工作進行聯動,構成具有相互反饋的環(huán)狀結構,可以有效地提高云平臺運維效率,保證系統健康。

      5)運維標準化:隨著云平臺運維系統的不斷推出,越來越多的運維手段也不斷被提出,也就意味著越來越多樣的接口被應用。在企業(yè)啟用運維系統時,需要針對實際的云計算環(huán)境以及基礎設施特征對運維系統進行兼容性改進,當底層環(huán)境發(fā)生改變,就需要對運維系統進行升級以兼容新的云環(huán)境,這就額外增加了運維成本。因此,形成通用的運維標準,不僅可以降低運維成本,還可以提高運維手段的創(chuàng)新。

      4.2 微服務云平臺運維技術

      結合微服務云平臺運維工作的發(fā)展趨勢以及重點運維技術的研究情況,分別針對微服務云上全鏈路監(jiān)控、微服務云資源保障以及微服務復雜故障分析3個重點運維技術的發(fā)展趨勢進行展望。

      1)全鏈路監(jiān)控不僅為了滿足本身對整個云平臺的監(jiān)控需求,還為資源調度、故障分析等運維工作提供數據支撐,應以多維度、多指標、多角度進行全鏈路監(jiān)控;此外,傳統監(jiān)控手段往往需要使用探針進行侵入式監(jiān)控,不僅會降低性能,還提高落地成本。因此,監(jiān)控運維可以以多維數據監(jiān)控、全鏈路感知動態(tài)監(jiān)控、非侵入式旁路監(jiān)控3個方面為目標。

      2)資源調度的目的是將異構多云的場景進行統籌整合,未來可以將機器學習方法與傳統算法進行融合,結合監(jiān)控指標數據、用戶請求、資源配置等多因素,通過匹配資源需求與資源供給,實現微服務任務、實例數、計算資源動態(tài)調整,以達到負載均衡,降低響應時間。

      3)故障分析是通過現有的信息進行系統的故障診斷與定位,并對故障進行清理保障云平臺運行正常。傳統的人工故障分析,往往處于被動分析狀態(tài),并且大規(guī)模微服務應用也使得定位更加困難。因此,主動式故障分析將是未來的發(fā)展趨勢,建立故障預測模型,利用已有信息進行故障定位,判斷故障類型并提供故障解決方案,實現故障分析自動化、智能化,提高故障分析實時性與準確性,保障云平臺運維效率。

      5 結束語

      綜上所述,微服務云平臺運維工作主要包括微服務監(jiān)控運維技術、微服務云資源調配以及微服務故障分析。監(jiān)控運維技術為后面二者提供高質量,多維度的監(jiān)控數據支撐;云資源調配則依據資源監(jiān)控數據以及故障分析反饋決策進行橫縱資源調整;故障分析依靠運行監(jiān)控數據以及資源調度情況,實現故障定位與處理。

      隨著人工智能、云計算技術、物聯網技術等多種技術的發(fā)展,以上3種重要的運維手段融合多種技術,并通過組成相互反饋的循環(huán)結構,形成完整的運維系統,實現運維工作智能化、自動化、可視化、多樣化以及標準化。未來將極大地保障微服務架構下云平臺的運維能力,支撐服務應用穩(wěn)定高效運行,提高各企業(yè)的IT運維效率。

      猜你喜歡
      運維架構監(jiān)控
      基于FPGA的RNN硬件加速架構
      The Great Barrier Reef shows coral comeback
      功能架構在電子電氣架構開發(fā)中的應用和實踐
      汽車工程(2021年12期)2021-03-08 02:34:30
      運維技術研發(fā)決策中ITSS運維成熟度模型應用初探
      你被監(jiān)控了嗎?
      Zabbix在ATS系統集中監(jiān)控中的應用
      風電運維困局
      能源(2018年8期)2018-09-21 07:57:24
      雜亂無章的光伏運維 百億市場如何成長
      能源(2017年11期)2017-12-13 08:12:25
      看監(jiān)控攝像機的4K之道
      LSN DCI EVPN VxLAN組網架構研究及實現
      電信科學(2017年6期)2017-07-01 15:45:17
      阿尔山市| 金平| 荆州市| 闻喜县| 招远市| 东兰县| 抚顺县| 梧州市| 内乡县| 清流县| 瓦房店市| 萝北县| 富川| 青浦区| 汉沽区| 惠来县| 体育| 三原县| 南昌市| 秭归县| 当阳市| 余姚市| 洛南县| 汤阴县| 双柏县| 潍坊市| 施秉县| 韩城市| 奎屯市| 宁海县| 扶绥县| 曲阳县| 大田县| 昌吉市| 尼玛县| 淳化县| 开封县| 通山县| 宜宾县| 策勒县| 邢台市|