天天看點

華為雲雲原生王者之路鑽石集訓營--學習筆記

雲原生鑽石課程開篇直播

容器運作時技術深度剖析

Kubernetes技術架構深度剖析

Kubernetes進階排程器原理詳解

Kubernetes存儲架構原理深度剖析(上)

Kubernetes存儲架構原理深度剖析(下)

Kubernetes網絡架構原理深度剖析(上)

Kubernetes網絡架構原理深度剖析(下)

Kubernetes運維管理詳解(上)

Kubernetes運維管理詳解(下)

Kubernetes安全權限管理深度剖析

Kubernetes應用管理深度剖析

Istio控制面架構深度剖析

Istio資料面架構(Envoy)深度解析

Istio流量治理與監控管理深度剖析

傳統微服務架構接入Istio方案詳解

全部課程連結:https://education.huaweicloud.com/programs/63384278-52ab-42e9-8e67-5dff5a9f37fd/about?isAuth=0&cfrom=hwc

直播回看:https://bbs.huaweicloud.com/live/edu_live/202107191900.html

容器引擎和運作時機制原理剖析

業界主流容器運作時技術架構剖析

華為雲容器運作時技術架構剖析

容器運作時技術的發展方向

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI041+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI041+Self-paced/courseware/05122317ec3348c88cb9744d6ea03787/c241b33dd9244cd882f0e6bb3b5e64e6/

Kubernetes定義的容器運作時接口:CRI,目前較為主流的實作包括dockershim、cri-containerd、cri-o

OCI runtime spec定義了運作時實作中,檔案格式和指令行格式,runc、kata、gVisor等運作時都符合這個标準

Containerd定義了一套ttrpc接口,友善運作時實作者更好地進行容器狀态管理

Runc:基于linux的namespace、cgroup和capability等技術實作隔離的容器實作

kata containers:基于虛拟化隔離技術的容器實作

gVisor:一種基于攔截系統調用的實作隔離的容器實作

華為雲的安全容器基于EulerOS和華為雲自研的qemu-microvm對安全容器進行了輕量化改造

華為雲的安全容器支援GPU、nvlink、Ascend、SDI等硬體裝置

華為雲的安全容器和華為雲的VPC網絡、OBS、SFS、EVS等服務可無縫對接

通過rust改寫、減少host程序,進一步輕量化hypervisor等方式實作更加輕量級的安全容器

結合機密計算技術,實作更加安全的容器技術

Kubernetes系統架構詳解

Controller原理詳解

list-watch機制原理詳解

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI042+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI042+Self-paced/courseware/6817c598390d4a008e5c6f45777aa10b/9377855719734815b3ac1bb5e7be9b5c/

Kubernetes總體架構

Kubernetes核心元件

Kubernetes Controller Manager原了解析

Controller工作流程

Controller的eventHandler如何注冊

client-go under the hood

Informer封裝list-watch

Informer設計實作

Kubernetes核心機制list-watch

Watch體驗,通過curl指令watch pods資源

Watch是如何實作的

List-Watch的設計理念

List-Watch實作機制

List-Watch實作機制總結

總結:Kubernetes基于list-watch機制的控制器結構

Kubernetes的排程流程原理與算法詳解

Kubernetes進階排程算法詳解

華為雲CCE Volcano批量排程算法與應用場景詳解

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI043+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI043+Self-paced/courseware/1c3150849e3d4905b89042b1a2ebdf42/1432169734c74105a53ade02a878af4b/

Kubernetes Scheduling

Kubernetes default scheduler 的特點

Kubernetes scheduler架構和排程流程

Kubernetes的排程政策與算法

通過Predicate政策篩選符合條件的Node

典型Predicate算法

通過Priority政策給剩餘的Node評分,挑選最優的節點

典型Priority算法

Kubernetes中的Label、Selector機制

Node Affinity讓Pod在一組指定的Node上運作

Pod Affinity讓Pod與指定Service的一組Pod在相同Node上運作

Taints-tolerations來自Node的反親和配置

雲原生批量計算面臨的挑戰

Volcano 幫助批量計算面對雲原生的各種挑戰

Volcano 總體架構和優勢

典型排程算法

Namespace、Queue fair-share

Task-Topology

Spark MinResource

Kubernetes容器存儲發展曆程

Kubernetes持久化存儲體系

PV/PVC的工作原理剖析

華為雲CCE雲原生存儲解決方案Everest的架構介紹

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI044+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI044+Self-paced/courseware/bbd9280142c04709be5775cf1d93bd28/cd68ae3f21ce4b5d9934c45cbaa51903/

Kubernetes容器存儲能力簡介

持久化存儲優勢分析

PV/PVC配置設定方式

靜态卷:pv的狀态轉換

靜态卷:pvc的狀态轉換

pv/pvc綁定原理分析

pvc綁定pv流程解讀

Kubernetes中pv/pvc相關的代碼

靜态卷:pv/pvc使用場景示例

Everest架構介紹

雲原生應用使用存儲的推薦方案

部署使用static pv的有狀态應用etcd

檢視使用static pv的有狀态應用etcd

StorageClass工作原理分析

CSI容器存儲接口架構解讀

