ITIL、DevOps 和 SRE 如何為您的組織協同工作

已發表: 2020-03-02

當有人問你的組織是什麼類型的“商店”時,你能自信地回答它是 ITIL、DevOps 還是 SRE?

也許有些人可以,但如果你是一家大型企業,答案可能是其中幾種運營模式的組合,特別是因為 SRE 已成為 DevOps 的關鍵實現。 ITIL 可以與 DevOps 和 SRE 原則一起有效地工作,儘管乍一看它們似乎是不同的物種。

訣竅是確保無論您的組織有不同的運營模式或工具鏈,在團隊之間都有共享的可見性、溝通和協作。 這將使您的不同團隊在使用每種方法的最佳實踐時保持一致。

什麼是 ITIL? 如果你不熟悉……

ITIL 代表信息技術基礎設施庫,是一種方法論,旨在創建信息技術最佳實踐的單一來源。 根據 Sarah K. White 和 Lynn Greiner 的說法:

“ITIL 由英國政府的中央計算機和電信局 (CCTA) 在 1980 年代開發,最初由 30 多本書組成,隨著時間的推移開發和發布,這些書籍匯集了從許多來源(包括供應商的最佳實踐)在世界各地。”

ITIL現在已經更新到第四版了,做法濃縮成九本書。 雖然這些書反映了現代技術時代,但它們仍然非常集中地關注 ITIL 最初的核心理念。 這些理想包括“自動化流程、改進服務管理以及將 IT 部門整合到業務中”。 ITIL 傳統上是一種非常自上而下、高度結構化和流程驅動的方法,並且它仍然是當今採用最多的 IT 框架之一。

ITIL 的一些關鍵實踐包括服務目錄和設計、監控和事件管理、事件和問題管理、發布管理、配置管理等等。 無論運營模式如何,所有這些實踐都適用,但在不同的架構需求和工作流程的背景下,它們可能會以不同的方式表現出來。 即使對於強烈認同 DevOps 或 SRE 商店的組織而言,這些實踐通常也很有價值。

ITIL 和 ITSM 之間有什麼關係?

ITSM 或信息技術安全管理是公司如何管理其 IT 服務的過程。 這個過程非常以客戶為導向,通常包含 5 個步驟:

  1. 服務策略
  2. 服務設計
  3. 服務過渡
  4. 服務運營
  5. 持續改進服務

ITIL 是實施 ITSM 實踐的框架。 該框架是組織中立的,因此可以應用於幾乎所有業務,即使 IT 關注的唯一客戶是內部客戶。 由於它們之間的聯繫如此緊密,因此 ITIL 和 ITSM 在許多問題上保持一致也就不足為奇了。

根據 itiltraining.com:

“我們非常重視持續改進。 這涉及持續測量和改進流程、IT 服務和 IT 基礎設施。 這樣做可以最大限度地提高他們的效率、效力和成本效益。”

ITIL 如何與 DevOps 協同工作

當您遵循 ITIL 流程時,您的重點是使 IT 與您組織的業務目標保持一致。 這與打破整個組織孤島的 DevOps 理念非常吻合。 此外,通過打破這些孤島,您可以消除溝通瓶頸,讓團隊能夠更快地交付客戶想要的功能,並更緊密地遵守 CAMS 模型(文化、自動化、測量、共享)。 但是,當應用於組織時,這實際上看起來如何?

什麼時候用哪個?

您的組織可能會在不同的情況下依賴 ITIL 和 DevOps,為不同的場景提供最有效的解決方案。 例如,在開發和運營團隊之間利用 DevOps 最佳實踐可能是有意義的,這需要在工作流、代碼推送、自動化和監控方面保持一致。

然而,當組織的不同部門之間可能以不同的速度運行時,比如銷售和 IT,ITIL 實踐可能會派上用場。 下圖僅給出瞭如何在不同情況下應用這兩種方法的幾個示例:

ITIL 和 DevOps 圖

IT 與組織其他部門之間的一致性

