用AIOps更有效地進行微服務排障

01 越來越多的企業IT系統採用微服務架構
在這裏插入圖片描述
當前,企業的IT系統基本上都屬於傳統的MVC架構,所有業務子模塊都集成在JVM中。雖然利於統一管理,但是當產品規模越來越大時,項目變得十分臃腫,維護困難,資源無法隔離,拓展性也很差。而微服務(Microservice)的出現,剛好解決了單體系統(Monolithic)所帶來的一些列問題。

顯然,微服務已經成爲IT發展趨勢之一,從IT系統模塊化中便能知曉一二。作爲模塊化的成果,IT組件越來越小型化,基本上會用更少代碼和功能來構建應用程序。微服務技術由於天生支持快速迭代、彈性擴展的特點,使企業能夠在不確定性下提升發展速度及抗風險能力,受到了越來越多的關注。

但是,如果系統性能或關鍵事件出現了問題,由於IT系統的複雜性,微服務的排障過程可能變得十分複雜。

02 微服務可能會讓系統變得更加複雜
在這裏插入圖片描述

微服務是種簡單的單個應用程序,能夠在IT開發和基礎架構中保持高度的靈活性和敏捷性。企業把環境遷移到微服務中時,一般存在多種原因。最大的原因,可能是系統越模塊化,DevOps團隊就越易更改系統來適應不斷變化的業務需求。這樣,只需根據需求進行本地更改就可,不必過多擔心繫統其他部分出現問題。從性能的角度來看,組件的模塊化能夠更容易適應各種架構。

例如,如果你所在的企業決定將基礎架構遷移到雲端,那麼哪些組件可以保留在本地,而哪些組件遷移到雲中?如何在各種雲架構上分發這些組件?又或是在管理相對單一的系統時,如何避免受到約束?

但是,天下沒有免費的午餐。構建的系統靈活性越高,架構就越複雜。開發系統、更改系統或是在架構上分發系統越容易,系統也就越複雜。在這種情況下,“複雜性”意味着增加了系統設計的“熵值”,而“熵”的一個狹義定義是缺乏可預測性。

03 微服務之高熵,讓傳統監控和排障變得更爲困難
在這裏插入圖片描述

模塊化的轉變,會增加IT系統的熵值。在高熵系統中,每個數據點都包含大量信息;而在低熵系統中,信息會非常少。因此,要保持高靈活性的系統,維護就會變得分外困難,也會讓IT系統管理工作變得更加複雜。

在微服務環境中,使用幾個單部件構建的系統,便可以推斷出整個系統的狀況。複雜的系統,往往是由許多獨立的部分組成,這些部分雖然能夠同步工作,但是耦合卻很鬆散,因此預測系統狀態會變得更加困難。這樣就必須監控幾乎所有組件,才能查看端到端的狀態,再進行系統畫像。而這也會導致監控工具與系統架構的不匹配。

許多傳統的IT監控工具,都會默認設置成低熵系統,也就造成在高熵系統無法使用,微服務環境下的監控和故障排除工作會更加複雜。毫無疑問,微服務架構會十分複雜,但是微服務卻同樣有利於開發和運營團隊,複雜性是可以通過其他方式解決的。

04 AIOps對微服務數據進行智能分析,快速獲取根因
在這裏插入圖片描述

許多企業都會通過大數據平臺採集數據,從存儲的角度來看是值得肯定的。但是不幸的是,許多企業認爲這是故事的結尾。“我們擁有所有數據,也可以隨時訪問這些數據,我們的工作基本上就完成了。”實際上,他們只是把這些大數據匯聚到一塊而已,並沒有對這些數據進行深加工,數據的價值並沒有有效利用起來。而這恰好是AIOps所擅長的。

IT系統中,一些模式和事件故障,會破壞端到端系統。加上系統的複雜性和高熵,要想發現並分析這些模式相當困難。即使以後能夠做到這一點,我們仍然需要找出系統中斷的根本原因,這樣才能從根本上解決困擾系統的問題。

但是AIOps可以做到,因爲它可以從大型數據庫中快速採集和處理數據,並能從中識別出可能存在的問題。AIOps在處理這些數據時,還能發掘出這些數據的模式特徵,並提供相應的解決方案以有效解決問題。

05 AIOps亦是排除微服務故障的良藥
在這裏插入圖片描述

在微服務環境下,如果使用自動編排技術,其配置應該能夠快速響應特定的業務和技術要求。AIOps能夠使得系統快速識別問題,分析後提出相應的解決方案,將其提供給編排引擎。

在IT高熵環境中,應用程序編排引擎的相關操作等,都會導致系統複雜度陡升。但是AIOps可以全面排查IT環境,並提供相應的解決方案,其中便包括業務流程引擎的影響,這僅是AIOps排除微服務中故障問題的功能之一。

06微服務正推動AIOps快速發展
在這裏插入圖片描述

微服務,包括一系列複雜且易變化的組件,而最大的問題便是難以確定微服務之間的因果關係。出現問題時,便會陷入巨大的困境。爲了能夠在微服務中排障時做到有效分析,AIOps借用拓撲和圖形的方式,這種方式在因果關係處理上將會十分有效。

拓撲,這種基於圖形的分析方式,也逐漸成爲AIOps的核心部分之一。當前的AIOps供應商都基本上認識到這一點,並開發出了相應的拓撲算法,這條路還有很長一段時間要要走。在不久的將來,拓撲結構將會轉移到中心位置,以便更好應對微服務帶來的複雜狀況。

微服務中部署AIOps十分必要,而AIOps反過來也可以幫助微服務快速排障,提高系統性能。這種技術的共生,將有助於微服務從前沿技術,過渡到主流解決方案。而微服務,將有利於AIOps打開更廣闊的市場,促進IT智能化的快速發展。

作者:Will Cappelli

來源:國外網站

編譯:林含飛

編譯過程中有所刪減

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章