雲原生存儲最佳實踐:從FlexVolume插件向CSI插件遷移

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI045+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI045+Self-paced/courseware/8fab4799ab6c445b8f8dbbc0e41a95d8/64809b73c5d14a76ad44902dd9b51b4e/

StorageClass工作原了解讀

StorageClass應用場景解讀

有狀态應用使用動态PV卷示例

Kubernetes中存儲相關的元件解讀

什麼是雲原生存儲

CSI存儲結構解讀

CSI存儲接口解讀

自研CSI插件的建構思路

CSI插件注冊流程解讀

CSI插件和Flexvolume插件對比

CSI存儲相容in-tree插件存儲的方案解讀

csi-migration-lib庫解讀

CCE服務中CSI存儲相容Flexvolume持久卷的方案解讀

Kubernetes基本網絡模型剖析

Service服務負載均衡機制剖析

華為雲CCE Yangtse網絡方案架構剖析

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI046+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI046+Self-paced/courseware/af81a9458abd4a9389ea7f4279d800eb/c44d5d24f44e44d0b3df26850be75745/

概念厘清

K8S網絡模型對互通性的要求

K8S網絡模型(1):Overlay組網模型

K8S網絡模型(2):二層組網模型

K8S網絡模型(3):三層組網模型

K8S Service負載均衡機制實作原理(1):IPTables

K8S Service負載均衡機制實作原理(2):IPVS

K8S Service負載均衡機制實作原理(3):eBPF

華為雲CCE Yangtse網絡(1):VPC路由模式

華為雲CCE Turbo Yangtse網絡(2):ENI/TrunkPort

Ingress服務原理機制剖析

CNI接口與實作原理介紹

雲原生網絡最佳實踐與經典問題案例

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI047+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI047+Self-paced/courseware/b5f3529dda3946f0b295f0f1eac9a74b/efdbb46de79e49b1bad96a40c35b8ef3/

Ingress API接口模型與演進

Ingress Controller架構剖析

CNI接口與插件能力模型

CNI在K8S中是如何工作的

CNI進階特性舉例

雲原生網絡最佳實踐(1):IDC與CCE叢集共享DNS方案

雲原生網絡最佳實踐(2):微服務容器執行個體通路雲資料庫等中間件的網絡隔離方案

K8S容器網絡典型問題定位(1):源位址保持的“鍋”?

K8S容器網絡典型問題定位(2):時延去哪了?

工作負載更新和復原機制詳解

應用探針健康檢查機制詳解

應用彈性伸縮原理詳解

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI048+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI048+Self-paced/courseware/200a2e26f50a492fa016ac65f4cf915a/6720226d0c9f49f3ad13edff23ad44a6/

無狀态工作負載(deployment)更新

無狀态工作負載(deployment)復原

有狀态工作負載(StateefulSet)更新

有狀态工作負載(StateefulSet)復原

容器健康檢查

探針檢查機制

彈性伸縮概述

AutoScaler節點伸縮原了解析

HPA工作負載伸縮原了解析

使用HPA+CA實作工作負載和節點關聯彈性伸縮

建立HPA示例

檢視HPA

叢集可觀測性詳解

常見叢集故障排錯分析

華為雲CIE叢集監控方案架構詳解

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI049+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI049+Self-paced/courseware/b3464e0101d24fc1ab00e3c132a0c785/04b23f7ba1a9441781c59e5e79bcd499/

雲原生應用特點

K8S與雲原生應用監控挑戰

雲原生可觀測性

名額監控與prometheus

Prometheus架構

基于prometheus-operator叢集監控

K8S叢集監控名額解析

基于Grafana名額可視化

叢集事件監控

NodeProblemDetector(NPD)

叢集日志監控

拓撲與調用鍊

叢集常見問題排障

華為雲容器洞察引擎(CIE)架構解析

集中統一的告警、事件管理和日志分析

快速故障定位

叢集準入控制機制詳解

叢集認證機制剖析

叢集鑒權機制RBAC剖析

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI050+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI050+Self-paced/courseware/51eb69d01b414a0e985cdf4c862ccdd9/abf9cb2f1e71457ea4c01c99602afa23/

Kubernetes API 通路控制

認證(Authentication)

鑒權(Authorization)

K8s應用模闆的使用場景介紹

Helm chart模闆機制詳解

Operator機制詳解

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI051+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI051+Self-paced/courseware/cf547353b7dc425fadd6f022f4d225e4/3bf61c0c056646548747ab1096925628/

Helm能給我們帶來什麼

什麼是Operator

Helm VS Operator

Helm架構

Chart包示例

Chart.yaml示例

Template-Value示例

内置對象

子模闆

Hook機制

Chart依賴管理

Operator原理--擴充Kubernetes API,定義應用

Operator原理--Kubernetes Controller機制

Operator原理--實作Operator,管理應用

Operator實戰--Redis叢集拓撲

Operator實戰--Redis擴縮容

Operator實戰--Redis資料備份

Operator自身管理--Operator Framework

Istio整體架構

透明的Sidecar原理

Istio基本功能實作原理

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI052+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI052+Self-paced/courseware/2196b207c84945a6b54e834897ee0828/3d614ae1b0014116be0694086bb4de71/

