這是最好的時代,運(yùn)維向更專業(yè)的方向發(fā)展。
“Ops之前不是一個專業(yè),它只有經(jīng)驗(yàn),現(xiàn)在是在把經(jīng)驗(yàn)變成專業(yè),對外提供標(biāo)準(zhǔn)化服務(wù)。”我的同事、阿里云彈性計(jì)算穩(wěn)定性負(fù)責(zé)人鹿棠,他相信,這個是讓運(yùn)維真正走向?qū)I(yè)化的時代。運(yùn)維人員憑借著自身的技術(shù)和經(jīng)驗(yàn),為企業(yè)降本增效,而非人工救火隊(duì)。
這是最壞的時代,不少運(yùn)維人陷入了職業(yè)危機(jī)。
運(yùn)維人員似乎也陷入了極致的內(nèi)卷之中。最早憑幾行腳本和深厚的經(jīng)驗(yàn)就不愁就業(yè),到如今各種學(xué)不完的運(yùn)維工具,不僅需要上知業(yè)務(wù)架構(gòu)和代碼,還需下懂內(nèi)核和硬件。隨著云計(jì)算、DevOps等技術(shù)趨勢的普及,運(yùn)維人員面臨著越來越多的挑戰(zhàn),他們從前所面臨的問題和工作方式,也在重新被定義。
本文將討論運(yùn)維工作所面臨的新變化新趨勢,以及在云計(jì)算時代大潮下運(yùn)維人員的工作邊界與路徑是如何被重新定義。最后分享,在如斯背景下,我們認(rèn)為的一個好的運(yùn)維體系應(yīng)該具有什么特征。
運(yùn)維面臨的新趨勢
回顧歷史,除去早期大企業(yè)內(nèi)部的少量IT運(yùn)維人員,中國運(yùn)維行業(yè)的興起應(yīng)該是隨著互聯(lián)網(wǎng)行業(yè)上個世紀(jì)90年代的發(fā)展而來。因此,互聯(lián)網(wǎng)行業(yè)的運(yùn)維能力代表了最領(lǐng)先的水平,也引領(lǐng)著運(yùn)維領(lǐng)域的趨勢和方向。
如今,20年過去了,互聯(lián)網(wǎng)時代進(jìn)入下半場,傳統(tǒng)企業(yè)數(shù)字化升級深入。運(yùn)維人員所面臨的環(huán)境和挑戰(zhàn)有了許多改變:
企業(yè)IT系統(tǒng)越發(fā)復(fù)雜,運(yùn)維挑戰(zhàn)更大,需要實(shí)現(xiàn)更高程度的自動化。
隨著數(shù)字化升級的深入、業(yè)務(wù)的增長,企業(yè)的IT系統(tǒng)日趨復(fù)雜,林林總總的網(wǎng)絡(luò)設(shè)備、服務(wù)器、中間件、以及業(yè)務(wù)系統(tǒng)微服務(wù)化等讓IT運(yùn)維人員難以從容應(yīng)對,即使加班加點(diǎn)地維護(hù)、部署、管理也經(jīng)常會因這樣或那樣的故障而導(dǎo)致業(yè)務(wù)的中斷,嚴(yán)重影響業(yè)務(wù)的正常運(yùn)行。
同時,市場競爭變得越來越激烈,企業(yè)業(yè)務(wù)迭代需提速,以搶占市場先機(jī),互聯(lián)網(wǎng)行業(yè)尤為明顯。產(chǎn)品市場化或迭代的速度成為產(chǎn)品成功至關(guān)重要的一個條件,如何更好地支持業(yè)務(wù)的快速迭代就成了運(yùn)維人員又一壓力。顯然,人工的運(yùn)維方式難以為繼,于是國內(nèi)運(yùn)維行業(yè)開始尋求自動化。
工欲善其事必先利其器。隨著技術(shù)的發(fā)展和自動化運(yùn)維工具的出現(xiàn),包括事件監(jiān)控預(yù)警、自動化部署、自動化編排以及自助診斷等工具,為運(yùn)維效率的提升提供了可能。
云計(jì)算的誕生和大規(guī)模普及,帶來了運(yùn)維對象、運(yùn)維工具甚至是技能的變化,DevOps趨勢引起關(guān)注。
一般,很多企業(yè)會把運(yùn)維部門的工作分成兩個層級:一是基礎(chǔ)設(shè)施運(yùn)維,主要是針對企業(yè)IT基礎(chǔ)設(shè)施的管理,包括服務(wù)器、交換機(jī)、網(wǎng)絡(luò)等物理資源的監(jiān)控、報(bào)警、維修上線等;二是應(yīng)用運(yùn)維,主要是針對企業(yè)具體業(yè)務(wù)的運(yùn)維,包括某些業(yè)務(wù)應(yīng)用的上線下線、發(fā)布部署和擴(kuò)縮容等。
從業(yè)務(wù)的維度來說,應(yīng)用運(yùn)維的效率提升能更直接地加快業(yè)務(wù)迭代的效率和增長速率;基礎(chǔ)運(yùn)維則是根基,自建數(shù)據(jù)中心的企業(yè),其運(yùn)維的主要工作側(cè)重于基礎(chǔ)設(shè)施。
云計(jì)算具有“軟件(或服務(wù))定義一切”的特點(diǎn),云廠商基本承接了底層基礎(chǔ)設(shè)施的維護(hù)與虛擬化的工作。上云之后,企業(yè)運(yùn)維的主要對象則從硬件(服務(wù)器等),轉(zhuǎn)向了面向服務(wù)API的運(yùn)維,包括主機(jī)運(yùn)維和應(yīng)用運(yùn)維,提倡自動化的部署流水線和持續(xù)交付的DevOps愈發(fā)受到關(guān)注。
我們會發(fā)現(xiàn),技術(shù)的發(fā)展是一個不斷追求將底層基礎(chǔ)設(shè)施屏蔽、使開發(fā)人員無需關(guān)注底層資源的過程,從Severless、函數(shù)計(jì)算這些炙手可熱的概念,也能體會一二。
早期,企業(yè)可能會是幾個運(yùn)維人員維護(hù)一些應(yīng)用,負(fù)責(zé)“從下到上”的維護(hù),新業(yè)務(wù)的擴(kuò)展只能招聘更多運(yùn)維人員。這種“堆人”的戰(zhàn)術(shù)是不可持續(xù)的。實(shí)際上,在許多的大企業(yè)內(nèi)部,許多運(yùn)維工作已經(jīng)開始了初步的“平臺化”,即將底層的資源進(jìn)行集中管理,以節(jié)約管理成本。這種“平臺化”,也促進(jìn)了部分企業(yè)內(nèi)部公共組件的服務(wù)化、標(biāo)準(zhǔn)化。
只是,這種方式畢竟比不上云廠商的規(guī)模效應(yīng)。
而平臺化的對外形式即云化,可見,從企業(yè)內(nèi)部也能看出,云化已是無法逆轉(zhuǎn)的趨勢。借用一篇文章中的說法:云計(jì)算的一個重要特征就是“開箱即用”,由云供應(yīng)商提供集中化的運(yùn)維管理并以服務(wù)方式交付給最終用戶。這讓云用戶可以從很多繁瑣的日常運(yùn)維工作中解放出來,真正關(guān)注自身的業(yè)務(wù)發(fā)展,從而提升整個行業(yè)的運(yùn)營效率。
人工智能與大數(shù)據(jù)興起
到近幾年,運(yùn)維時興概念不止于DevOps,還有各種DataOps與AIOps。這些都反映了運(yùn)維領(lǐng)域智能化、數(shù)據(jù)化運(yùn)作的需求。
智能化實(shí)際上是自動化的更高追求,可以進(jìn)一步釋放運(yùn)維人員的時間。人工智能熱潮卷到一切實(shí)現(xiàn)能夠自動化的領(lǐng)域,運(yùn)維領(lǐng)域也不例外,這必然是發(fā)力的重要方向之一。不過,在大多數(shù)企業(yè)還未完全實(shí)現(xiàn)大規(guī)模的自動化,甚至初步的代碼化時,智能運(yùn)維實(shí)際上有點(diǎn)遙遠(yuǎn)。
新的工作邊界與實(shí)現(xiàn)路徑
我們可以看到,環(huán)境的變化給運(yùn)維帶來了自動化標(biāo)準(zhǔn)化、DevOps(開發(fā)運(yùn)維一體化)和AIOps(智能化)三個趨勢,運(yùn)維需要在企業(yè)運(yùn)維體系中引入相關(guān)理念,甚至進(jìn)行徹底的改造。而筆者認(rèn)為,構(gòu)筑一個面向未來的運(yùn)維體系,除了關(guān)注上述新趨勢,還需要關(guān)注云時代下企業(yè)運(yùn)維的工作邊界和實(shí)現(xiàn)路徑的變化。
諸多時代大潮中,給運(yùn)維工作帶來最大沖擊的,無疑是云計(jì)算的大規(guī)模普及。業(yè)務(wù)搬到云上之后,底層的運(yùn)維工作變少,便引發(fā)了運(yùn)維人員危機(jī)的大規(guī)模討論。
運(yùn)維人員的終極目標(biāo)就是通過高效統(tǒng)籌IT資源幫助業(yè)務(wù)實(shí)現(xiàn)業(yè)務(wù)價值。運(yùn)維最關(guān)心的四大方面,可以拆解為:效率提升、穩(wěn)定、安全、成本優(yōu)化。到了今天,運(yùn)維人員追求的還是這四個方面,但在云計(jì)算時代,其工作內(nèi)容的邊界、實(shí)現(xiàn)手段及路徑已發(fā)生了巨大變化。
持續(xù)提效,從單點(diǎn)自動化到標(biāo)準(zhǔn)化
原來,寫Shell腳本、借用開源工具是常見的效率提升方式。然而,這種自動化往往是單點(diǎn)的、割裂的、非標(biāo)準(zhǔn)化的。有的時候,甚至兩個工程師所用的腳本都是不同的,工具也不同,而且由于企業(yè)內(nèi)的運(yùn)維組織架構(gòu)與分工不同,會存在能力重復(fù)建設(shè)或信息孤島,對企業(yè)而言,運(yùn)維效率是打折的。所以我們會說,從前的運(yùn)維是一種“經(jīng)驗(yàn)”,不夠系統(tǒng)化。經(jīng)驗(yàn)往往依賴個人積累。
今天,DevOps/GitOps/IaC可編程基礎(chǔ)設(shè)施等趨勢的出現(xiàn),就是想改變這種單點(diǎn)的、非系統(tǒng)化的“自動化”,云計(jì)算在屏蔽底層硬件的基礎(chǔ)上,還提供了多種開箱即用的工具,推動了DevOps的發(fā)展。這讓運(yùn)維效率提升的關(guān)鍵詞變成了代碼化、標(biāo)準(zhǔn)化。運(yùn)維人員需要深度結(jié)合自身企業(yè)的特點(diǎn),將經(jīng)驗(yàn)抽象化、產(chǎn)品化、平臺化地提供給研發(fā)人員。
穩(wěn)定可靠,更少關(guān)注底層,更多關(guān)注應(yīng)用和服務(wù)
穩(wěn)定本來可說是運(yùn)維最為關(guān)注的“基石”。傳統(tǒng)的運(yùn)維要與物理機(jī)、網(wǎng)絡(luò)設(shè)備打交道,還需要建設(shè)容災(zāi)、監(jiān)控和告警系統(tǒng)來保障業(yè)務(wù)的穩(wěn)定運(yùn)行。如今,云計(jì)算在平臺層面通過大規(guī)模的異地容災(zāi)、熱遷移等技術(shù),實(shí)現(xiàn)了較高的SLA。企業(yè)的運(yùn)維人員可能只需要偶爾根據(jù)云廠商的建議,通過幾個簡單的API或者點(diǎn)擊來避免基礎(chǔ)設(shè)施對業(yè)務(wù)的影響?,F(xiàn)在是需要知道自己要做什么,點(diǎn)點(diǎn)鼠標(biāo)就完成,之前是建房子還需要自己找木頭。
不過,業(yè)務(wù)的穩(wěn)定=基礎(chǔ)設(shè)施的穩(wěn)定性*代碼的穩(wěn)定,運(yùn)維團(tuán)隊(duì)釋放出了更多的精力去關(guān)注應(yīng)用和服務(wù)的穩(wěn)定性。在去年全球運(yùn)維大會上,筆者發(fā)現(xiàn)“技術(shù)運(yùn)營”和“BizOps”這些概念也開始出現(xiàn),都是運(yùn)維的新價值方向。
運(yùn)維埋頭搞機(jī)器的時代已經(jīng)過去,“技術(shù)運(yùn)營”要求運(yùn)維人員更多參與到業(yè)務(wù)當(dāng)中,提升用戶體驗(yàn),比如考慮大促期間集群是否要擴(kuò)容、帶寬是否足夠、壓測數(shù)據(jù)如何等。BizOps則提倡最了解系統(tǒng)運(yùn)行狀況的應(yīng)用運(yùn)維工程師與需求方業(yè)務(wù)人員之間的反饋與互動,推崇的理念是"好系統(tǒng)是運(yùn)維出來的"。
安全,從自行負(fù)責(zé)到責(zé)任共擔(dān)
安全有很多個維度,從我們耳熟能詳?shù)穆┒捶雷o(hù),網(wǎng)絡(luò)攻防,到企業(yè)常用的代碼檢查、權(quán)限管理、日志審計(jì),一直到更高等級的可信計(jì)算,全鏈路加密等。這些在大企業(yè)里可能需要設(shè)立一個安全團(tuán)隊(duì)去負(fù)責(zé)。比如做日志審計(jì)的話,安全團(tuán)隊(duì)則需要收集每一條日志,逐一分析和匹配,同時隨著業(yè)務(wù)代碼迭代而迭代。高度復(fù)雜性也讓很多小企業(yè)直接選擇裸奔或者使用昂貴的第三方解決方案。
云則直接提供了多層次、全鏈路的安全,支持精細(xì)化的權(quán)限管理。比如,云上所有的操作都會留下記錄,事后可以審計(jì)和追溯,這在企業(yè)內(nèi)部無疑需要巨大的成本;阿里云云上專有網(wǎng)絡(luò)為企業(yè)提供了更便捷的網(wǎng)絡(luò)隔離與流量控制;阿里云彈性計(jì)算的最新一代云服務(wù)器全量搭載安全芯片,實(shí)現(xiàn)服務(wù)器的可信啟動,確保零篡改;在此基礎(chǔ)上,還通過加密計(jì)算隔離環(huán)enclave,進(jìn)一步實(shí)現(xiàn)數(shù)據(jù)的可用不可見,基本已經(jīng)滿足了金融級別的安全可信需求。
從前,IDC時代企業(yè)自行負(fù)責(zé)IT安全;近幾年,云安全責(zé)任共擔(dān)模式在業(yè)界已經(jīng)達(dá)成共識。云廠商負(fù)責(zé)云基礎(chǔ)設(shè)施層面的安全,用戶負(fù)責(zé)業(yè)務(wù)或稱為虛擬化層以上的安全。用戶可以在云安全市場里挑選合適的產(chǎn)品來保護(hù)自己的內(nèi)容、平臺、應(yīng)用程序、系統(tǒng)和網(wǎng)絡(luò)安全;同時做好權(quán)限控制,避免如刪庫跑路等悲劇的發(fā)生。
成本優(yōu)化,從固定成本到FinOps
技術(shù)層面而言,云計(jì)算所具有的“軟件定義一切”的特性,給運(yùn)維和開發(fā)人員的工作方式帶來了變化,其“彈性”的特征,也給企業(yè)的提供了一種降低資源閑置的“成本優(yōu)化方式”。
而在商業(yè)模式方面,云計(jì)算的“租賃”模式,與傳統(tǒng)的IT硬件采購不同,企業(yè)的財(cái)務(wù)需要實(shí)現(xiàn)從Capex(資本性支出)到Opex(管理支出,即運(yùn)營成本)的轉(zhuǎn)化。云計(jì)算有豐富的計(jì)費(fèi)模式,進(jìn)一步幫助企業(yè)達(dá)成IT的靈活性與低成本之間的最佳平衡。
因此,對于運(yùn)維人員而言,云上運(yùn)維意味著轉(zhuǎn)變成本優(yōu)化的思維。
隨著企業(yè)將更多核心業(yè)務(wù)從數(shù)據(jù)中心遷移到云上,越來越多的企業(yè)迫切需要對云上環(huán)境進(jìn)行預(yù)算制定、成本核算和成本優(yōu)化。從固定的財(cái)務(wù)成本模型,轉(zhuǎn)化為變化的、按需付費(fèi)的云財(cái)務(wù)模型,這是一個重要的觀念和技術(shù)轉(zhuǎn)變。然而大多數(shù)企業(yè)尚未對云財(cái)務(wù)管理有清晰的認(rèn)知和技術(shù)手段,在FinOps 2020年調(diào)研報(bào)告中,將近一半的受訪者(49%)幾乎沒有或沒有自動化方法管理云支出。
為了幫助組織更好了解云成本和IT收益,F(xiàn)inOps理念開始流行。FinOps是云財(cái)務(wù)管理的方式,是企業(yè)IT運(yùn)營模式的轉(zhuǎn)變,目標(biāo)是提升組織對云成本的理解和更好地做決策。2020年8月,Linux基金會宣布成立FinOps基金會,通過最佳實(shí)踐、教育和標(biāo)準(zhǔn)推進(jìn)云財(cái)務(wù)管學(xué)科。
FinOps社區(qū)中的一位從業(yè)者分享了一個來自銀行業(yè)的實(shí)踐,通過對某個應(yīng)用的severless架構(gòu)改造,最終實(shí)現(xiàn)了月成本比本地部署降低60%。他指出,云在降成本方面的作用似乎毀譽(yù)參半,實(shí)際上這受到企業(yè)云成本優(yōu)化成熟度的影響,他將其分成爬、走、跑三個階段,當(dāng)企業(yè)純熟運(yùn)用了云成本優(yōu)化后,成本優(yōu)化的效果是極其顯著的。
目前云廠商開始逐漸加大對FinOps的支持,幫助企業(yè)的財(cái)務(wù)流程可以更好適應(yīng)云資源的可變性和動態(tài)性。比如AWS Cost Explorer、阿里云費(fèi)用中心,可以幫助企業(yè)更好進(jìn)行成本分析和分?jǐn)偂M瑫r,企業(yè)還需要通過技術(shù)降低成本,比如通過敏捷的彈性伸縮、服務(wù)選型、云上IaaS+的能力和靈活的計(jì)費(fèi)模式,充分發(fā)揮云的特性。
運(yùn)維體系應(yīng)該具有的四大特征
綜上,我們發(fā)現(xiàn),在云上,硬件設(shè)備、硬件的監(jiān)控和調(diào)度工作已經(jīng)交由云廠商完成。企業(yè)運(yùn)維的工作重心轉(zhuǎn)變?yōu)槠髽I(yè)內(nèi)部運(yùn)維體系的設(shè)計(jì)與構(gòu)建,即需要深度結(jié)合自身企業(yè)的特點(diǎn),將經(jīng)驗(yàn)抽象化、產(chǎn)品化,形成一套屬于自身企業(yè)的運(yùn)維體系。
結(jié)前文總結(jié)的合運(yùn)維自動化、DevOps、AIOps和DataOps等新趨勢,以及云時代下運(yùn)維工作邊界的變化,我們認(rèn)為,一個好的運(yùn)維體系應(yīng)該具備以下四個特征。
自動化標(biāo)準(zhǔn)化,體現(xiàn)了DevOps和基礎(chǔ)設(shè)施即代碼(Infrastructure as Code,簡稱IaC)等理念。
可以說,DevOps的基礎(chǔ)不僅僅是IaC,而是everthing as code。只有完成了代碼這一步,才能做到標(biāo)準(zhǔn)化,運(yùn)維平臺與開發(fā)通過標(biāo)準(zhǔn)的API流暢地交流。代碼化也是最終目標(biāo)“智能運(yùn)維“AIOps”或“NoOps”的基礎(chǔ)。
阿里云彈性計(jì)算發(fā)布的ECS自動化運(yùn)維套件就體現(xiàn)了IaC的理念設(shè)計(jì),其中資源編排ROS和運(yùn)維編排OOS,可以讓用戶通過模板的方式實(shí)現(xiàn)自動化的部署和批量運(yùn)維操作,還支持更為方便的拖拽式操作。研究機(jī)構(gòu)Gartner在2021年十大云計(jì)算趨勢中就提到“自動化的云編排和優(yōu)化”。阿里云的ROS和OOS、AWS的Cloud Formation、Terraform等,都是類似的自動化編排工具。
阿里云ECS自動化運(yùn)維套件,對底層資源完整全面的監(jiān)控,并以事件的方式開放給用戶,用戶可以通過OpenAPI或云監(jiān)控訂閱,方便其基于事件驅(qū)動構(gòu)建自動化運(yùn)維體系,這是建設(shè)自動化運(yùn)維體系的重要基礎(chǔ)。
具有明確的權(quán)限管理與能夠快速集成的安全能力。
權(quán)限的管理、操作的可追溯與可審計(jì),能夠有效地控制企業(yè)安全風(fēng)險(xiǎn),防止刪庫跑路等事件的發(fā)生,并能實(shí)現(xiàn)事后的調(diào)查與復(fù)盤。
阿里云ECS自動化運(yùn)維套件中的云助手,會完整記錄ECS中的所有操作記錄;ROS和OOS等編排工具也支持權(quán)限管理。前文也簡單提到阿里云有非常完善的安全能力,實(shí)際上,企業(yè)在阿里云上所構(gòu)建的運(yùn)維體系,不僅僅是利用自動化工具所搭建出來的運(yùn)維體系,同時也擁有了阿里云底層的智能運(yùn)維能力,這才是企業(yè)在阿里云享受的完整運(yùn)維體系。
覆蓋全面,包括自動化的性能管理與云財(cái)務(wù)管理工具等,可輔助云成本優(yōu)化。
早期的運(yùn)維往往聚焦在單點(diǎn)的自動化,運(yùn)維體系追求的應(yīng)該是全流程的自動化,覆蓋資源和業(yè)務(wù)的全生命周期。
阿里云ECS自動化運(yùn)維套件覆蓋了云上服務(wù)器的全生命周期管理,從遷云、部署、日常運(yùn)維到彈性容量調(diào)整。其中彈性伸縮服務(wù)ESS和彈性供應(yīng)組APG工具針對不同場景的資源擴(kuò)縮容。利用資源優(yōu)化顧問可以識別出來使用率低的資源,用戶可以對此資源進(jìn)行調(diào)整以提升資源利用率、降低成本。
具備智能化、數(shù)據(jù)化的基礎(chǔ)。
完全實(shí)現(xiàn)智能運(yùn)維,我們認(rèn)為在大多數(shù)企業(yè)中還是一個理想的目標(biāo),但運(yùn)維體系至少具備往智能化升級的基礎(chǔ)(即代碼化標(biāo)準(zhǔn)化),或具備部分智能化功能。在阿里云ECS自動化運(yùn)維套件中,智能化的特性主要在管家服務(wù)中,管家服務(wù)指的是阿里云ECS一系列用戶幾乎無感的智能功能,包括故障的自動診斷與修復(fù)、資源的自動監(jiān)控與分析優(yōu)化,更不用說阿里云ECS底層的熱遷移等智能運(yùn)維能力。
結(jié)語
從IDC-host到Cloud-host時代,如今則是進(jìn)入了Build-on cloud的時代。無論是DevOps還是云化,都是大勢所趨,身處其中的運(yùn)維、開發(fā),企業(yè)或云廠商,都無法逆轉(zhuǎn)。與其感嘆時代車輪太快,不如主動擁抱新技術(shù)趨勢,將時代趨勢內(nèi)化為自身的技術(shù)紅利與競爭力。從業(yè)者主動學(xué)習(xí)相關(guān)知識,作為云廠商,阿里云也希望推動DevOps理念在中國的落地,幫助中國企業(yè)提升數(shù)字化、自動化能力。