2021-10-16 EE卓越工程生產(chǎn)力大會(上午)

許久沒有現(xiàn)場參與業(yè)界DEVOPS大會了。對我來說,參加業(yè)界大會一方面是眼界上的開拓,另一方面是前進方向的校正,也知道天高地厚了。去年參加的很多,感觸很多,今年參加以后發(fā)現(xiàn)業(yè)界整體技術又有一次躍進。

今日參加EE大會,主要關注還是DEVOPS和質(zhì)量。筆記如下。

1. 極簡-DEVOPS云原生轉型之道(曾海劍)

運營商使用SOW松散方式,對外包進行管理(所謂交鑰匙的模式)。在此模式下如何進行轉型?

(1)驅動力

  • 返工多,瀑布模式導致的返工多

  • 質(zhì)量低,通過運維來彌補軟件質(zhì)量的缺陷

  • 統(tǒng)維難,不同部門不同項目,環(huán)境各自部署,維護各自承擔

  • 定位難,出現(xiàn)故障難于定位是研發(fā)問題還是運維問題。溝通成本高

人員流失快,且研發(fā)的核心痛點:浪費、質(zhì)量。

外包型企業(yè),沒有獲得源代碼會帶來項目綁架的情況。

從物理機到虛擬化到容器化,解決運維的痛點。不需要再去思考如何修理容器。

(2)轉型之痛

  1. 放養(yǎng)階段:研發(fā)效能團隊建工具鏈,開發(fā)人員自己配置流水線(開發(fā)人員不懂工具鏈,不懂k8s,組織培訓費時費力不討好)

  2. 保姆階段:開發(fā)人員題需求,研發(fā)效能團隊配置流水線(累死研發(fā)效能團隊)

  3. 自助階段:把配置變成編排,開發(fā)人員自助編排流水線

核心思想是如何讓開發(fā)人員零知識將代碼發(fā)布到生產(chǎn)環(huán)境。

研發(fā)效能的思考:增效減負。減負指的是降低學習成本,減低溝通成本,降低配置成本。

(3)極簡實踐

一開始是開源方案,發(fā)現(xiàn)開源方案面向的都是專家,比如jenkins,gitlab CI/CD都是通過編程來實現(xiàn)流水線。

設計初衷——極簡

  • 簡化復雜的技術:開發(fā)團隊能力參差不齊,降低接入門檻,減低調(diào)試溝通工作量

  • 簡化復雜的流程:吧復雜的流程原子化,面向結果,隱藏復雜的環(huán)境就緒流程,隱藏復雜的編排發(fā)布流程

  • 簡化復雜的權限:通過統(tǒng)一接口編排能力,簡化權限體系,面向多租戶共用云環(huán)境

實現(xiàn)了動態(tài)編排、多模塊流水線(一個流水線可以支持多個微服務)

一條流水線管理一個微服務,會導致難以對微服務的上線、灰度進行控制的問題。(通過服務網(wǎng)格解決)

服務編排——進化

微服務1.0,使用springcloud。通過開發(fā)方式實現(xiàn)服務治理,誕生背景是虛擬化

微服務2.0,使用Istio,以配置方式實現(xiàn)服務治理,不受語言限制,誕生背景是容器化

Dory效益

Dory從18年開始探索建設,近期將開源

2. 云原生容器化落地實踐(去哪兒-鄒晟)

(1)背景與收益

痛點:環(huán)境不一致、環(huán)境交付慢、服務器多運維成本高、降服務器成本、SDK推動升級難,周期長

1000,5000,8000虛機時出現(xiàn)質(zhì)變(主要是物理設備故障,需要人工確認,KVM進行平移)

我們眼中的云原生:

  • 是什么:云原生是一系列可以為業(yè)務賦能的技術架構準則,遵循它可以使應用具有擴展性、伸縮性、移植性、韌性等特點

  • 為什么:基礎架構需要演進,它可以讓業(yè)務更敏捷

  • 怎么做:DEVOPS、微服務、容器化、可觀測性、反脆弱性(混沌工程)、service mesh、serverless