Pilot基本架構

Citadel基本架構

Galley基本架構

Pilot-Agent基本架構

Sidecar基本介紹

Sidecar流量攔截

Envoy流量代理流程

Envoy流量比對與轉發

流量治理基本API

流量治理基本原理

服務發現

路由比對

灰階釋出

服務網格監控-Observability

服務網格監控-Metrics

服務網格監控-Trace

服務網格監控-AccessLog

服務網格資料面Envoy介紹

Envoy原理及總體架構

Envoy啟動配置及xDS

Envoy網絡及線程模型、過濾器架構、HTTP請求流程

Envoy問題分析方法

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI053+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI053+Self-paced/courseware/b56e7d61ad3e4b978fec062f752098ac/83b4a7566b6d4a198e62148dc9a6fede/

Envoy介紹

Envoy原理及總體架構-啟動

Envoy原理及總體架構-說明

Envoy原理及總體架構-流量攔截

Envoy啟動配置及xDS-cont'(實操)

Envoy常用部署方式

Envoy網絡及線程模型

Envoy網絡及線程模型-共享資料同步

Envoy網絡及線程模型-叢集資訊更新

Envoy網絡及線程模型-網絡處理

Envoy過濾器架構

Envoy過濾器架構-常用過濾器

Envoy過濾器架構-相關代碼

EnvoyHTTP請求流程

Istio資料面發展趨勢

Istio流量治理基本介紹

Istio流量治理深度剖析

Istio監控深度剖析

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI054+Self-paced/about

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI054+Self-paced/courseware/d8600435a1354a9a8e956ed2235c6463/715d0789895540de8b6fe674743d6a35/

流量治理推演

Istio流量治理深度解析-VirtualService

Istio流量治理深度解析-Header Manipulation

Istio流量治理深度解析-DestinationRule

Istio流量治理深度解析-Gateway

Istio流量治理深度解析-ServiceEntry

Istio流量治理深度解析-Sidecar

Istio Observability

微服務的概念和原理

傳統微服務架構的問題和基于服務網絡的解決方案

傳統微服務架構在服務網絡中內建的實踐詳細

直播回看:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI055+Self-paced/about?ticket=ST-218519-yh6KJ3MmxB4YRPHQtd5zHJMR-sso

課程ppt:https://education.huaweicloud.com/courses/course-v1:HuaweiX+CBUCNXI055+Self-paced/courseware/511f6f06d97d4aaf9b90445dca5800d1/3c130e3e46c14eb79c01eaf12e030d73/

微服務架構業務解耦的同時帶來了極大的複雜度

基于傳統微服務SDK的服務治理

基于網絡的服務治理

模型:服務發現 & 負載均衡

模型:服務熔斷

問題一:微服務SDK的多語言問題

方案一:服務網格統一在資料面上執行統一的流量政策

問題二:基于SDK的微服務在Kubernetes上運作的服務發現延遲和資料不一緻問題

方案二:Istio服務網格基于Kubernetes建構,使用平台一緻的服務發現

問題三:基于SDK開發的微服務,SDK邏輯更新,所有業務必須重新編譯更新

方案三:網絡資料面和業務解耦,治理能力更新隻需要平台更新,使用者業務無需更新

問題四:基于SDK進行微服務化時,為了統一服務發現和治理能力,一般要全部一起改造

方案四:基于服務網格漸進微服務化,對老的單體和新的微服務同時服務發現和服務治理

總體思路:解除安裝服務治理能力到平台,SDK保留開發架構能力

Kubernetes平台自有的服務發現替代業務内置的服務發現

在Kubernetes基礎上啟用服務網格,業務代碼無需修改、服務發現無需适配

通過修改配置使得切換Springcloud服務發現為Kubernetes服務發現

通過修改配置使得切換Dubbo服務發現為Kubernetes服務發現

Dubbo服務開放HTTP和Dubbo兩種應用協定,可以通過Dubbo和HTTP兩種協定通路

Dubbo服務治理配置

代碼解除安裝微服務架構中的服務治理部分,隻保留應用開發架構

微服務網關演進方案

多開發語言、多種架構的服務直接可以基于同一套服務發現和服務治理平台管理

導入和內建微服務注冊中心資料到網絡,支援網絡對微服務架構開發的服務和通路治理

實踐:SpringCloud app使用Istio的灰階釋出總體效果

實踐:SpringCloud app使用Istio的灰階釋出流量規則配置

實踐:SpringCloud服務基于網絡熔斷(1)

實踐:SpringCloud服務基于網絡熔斷(2)

實踐:SpringCloud服務基于網絡熔斷(3)

實踐:SpringCloud服務基于網絡熔斷(4)

實踐:SpringCloud服務基于網絡熔斷(5)

華為雲雲原生王者之路鑽石集訓營--學習筆記

本作品采用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協定進行許可。

歡迎轉載、使用、重新釋出,但務必保留文章署名 鄭子銘 (包含連結: http://www.cnblogs.com/MingsonZheng/ ),不得用于商業目的,基于本文修改後的作品務必以相同的許可釋出。