第一章 Kubernetes定義
1.1 Kubernetes是什么
1.2 Kubernetes應(yīng)用場(chǎng)景
1.3 例子
1.4 Kubernetes基本概念和術(shù)語
1.4.1 Master
1.4.2 Node
1.4.3 Pod
1.4.4 Label(標(biāo)簽)
1.4.5 Replication Controller
1.4.6 Deployment
1.4.7 Horizontal Pod Autoscaler
1.4.8 StatefulSet
1.4.9 Service(服務(wù))
1.4.10 Volume(存儲(chǔ)卷)
1.4.11 Persistent Volume
1.4.12 Namespace(命名空間)
1.4.13 Annotation(注解)
第二章 Kubernetes實(shí)踐
*2.1 Kubernetes安裝與配置
2.1.1 系統(tǒng)要求
2.1.2 使用kubeadm工具快速安裝Kubernetes集群
2.1.3 以二進(jìn)制文件方式安裝Kubernetes集群
2.1.4 Kubernetes集群的安全設(shè)置
2.1.5 Kubernetes集群的網(wǎng)絡(luò)配置
2.1.6 內(nèi)網(wǎng)中的Kubernetes相關(guān)配置
2.1.7 Kubernetes的版本升級(jí)
2.1.8 Kubernetes核心服務(wù)配置詳解
*2.2 kubectl命令行工具用法詳解
2.2.1 kubectl用法概述
2.2.2 kubectl子命令詳解
2.2.3 kubectl參數(shù)列表
2.2.4 kubectl輸出格式
2.2.5 kubectl操作示例
*2.3 Pod
2.3.1 Pod定義詳解
2.3.2 Pod的基本用法
2.3.3 靜態(tài)Pod
2.3.4 Pod容器共享Volume
2.3.5 Pod的配置管理
2.3.6 在容器內(nèi)獲取Pod信息(Downward API)
2.3.7 Pod生命周期和重啟策略
2.3.8 Pod健康檢查
2.3.9 玩轉(zhuǎn)Pod調(diào)度
2.3.10 Init Container(初始化容器)
2.3.11 Pod的升級(jí)和回滾
2.3.12 Pod的擴(kuò)容和縮容
2.3.13 使用StatefulSet搭建MongoDB集群
*2.4 Service
2.4.1 Service定義詳解
2.4.2 Service基本用法
2.4.3 Headless Service
2.4.4 集群外部訪問Pod或Service
2.4.5 DNS服務(wù)搭建指南
2.4.6 自定義DNS和上游DNS服務(wù)器
2.4.7 Ingress:HTTP 7層路由機(jī)制
2.5kubernetes集群GPU/FPGA節(jié)點(diǎn)的部署與使用(重點(diǎn))
Kubernetes v1.8 開始增加了 Alpha 版的 Device 插件,
用來支持 GPU、FPGA、高性能 NIC、InfiniBand 各種設(shè)備
第三章 Kubernetes原理及調(diào)度算法(重點(diǎn))
*3.1 Kubernetes API Server 原理分析
3.1.1 Kubernetes API Server概述
3.1.2 獨(dú)特的Kubernetes Proxy API接口
3.1.3 集群功能模塊之間的通信
*3.2 Controller Manager 原理分析
3.2.1 Replication Controller
3.2.2 Node Controller
3.2.3 ResourceQuota Controller
3.2.4 Namespace Controller
3.2.5 Service Controller與Endpoint Controller
3.3 Scheduler原理分析 ***********************
3.4 kubelet運(yùn)行機(jī)制分析
3.4.1 節(jié)點(diǎn)管理
3.4.2 Pod管理
3.4.3 容器健康檢查
3.4.4 cAdvisor資源監(jiān)控
3.5 kube-proxy 運(yùn)行機(jī)制分析
3.6 深入分析集群安全機(jī)制
3.6.1 API Server認(rèn)證管理(Authentication)
3.6.2 API Server授木又管理(Authorization)
3.6.3 Admission Control(準(zhǔn)入控制)
3.6.4 Service Account
3.6.5 Secret私密憑據(jù)
3.7 網(wǎng)絡(luò)原理
3.7.1 Kubernetes網(wǎng)絡(luò)模型
3.7.2 Docker的網(wǎng)絡(luò)基礎(chǔ)
3.7.3 Docker的網(wǎng)絡(luò)實(shí)現(xiàn)
3.7.4 Kubernetes的網(wǎng)絡(luò)實(shí)現(xiàn)
3.7.5 Pod和Service網(wǎng)絡(luò)實(shí)戰(zhàn)
3.7.6 CNI網(wǎng)絡(luò)模型
3.7.7 Kubernetes網(wǎng)絡(luò)策略
3.7.8 開源的網(wǎng)絡(luò)組件
3.8 共享存儲(chǔ)原理
3.8.1 共享存儲(chǔ)機(jī)制概述
3.8.2 PV詳解
3.8.3 PVC詳解
3.8.4 PV和PVC的生命周期
3.8.5 StorageClass詳解
3.8.6 動(dòng)態(tài)存儲(chǔ)管理實(shí)戰(zhàn):GlusterFS
第四章 性能測(cè)試
4.1測(cè)試用例
4.2壓力測(cè)試監(jiān)控指標(biāo):
4.2.1在不同數(shù)據(jù)量,不同并發(fā)數(shù)下,長時(shí)間執(zhí)行壓力測(cè)試時(shí),系統(tǒng)的穩(wěn)定性,包括:
1.>測(cè)試架構(gòu);
2.>系統(tǒng)性能表現(xiàn),在較長時(shí)間范圍內(nèi)的變化趨勢(shì)
3.>系統(tǒng)資源使用情況,在較長時(shí)間范圍內(nèi)的變化趨勢(shì)
4.>各個(gè)服務(wù)組件的TPS、響應(yīng)時(shí)間、錯(cuò)誤率
5.>內(nèi)部模塊間訪問次數(shù)、耗時(shí)、錯(cuò)誤率等內(nèi)部性能數(shù)據(jù)
6.>各個(gè)模塊資源使用情況
7.>各個(gè)服務(wù)端組件長時(shí)間運(yùn)行時(shí),是否出現(xiàn)進(jìn)程意外退出、重啟等情況
8.>服務(wù)端日志是否有未知錯(cuò)誤
4.3 apiserver
1.>api的響應(yīng)時(shí)間。
2.>apiserver緩存的存儲(chǔ)設(shè)備對(duì)性能的影響。
3.>流控對(duì)系統(tǒng)、系統(tǒng)性能的影響。
4.>apiserver 日志中的錯(cuò)誤響應(yīng)碼。
5.>apiserver 重啟恢復(fù)的時(shí)間
6.>apiserver在壓力測(cè)試情況下,響應(yīng)時(shí)間和資源使用情況。
4.4scheduler
4.4.1壓測(cè)scheduler處理能力
4.4.2scheduler 重啟恢復(fù)的時(shí)間
4.4.3scheduler日志中的錯(cuò)誤信息。
4.5controller
4.5.1壓測(cè) deployment controller處理能力
4.5.2controller 重啟恢復(fù)的時(shí)間
4.5.3controller日志中的錯(cuò)誤信息。
4.6kubelet
node心跳對(duì)系統(tǒng)性能的影響
kubelet重啟恢復(fù)的時(shí)間
kubelet日志中的錯(cuò)誤信息。
4.7etcd
4.7.1etcd 的寫入性能
4.7.2etcd 的存儲(chǔ)設(shè)備對(duì)性能的影響。例如,寫etcd的io。
4.7.3watcher hub 數(shù)對(duì)k8s系統(tǒng)性能的影響。
第五章 Kubernetes運(yùn)維指南
5.1 Kubernetes集群
5.1.1 Node的管理
5.1.2 更新資源對(duì)象的Label
5.1.3 Namespace:集群環(huán)境共享與隔離
5.1.4 Kubernetes資源管理
5.1.5 資源緊缺時(shí)的Pod驅(qū)逐機(jī)制
5.1.6 Pod Disruption Budget(主動(dòng)驅(qū)逐保護(hù))
5.1.7 Kubernetes集群的高可用部署方案
5.1.8 Kubernetes集群監(jiān)控
5.1.9 集群統(tǒng)一日志管理
5.1.10 Kubernetes審計(jì)日志(Audit Log)
5.1.11 使用Web UI(Dashboard)管理集群
5.1.12 Helm:Kubernetes應(yīng)用包管理工具
5.2 Trouble Shooting指導(dǎo)
5.2.1 查看系統(tǒng)Event事件
5.2.2 查看容器日志
5.2.3 查看Kubernetes服務(wù)日志
5.2.4 常見問題
5.2.5 尋求幫助
5.3 Kubernetes開發(fā)中的新功能
5.3.1 Pod Preset(運(yùn)行時(shí)參數(shù)注入策略)
5.3.2 Cluster Federation(集群聯(lián)邦)
5.3.3 容器運(yùn)行時(shí)接口(Container Runtime Interface-CRI)
5.3.4 對(duì)GPU的支持
5.3.5 Kubernetes的演進(jìn)路線(Roadmap)和開發(fā)模式 |