最近幾年,DevOps原則和工具的應用已經改變了電信行業的服務交付流程。在2017年DevOps企業峰會倫敦大會上,愛立信公司發表了演講。他們的持續交付論文概括了他們面臨的挑戰以及他們如何克服這些挑戰。
電信系統供應商在部署系統時面臨的困難在規模、監管限制、健壯性、可用性需求方面是獨一無二的。之前,在一個開發周期中,愛立信需要花7個周測試、6個月部署、2到3年開發,現在,他們只需要90分鐘測試、3個周部署、6個月開發。電信軟件的任何新版本都會向多個網絡運營商推出。他們在最初采用這種比較新穎的實踐方法時遇到了困難,但隨著時間推移有了改善。一個版本從正式發布到在運營商的節點上線之間的時間逐漸縮短。特性發布頻率為每月一次,而網絡運營商可以選擇一月一次部署,也可以選擇一季度一次。
圖片來源:http://cloudpages.ericsson.com/continuous-delivery
開發模型是首先需要改變的——從多個并行版本鏈轉為“單軌(single track)”。第一個采用這種變革的產品是GPRS服務支持節點——移動管理實體軟件——然后是“演進型分組網關(Evolved Packet Gateway)”。演進分組核心是一個電信框架,其目標是在4G網絡上提供統一的語音和數據服務,而不是分別針對數據和語音采用數據包交換和電路交換。
轉型過程從2009年開始。首先開始的是流程變革——像小型跨職能團隊、產品經理任務分配、Scrum管理員任命。他們引入了精益流程。類似代碼提交頻率這樣的指標被用來衡量他們的效率。然而,這導致了這些指標的誤用。在部分變革顯示出良好的前景后,領導者就有了增加團隊數量的壓力。這導致了更深層次的問題,包括快速增長的團隊以及低估了平臺變革所要具備的條件。他們的平臺不是對此有利的云就緒平臺。開發環境和CI實踐方法也還不成熟,加之程序結構也不成熟——這導致他們無法很好地監控團隊的進度。團隊的整體速度比以前慢了。2015年的一次盤點活動暴露出了這些問題。
他們進行了一些變革來解決這些問題。相對于速度,質量被賦予更高的優先級,而且特別重視質量驗收測試。他們增加了一個引入新團隊及新成員的新流程。在工具方面,團隊開始借助Kernel Virtual Machine(KVM)實現虛擬化,這將他們的升級時間由22個小時縮減為3個小時。KVM是一個框架,是一個運行在Linux內核上的虛擬層,同時也是愛立信云平臺的重要組成部分。他們還采用了持續集成框架,其中一部分是基于Docker的。他們還采用了一個集中式的硬件分配模型,根據請求分配資源。這簡化了管理,從整體上提高了硬件的使用率。組織變革包括項目管理實踐、更好的規劃、特性團隊、每日站立會議以及分享知識的培訓(指導)。
愛立信的其他產品也已經采用了CD模型。這是電信行業大趨勢的組成部分,傳統的服務交付方法已經讓位于DevOps。這也是由先前基于硬件的網絡服務功能(NFV)的軟件虛擬化所推動的。這簡化了DevOps工具和實踐的應用,因為越來越多的功能改由軟件實現。
查看英文原文:Continuous Delivery of Telecom Software at Ericsson