Kubernetes 稳定性保障手册 -- 极简版
作者 | 悟鵬
來源 | 阿里巴巴云原生公眾號
Kubernetes 在生產(chǎn)環(huán)境中的采用率越來越高,復(fù)雜度越來越高,由此帶來的穩(wěn)定性保障的挑戰(zhàn)越來越大。
對于基于 Kubernetes 的云產(chǎn)品,穩(wěn)定性保障已成為基本訴求,穩(wěn)定性缺陷會給產(chǎn)品帶來巨大的損失,如用戶流失、用戶信心下降、產(chǎn)品迭代速度變慢等。
雖然基于 Kubernetes 的穩(wěn)定性保障很重要,但業(yè)界缺少基于實踐的標(biāo)準化穩(wěn)定性保障方案,導(dǎo)致同樣的問題在同一產(chǎn)品或不同的產(chǎn)品中重復(fù)出現(xiàn),最佳實踐不能應(yīng)用在更多相同技術(shù)棧的產(chǎn)品中,不同產(chǎn)品形成的穩(wěn)定性保障最佳實踐也不能互補。
為此,基于過去的開發(fā)實踐以及基于 Kubernetes 的穩(wěn)定性保障經(jīng)驗,嘗試形成《Kuberentes 穩(wěn)定性保障手冊》,將穩(wěn)定性保障最佳實踐進行沉淀,使得人人對 Kubenretes 穩(wěn)定性保障的理論形成全面的理解,相應(yīng)的工具和服務(wù)成為基礎(chǔ)設(shè)施,復(fù)用在類似技術(shù)棧的產(chǎn)品中,加速穩(wěn)定性保障最佳實踐的傳播、迭代和應(yīng)用。
本篇文章作為《Kubernetes 穩(wěn)定性保障手冊》第一篇文章,抽象穩(wěn)定性保障中的核心內(nèi)容,作為穩(wěn)定性保障最簡使用手冊。
極簡手冊目標(biāo)
- 1min 理解穩(wěn)定性保障目標(biāo)
- 3min 把握穩(wěn)定性保障全局視圖
- 一站查找穩(wěn)定性保障推薦工具或服務(wù)
穩(wěn)定性保障目標(biāo)
- 滿足服務(wù)或產(chǎn)品對穩(wěn)定性的訴求
- 加速服務(wù)或產(chǎn)品的迭代
穩(wěn)定性保障檢查項
穩(wěn)定性保障級別
實踐
方法論
全局視圖
實踐流程:
為了降低實踐的成本,需要把握云產(chǎn)品中的元素及交互關(guān)系,從基礎(chǔ)的元素和交互方面解構(gòu)復(fù)雜系統(tǒng):
-
元素 (2 類)
- 云產(chǎn)品組件
- 云產(chǎn)品
-
交互 (2 類,共 3 種場景)
- 云產(chǎn)品內(nèi)部
- 組件自身
- 組件與組件之間
- 云產(chǎn)品之間
- 云產(chǎn)品與云產(chǎn)品之間
- 云產(chǎn)品內(nèi)部
如下圖:
隨著元素數(shù)量和交互關(guān)系的增多,系統(tǒng)會逐步變得復(fù)雜,穩(wěn)定性保障面臨的挑戰(zhàn)也會越來越大,要避免引入非必要的復(fù)雜性。
因此,需要先梳理清楚當(dāng)前的運行鏈路圖,進行鏈路重要性分析,并整理組件大圖,判斷組件的爆炸半徑。在此基礎(chǔ)上,還需要進行參與人員的 review,避免在人員的投入方面存在單點風(fēng)險。
運行鏈路圖示例:
鏈路重要性示例:
云產(chǎn)品間交互示例:
基于上述對系統(tǒng)復(fù)雜度、運行鏈路的分析,面對穩(wěn)定性保障的問題域,可以有效提出、落地解決方案。
問題處理
實踐流程:
對于復(fù)雜的系統(tǒng),通常會有如下的角色關(guān)系:
梳理清楚每層的角色,并使得參與同學(xué)可以方便查找目標(biāo)同學(xué),會縮短問題處理時間。
問題域
概述
推薦
后續(xù)
對于《Kubernetes 穩(wěn)定性保障手冊》,接下來會進行如下的章節(jié)細化,分別從方法論和工具/服務(wù)的角度進行總結(jié),形成初版后與大家分享,進行共建:
總結(jié)
以上是生活随笔為你收集整理的Kubernetes 稳定性保障手册 -- 极简版的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 应云而生,幽灵的威胁 - 云原生应用交付
- 下一篇: Serverless 如何在阿里巴巴实现