首席架構師李佐輝:浙江移動SRE轉型實踐

李佐輝

DBAplus社羣(dbaplus)

讀完需要

20

分鐘

速讀僅需 5 分鐘

本文根據李佐輝老師在〖deeplus直播第221期〗線上分享演講內容整理而成。(文末有獲取本期PPT&回放的途徑,不要錯過)

李佐輝

浙江移動網管中心SRE首席架構師

  • 浙江移動SRE團隊發起人、高級工程師,通信網絡工程師IT開發轉型推動者。

  • 畢業於浙江大學信電系,12年通信網絡運維經驗,深入理解通信網絡IT需求。

一、背景:我們是網絡運維工程師

我們維護的設備:廠家定製,專有軟硬件的通信設備。

我們眼中的世界:路由、協議、網元、信令、局數據…

我們日常工作內容主要涉及以下三個方面:

但是,我們的人員素質較高,100%的工科背景,都具備基礎的編程技能,大部分人對運維開發轉型充滿興趣。

二、我們遇到了點小麻煩

隨着通信技術的發展,網絡運維的壓力和責任越來越大。

與知名互聯網公司對比,我們維手段較原始,大量工作處於人肉運維階段;對標先進互聯網公司,我們還有很長的路要走。

國企的人力成本存在紅線,人力資源不足。即運維的設備越來越多,但是人不見多。2014到2019年,語音核心網元增加了80%,但是運維人員僅增加12%。

雖然支撐系統平臺手段衆多,但日常維護中仍存在大量的手工冗餘操作。支撐平臺開發週期長、開放性差,是兩個較大的問題。

網絡設備正在向IT雲化演進,網絡運維人亟需轉變傳統思維,向IT化思維靠攏。

複雜的雲化架構有時發生故障根本無從查起,詭異的故障無法用科學解釋。

無法用科學解釋的時候,迷信就出現了。

三、浙江移動的SRE轉型之路

1、轉變思想

在轉型過程中,我們吸收了谷歌的SRE運維思想。SRE是Google對DevOps的實踐總結。

SRE的終極目標:保證業務連續性。

SRE把運維問題變成了軟件工程問題:

  • 50%~60%軟件工程師;

  • 其他具備85%~99%軟件技能,且具備一定程度其他IT技能的工程師。

SRE模型的優勢:

  • 運維人數相對少;

  • 開發團隊和運維團隊的衝突焦點消除;

  • SRE團隊和研發團隊之間的成員可以自由流動。

•SRE模型的問題:符合SRE的人才難招聘

SRE與DevOps的關係:SRE理念是DevOps的具體表現形式。DevOps和SRE是道,DevOps工具是術。

SRE做的是運維自動化,但自動化不是目的。

自動化有3種形式:

  • 外部自動化:即通過外部的工具和腳本,實現運維自動化功能。

  • 內部自動化:即將開發的腳本和工具部署在系統內部,實現自動化

  • 服務強化:在系統設計和開發階段就考慮到運維手段,將運維自動化體系原生嵌入到系統中。

目前我們主要做外部自動化,冰箱內部自動化和服務強化邁進。

自動化後帶來的好處:

  • 高度的一致性:無論新手還是專家,作出的判斷和操作完全一致

  • 問題快速反應:發生故障快速反應

  • 完成任務省時:完成報表取數、優化分析等任務省時省力

  • 固化經驗:將運維人員的經驗和教訓固化到代碼中流傳下去

2、確立目標

SRE團隊的目標:提倡主動運維思維,以運維開發爲手段,依託SRE運維模式,提升運維人員ICT技能, 支撐各專業高效運維。

但是隻有當團隊目標與個人目標相一致時,團隊纔是可持續發展的。

讓我們來看看SRE運維開發轉型如何實現運維工程師們的個人目標:

3、建立良好的生態圈

1)建立組織架構

建立議事會負責制的半剛性組織架構制度:

  • 議事會:負責組織架構設計、管理模式探索、人員IT轉型等。

  • 技術支持團隊:負責技術演進、技術支持、人員技能培養、開發平臺搭建和維護等。

  • 工作小組:聚焦應用開發、服務開發和平臺開放性探索。

2)建立OKR導向的正向激勵制度

除了行政架構的激勵外,還存在橫向的SRE OKR激勵。

3)探索人員分工

人員角色介紹:

  • Enbedded SRE:嵌入式SRE,活躍於運維團隊中,主要實現自身的自動化需求,有日常負責運維的設備,需要參與on-call值班。我們大部分成員均屬於此種類型。

  • Platform SRE:平臺開發型的SRE,主要對平臺負責,開發新平臺或對存量平臺進行開放性改造,以使其它SRE成員可以方便的在其上開發。無日常運維設備或on-call值班的要求。

  • Consulting SRE:顧問型SRE,技能較高的成員,平時負責爲SRE其它成員答疑解惑,解決問題,或是參與到其它成員的具體項目中進行開發指導或牽頭開發,項目進入正軌後即退出項目組。平時無運維設備或on-call值班的要求。

