企業如何規劃DevOps落地與演進?

DevOps如今是最熱門的IT開發運營模式,根據DevOps研究組織Dora的調查報告,DevOps的實踐在各個行業已全面展開,但在具體落地中,各企業仍困難重重,或是偏離了DevOps的方向,歷經多年都不得其門而入,或是小規模的試行獲得成功,但大規模的推行進展遲緩、效果不佳,諸如此類。

企業DevOps實踐,成功的方法很多,但失敗的方式更多,其根本原因是DevOps實踐自身是一個系統化的工程,對於企業來說,是摸着石頭過河,已有的成功經驗複製難度高。企業或期望DevOps實踐短期內帶來足夠可觀的效益回報,或期望DevOps的實踐轉型一蹴而就,忽略了企業的現狀基礎和DevOps實踐的客觀過程,缺少符合企業現狀與特點的DevOps實踐內容與演進路線的設計。

那麼,企業究竟如何開展DevOps實踐,才能更快、更好、更有效地推進落地,充分享受到DevOps實踐帶來的業務價值提升?通過多個DevOps實踐規劃參與,對比不同企業的DevOps實踐落地提出影響落地的關鍵因素,並基於此提出DevOps實踐落地路徑建議。


影響因素

DevOps落地實踐關乎業務,源於對IT組織研發、運維、運營服務能力提升的訴求。因此,IT組織的研運能力提升是DevOps實踐的內因,而業務發展變化則是DevOps實踐推進的重要外因。業務、IT組織與DevOps的關係如下圖所示。

圖片1.png

DevOps對於研發效能的提升,可通過逐層的能力傳遞最終服務於業務競爭。

圖片2.png

01 業務因素

在DevOps實踐中,業務因素相對來說僅爲外因,但在現實過程中,其往往成爲推動企業開展DevOps實踐的第一核心要素。因爲企業在當前數字化轉型的熱潮中,業務的開展越來越多依賴業務系統,而業務系統的快速迭代與高質量交付又依賴於IT組織的研運能力。而DevOps實踐,是當前已證明最有效促進持續交付能力提升的方向與方式。

業務越具有如下的特徵,其企業對DevOps實踐的需求越強烈,也越緊迫,更應該及早的開展。

業務服務模式:業務服務模式以線上模式爲主,或線上模式所佔比重逐年上升。

用戶羣體:用戶羣裏以C端用戶爲主,或以互聯網方式的B端用戶爲主。

業務變化頻率:受市場或政策影響,業務變化頻繁,需及時調整應對。

業務連續性、可靠性:業務的連續性、可靠性要求高,任何業務中斷都會帶來較大的損失。

行業競爭性:行業競爭充分,持續的業務創新有利於提升企業競爭力。


02 IT因素

IT研發、運維服務能力現狀是推動DevOps實踐的內因。狹義的DevOps用於承載企業IT部門研發側支持,而廣義的DevOps則涵蓋企業IT的研發、運維乃至技術運營等業務,當前DevOps的實踐主要都集中在研發側。

企業在研發側的支撐能力、標準、質量,也並非白紙一張,現有企業大多仍是按需求、開發、測試、運維的劃分階段管理,長期以來研運支撐都是煙囪式建設,導致對於研發、運維的支撐一直難以形成合力,即使建設新的能力,也只是在樹立新的煙囪,業務流、數據流難打通,難持續演進。

DevOps相對於IT來說,一方面是治理,另一方面是創新,IT的如下因素,對於DevOps的實踐落地推動具有較大的影響。

  • IT現有與業務要求的研發效能差距,差距越大,越急需。

  • IT管控訴求,精細化管控訴求越高,越必要。

  • IT團隊規模,規模越大,越有價值。

  • IT工具鏈缺少或煙囪式建設越明顯,越必要。

演進路線

對於DevOps實踐上,Dora曾經提出過五個階段的指導,如下圖所示:

圖片3.png

其分別是:

  • Stage 1: 規範化技術棧

  • Stage 2: 推進標準化&降低不一致性因素

  • Stage 3: 擴展DevOps實踐

  • Stage 4: 自動化基礎框架交付

  • Stage 5: 提供自服務能力

該指導中特別強調構建標準的技術棧,認爲它是Stage 1的關鍵因素,同時是Stage 2中的實踐內容,也是Stage 3的關鍵因素,是一項需要持續實施的實踐要素。

標準化的技術棧有利於降低DevOps實踐的難度,但從企業的長期過程來看,實現的難度極大,不太現實;因此,我們建議DevOps的實踐要基於異構體系,朝着一站式、企業級的方向,其更符合企業採用技術的演進現狀。


DevOps實踐演進建議

