Kubernetes 容器云原生实战课程 · 课程大纲¶
一、课程概述¶
本课程是一套完整的 Kubernetes 实战教学体系,以 "理论 + 动手 + 认证" 三位一体为设计原则,交付 教材(19 章)、实验手册(14 个实验 / 93 个 Lab)、授课课件(19 章 / 412 页) 三件套。课程从容器原理讲起,覆盖集群搭建、核心对象、调度、网络、存储、安全、运维与排障,最终对接 CKA(Certified Kubernetes Administrator) 官方认证。
课程全部实验基于 3 节点真实集群(Kubernetes v1.36 · containerd 2.2 · Ubuntu 24.04 · Calico v3.29)逐项实测验证,命令与输出以国内网络环境为基线(镜像加速、版本差异均已处理),确保学员照做即可复现。
课程特色: - 声明式思维主线:从第 2 章控制循环贯穿到排障与运维,建立"期望状态"心智模型 - 实验分级体系:93 个 Lab 分为必做(67)/ 推荐(19)/ 可选·进阶(7)三级,兼顾教学主线和学员差异 - 生产基线贯穿:每章含"设计指南 / 生产基线"小节,直接给出可落地的企业实践 - CKA 考点标注:教材与课件全程标注五大域考点,结课即可进入备考冲刺
二、课程目标¶
学完本课程,学员能够:
知识层面 1. 解释容器的核心技术原理(命名空间、cgroups、镜像分层、OCI 标准)及 Kubernetes 的架构设计(控制面/数据面组件、星型通信、对象模型) 2. 掌握 Kubernetes 六大核心概念(集群/节点、Pod、工作负载、Service、命名空间、标签选择器)及声明式操作哲学 3. 理解调度、扩缩容、存储、网络、安全、可观测性各领域的机制与选型逻辑
技能层面 4. 使用 kubeadm 从零搭建 3 节点生产级集群(含国内镜像加速与 Calico 网络) 5. 熟练编写 Deployment / StatefulSet / Service / ConfigMap / Secret / PV-PVC 等核心对象清单 6. 独立完成应用的发布、滚动更新、回滚、水平扩展与故障自愈验证 7. 掌握分层排障方法论(节点 → Pod → 容器 → 网络 → 存储),能定位集群常见故障 8. 完成集群安全加固(RBAC、PSA、证书续期、etcd 静态加密、审计日志)与日常运维(备份、升级、维护窗口)
认证层面 9. 全面覆盖 CKA 五大域(架构 25% / 工作负载 15% / 网络 20% / 存储 10% / 排障 30%)考点,具备通过 CKA 考试的实操能力
三、课程受众¶
| 受众 | 说明 |
|---|---|
| 运维 / 平台工程师 | 负责 K8s 集群建设、维护与业务上云 |
| 开发工程师 | 需要理解部署模型、排查应用问题、接入 CI/CD |
| 架构师 / 技术负责人 | 需要掌握技术选型与生产设计决策 |
| 在校学生 / 转行者 | 有 Linux 基础,希望进入云原生领域 |
前置要求:Linux 基本操作(命令、文件、网络概念);了解容器基本概念(不要求 Docker 精通——第 1 章会系统补齐);无需编程基础。
四、课程内容¶
目录按"部分 → 章 → 节 → 小节"四级组织,每章标注建议学时(理论+实验)与配套实验。
第一部分 基础与入门(第 1-3 章,约 16 学时)¶
第 1 章 容器与云原生基础(2h,无强制实验)¶
- 1.1 容器技术原理
- 1.1.1 从虚拟机到容器
- 1.1.2 命名空间(Namespaces):隔离"看得见"
- 1.1.3 cgroups:限制"能用多少"
- 1.1.4 镜像分层(Layer)
- 1.1.5 OCI 标准:让"容器"不绑死某一家
- 1.2 Docker 快速回顾(镜像 / 容器 / 仓库)
- 1.2.1 三大概念
- 1.2.2 常用命令速查
- 1.3 容器化的价值与挑战
- 1.3.1 价值
- 1.3.2 单机场景的挑战(编排器的需求来源)
- 1.4 云原生与 CNCF
- 1.4.1 云原生的定义
- 1.4.2 CNCF 项目全景(与本课程相关)
- 1.5 容器编排器对比:为什么是 Kubernetes
第 2 章 Kubernetes 概述与架构(4h,Killercoda 沙盒演练)¶
- 2.1 Kubernetes 是什么
- 2.1.1 定义与来历
- 2.1.2 它解决什么(承接第 1 章痛点)
- 2.1.3 核心承诺(设计宣言)
- 2.2 六个核心概念详解
- 2.2.1 集群与节点
- 2.2.2 Pod:最小调度单元
- 2.2.3 工作负载控制器(Workload Controllers)
- 2.2.4 Service:稳定入口
- 2.2.5 命名空间(Namespace)
- 2.2.6 标签与选择器(Label & Selector)
- 2.2.7 六个核心概念关系图
- 2.2.8 设计指南:企业级命名与标签规范
- 2.3 命令式 vs 声明式,与控制循环 ⭐
- 2.3.1 命令式 vs 声明式:两种操作哲学
- 2.3.2 期望状态与当前状态
- 2.3.3 控制循环(Control Loop):自愈与弹性的根源
- 2.3.4 实例走查:Deployment 如何保证"3 个副本"
- 2.4 控制面组件详解
- 2.4.1 kube-apiserver:集群的唯一入口
- 2.4.2 etcd:集群的状态存储
- 2.4.3 kube-scheduler:调度器
- 2.4.4 kube-controller-manager:控制器集合
- 2.4.5 cloud-controller-manager(云环境)
- 2.5 数据面组件详解
- 2.5.1 kubelet:节点上的"Kubernetes 代理"
- 2.5.2 kube-proxy:Service 的"交通警察"
- 2.5.3 容器运行时与 CRI
- 2.6 组件通信全流程
- 2.6.1 旅程一:
kubectl get pods读请求 - 2.6.2 旅程二:
kubectl apply -f web.yaml创建 Deployment - 2.6.3 通信安全:TLS 双向证书与端口
- 2.7 对象模型详解
- 2.7.1 Group / Version / Kind:如何定位一个资源
- 2.7.2 metadata:对象的"身份"
- 2.7.3 spec 与 status:期望 vs 当前
- 2.7.4 完整示例:Deployment 对象逐字段
- 2.8 kubectl 与 kubeconfig
- 2.8.1 kubectl 命令体系
- 2.8.2 kubeconfig 与上下文
- 2.9 【沙盒演练】Killercoda:零成本接触真实集群
- 2.9.1 环境准备(5 分钟)
- 2.9.2 演练 1:认识集群与组件
- 2.9.3 演练 2:describe 一个组件
- 2.9.4 演练 3:创建第一个 Pod,看 spec vs status
- 2.9.5 演练 4:体验自愈 ⭐
- 2.9.6 演练 5:Service 与扩缩容
- 2.9.7 演练小结(对照自查)
第 3 章 集群安装与配置(4h 理论 + 6h 实验 01)¶
- 3.1 安装方式的抉择:为什么是 kubeadm
- 3.2 安装前必须想清楚的事
- 3.2.1 集群形态与资源
- 3.2.2 版本策略
- 3.2.3 网络规划:三个网段不能打架
- 3.2.4 环境前置条件(每项的"为什么")
- 3.2.5 设计指南:集群容量规划与节点选型
- 3.3 容器运行时:为什么是 containerd,而不是 Docker
- 3.3.1 运行时在集群中的角色
- 3.3.2 Docker 与 containerd 的历史纠葛(重要背景)
- 3.3.3 其他运行时:各有各的场景
- 3.3.4 关键配置项的原理:SystemdCgroup
- 3.4 kubeadm 安装流程总览
- 3.5 控制面初始化:kubeadm init 在做什么
- 3.6 工作节点加入:token 机制与 TLS bootstrap
- 3.7 网络插件(CNI)的选择:为什么是 Calico
- 3.7.1 CNI 的角色
- 3.7.2 主流 CNI 对比与适用场景
- 3.7.3 本课程为什么选 Calico
- 3.7.4 一个必须一致的参数:Pod 网段
- 3.8 集群验证:验证什么、为什么
- 3.9 国内环境的镜像获取策略(问题本质与思路)
- 3.10 安装之后:集群维护的起点
第二部分 工作负载与配置(第 4-8 章,约 24 学时)¶
第 4 章 Pod 与容器(4h 理论 + 4h 实验 02)¶
- 4.1 Pod 的本质:为什么是"最小调度单元"
- 4.1.1 第 2 章回顾:Pod 是"逻辑主机"
- 4.1.2 Pod 的共享边界(到底共享什么)
- 4.1.3 单容器 vs 多容器:三种协作模式
- 4.2 容器的配置要素
- 4.2.1 镜像与拉取策略(imagePullPolicy)
- 4.2.2 命令与参数(command / args)
- 4.2.3 环境变量
- 4.2.4 标签与注解(Pod 层面)
- 4.2.5 生产基线:SecurityContext 概览
- 4.3 Init 容器:启动前的"先决条件执行器"
- 4.3.1 为什么需要 Init 容器
- 4.3.2 工作机制
- 4.3.3 Init 容器 vs sidecar 容器
- 4.4 容器生命周期管理
- 4.4.1 容器的三种状态
- 4.4.2 三种探针:各管一件事
- 4.4.3 探针的实现方式:怎么探测
- 4.4.4 生命周期钩子与优雅终止
- 4.4.5 重启策略(restartPolicy)
- 4.5 资源模型:requests 与 limits
- 4.5.1 两个不同的机制(全书最容易混的点)
- 4.5.2 不设置会怎样
- 4.5.3 requests/limits 与 QoS 等级
- 4.5.4 Downward API:Pod 怎么"认识自己"
- 4.6 走查:一个 Pod 的完整生命周期
第 5 章 工作负载控制器(3h 理论 + 3h 实验 03)¶
- 5.1 控制器:管理 Pod 的"管理者"
- 5.1.1 为什么需要控制器
- 5.1.2 控制器的共同骨架
- 5.1.3 控制器选择决策树(先选对类型)
- 5.2 Deployment 与 ReplicaSet:无状态应用的标准答案
- 5.2.1 三层结构
- 5.2.2 副本管理与自愈
- 5.2.3 滚动更新:发布不中断的节奏控制
- 5.2.4 回滚:出问题一键还原
- 5.2.5 扩缩容与暂停
- 5.2.6 设计指南:生产发布策略
- 5.3 StatefulSet:有状态应用的正确打开方式
- 5.3.1 有状态应用的三个难题
- 5.3.2 稳定网络标识:web-0、web-1、web-2
- 5.3.3 稳定存储:每个副本绑定自己的 PVC
- 5.3.4 有序部署/缩容/更新
- 5.3.5 StatefulSet vs Deployment(选型对照)
- 5.4 DaemonSet:每节点一个
- 5.4.1 机制
- 5.4.2 典型场景
- 5.4.3 与 Deployment 的本质区别
- 5.5 Job 与 CronJob:任务型工作负载
- 5.5.1 Job:一次性任务
- 5.5.2 CronJob:定时触发 Job
- 5.5.3 任务型 vs 服务型(restartPolicy 的关键差异)
- 5.6 控制器选择总决策树(走查实例)
第 6 章 调度与 Pod 放置(3h 理论 + 3h 实验 04)¶
- 6.1 调度器:Pod 落点的决策者
- 6.1.1 调度的本质
- 6.1.2 两阶段决策:过滤与打分
- 6.1.3 调度器的可替换性
- 6.1.4 Descheduler:调度生命周期的闭环
- 6.2 节点选择:把 Pod 定向到节点
- 6.2.1 nodeSelector:最简单的方式
- 6.2.2 节点亲和/反亲和:表达式的力量
- 6.2.3 matchExpressions 语法(operators)
- 6.2.4 三种节点选择手段的选型
- 6.3 Pod 亲和/反亲和:Pod 之间的位置关系
- 6.3.1 为什么需要"Pod 之间的位置控制"
- 6.3.2 拓扑域(topologyKey):用什么维度衡量"同一处"
- 6.3.3 podAffinity / podAntiAffinity
- 6.3.4 典型场景设计
- 6.3.5 Pod 拓扑分布约束(topologySpreadConstraints)
- 6.4 污点与容忍:节点的"排斥力"与 Pod 的"通行证"
- 6.4.1 机制:两个方向的力量
- 6.4.2 三种 effect(排斥的强度)
- 6.4.3 内置污点:你其实天天在用
- 6.4.4 应用场景
- 6.4.5 污点 vs 亲和(两个独立维度)
- 6.5 节点维护与驱逐保护
- 6.5.1 维护三步曲:cordon / drain / uncordon
- 6.5.2 PodDisruptionBudget:驱逐的保险丝
- 6.6 综合走查:一个 Pod 的完整落点决策
第 7 章 自动扩缩与资源治理(2h 理论 + 2h 实验 05)¶
- 7.1 指标链路:扩缩容的数据基础
- 7.1.1 谁提供"用量数据"
- 7.1.2 指标链路
- 7.2 HPA:水平自动扩缩
- 7.2.1 原理:又一个控制循环
- 7.2.2 指标类型(autoscaling/v2)
- 7.2.3 伸缩节奏:为什么不会"抖"?
- 7.2.4 behavior:精细控制伸缩
- 7.2.5 局限与注意
- 7.3 垂直扩缩与集群扩缩:另外两个维度
- 7.3.1 VPA(Vertical Pod Autoscaler):调 requests 而不是副本数
- 7.3.2 ClusterAutoscaler(CA):节点级扩缩
- 7.3.3 三种扩缩的定位
- 7.3.4 KEDA:事件驱动自动扩缩(进阶)
- 7.4 资源治理三层防线
- 7.4.1 第一层:requests/limits(Pod 自己声明)
- 7.4.2 第二层:LimitRange(命名空间内约束"单个 Pod")
- 7.4.3 第三层:ResourceQuota(命名空间内约束"总量")
- 7.4.4 三层协作与设计建议
- 7.4.5 设计指南:多租户治理体系
第 8 章 配置管理:ConfigMap 与 Secret(2h 理论 + 2h 实验 06)¶
- 8.1 为什么需要"配置外部化"
- 8.1.1 配置写死在镜像/代码里的三个痛点
- 8.1.2 配置外部化的原则
- 8.2 ConfigMap:非敏感配置
- 8.2.1 本质与创建
- 8.2.2 消费方式一:卷挂载(键变文件)
- 8.2.3 消费方式二:环境变量(键变变量)
- 8.2.4 两种方式对比
- 8.2.5 热更新的底层原理(重要)
- 8.2.6 subPath 挂载陷阱(经典坑,必读)
- 8.2.7 immutable 与热更新工具(生产性能)
- 8.3 Secret:敏感配置
- 8.3.1 与 ConfigMap 的关系
- 8.3.2 重要认知:base64 是编码,不是加密
- 8.3.3 Secret 的类型
- 8.3.4 消费方式
- 8.3.5 Secret 的安全边界
- 8.4 Downward API:注入"自己是谁"
- 8.5 配置管理最佳实践(生产)
第三部分 网络与存储(第 9-10 章,约 12 学时)¶
第 9 章 服务、负载均衡与网络(3h 理论 + 3h 实验 07)¶
- 9.1 网络全景:四个层次
- 9.2 Service:稳定入口的完整原理
- 9.2.1 为什么需要 Service
- 9.2.2 机制:Endpoints + kube-proxy
- 9.2.3 Service 的四种类型
- 9.2.4 headless Service:不要虚拟 IP
- 9.2.5 多端口与端口命名
- 9.3 集群 DNS:名字解析
- 9.3.1 coredns 的角色
- 9.3.2 解析规则
- 9.3.3 排障视角
- 9.4 Ingress:七层入口
- 9.4.1 为什么需要 Ingress
- 9.4.2 原理:对象 + 控制器
- 9.4.3 路由规则:host 与 path
- 9.4.4 TLS 终止
- 9.4.5 Ingress 与 Service 的分工(易混点)
- 9.4.6 展望:Gateway API(Ingress 的继任者)
- 9.5 NetworkPolicy:网络隔离
- 9.5.1 默认全通(现状与风险)
- 9.5.2 原理
- 9.5.3 典型策略设计
- 9.5.4 依赖 CNI(重要)
- 9.6 综合走查:外部用户访问应用的完整路径
第 10 章 存储(3h 理论 + 3h 实验 08)¶
- 10.1 存储问题全景
- 10.1.1 容器文件系统为什么"靠不住"
- 10.1.2 三个存储需求
- 10.2 卷(Volume):Pod 内的存储抽象
- 10.3 PV 与 PVC:存储解耦(核心)
- 10.3.1 为什么需要两层
- 10.3.2 PV:存储资源的"货架"
- 10.3.3 PVC:应用的存储请求
- 10.3.4 生命周期
- 10.3.5 静态绑定 vs 动态供应
- 10.4 StorageClass:动态供应(自动化)
- 10.4.1 为什么需要
- 10.4.2 机制
- 10.4.3 绑定模式(VolumeBindingMode)
- 10.4.4 回收策略
- 10.4.5 PVC 在线扩容(Volume Expansion)
- 10.4.6 Volume Snapshots:存储快照与恢复(数据保护)
- 10.5 存储方案选型:本地 vs 共享 vs 云盘
- 10.5.1 local-path:本地方案的本质与局限
- 10.5.2 共享存储(NFS/云盘):多节点可访问
- 10.5.3 CSI:标准接口
第四部分 安全(第 11-13 章,约 10 学时)¶
第 11 章 认证与授权(2h 理论 + 2h 实验 09)¶
- 11.1 安全模型总览:三道门
- 11.2 认证:你是谁
- 11.2.1 两种身份
- 11.2.2 认证方式(apiserver 支持的)
- 11.2.3 X.509 证书认证的机制
- 11.2.4 ServiceAccount 与 Token(v1.24+ 的重要变化)
- 11.2.5 kubeconfig 多身份(第 2 章 §2.8.2 深化)
- 11.3 授权:你能干什么(RBAC)
- 11.3.1 RBAC 三要素
- 11.3.2 Role vs ClusterRole(权限的范围)
- 11.3.3 RoleBinding vs ClusterRoleBinding(生效范围)
- 11.3.4 rules 写法(自定义权限)
- 11.3.5 内置角色(现成的权限模板)
- 11.3.6 认证 vs 授权(核心辨析)
- 11.4 最小权限设计
- 11.4.1 原则
- 11.4.2 验证工具:kubectl auth can-i
第 12 章 准入控制与容器安全(2h 理论 + 2h 实验 09)¶
- 12.1 准入控制:第三道门
- 12.1.1 时机与角色
- 12.1.2 两类控制器
- 12.1.3 常见准入控制器(本章前后知识点的"汇聚点")
- 12.2 Pod Security Admission(PSA):安全标准的强制执行
- 12.2.1 为什么需要
- 12.2.2 三个安全级别(由松到严)
- 12.2.3 实施方式:命名空间标签
- 12.2.4 违规的后果(报错解读)
- 12.3 SecurityContext:容器加固
- 12.3.1 默认风险
- 12.3.2 关键字段(四个必须懂)
- 12.3.3 Pod 级 vs 容器级
- 12.3.4 与 PSA 的关系:自觉 vs 强制
- 12.4 镜像安全
- 12.4.1 私有仓库凭据:imagePullSecrets
- 12.4.2 最小镜像与签名(概念)
- 12.5 策略即代码:OPA Gatekeeper / Kyverno(第三方准入)
第 13 章 集群安全加固(2h 理论 + 2h 实验 09)¶
- 13.1 集群信任链总览
- 13.2 证书体系与续期
- 13.2.1 组件证书全景(谁有证书)
- 13.2.2 证书过期 = 集群瘫痪(为什么)
- 13.2.3 检查与续期
- 13.2.4 kubeconfig 与证书(回顾)
- 13.3 etcd 安全
- 13.3.1 TLS:通信加密
- 13.3.2 静态加密:落盘加密(数据线核心)
- 13.3.3 备份安全
- 13.4 kubelet 安全
- 13.4.1 kubelet 也有 API(10250)
- 13.4.2 默认配置(kubeadm 的安全基线)
- 13.5 API Server 审计日志(集群的"天眼")
- 13.5.1 审计与事件的区别(第 15 章回顾)
- 13.5.2 Audit Policy:记录什么(配置逻辑)
- 13.5.3 存储与用途
- 13.6 密钥与数据安全(汇总)
- 13.6.1 Secret 的三道保护(第 8 章 §8.3.5 深化)
- 13.6.2 网络隔离(第 9 章 NetworkPolicy 的安全视角)
第五部分 集群运维与排障(第 14-16 章,约 14 学时)¶
第 14 章 集群日常管理与维护(2h 理论 + 2h 实验 12)¶
- 14.1 运维思维:从"命令"到"流程"
- 14.2 节点管理流程
- 14.2.1 维护窗口三步曲(流程化)
- 14.2.2 PDB 与业务保护(回顾 + 运维视角)
- 14.2.3 污点隔离(节点级运维手段)
- 14.3 集群升级:完整流程
- 14.3.1 升级前的准备(先做三件事)
- 14.3.2 升级顺序(为什么是这个顺序)
- 14.3.3 升级中的业务保障(三条机制叠加)
- 14.3.4 失败与回滚预案
- 14.3.5 版本兼容窗口(不能跳版本)
- 14.3.6 Addons 升级管理(容易漏的一环)
- 14.4 etcd 备份策略:不只是"存个快照"
- 14.4.1 备份什么、多久、存哪
- 14.4.2 恢复演练("恢复会丢什么")
- 14.4.3 验证闭环
- 14.5 控制面高可用(概念层)
- 14.5.1 为什么需要
- 14.5.2 多控制面架构(kubeadm 支持)
- 14.5.3 etcd Raft:为什么是奇数节点
- 14.5.4 设计指南:高可用与灾备架构(HA/DR)
- 14.6 运维日历(SRE 例行动作)
- 14.7 命名空间与资源治理(运维视角)
第 15 章 可观测性:监控、日志与事件(2h 理论 + 2h 实验 05/14)¶
- 15.1 可观测性三支柱
- 15.2 指标(Metrics)
- 15.2.1 实时指标:metrics-server(第 7 章回顾)
- 15.2.2 完整监控:Prometheus 体系(概念)
- 15.2.3 PromQL 极简实战(会看、会写一条就够)
- 15.2.4 生产指标实践
- 15.3 日志(Logs)
- 15.3.1 kubectl logs 的边界
- 15.3.2 日志架构:stdout 是标准
- 15.3.3 日志收集模式(日志要"出集群")
- 15.3.4 生产日志实践
- 15.4 事件(Events)与审计
- 15.4.1 事件:对象状态变化的流水账
- 15.4.2 审计日志:apiserver 请求全记录(概念)
- 15.5 分布式追踪(Tracing):请求的一生
- 15.6 排障入口:三支柱怎么配合
第 16 章 故障排查与可靠性(3h 理论 + 3h 实验 10)¶
- 16.1 排障方法论:先有框架,再动手
- 16.1.1 分层排查框架
- 16.1.2 证据链思维(第 15 章三支柱的整合)
- 16.1.3 排障纪律(三条铁律)
- 16.2 各层排障详解
- 16.2.1 节点层:NotReady
- 16.2.2 Pod 层:Pending / ImagePullBackOff / CrashLoopBackOff
- 16.2.3 容器层:应用自己
- 16.2.4 网络层:访问不通(Service/DNS 排查流程)
- 16.2.5 存储层:卷挂不上
- 16.3 典型故障图谱(现象 → 根因 → 修复速查)
- 16.4 可靠性工程
- 16.4.1 发布可靠性
- 16.4.2 下线可靠性
- 16.4.3 驱逐可靠性
- 16.4.4 主动演练(混沌工程思想)
- 16.5 SRE 运营规范:把可靠性"制度化"
第六部分 综合与扩展(第 17-19 章,约 14 学时)¶
第 17 章 Helm 与 Kustomize(2h 理论 + 2h 实验 13)¶
- 17.1 为什么需要应用打包工具
- 17.1.1 裸 YAML 管理的三个痛点
- 17.1.2 工具链的定位(两个互补的工具)
- 17.2 Helm:应用包的标准格式
- 17.2.1 核心模型(三个概念)
- 17.2.2 Chart 目录结构(解剖一个应用包)
- 17.2.3 模板化原理(values 注入 + 渲染)
- 17.2.4 常用命令(安装 / 升级 / 回滚)
- 17.3 Kustomize:不用模板,用覆盖
- 17.3.1 定位与机制
- 17.3.2 base/overlay 环境定制
- 17.3.3 Helm vs Kustomize(决策逻辑)
- 17.4 企业发布流程(Helm + CI/CD)
第 18 章 综合实战:应用发布全流程(2h 理论 + 4h 实验 11)¶
- 18.1 需求与架构设计
- 18.1.1 需求拆解:一个需求,四个子问题
- 18.1.2 架构设计:数据与应用分离(核心原则)
- 18.2 分层落地
- 18.2.1 数据层:MySQL + Secret + PVC(StatefulSet)
- 18.2.2 应用层:Deployment 双线
- 18.2.3 访问层:Service / Ingress
- 18.2.4 扩展层:HPA + 多副本(存储限制的认知)
- 18.2.5 保护层:探针 / 优雅终止 / PDB(生产加配)
- 18.3 验证体系:怎么证明"能用了"
- 18.4 清理规范:先入口后数据
- 18.5 展望:CRD 与 Operator(集群扩展机制)
第 19 章 CKA 考试指南(2h 理论 + 4h 模拟演练)¶
- 19.1 考试概览
- 19.1.1 考试形式
- 19.1.2 考试环境要点(提前适应)
- 19.1.3 评分思路
- 19.2 五大域考点浓缩(全书速查)
- 域 1:集群架构、安装与配置(25%)
- 域 2:工作负载与调度(15%)
- 域 3:服务与网络(20%)
- 域 4:存储(10%)
- 域 5:故障排查(30%——第一权重)
- 19.3 考试技巧
- 19.3.1 时间管理
- 19.3.2 kubectl 效率技巧(核心)
- 19.3.3 上下文切换(每题的"第一动作")
- 19.3.4 保存进度
- 19.4 常见陷阱
- 19.4.1 v1.36 语法差异(本课程基线实测)
- 19.4.2 配置易错点(考试高频扣分项)
- 19.4.3 心理与操作
- 19.5 备考路线图(考前 4-6 周)
- 19.6 模拟演练指引
五、教学安排¶
学时规划(完整版约 96h;紧凑班约 52h)¶
| 部分 | 章节 | 理论 | 实验 | 小计 |
|---|---|---|---|---|
| 一、基础与入门 | 第 1-3 章 | 10h | 6h | 16h |
| 二、工作负载与配置 | 第 4-8 章 | 14h | 14h | 28h |
| 三、网络与存储 | 第 9-10 章 | 6h | 6h | 12h |
| 四、安全 | 第 11-13 章 | 6h | 6h | 12h |
| 五、运维与排障 | 第 14-16 章 | 7h | 7h | 14h |
| 六、综合与扩展 | 第 17-19 章 | 6h | 8h | 14h |
| 合计 | 19 章 | 49h | 47h | ≈96h |
紧凑班型:只做必做实验 + 精选章节,理论 24h + 实验 28h ≈ 52h。
教学方法¶
- 理论课:教材 + 课件(每章 16-45 页),重点讲机制与"为什么"
- 实验课:实验手册六要素结构(目标 → 验证概念 → 配置要点 → 观察点 → 清理),3 节点集群实操
- 沙盒热身:第 2 章 Killercoda 免费沙盒先行体验
- 课后:每章思考题(教材章末)+ 分级 Lab 自测
实验分级体系(授课取舍依据)¶
| 级别 | 数量 | 定位 |
|---|---|---|
| 必做 | 67 个 Lab | 课堂主线,覆盖 CKA 考点 |
| 推荐 | 19 个 Lab | 加深理解(sidecar、QoS、NFS、rollout 等) |
| 可选·进阶 | 7 个 Lab | 需额外组件(KEDA、Prometheus、审计、证书续期等) |
六、考核与认证¶
- 过程考核:每个实验的验收清单 + 章节思考题
- 结课项目:第 18 章综合实战(WordPress 全链路发布)独立完成
- CKA 对接:完成全部必做 Lab + 第 19 章模拟演练后报考;CKA 五域权重——架构 25% / 工作负载 15% / 网络 20% / 存储 10% / 排障 30%
七、教学环境与资源¶
- 集群:3 节点云主机(2C4G 起)Ubuntu 24.04,实验 01 从零安装
- 版本:Kubernetes v1.36.3 · containerd 2.2 · Calico v3.29 · metrics-server v0.9
- 镜像:全部实验镜像国内可拉(详见
manual/00-实验镜像清单.md,仅 KEDA 的 ghcr.io 受限、可选实验可跳过) - 课件:
ppt/下 19 章分章 PPTX + 416 页完整版(pptxgenjs 源码可再生成) - 配套文档:
textbook/GLOSSARY.md术语表、textbook/COURSE-OUTLINE.md章↔实验逐条映射、CHANGELOG.md全部修订历史