阿里巴巴雲原生大資料運維平臺 SREWorks 正式開源

語言: CN / TW / HK

作者:晟白

隨著行業不斷髮展,大資料&AI也逐漸呈現雲原生化的趨勢。複雜的業務場景及其背後涉及到的不同技術方向的開源和自研,使得產品運維面臨技術複雜度高、規模大、場景多等挑戰。\ \ 阿里巴巴雲原生大資料運維平臺 SREWorks,沉澱了團隊近10年經過內部業務錘鍊的 SRE 工程實踐,今天正式對外開源,秉承“資料化、智慧化”運維思想,幫助運維行業更多的從業者採用“數智”思想做好高效運維。

一 SREWorks 是什麼?

谷歌在2003年提出了一種崗位叫做 SRE (Site Reliability Engineer,站點可靠性工程師),它是軟體工程師和系統管理員的結合,重視運維人員的開發能力,要求運維日常瑣事在50%以內,另外50%精力開發自動化工具減少人力需求。\ \ SREWorks 作為阿里雲大資料SRE團隊對SRE理念的工程實踐,專注於以應用為中心的一站式“雲原生”、“數智化”運維 SaaS 管理套件,提供企業應用&資源管理及運維開發兩大核心能力,幫助企業實現雲原生應用&資源的交付運維。\ \ 阿里雲大資料 SRE 團隊天然靠近大資料和AI,對大資料&AI技術非常熟悉,且具有隨取隨用的大資料&AI算力資源,一直努力踐行“資料化”、“智慧化”的運維理念,行業裡的 DataOps(資料化運維)最早由該團隊提出。SREWorks 中有一套端到端的 DataOps 閉環工程化實踐,包括標準的運維數倉、資料運維平臺、運營中心等。\ 隨著雲原生時代大趨勢的到來,阿里雲大資料 SRE 團隊將SREWorks運維平臺開源,希望為運維工程師們提供開箱即用的運維平臺。

二 SREWorks 有什麼優勢?

迴歸到運維領域的需求,無論上層產品和業務形態怎麼變化,運維本質上解決的還是“質量、成本、效率、安全”相關需求。SREWorks 用一個運維 SaaS 應用介面來支撐上述需求,同時以“數智”思想為核心驅動 SaaS 能力,具體包括交付、監測、管理、控制、運營、服務六部分。

體系化運維平臺分層架構

從“質量、成本、效率、安全”四個維度出發看運維本質相關工作,運維除了要搭平臺、建規範、做標準,還要用自動理念提升效率,用資料驅動測試/開發/運維,用智慧手段提前發現/預測風險問題等。這些可以看成是方法論。如何能從理論快速獲得一套體系化、工程化、產品化的能力實踐,去支撐滿足上述四個維度的需求,就是 SREWorks 所考慮的問題。

阿里雲大資料 SRE 團隊利用分層思想構築了 SREWorks 平臺產品體系,借鑑經典 SPI(SaaS/PaaS/IaaS)三層劃分思路,SREWorks 由“運維 SaaS 應用場景層、運維 PaaS 中臺服務層、運維 IaaS 接入層”三部分構成。

SREWorks 中還融入了運維規範、標準化思想,利用產品承載自動化流程、資料驅動、智慧核心的方法論。從程式碼到線上業務服務的整個過程,運維或多或少地參與了其中一些工作,因此,圍繞應用的生命週期,在SaaS場景層劃分了“交付、監測、管理、控制、運營、服務”六大區。如下圖所示,每塊內容裡都有代表性的核心功能。

SREWorks 中統一以應用抽象來描述業務系統,在開發人員將研發完成的應用製品交付上線後,就會對線上應用例項生命週期進行監測、管理、控制。SREWorks所擁有的運維資料能力會提供增值化的運營、服務,為有需要的人員提供便捷的檢視、管理能力等。

“交付、監測、管理、控制、運營、服務”六大場景在SREWorks產品手冊中有詳細的定義及邊界說明。

完整的資料化運維體系實踐