混合使用 ITIL 和 DevOps 最佳實踐的結果是更好地與組織範圍的目標保持一致。 當 IT 和組織的其他部門作為完全獨立的實體運作時,一方可能總是會感到工作過度和支持不足。 在“鳳凰計劃”中,這部小說著眼於虛構組織與 IT 集成的鬥爭,這成為了中心衝突。

在書中,IT 部分負責研發和銷售計劃的成功。 研發需要準確的數據和庫存報告,以便及時補充庫存並將新產品推向市場。 銷售需要有效的 CRM、電話/語音郵件和 MRP 系統。 否則,他們將無法添加或更改客戶訂單,也無法管理客戶健康。

如果沒有跨職能的溝通,就無法為這些必要的變化製定計劃。 反而是各部門互相提出不合理的要求,經常丟球,公司收入一落千丈。

當 IT 部門與組織的其他部門保持一致並進行溝通時,這種衝突得到了解決,其他部門負責人為 IT 計劃提供了高層次的支持。 通過打破孤島並共同努力,許多問題都得到了解決。

有時,IT 計劃和業務計劃的時間安排似乎是異步的。 但是,通過利用 ITIL 和 DevOps 最佳實踐,組織可以創建一個有凝聚力的時間表。 下圖顯示了這些流程如何同時工作以滿足整個組織的需求。

ITIL 和 DevOps 最佳實踐

共享所有權和持續改進

除了流程改進之外,在您的組織中創建 DevOps 和 ITIL 框架之間的一致性還會帶來另一個顯著的好處:思維方式的轉變。 DevOps 通過鼓勵共享所有權和持續改進為 ITIL 框架帶來了新的創新。

當組織孤島最小化時,組織的目標就變成了個人的目標。 每個人都擁有企業的成功和失敗,因為他們都是同一個團隊的成員,以相同的結果為導向。 部門不再相互競爭。 持續改進成為公司文化的一部分,失敗被慶祝並被視為學習機會。

發現:隨著您的瀏覽,了解軟件可靠性如何成為貴公司的首要任務!

ITIL 如何與 SRE 協​​同工作

既然我們已經介紹了 DevOps 和 ITIL 是如何協調一致的,那麼是時候談談 SRE 和 ITIL 是如何協調一致的了。 由於 SRE 是 DevOps 的一種實現,因此其中許多對齊方式是相似的。 可以使用所有三種方法的最佳實踐來幫助組織以最高效率運作。 在實踐中,ITIL 和 SRE 實際上可以很好地結合。

第一個原因很簡單:每個組織都想要滿意的客戶,而 ITIL 和 SRE 可以幫助不同的職能部門協同工作以實現這一目標。 在整個軟件生命週期中嵌入可靠性可以確保更高的客戶滿意度。 隨著 ITIL 的最新修訂版引入了七項指導原則,SRE 和 ITIL 更加緊密地結合在一起。

ITIL 4 的七大原則

以下是 ITIL 4 的七個原則。讓我們更詳細地討論它們。

1. 從你所在的地方開始

採用 SRE 最佳實踐並不是萬能的,每個人都從某個地方開始。 邁出第一步並在執行過程中進行實施和迭代是最重要的。

2.保持簡單實用

在 Google SRE 書中關於簡單性的章節中,它指出:

“與生活中的其他事物不同,‘無聊’實際上是軟件的積極屬性! 我們不希望我們的節目是自發的和有趣的; 我們希望他們堅持劇本並以可預見的方式實現他們的業務目標。”

軟件和業務運營的簡單性簡化了通信,提高了速度,並有助於確保可靠性不受影響。 少即是多。

3.優化和自動化

SRE 的目標之一是自動化繁重的流程,並讓開發人員有時間專注於創新而不是計劃外的工作。 這優化了工作流程並允許更快地發布新功能。

4. 通過反饋迭代進步

SRE 為最重要和以用戶為中心的指標設置警報。 它們所關聯的指標、警報和 SLO 都經過迭代以滿足客戶需求。

5. 合作並提高知名度

SRE 在文化上是協作的。 它專注於一種無可指責的工作文化,重視從失敗中學習,並相信每個團隊成員都在做他或她認為對組織最有利的事情。

6. 關注價值

