摘要:作者介紹王藝,百度云智能運維架構研發負責人。年轉向運維方向,作為智能運維架構方向的技術負責人,致力于為百度智能運維平臺和產品提供高性能高可用可擴展的系統架構和基礎設施。持續的數據建設,是智能運維建設的關鍵。
作者介紹
王藝,百度云智能運維架構研發負責人。2010年加入百度,先后負責百度鏈接庫、百度志愿計算、百度統一資源管理的研發,經歷過千億級網頁鏈接的洗禮,也調度過數十萬量級的服務器,熱衷于直面架構技術挑戰,在分布式計算、分布式資源和任務調度方面經驗豐富。2015年轉向運維方向,作為智能運維架構方向的技術負責人,致力于為百度智能運維平臺和產品提供高性能、高可用、可擴展的系統架構和基礎設施。
背景:為什么要做智能運維
百度云智能運維團隊在運維工具和平臺研發方向歷史悠久,支撐了全百度數十萬規模服務器上的運維服務,所提供的服務包括服務管理、資源定位、監控、部署、分布式任務調度等等。最近幾年,團隊著力于發展智能化運維能力以及AIOps產品化建設。
眾所周知,百度除了搜索業務之外,還有很多其他的業務線,有像地圖、百科、知道、網盤這樣的老牌業務,也有諸如像教育、醫療這樣的新興業務,每個業務在規模上、服務架構上都有很大差異。業務本身對穩定性的要求很高,需要保持99.995%的高可用,同時在業務上云的背景下,虛擬化、混合云等都給我們帶來了新的挑戰。
圖1:百度運維發展歷程
百度運維經歷了從腳本&工具、基礎運維平臺、開放可定制運維平臺到我們現在的智能運維平臺,這樣四個階段的轉變。過去運維的核心目標是提升效果,比如持續交付的速度、服務穩定性、運營成本等。經過這么多年的建設,整個運維行業已經非常成熟,而我們所支撐業務規模仍在不斷增長,越來越多的運維場景和問題無法用傳統方法來解決,而運維效率也難以繼續支撐業務規模的快速擴張,所以我們更加關注怎么樣解放運維自身的效率,以及解決傳統運維方法(人工、自動化)所解決不了的問題。
這就好比從馬車到汽車是為了提升運輸效率,而到汽車已經接近飽和的時候,我們又希望用自動駕駛把駕駛員從開車這項體力勞動中解放出來,不僅可以增加運行效率,同時也可以減少交通事故率,這也是我們對智能運維的訴求。
發展:AIOps,從理念到落地
2016年Gartner報告中提出了AIOps概念,也就是Algorithmic IT Operations;基于算法的IT運維,主要指用大數據、機器學習驅動自動化、服務臺、監控這些場景下的能力提升。
我們從2014年開始做智能運維方面的探索,最開始也是集中在監控指標分析、報警分析、故障根因分析、性能和成本分析這些方面,到2016年我們已經完成將AI應用于完整的運維平臺研發的論證。在我們語義下的AIOps,目標是將人的知識和運維經驗與大數據、機器學習技術相結合,開發成一系列的智能策略,融入到運維系統中。用這樣的智能運維系統去完成運維任務,是我們所認為的AIOps,也就是Artificial Intelligence IT Operations。有意思的是,2017年之后的Gartner報告也將AIOps的概念改成了Artificial Intelligence IT Operations。
圖2:AIOps整體架構
我們認為AIOps中有三部分不可或缺,一個是運維開發框架,這個是我們后續智能運維研發的骨架;第二個是運維知識庫,這是讓骨架能與我們真實線上環境關聯起來的關鍵因素,起到了血肉的作用,讓骨架能動起來;而最后一個則是運維策略庫,這是運維的大腦,控制著運維平臺的行為。
使用運維開發框架實現的運維程序,我們稱其為運維機器人。運維機器人可以在多種不同的運維場景下提供多樣的運維能力,服務不同類型的業務和用戶。
框架:新的運維開發模式
圖3:運維開發框架
運維開發框架基于這樣一個抽象,就是如果我們把線上環境看做一個黑盒服務,那么我們對它的操作無非讀寫兩類。所謂的寫也就是操作控制流,是那種要對線上狀態做一些改變的操作,我們常說的部署、執行命令,都屬于這一類;另一類是讀,指的是數據流,也就是要從線上獲取狀態數據,并進行一些聚合統計之類的處理,我們常說的指標匯聚、異常檢測、報警都在這個里面。通過運維知識庫,可以在這兩種操作的基礎上,封裝出多種不同的運維機器人,對業務提供高效率、高質量以及高可用方面的能力。
根據操作流和數據流的不同,我們把框架分成了兩部分,最基礎的是運維執行框架,在這之上,加上分布式計算組件的支持,我們還建設了用于運維大數據計算的計算框架。
1、工程化
運維開發框架給開發者提供一系列的開發套件,除了包含了一系列的基礎能力,還包含了一個標準的運維工程研發流程。
在過去,運維研發采用簡單的開發-使用方式,缺少必要的測試維護。而現在,在代碼開發階段,可以通過執行框架,用統一的操作接口庫提升研發效率。在測試階段,開發套件提供了單測和仿真系統,簡化測試環境搭建。在上線后的階段,通過狀態服務和托管系統,可滿足在各災難場景下的運維機器人的自維護。
2、組件化
運維開發框架通過三種不同的組件功能組合成運維機器人。分別是感知器、決策器和執行器。這三種組件針對各自使用場景,提供了多種架構能力。
圖4:運維開發框架的組件
感知器是運維機器人的眼睛和耳朵,就像人有兩個眼睛和兩個耳朵一樣。運維機器人也可以掛載多個感知器來獲取不同事件源的消息,比如監控的指標數據或者是報警事件,變更事件這些,甚至可以是一個定時器。這些消息可以以推拉兩種方式被感知器獲取到。這些消息也可以做一定的聚合,達到閾值再觸發后續處理。
決策器是運維機器人的大腦,所以為了保證決策的,機器人有且只能有一個決策器。決策器也是使用者主要要擴展實現的部分。除了常見的邏輯判斷規則之外,未來我們還會加入決策樹等模型,讓運維機器人自主控制決策路徑。
執行器是運維機器人的手腳,所以同樣的,執行器可以并行的執行多個不同的任務。執行器將運維長流程抽象成狀態機和工作流兩種模式。這樣框架就可以記住當前的執行狀態,如果運維機器人發生了故障遷移,還可以按照已經執行的狀態讓長流程斷點續起。
知識庫:運維的知識圖譜
知識庫是智能運維架構中非常重要的一部分:所有要處理的數據都來自知識庫,以及所有處理后的數據也都會再進入到知識庫中。知識庫由三部分組成,分別是元數據、狀態數據和事件數據。持續的數據建設,是智能運維建設的關鍵。
圖5:運維知識庫概覽
考慮到未來需要對接不同的內部云平臺和公有云平臺,所以我們的運維數據也需要從底層的多種不同的運維平臺中抽取,清洗和做數據的整合。并以盡可能高的時效性提供給平臺用戶使用。因此我們知識庫建設遵照這四個能力指標進行,分別是全、準、新、穩。
由于知識庫涉及的存儲的內容篇幅太大,并且是相對獨立的一塊工作,所以這里就不再展開了。
實踐:運維機器人
單機房故障自愈是2017年我們完成的重點項目,目標是將單機房范圍的故障自愈水平普遍提升到L4級(整個處理過程,包括決策過程基本無人介入)。當然,另一部分原因是過去一兩年發生的幾次業界重大線上事故,我們希望可以防微杜漸,進一步提升MTTR水平。
相比較原有的單機房故障處理方式,在感知、決策、執行三個方面,L4級的單機房故障自愈系統效果顯著:
感知方面,智能異常檢測算法替代過去大量誤報漏報的閾值檢測方法;
決策方面,具備全局信息、自動決策的算法組件替代了過去“老中醫會診”的人工決策模式;
執行方面,狀態機等執行長流程組件的加入,讓執行過程可定位、可復用。
目前L4級的單機房故障自愈,已經覆蓋百度大多數核心業務線,止損效率可做到分鐘級,最快秒級止損,較人工止損效率提升60%-99%。
圖6:單機房自愈效果
圖6所示,在過去的一次case中,北京某處機房掉電,受影響業務線2min內即完成止損,對比之前的故障處理方式,止損效率提升非常顯著。
總結
隨著AIOps逐漸走向成熟和產品化,必將有越來越多的運維場景被AIOps所變革,而我們百度云智能運維團隊,也希望秉承著這個方向,為行業貢獻更多的創新理念、技術和產品,歡迎大家一起加入探討。
最后,用一句話來總結下工程架構對于智能運維的意義:
框架在手,AI我有:智能時代,框架會越來越重要,從機器學習框架TensorFlow到自動駕駛框架Apollo,概莫能外。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/3953.html
摘要:本文是根據虎牙直播運維負責人張觀石月日在攜手魅族百度云主辦的第十三期魅族開放日虎牙直播平臺實踐演講中的分享內容整理而成。英雄聯盟是全球最大的電子競技賽事,目前正在如火如荼進行,從今天開始進入了總決賽的淘汰賽階段了。 showImg(https://segmentfault.com/img/bVblQM9?w=1080&h=720); 本文是根據虎牙直播運維負責人張觀石10月20日在ms...
摘要:北京時間月日月日,由和中國國際人才交流基金會聯合主辦的第七屆全球軟件案例研究峰會簡稱在北京國家會議中心圓滿落幕。本屆峰會,來自阿里美團百度平安銀行等企業的講師分別從企業轉型及研發效能方面分享敏捷和的實踐細節和操作經驗。 北京時間11月30日-12月3日,由msup和中國國際人才交流基金會聯合主辦的第七屆全球軟件案例研究峰會(簡稱:TOP100summit)在北京國家會議中心圓滿落幕。T...
摘要:虎牙直播運維負責人張觀石張觀石,擁有余年網站開發架構運維經驗目前關注互聯網服務可靠性系統工程運維平臺的規劃建設網站高可用架構等方面在音視頻傳輸質量評估微服務運維方面積累了豐富的經驗。 showImg(https://segmentfault.com/img/bVbjqGq); 虎牙直播運維負責人張觀石 張觀石,擁有10余年網站開發、架構、運維經驗;目前關注互聯網服務可靠性系統工程、運維...
閱讀 3160·2021-11-19 09:40
閱讀 3647·2021-11-16 11:52
閱讀 2980·2021-11-11 16:55
閱讀 3171·2019-08-30 15:55
閱讀 1176·2019-08-30 13:08
閱讀 1655·2019-08-29 17:03
閱讀 3012·2019-08-29 16:19
閱讀 2579·2019-08-29 13:43