一套資料化運維體系,會把所有系統的運維資料全部採集起來、真正打通,並深度挖掘這些資料的價值,為運維提供資料決策;同時構建資料化運維業務模型,基於該模型建立標準化運維數倉,建設資料運維平臺,在平臺中規範運維資料的採集、儲存、計算及分析,並提供一系列資料化服務,供上層運維場景使用。

有了運維相關的量化資料,對運維工作的描述和衡量將更加立體化,可以建立長期可持續優化的運維工作模式,實現真正的運維價值。

服務化的 AIOps 智慧運維平臺

在阿里雲大資料 SRE 團隊看來, AIOps 的出現並沒有改變運維的表現形式,依舊還是“交付、監測、管理、控制、運營、服務”的介面,只是在大量運維資料化工作的基礎之上,利用AI能力探索、挖掘智慧化運維場景。因此,在一開始構築 AIOps 工程實踐時,就堅持打造“感知、決策、執行”的閉環,類似自動駕駛的理念。

SREWorks將量身定製的演算法與運維場景化結合,能夠提前預測、關聯分析,增強風險預防、故障定界定位能力,實現傳統手段無法獲得的運維價值。具體而言,將每一個智慧化的運維服務包裝成感知的“監測器”、決策的“分析器”、執行的“策略器”,供健康管理、變更管理等系列服務呼叫,即可增強已有運維場景,解決一些普通手段無法解決的問題。

運維中臺化、低程式碼化及雲原生化運維開發體驗

SREWorks 套件自身也是雲原生化的應用,並且採用運維中臺思想構建,在中臺裡構建大量的PaaS 化運維服務能力,在前臺圍繞“交、監、管、控、營、服”六大場景提供SaaS 化運維場景應用。

大部分頁面為企業後端控制檯類系統,不太需要很酷炫的互動設計,故而,運維開發領域的前端開發始終難於追趕前端流行趨勢。針對這些特點,SREWorks 創新性地設計了一套 Serverless 體驗的前端開發模式。

三 為什麼要開源?

阿里雲大資料 SRE 團隊之前在多次技術分享時重點介紹過“DataOps、AIOps”的能力,但都是純理論層面的介紹。具體在 SRE 領域,到底在工程實踐上實現這一套理論?對運維的需求、介面、核心這三層的理解如何落地?\ 為了把資料化、智慧化這套數智核心故事講明白,阿里雲大資料 SRE 團隊將具有低門檻、高效率特點的雲原生運維平臺SREWorks開源出來。\ 他們堅定地認為,運維團隊更需要擁抱雲原生,只有這樣,運維才能在雲原生浪潮下找到一席之地。

該團隊也希望, SREWorks 的開源,能讓更多從業者使用“大資料和AI”的能力做好運維,實現“資料+智慧”的運維平臺核心。\ 據介紹,SREWorks背靠阿里雲端計算平臺系列“大資料&AI”產品,如 MaxCompute、Flink、DataWorks、Hologres、Elasticsearch 等,開源版中同樣選取了這些產品對應的開源版本,比如開源版 Flink、Elasticsearch 等。

 後續規劃

SREWorks平臺目前每個月會進行一次迭代開發任務,後續將由版本管理員統一維護合入相關功能及問題修復等內容,以保證最新的雲原生化運維能力持續進入後期版本中。\ \ 當前, SREWorks 中有一套 OAM(Open Application Model)規範的工程化實踐,可以把該實踐看成是 SREWorks 的核心引擎。圍繞該引擎,SREWorks團隊建設了系列運維中臺服務,包含自動化、資料化、智慧化能力,之後也將跟隨社群 OAM 規範的發展,持續迭代。

 寫在最後

今天 SREWorks 的開源只是邁出的一小步,非常期待得到開發者的反饋。SREWorks中也設計了外掛化擴充套件能力,歡迎使用 SREWorks 來打造屬於自己的運維平臺。最後,如果您對 SRE、DataOps、AIOps 或雲原生等領域有興趣,都可以參與到我們的建設中來,這將是我們莫大的榮幸,一起交流,一起打造最具特色的 SRE 雲原生運維平臺!\ \ 專案地址https://github.com/alibaba/sreworks\

還有了解更多大資料&Al開源專案:\ https://www.aliyun.com/activity/big