業(yè)務價值:

  • PO:敏捷性、彈性伸縮、資源成本

  • DEV/QA:環(huán)境穩(wěn)定性、環(huán)境一致性

  • DEV/OPS:節(jié)省人力

去哪兒容器化進程

容器化進程

(2)實踐路線圖

容器化落地策略:盡量少改動業(yè)務性

  1. IaaS層:re-host(評估最小成本)

  2. PaaS層:re-platform

  3. 應用層:refactor(通過service-mesh,將熔斷限流平移)

re-host五步:價值認同、制定規(guī)范、工具建設、遷移落地、驗收

(3)關鍵實踐

實踐1 - 價值認同:容器化的ROI是多少,怎么證明?

  1. 自證價值-自己的服務先容器化

  2. 放大價值-解決業(yè)務線實際問題

  3. 技術宣講-價值宣傳,找VIP用戶

實踐2 - 規(guī)范制定

規(guī)范制定

關注幾個點:日志的統(tǒng)一,實時和離線Loki的使用,部署路徑,端口號統(tǒng)一,新應用禁止KVM部署。

實踐3 - 工具建設

工具平臺

通過對工具平臺改造實現(xiàn)全自動化

CD:使用KubeSphere實現(xiàn)多集群管理平臺。發(fā)布系統(tǒng)調(diào)用編譯模塊調(diào)用部署模塊調(diào)用kubesphere。

應用畫像

實踐4 - 遷移落地

  1. 前置校驗:編譯階段自動檢查配置
  2. 測試環(huán)境驗證:自動升級SDK
  3. 線上驗證:灰度發(fā)布,自動化驗證
  4. 混合部署:kvm和容器混合部署
  5. 全量部署
  6. 觀察:7天正常后停止KVM

資源成本:容器化前單機部署的kvm數(shù):14個;容器化后單機部署的pod數(shù):20個

(4)總結與規(guī)劃

價值認同:從上而下推進。知之不深,則行之不篤;知之愈明,則行之愈篤。

產(chǎn)品同理心:用戶收益、遷移成本、使用成本

工程化方法:自動化前置檢查、升級SDK、測試、遷移

未來規(guī)劃:穩(wěn)定性治理、資源利用率提升、service mesh落地

3. 工程師文化(華為)

  • 對工程師文化的思考
  • 企業(yè)在全面云轉型中,如何重塑匹配的工程師文化?
  • 工具平臺

對工程師文化的思考

企業(yè)工程師文化,不是脫離具體環(huán)境,獨立存在的



文化不是你要求人家做什么,而且團隊領導做什么,別人跟著做。

影響工程師文化的因素
企業(yè)頂層文化:以客戶為中心,質(zhì)量優(yōu)先……關鍵是,真正在執(zhí)行的是什么?
問題:會不會變成以一線銷售為優(yōu)先?

價值創(chuàng)造過程:商業(yè)模式,產(chǎn)品交付模式,研發(fā)模式,軟件工程實踐,工程師的工作方法,逐步影響
設備供應商和云服務供應商完全不一樣,文化就要轉變。

組織,授權管理體系

  • 以流程為中心 vs 以人為中心
  • 矩陣組織
  • 管控中心 vs 能力中心


企業(yè)在全面云轉型中,如何重塑匹配的工程師文化?

正視差異和差距,窮則變,變則通,通則久。

從why轉變?yōu)閣hy not?
工具平臺不聽匯報,聽使用工具的人的聲音。
最佳實踐不可復制,都是屬于企業(yè)自己的。


PS:華為的思路下,要求開發(fā)變成對ops也了解的全棧,和廣東移動的理念不太一樣。

不能因為管理者的害怕而走回頭路。質(zhì)量的嚴峻挑戰(zhàn)。



代碼分支的維護,質(zhì)量要求嚴格。


平臺支撐


實現(xiàn)在家編碼,這是組織文化變更帶來的。

公司內(nèi)總會有不停造輪子的情況,通過內(nèi)部開源來減少造輪子的情況。

正確的激勵,樹立CleanCode導向。獎勵軟件工匠(編程超過10-15年的人)


信任和不信任的度?
穩(wěn)步才能保證變更不回彈。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容