4)專注人員培養

技能培養:依託IT和CT能力培養體系,針對SRE人員、存量運維人員、新員工、協維人員制定不同的人員培養體系。

人員成長後評估:從5個方面,21個評分項對人員進行畫像,完成人員的培養後評估。

5)完善日常工作框架

建立SRE日常工作框架,確定技術規範,避免技術債務。

6)搭建開發支撐平臺

通過建平臺、解耦合兩部分工作來搭建SRE的開發支撐環境。

服務原子化,新增開發區,積木式開發,提升效率,降低開發難度。

平臺開放化,依託平臺進行功能增強,不需考慮底層和前端,大大降低難度。

四、階段工作成果

團隊經過2年多的建設已經初具成果,共培養SRE團隊成員97人,完成開發需求200餘個,具有如下的優勢:

  • 需求實現快:基於開放解耦的平臺進行搭積木式二次開發,單個功能點開發平均僅需2個小時,需求到上線時間縮短551倍。

  • 痛點切入準:運維專家轉型開發人員,網絡痛點了然於心。

  • 人力大解放:機器換人,大量運維工作自動化,值班人員減少70%。

  • 壓力大釋放:逐步接受與信任系統,具體的運維工作逐步轉交給自動化系統完成,釋放運維人員壓力。

>>>>

Q&A

Q1:請問如何說服領導組成sre團隊的?畢竟是垂直管理的企業。

A:轉型肯定是自上而下的,自下而上那叫革命,如果得不到領導的支持,那麼轉型肯定不會成功。隨着通信網絡技術的演進,語音、短信這類傳統業務的收入大幅下降,後續的技術和人員架構會怎麼樣,我們之前也是迷茫的,不知道路在何方,但是通信網絡IT化這個趨勢是明確的,這個就需要我們去轉型。

對於如何進行轉型,領導層面的考慮肯定比我們多,而且更深入。這時我們瞭解到了Google的SRE理念,覺得很符合我們的訴求,就跟領導一拍即合,把這個作爲我們轉型的方向了。

Q2:請問貴公司的自動運維是自研的嗎?用了哪些開源的技術或產品呢?

A:公司層面我不太好回答,但是在我們部門,大部分是的。我們使用了很多的開源技術和產品,比如Hadoop、Flink、Zabbix、Ansible、Jenkins等等。不過雖然使用了那麼多開源的軟件,但是我們還是非常注意開源軟件的引入安全的。

Q3:如何讓外購系統廠家幫忙解耦他們的系統?

A:之前外購系統都是一個一個獨立的煙囪,我們有新的需求提給廠家實現都很慢,廠家不懂業務,我們不懂開發,需求溝通存在較大的成本,而且開發出來的功能往往與我們需要的相差甚大。這種情況下我們與廠家存在比較大的矛盾,我們說他們開發慢,難溝通,開發出來的東西不好用;他們說我們需求奇怪,需求變更太頻繁,對完成時間點要求太高。

如果外購系統解耦之後呢,系統廠家只需要維護他們系統框架和開放出來的接口,一些業務功能由我們自己來開發實現,搭在他們的平臺上,這樣需求實現快,功能上可以完全滿足我們的需求,而我們又省去了平臺維護的工作,對平臺廠家來說又不會受到頻繁的需求變更單,也不需要去深入的瞭解我們的業務需求,對兩方來說都省事多了,完全是雙贏的局面。

我們把以上這些有利之處跟廠家說清楚,廠家都是比較願意接受的,後面我們就把需要開放解耦的地方敲定,作爲需求提給他們就可以了。

Q4:SRE日常工作裏面,提到的需求歸口管理,是指業務需求?

A:是的,對於我們來說,運維需要的功能就是我們的業務需求。

Q5:此外開發的開發規範,是約定到所有業務系統開發廠家的代碼開發規範,一套標準麼?還有API調用規範等,如何進行約束?因爲涉及廠家非常多,管控難度非常大。

A:開發規範是針對我們SRE的,並不是針對業務系統開發廠家的。這是爲了規範代碼格式和代碼行爲,形成良好的代碼風格,便於運維經驗固話在代碼中後的回溯。因爲都是基於SRE團隊的,也不存在廠家多管控難度大的問題了。


獲取本期PPT

請添加菲菲VX:dbafeifei


推薦閱讀

 

DevOps是微服務的祕方

 

DevOps落地成不成,關鍵不在持續集成?

 

阿里高工流生 | 雲原生時代的 DevOps 之道

 

新炬首架樑銘圖:從70萬字SRE神作提煉出7千字精華與君共勉

回看本期直播,請點擊閱讀原文↓

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