
云原生開發(fā)與實踐培訓:基于kubernetes的方式培訓
1 課程介紹
1.1 理解什么是Cloud Native
1.2 理解Cloud Native與Kubernetes的關系
1.3 12- factors
1.4 理解 Kubernetes 設計原則、原理
1.5 了解 Kubernetes 的過去、現(xiàn)在和未來
1.6 了解并學會使用 Kubernetes 重要的資源 -- API
1.7 學會如何創(chuàng)建和管理應用,并配置應用外部訪問
1.8 理解 Kubernetes 網(wǎng)絡、存儲:CNI、CSI、CRI
1.9 掌握 Kubernetes 調(diào)度的原理和策略
1.10 Kubernetes 一些新功能的概念
1.11 了解 Kubernetes 的日志、監(jiān)控方案
1.12 具備基本的故障排查的運維能力
2 Kubernetes 基本概念
2.1 了解什么是 Kubernetes
2.2 了解 Kubernetes 的主要特性
2.3 理解為什么需要 Kubernetes
2.4 了解 Kubernetes 的過去、現(xiàn)在和未來
2.5 了解目前 Kubernetes 社區(qū)的情況和被采用情況
2.6 了解 Kubernetes 的基本架構(gòu)
2.7 獲得一些學習資料推薦
3 Kubernetes 架構(gòu)及原理
3.1 理解 Kubernetes 設計原則
3.2 深入理解 Kubernetes 集群中的組件及功能
3.3 了解 Kubernetes 集群對網(wǎng)絡的預置要求
3.4 深入理解 Kubernetes 的工作原理
3.5 深入理解 Kubernetes 中 Pod 的設計思想
4 Kubernetes 安裝和配置
4.1 了解部署 Kubernetes 的多種方式
4.2 可以單機部署 Kubernetes(學習演示使用)
4.3 可以在宿主機部署一套 Kubernetes 集群(非生產(chǎn)使用)
4.4 可以在生產(chǎn)環(huán)境中部署 Kubernetes 集群(生產(chǎn)使用)
5 Kubernetes API 及集群訪問
5.1 了解 Kubernetes 的 API
5.2 理解 Kubernetes 中 API 資源的結(jié)構(gòu)定義
5.3 了解 kubectl 工具的使用
5.4 了解 Kubernetes 中 API 之外的其他資源
6 ReplicaController,ReplicaSets 和 Deployments
6.1 理解 RC
6.2 理解 label 和 selector 的作用
6.3 理解 RS
6.4 理解 Deployments 并且可以操作 Deployments
6.5 理解 rolling update 和 rollback
7 Volume、配置文件及密鑰
7.1 了解 Kubernetes 存儲的管理,支持存儲類型
7.2 理解 Pod 使用 volume 的多種工作流程以及演化
7.3 理解 pv 和 pvc 的原理
7.4 理解 storage class 的原理
7.5 理解 configmaps 的作用和使用方法
7.6 理解 secrets 的作用和使用方法資源結(jié)構(gòu)
8 Service 及服務發(fā)現(xiàn)
8.1 了解 Docker 網(wǎng)絡和 Kubernetes 網(wǎng)絡
8.2 了解 Flannel 和 Calico 網(wǎng)絡方案
8.3 理解 Pod 在 Kubernetes 網(wǎng)絡中的工作原理
8.4 理解 Kubernetes 中的 Service
8.5 理解 Service 在 Kubernetes 網(wǎng)絡中的工作原理
8.6 理解 Kubernetes 中的服務發(fā)現(xiàn)
8.7 掌握 Kubernetes 中外部訪問的幾種方式
9 Ingress 及負載均衡
9.1 理解 Ingress 和 Ingress controller 的工作原理
9.2 掌握如何創(chuàng)建 Ingress 規(guī)則
9.3 掌握如何部署 Ingress controller
9.4 擴展 facebook ktran
10 DaemonSets,StatefulSets,Jobs,HPA,RBAC
10.1 了解 DaemonSet 資源和功能
10.2 了解 StatefulSet 資源和功能
10.3 了解 Jobs 資源和功能
10.4 了解 HPA 資源和功能
10.5 了解 RBAC 資源和功能
11 Kubernetes 調(diào)度
11.1 理解 Pod 調(diào)度的相關概念
11.2 深度理解 Kubernetes 調(diào)度策略和算法
11.3 深度理解調(diào)度時的 Pod 親和性和反親和性
11.4 深度理解調(diào)度時的 Pod 親和性和反親和性
11.5 深度理解污點和容忍對調(diào)度的影響
11.6 深度理解強制調(diào)度 Pod 的方法
12 日志、監(jiān)控、Troubleshooting
12.1 理解 Kubernetes 集群的日志方案
12.2 理解 Kubernetes 集群的監(jiān)控方案
12.3 了解相關開源項目:Heapster,F(xiàn)luentd,Prometheus 等
12.4 掌握常用的集群,Pod,Service 等故障排查和運維手段
13 Extend Kubernetes
13.1 理解和掌握 Kubernetes 中如何自定義 API 資源
13.2 可以通過 kubectl 管理 API 資源
13.3 了解用于自定義資源的 Controller 及相關使用示例
13.4 了解 CRD
13.5 實現(xiàn)并遷移一個CloudNative的應用
14 Kubernetes Federation
14.1 了解 Kubernetes 中 Federation 的作用和原理
14.2 了解 Federation 的創(chuàng)建過程
14.3 了解 Federation 支持的 API 資源
14.4 了解集群間平衡 Pod 副本的方法
15 應用編排 Helm,Chart
15.1 了解 Kubernetes 中如何進行應用編排
15.2 了解 Helm 的作用和工作原理
15.3 了解 Tiller 的作用和工作原理
16 服務市場 ServiceCatalog
16.1 了解 Kubernetes 中如何進行服務編排
16.2 了解 ServiceCatalog 的作用和工作原理
16.3 了解 Service Broker 的作用和工作原理
17 Kubernetes 安全
17.1 了解 Kubernetes 中 API 訪問過程
17.2 了解 Kubernetes 中的 Authentication
17.3 了解 Kubernetes 中的 Authorization
17.4 了解 ABAC 和 RBAC 兩種授權(quán)方式
17.5 了解 Kubernetes 中的 Admission
17.6 了解 Pod 和容器的操作權(quán)限安全策略
17.7 了解 Network Policy 的作用和資源配置方法
18 Kubernetes定制化開發(fā)
18.1 Client-go分析
18.2 擴展kubernetes
18.3 webhoook
18.4 admission controller
18.5 自定義調(diào)度器
19 實戰(zhàn)
19.1 持續(xù)集成與持續(xù)交付
19.2 kubernetes生產(chǎn)架構(gòu)
20 補充材料
20.1 kubeadm部署生產(chǎn)可用集群
20.2 Cloud Native
20.3 Service Mesh
20.4 Serverless
20.5 其他內(nèi)容:架構(gòu),人員安排等
20.6 BPF
20.7 容器網(wǎng)絡
20.8 生產(chǎn)架構(gòu)