AIOps 自從 Gartner 於2016年提出至今已有一段時間,雖然在頂級互聯網及電信企業,已有較多落地,但至今仍無基於生產實踐的理論體系及實施指南。算法
高效運維社區和雲計算開源產業聯盟(OSCAR聯盟)牽頭,和互聯網大廠如 BATJ、360、華爲、平安科技等的 AIOps 負責人聯合編寫了國內外首個《企業級 AIOps 實施建議》白皮書,以縮AIOps 實施路徑。編程
1、總體介紹性能優化
AIOps,即 Artificial Intelligence for IT Operations,智能運維,將人工智能應用於運維領域,基於已有的運維數據(日誌、監控信息、應用信息等),經過機器學習的方式來進一步解決自動化運維沒辦法解決的問題。網絡
早期的運維工做大部分是由運維人員手工完成的,這被稱爲手工運維或人肉運維。這種落後的生產方式,在互聯網業務快速擴張、人力成本高企的時代,難以維繫。架構
這時,出現了自動化運維,用可被自動觸發的、預約義規則的腳本,來執行常見的、重複性的運維工做,從而減小人力成本,提升運維效率。框架
自動化運維能夠認爲是一種基於行業領域知識和運維場景領域知識的專家系統。
可是,隨着整個互聯網業務急劇膨脹,以及服務類型的複雜多樣,「基於人爲指定規則」的專家系統逐漸變得力不從心。自動化運維的不足,日益凸顯,這也爲 AIOps 帶來發展機遇。運維
AIOps 不依賴於人爲指定規則,主張由機器學習算法自動地從海量運維數據(包括事件自己以及運維人員的人工處理日誌)中不斷地學習,不斷地提煉並總結規則。
AIOps 在自動化運維的基礎上,增長了一個基於機器學習的大腦,指揮監測系統採集大腦決策所需的數據,作出分析、決策,並指揮自動化腳本去執行大腦的決策,從而達到運維繫統的總體目標。機器學習
AIOps 基於自動化運維,將 AI 和運維很好的結合起來,其須要三方面的知識:工具
一、行業領域知識:應用的行業,如互聯網、金融、電信、物流、能源電力等,並熟悉生產實踐中的難題;
二、運維場景領域知識:包括異常檢測、故障預測、瓶頸分析、容量預測等;
三、機器學習:把實際問題轉化爲算法問題,經常使用算法包括如聚類、決策樹、卷積神經網絡等。
AIOps 是 企業級 DevOps 在運維(技術運營)側的高階實現。性能
AIOps 和 DevOps 二者並不衝突,企業級 DevOps 涵括包括運維在內的整個軟件生命週期,。此部分可具體參考《研發運營一體化能力成熟度模型》。
AIOps 是運維的發展必然,是自動化運維的下一個發展階段。
Gartner 相關報告預測 AIOps 的全球部署率將從2017年的10%增長到2020年的50%。其應用行業,除了互聯網之外,還包括高性能計算、電信、金融、電力網絡、物聯網、 醫療網絡和設備、航空航天、軍用設備及網絡等領域。
2、AIOps 目標、原則及能力框架
AIOps,通俗的講,是對規則的AI化,即將人工總結運維規則的過程變爲自動學習的過程。
具體而言,是對咱們平時運維工做中長時間積累造成的自動化運維和監控等能力,將其規則配置部分,進行自學習的「去規則化」改造,最終達到終極目標:「有AI調度中樞管理的,質量、成本、效率三者兼顧的無人值守運維,力爭所運營系統的綜合收益最大化」。
2.一、AIOps 目標
利用大數據、機器學習和其餘分析技術,經過預防預測、個性化和動態分析,直接和間接加強IT業務的相關技術能力,實現所維護產品或服務的更高質量、合理成本及高效支撐。
2.二、AIOps 指導原則
2.三、AIOps 能力分級
AIOps的建設能夠先由無到局部單點探索、再到單點能力完善,造成解決某個局部問題的運維AI「學件」,再有多個具備AI能力的單運維能力點或學件組合成一個智能的運維流程,如智能化的監控預測及告警,免干預的自動化擴縮容,免干預的性能調優、免干預的成本組成調優等。
具體可描述爲5級:
1)開始嘗試應用AI能力,還無較成熟單點應用
2)具有單場景的AI運維能力,能夠初步造成供內部使用的學件
3)有由多個單場景AI運維模塊串聯起來的流程化AI運維能力,能夠對外提供可靠的運維AI學件
4)主要運維場景均已實現流程化免干預AI運維能力,能夠對外提供可靠的AIOps服務。
5) 有核心中樞AI,能夠在成本、質量、效率間從容調整,達到業務不一樣生命週期對三個方面不一樣的指標要求,可實現多目標下的最優或按需最優。
(上圖一級中 Ai 爲筆誤,應爲 AI )
2.四、AIOps 能力框架
注:「學件」(Learnware)一詞是南京大學周志華老師的原創,學件(Learnware)= 模型(model)+規約(specification),具備可重用、可演進、可瞭解的特性。
「可重用」的特性使得可以獲取大量不一樣的樣本;
「可演進」的特性使得能夠適應環境的變化;
「可瞭解」的特性使得能有效地瞭解模型的能力。
不少人可能在本身的應用中已經創建了這樣的模型,他們也很願意找到一個地方把這些模型分享出去。那之後一個新用戶想要應用,也許不用本身去創建一個,而是先到「學件」市場上找一找有沒有合適的,能夠拿來使用修改。
由於學件是在專家基礎上創建的,因此比較容易獲得專家級的結果,又由於共享出來的是模型,因此避免了數據泄露和隱私泄露的問題。
部分關鍵場景的能力分級方法:
3、AIOps 平臺能力體系
AIOps 工做平臺的能力體系主要功能是爲 AIOps 的實際場景建設落地而提供功能的工具或者產品平臺,其主要目的是下降 AIOps 的開發人員成本,提高開發效率,規範工做交付質量。
具體的工具或者產品應具有如下功能或模塊:
一、交互式建模功能:該功能支持用戶在平臺上交互式的進行模型的開發調試,經過簡單的方法配置完成模型的構建。
二、算法庫:用戶能夠在算法庫中找到常見經常使用的算法直接使用,算法按照用途分類,以供用戶方便的使用。
三、樣本庫:樣本庫用於管理用戶的樣本數據,供用戶建模時使用,支持樣本的增刪改查等基本操做。
四、數據準備:該功能支持用戶對數據進行相關的預處理操做,包括關聯、合併、分支路由、過濾等。
五、靈活的計算邏輯表達:在基本經常使用的節點功能以外,用戶還須要自由的表達一些計算邏輯,該需求主要是經過讓用戶寫代碼或表達式來支持。
六、可擴展的底層框架支持:平臺自己要可以靈活的支持和兼容多種算法框架引擎,如Spark、TensorFlow等,以知足不一樣的場景以及用戶的需求。
七、數據分析探索:該功能是讓用戶可以方便快捷的瞭解認識本身的數據,用戶只有基於對數據充分的認識與理解,才能很好的完成模型的構建。
八、模型評估:對模型的效果進行評估的功能,用戶須要依據評估的結論對模型進行調整。
九、參數以及算法搜索:該功能可以自動快速的幫助用戶搜索算法的參數,對比不一樣的算法,幫助用戶選擇合適的算法以及參數,輔助用戶建模。
十、場景模型:平臺針對特定場景沉澱的解決方案,這些場景都是通用常見的,用戶能夠借鑑參考相關的解決方案以快速的解決實際問題
十一、實驗報告:模型除了部署運行,相關挖掘出來的結論也要可以造成報告,以供用戶導出或動態發佈使用。
十二、模型的版本管理:模型可能有對個不一樣的版本,線上運行的模型實例可能分屬各個不一樣的版本,版本管理支持模型不一樣版本構建發佈以及模型實例版本切換升級等。
1三、模型部署應用:模型構建完成後須要發佈應用,模型部署應用功能支持模型的實例化,以及相關計算任務的運行調度管理。
4、AIOps 團隊角色
AIOps做爲一個團隊,由不一樣角色組成,通常有三種不一樣角色,他們是運維專家、數據科學家、智能運維研發工程師,如下介紹三種角色分工:
1)運維工程師
特徵:具備豐富的運維領域知識、熟悉較爲複雜的運維問題、具有解決運維難題能力。
職責:運用機器幫助運維人員完成基礎性和重複性的基層運維工做;人工處理機器還不能處理好的運維難題;基於經驗對於較爲複雜的運維問題給出最終決策—不斷訓練機器。
2)運維數據工程師
特徵:具有編程、數學、統計學、數據可視化、機器學習等能力。
職責: 致力於智能運維平臺架構、模型標準、數據分析方法;不斷應用最新的機器學習技術設計優化智能運維算法;監督智能運維繫統性能並實施優化和改進。
3)運維開發工程師
特徵:良好的開發語言基礎、大數據處理技術能力。
職責:數據採集、自動化處理、實現和運用算法等。
5、AIOps 常見應用場景
AIOps 圍繞質量保障、成本管理和效率提高的基本運維場景,逐步構建智能化運維場景。在質量保障方面,細分爲異常檢測、故障診斷、故障預測、故障自愈等基本場景;在成本管理方面,細分爲指標監控,異常檢測,資源優化,容量規劃,性能優化等基本場景;在效率方面,分爲智能變動、聊天機器人等基本場景。
三大方向的各階段能力描述以下所示。
5.一、質量保障方向
質量保障是運維的基本場景之一,隨着業務的發展,運維繫統也在不斷的演進,其規模複雜度、變動頻率很是大,技術更新也很是的快,與此同時,軟件的規模、調用關係、變動頻率也在逐漸增大。
在這樣背景下,須要AIOps提供精準的業務質量感知、支撐用戶體驗優化、全面提高質量保障效率。
5.二、效率提高方向
效率提高是運維的基本場景之一,隨着業務的發展,運維繫統的總體效率的提高就成爲了運維繫很是重要的一環。在這樣的背景下,除了增長人力是遠遠不夠的,還須要AIOps提供高質量,可維護的效率提高工具。
5.三、成本管理方向
成本管理方向是當公司內部的業務日益增多的時候,如何在保障業務發展的同時,節省沒必要要的開支,有效地控制成本。成本是每一個企業都很關注的問題,如今業界的資源利用率廣泛偏低,平均資源使用率能作到20%以上是不多的。
AIOps 經過智能化的資源優化,容量管理,性能優化實現IT成本的態勢感知、支撐成本規劃與優化、提高成本管理效率。
6、AIOps 實踐路徑建議
6.一、未實現自動化運維時
AIOps的開展,受限於自動化數據採集,網絡、磁盤、成本方面的工做難以深刻發展。建議聚焦質量保障的原子場景。
6.二、已經實現自動化運維時
詳見下文。
6.2.一、質量保障方向
6.2.二、效率提高方向
(敬請期待)
6.2.三、成本管理方向
7、AIOps 實施及關鍵技術
實施階段詳見以下,相關關鍵技術詳見 即將於4月13日 GOPS2018深圳站即將發佈的 《企業級AIOps實施建議》白皮書。
7.一、數據採集
7.二、數據處理
7.三、數據存儲
7.四、離線和在線計算
7.五、機器學習
8、AIOps 效果度量
詳見 即將於4月13日GOPS2018深圳站即將發佈的《企業級AIOps實施建議》白皮書。