阿里巴巴云原生大數(shù)據(jù)運(yùn)維平臺 SREWorks 正式開源
原創(chuàng)作者 | 晟白
隨著行業(yè)不斷發(fā)展,大數(shù)據(jù)&AI也逐漸呈現(xiàn)云原生化的趨勢。復(fù)雜的業(yè)務(wù)場景及其背后涉及到的不同技術(shù)方向的開源和自研,使得產(chǎn)品運(yùn)維面臨技術(shù)復(fù)雜度高、規(guī)模大、場景多等挑戰(zhàn)。
阿里巴巴云原生大數(shù)據(jù)運(yùn)維平臺 SREWorks,沉淀了團(tuán)隊(duì)近10年經(jīng)過內(nèi)部業(yè)務(wù)錘煉的 SRE 工程實(shí)踐,今天正式對外開源,秉承“數(shù)據(jù)化、智能化”運(yùn)維思想,幫助運(yùn)維行業(yè)更多的從業(yè)者采用“數(shù)智”思想做好高效運(yùn)維。
一、SREWorks 是什么?
谷歌在2003年提出了一種崗位叫做 SRE (Site Reliability Engineer,站點(diǎn)可靠性工程師),它是軟件工程師和系統(tǒng)管理員的結(jié)合,重視運(yùn)維人員的開發(fā)能力,要求運(yùn)維日常瑣事在50%以內(nèi),另外50%精力開發(fā)自動化工具減少人力需求。
SREWorks 作為阿里云大數(shù)據(jù)SRE團(tuán)隊(duì)對SRE理念的工程實(shí)踐,專注于以應(yīng)用為中心的一站式“云原生”、“數(shù)智化”運(yùn)維 SaaS 管理套件,提供企業(yè)應(yīng)用&資源管理及運(yùn)維開發(fā)兩大核心能力,幫助企業(yè)實(shí)現(xiàn)云原生應(yīng)用&資源的交付運(yùn)維。
阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)天然靠近大數(shù)據(jù)和AI,對大數(shù)據(jù)&AI技術(shù)非常熟悉,且具有隨取隨用的大數(shù)據(jù)&AI算力資源,一直努力踐行“數(shù)據(jù)化”、“智能化”的運(yùn)維理念,行業(yè)里的 DataOps(數(shù)據(jù)化運(yùn)維)最早由該團(tuán)隊(duì)提出。SREWorks 中有一套端到端的 DataOps 閉環(huán)工程化實(shí)踐,包括標(biāo)準(zhǔn)的運(yùn)維數(shù)倉、數(shù)據(jù)運(yùn)維平臺、運(yùn)營中心等。
隨著云原生時(shí)代大趨勢的到來,阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)將SREWorks運(yùn)維平臺開源,希望為運(yùn)維工程師們提供開箱即用的運(yùn)維平臺。
二、SREWorks 有什么優(yōu)勢?
回歸到運(yùn)維領(lǐng)域的需求,無論上層產(chǎn)品和業(yè)務(wù)形態(tài)怎么變化,運(yùn)維本質(zhì)上解決的還是“質(zhì)量、成本、效率、安全”相關(guān)需求。SREWorks 用一個(gè)運(yùn)維 SaaS 應(yīng)用界面來支撐上述需求,同時(shí)以“數(shù)智”思想為內(nèi)核驅(qū)動 SaaS 能力,具體包括交付、監(jiān)測、管理、控制、運(yùn)營、服務(wù)六部分。
1.體系化運(yùn)維平臺分層架構(gòu)
從“質(zhì)量、成本、效率、安全”四個(gè)維度出發(fā)看運(yùn)維本質(zhì)相關(guān)工作,運(yùn)維除了要搭平臺、建規(guī)范、做標(biāo)準(zhǔn),還要用自動理念提升效率,用數(shù)據(jù)驅(qū)動測試/開發(fā)/運(yùn)維,用智能手段提前發(fā)現(xiàn)/預(yù)測風(fēng)險(xiǎn)問題等。這些可以看成是方法論。如何能從理論快速獲得一套體系化、工程化、產(chǎn)品化的能力實(shí)踐,去支撐滿足上述四個(gè)維度的需求,就是 SREWorks 所考慮的問題。
阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)利用分層思想構(gòu)筑了 SREWorks 平臺產(chǎn)品體系,借鑒經(jīng)典 SPI(SaaS/PaaS/IaaS)三層劃分思路,SREWorks 由“運(yùn)維 SaaS 應(yīng)用場景層、運(yùn)維 PaaS 中臺服務(wù)層、運(yùn)維 IaaS 接入層”三部分構(gòu)成。
SREWorks 中還融入了運(yùn)維規(guī)范、標(biāo)準(zhǔn)化思想,利用產(chǎn)品承載自動化流程、數(shù)據(jù)驅(qū)動、智能內(nèi)核的方法論。從代碼到線上業(yè)務(wù)服務(wù)的整個(gè)過程,運(yùn)維或多或少地參與了其中一些工作,因此,圍繞應(yīng)用的生命周期,在SaaS場景層劃分了“交付、監(jiān)測、管理、控制、運(yùn)營、服務(wù)”六大區(qū)。如下圖所示,每塊內(nèi)容里都有代表性的核心功能。
SREWorks 中統(tǒng)一以應(yīng)用抽象來描述業(yè)務(wù)系統(tǒng),在開發(fā)人員將研發(fā)完成的應(yīng)用制品交付上線后,就會對線上應(yīng)用實(shí)例生命周期進(jìn)行監(jiān)測、管理、控制。SREWorks所擁有的運(yùn)維數(shù)據(jù)能力會提供增值化的運(yùn)營、服務(wù),為有需要的人員提供便捷的視圖、管理能力等。
“交付、監(jiān)測、管理、控制、運(yùn)營、服務(wù)”六大場景在SREWorks產(chǎn)品手冊中有詳細(xì)的定義及邊界說明。
2.完整的數(shù)據(jù)化運(yùn)維體系實(shí)踐
一套數(shù)據(jù)化運(yùn)維體系,會把所有系統(tǒng)的運(yùn)維數(shù)據(jù)全部采集起來、真正打通,并深度挖掘這些數(shù)據(jù)的價(jià)值,為運(yùn)維提供數(shù)據(jù)決策;同時(shí)構(gòu)建數(shù)據(jù)化運(yùn)維業(yè)務(wù)模型,基于該模型建立標(biāo)準(zhǔn)化運(yùn)維數(shù)倉,建設(shè)數(shù)據(jù)運(yùn)維平臺,在平臺中規(guī)范運(yùn)維數(shù)據(jù)的采集、存儲、計(jì)算及分析,并提供一系列數(shù)據(jù)化服務(wù),供上層運(yùn)維場景使用。
有了運(yùn)維相關(guān)的量化數(shù)據(jù),對運(yùn)維工作的描述和衡量將更加立體化,可以建立長期可持續(xù)優(yōu)化的運(yùn)維工作模式,實(shí)現(xiàn)真正的運(yùn)維價(jià)值。
3.服務(wù)化的 AIOps 智能運(yùn)維平臺
在阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)看來, AIOps 的出現(xiàn)并沒有改變運(yùn)維的表現(xiàn)形式,依舊還是“交付、監(jiān)測、管理、控制、運(yùn)營、服務(wù)”的界面,只是在大量運(yùn)維數(shù)據(jù)化工作的基礎(chǔ)之上,利用AI能力探索、挖掘智能化運(yùn)維場景。因此,在一開始構(gòu)筑 AIOps 工程實(shí)踐時(shí),就堅(jiān)持打造“感知、決策、執(zhí)行”的閉環(huán),類似自動駕駛的理念。
SREWorks將量身定制的算法與運(yùn)維場景化結(jié)合,能夠提前預(yù)測、關(guān)聯(lián)分析,增強(qiáng)風(fēng)險(xiǎn)預(yù)防、故障定界定位能力,實(shí)現(xiàn)傳統(tǒng)手段無法獲得的運(yùn)維價(jià)值。具體而言,將每一個(gè)智能化的運(yùn)維服務(wù)包裝成感知的“監(jiān)測器”、決策的“分析器”、執(zhí)行的“策略器”,供健康管理、變更管理等系列服務(wù)調(diào)用,即可增強(qiáng)已有運(yùn)維場景,解決一些普通手段無法解決的問題。
4.運(yùn)維中臺化、低代碼化及云原生化運(yùn)維開發(fā)體驗(yàn)
SREWorks 套件自身也是云原生化的應(yīng)用,并且采用運(yùn)維中臺思想構(gòu)建,在中臺里構(gòu)建大量的PaaS 化運(yùn)維服務(wù)能力,在前臺圍繞“交、監(jiān)、管、控、營、服”六大場景提供SaaS 化運(yùn)維場景應(yīng)用。
大部分頁面為企業(yè)后端控制臺類系統(tǒng),不太需要很酷炫的交互設(shè)計(jì),故而,運(yùn)維開發(fā)領(lǐng)域的前端開發(fā)始終難于追趕前端流行趨勢。針對這些特點(diǎn),SREWorks 創(chuàng)新性地設(shè)計(jì)了一套 Serverless 體驗(yàn)的前端開發(fā)模式。
三、為什么要開源?
阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)之前在多次技術(shù)分享時(shí)重點(diǎn)介紹過“DataOps、AIOps”的能力,但都是純理論層面的介紹。具體在 SRE 領(lǐng)域,到底在工程實(shí)踐上實(shí)現(xiàn)這一套理論?對運(yùn)維的需求、界面、內(nèi)核這三層的理解如何落地?
為了把數(shù)據(jù)化、智能化這套數(shù)智內(nèi)核故事講明白,阿里云大數(shù)據(jù) SRE 團(tuán)隊(duì)將具有低門檻、高效率特點(diǎn)的云原生運(yùn)維平臺SREWorks開源出來。
他們堅(jiān)定地認(rèn)為,運(yùn)維團(tuán)隊(duì)更需要擁抱云原生,只有這樣,運(yùn)維才能在云原生浪潮下找到一席之地。
該團(tuán)隊(duì)也希望, SREWorks 的開源,能讓更多從業(yè)者使用“大數(shù)據(jù)和AI”的能力做好運(yùn)維,實(shí)現(xiàn)“數(shù)據(jù)+智能”的運(yùn)維平臺內(nèi)核。
據(jù)介紹,SREWorks背靠阿里云計(jì)算平臺系列“大數(shù)據(jù)&AI”產(chǎn)品,如 MaxCompute、Flink、DataWorks、Hologres、Elasticsearch 等,開源版中同樣選取了這些產(chǎn)品對應(yīng)的開源版本,比如開源版 Flink、Elasticsearch 等。
四、后續(xù)規(guī)劃
SREWorks平臺目前每個(gè)月會進(jìn)行一次迭代開發(fā)任務(wù),后續(xù)將由版本管理員統(tǒng)一維護(hù)合入相關(guān)功能及問題修復(fù)等內(nèi)容,以保證最新的云原生化運(yùn)維能力持續(xù)進(jìn)入后期版本中。
當(dāng)前, SREWorks 中有一套 OAM(Open Application Model)規(guī)范的工程化實(shí)踐,可以把該實(shí)踐看成是 SREWorks 的核心引擎。圍繞該引擎,SREWorks團(tuán)隊(duì)建設(shè)了系列運(yùn)維中臺服務(wù),包含自動化、數(shù)據(jù)化、智能化能力,之后也將跟隨社區(qū) OAM 規(guī)范的發(fā)展,持續(xù)迭代。
五、寫在最后
今天 SREWorks 的開源只是邁出的一小步,非常期待得到開發(fā)者的反饋。SREWorks中也設(shè)計(jì)了插件化擴(kuò)展能力,歡迎使用 SREWorks 來打造屬于自己的運(yùn)維平臺。最后,如果您對 SRE、DataOps、AIOps 或云原生等領(lǐng)域有興趣,都可以參與到我們的建設(shè)中來,這將是我們莫大的榮幸,一起交流,一起打造最具特色的 SRE 云原生運(yùn)維平臺!
項(xiàng)目地址:https://github.com/alibaba/sreworks