DevOps實踐的演進要從目標定位、建設方式、實踐過程等方面進行綜合設計與推進,各方面的建議分別如下。


01 目標定位

DevOps實踐是一個體系化、持續化的工程,不是一次性的項目建設,不可能一蹴而就。企業DevOps實踐的階段性目標規劃既重要又必須,雖然不同企業的最終目標類似,但由於業務、IT的現狀不同, DevOps實踐的階段性目標必然會有所差異。

企業DevOps實踐的階段性目標規劃,需要依賴於企業的IT基礎實力,例如組織、制度、協作模式、人員能力、研發模式等,結合業務保障與IT基礎條件,合理的DevOps實踐階段目標。

一般來說,可將企業DevOps的整個實踐過程劃分爲自動化數字化一體化三個大的階段。

自動化階段,構建DevOps的自動化過程工具鏈,着重實現DevOps意識提升、研發轉型,以及初步的研發效率與質量提升,助力業務發展。

數據化階段,構建面向業務和研發全過程的度量體系,形成持續改進機制,實現研發側的DevOps的持續優化落地,提升業務競爭力。

一體化階段,構建覆蓋研發側、運維側,乃至運營側的延展與閉環,實現應用系統的生命週期DevOps實踐覆蓋,推動業務持續創新,引領業務發展。


02 建設方式

DevOps的落地推進,部分企業採用的是來自研發團隊的自下而上的方式,個別團隊自主引入,效果出來後,再推廣到其它團隊;部分企業採用統一組織,自上而下推行的方式,企業統一規劃,統一建設,應用與團隊逐步遷移。

相對來說,自上而下的方式更有利於促進企業級的DevOps實踐落地。因爲對於自下而上的方式,成功經驗帶有較爲濃厚的團隊的特點,工具鏈以開源組件攢建,工具的體系化程度不夠,團隊級適用是其主要特點,DevOps的實踐也常止步於“自動化”階段。

基於此,經驗複製、工具複用的方式難以落地,況且IT組織的核心職能是爲企業業務提供服務與保障,IT服務業務如納入IT組織自保障,必然分散IT組織的服務資源,短期內可能有一定的效果,長期看瓶頸明顯,投入產出比不佳。

相對應地,自上而下的方式,從規劃之初就會考慮到不同IT組織文化、團隊技術棧、業務的特點差異,不同職能組織、不同角色的訴求支撐,產出可服務於企業不同團隊的平臺級的DevOps實踐工具、方法與制度規範,避免實踐中方向偏離。


03 實踐過程

DevOps實踐涉及工具平臺、流程體系、規範制度、人員能力等方面建設。實踐可採用先提升認知後落地實踐、先試點驗證後全面推開的過程進行。

DevOps的理解與認知

DevOps從2009年提出以來,其內涵一直在不斷的豐富。因此,對於DevOps的理念與認知,在一定程度上決定了DevOps的執行程度。DevOps的定義演變過程如下:


圖片4.png


DevOps的定義不斷髮展,內涵也在不斷的演進。因此,企業的DevOps實踐是一個長期過程,是一個會伴隨企業業務發展、IT能力提升的長期過程,涉及企業的業務組織、IT組織的協作提升與持續優化。

DevOps實踐平臺

DevOps平臺是企業DevOps實踐的落地承載,一站式企業級可持續演進應該成爲平臺的基本能力訴求。

DevOps的實踐不是一天完成,同樣,支撐DevOps實踐的工具平臺,也需要持續建設與豐富。厚雲薄端的研運中臺模式,應作爲平臺建設的唯一方向,其可有效沉澱通用工具能力,又能通過低成本的方式提升企業DevOps場景變化的支撐訴求。

DevOps實踐的有序推進

DevOps實踐的有序推進包括兩個方面,一個方面是指面的推廣,也就是將DevOps實踐推向企業內部的其他項目、其他團隊,逐步實現團隊敏捷、項目敏捷,乃至企業敏捷;另一個方面是不斷加深DevOps的應用,也就是基於DevOps的研發效能持續優化與提升,建立學習型、使命型團隊,推進DevOps文化的落地。

總結

DevOps自提出以來,其內涵一直在不斷的發展與豐富。相應地,DevOps的實踐,也會是一個螺旋上升的過程,需要企業持續推進,進而爲企業業務發展注入持續不斷的活力。

作者:黃全中

其他優質文章

ZooKeeper | 安裝部署、應用場景、開發對接API

【銀行運維】落地平臺化管理,大步邁向銀行4.0

彈性(Flex)佈局的使用

運維轉型 | 運維人不再只是“救火英雄”

嘉爲科技榮獲ITSS【2019中國卓越智能運維服務商】


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章