沒有客戶,軟件就沒有價值。 當客戶想要並且正在從產品中獲得他們需要的東西時,就會創造商業價值。 SRE 最佳實踐確保產品足夠可靠,可以為客戶提供價值,從而為組織提供價值。

7. 整體思考和工作

通過打破孤島並在整體層面上關注可擴展性和可靠性,SRE 能夠為組織的成熟提供顯著優勢。 業務範圍內的成功掌握在每個團隊成員手中,SRE 致力於確保公司的產品、系統和程序具有足夠的彈性,不僅能夠滿足而且超過客戶標準。

靈活快速的變更管理

ITIL 的最佳實踐之一是由變更授權委員會 (CAB) 監督的協調變更管理。 然而,正如 Mindbridge Kaimar Karu 的合夥人所指出的:

“讓 CAB 審查每一個變更請求效率不高,而且絕對不是常識,尤其是當他們的成本在某些組織中達到每小時數万次部署時。 但是,當部分業務因為可能受到影響而需要諮詢時,讓 CAB 審查未知風險的變更請求是很有意義的。”

SRE 可以幫助解決這個問題,其核心原則有助於促進更加靈活和快速的變更管理。 隨叫隨到的做法使團隊能夠全天候地對生產中的代碼負責。 作為快速修復的一部分,回滾可以自動化。 事件事後分析有助於關鍵的學習洞察力,例如 SLO,可幫助團隊在重要事項上保持一致,並消除現代服務管理爆炸式增長的複雜性。

此外,錯誤預算為開發團隊制定了何時可以安全發布新功能的指南。 如果錯誤預算中有足夠的空間,則批准更改,但如果錯誤預算已耗盡或接近耗盡,則更改將推遲到下一個窗口。

這種增加的靈活性也受到 SRE 領導思維的啟發。 SRE 不是命令和控制的理念,而是認識到在不斷變化的環境中需要靈活性,並專注於控制的上下文。 這意味著,如果必須交付關鍵業務功能,它將交付。

ITIL、DevOps 和 SRE 夢之隊

雖然一些組織僅在其中一種方法的背景下運作,但許多組織發現將這三種方法混合使用是協調業務和 IT 目標以創建安全、可靠服務的最有效方式。 下面是每種方法的優勢圖表。 雖然它們可能基於相同的原則並試圖達到相同的結果,但方法實際上是不同的,並且非常互補。

ITIL 開發運維SRE
哲學與文化

使 IT 與業務需求保持一致,建立共生關係

指揮控制和流程驅動以降低風險

改善團隊合作並消除孤島

旨在建立一致性並最大限度地減少開發和運營之間的孤島

通常旨在幫助團隊提高部署的速度和質量

免去繁瑣,設計可操作

將運營視為軟件問題以最大限度地提高效率

非常適合支持需要超可靠的大規模分佈式服務

關鍵實踐和工具

容量規劃

服務目錄/CMDB

問題管理

變革管理/顧問委員會

容量規劃

隨傳隨到

微服務

CI/CD

基礎設施即代碼

監控和記錄

通訊與協作

匹配 DevOps 關鍵實踐:漸進式部署、SLO 和錯誤預算

可觀察性

混沌工程

團隊合作集中式流程和可見性的傳統模型。 工作通常排隊(“瀑布”)。
通過中央 NOC 團隊傳遞的事件

在整個服務生命週期中,開發和運營越來越多地共享相同的流程和工具。

通常,這意味著開發人員會隨叫隨到他們構建的內容,但可能會與操作人員合作以獲得 L2 支持

SRE 通常充當顧問以建立以可靠性為導向的實踐


軟件工程師和 SRE 的角色融合在一起,圍繞共享的流程和成果保持一致

關鍵措施可用性、# 個事件、# 個升級等。 可用性、部署頻率等

SLO 以及可用性、部署頻率等。

錯誤預算

結論

通過確定哪些實踐對您的團隊最有意義,並通過反複試驗,您可以找到確保您的組織以最高效率運作的最終組合。

更多內容:繼續學習。 了解您的公司如何從無可指責的文化中受益。