四、工作负载控制器
Pod 解决一组容器怎样运行;工作负载控制器回答哪些实例应该存在、失败后如何补齐、模板变化怎样发布。选型依据是实例身份和生命周期,不是哪个资源名称更熟悉。
1、阅读地图
| 专题 | 图号 | 核心问题 |
|---|---|---|
| ReplicaSet 与 Deployment | K4-1 | 谁补副本,谁管版本 |
| 发布、暂停与回滚 | K4-2 | 容量、就绪和发布进度如何相互约束 |
| StatefulSet 身份与存储 | K4-3 | 名称与卷稳定,为什么还不等于数据库高可用 |
| DaemonSet 与节点变化 | K4-4 | 节点资格如何决定副本集合 |
| Job 与 CronJob | K4-5、K4-6 | 如何描述有限完成、失败重试与定时执行 |
| PDB、弹性与选型 | K4-7 | 预算、实例数和基础设施容量分别归谁控制 |
2、从最常用的对象关系出发
图 K4-1 复用第一篇的所有权结构。后面几类控制器会改变实例管理语义,但都继续通过 API 对象调谐。
3、实验前提
使用 README 中的独立上下文和 k8s-lab。StatefulSet 需要默认 StorageClass;DaemonSet 示例会临时添加专用节点标签并明确恢复;HPA 的可选观察需要已安装指标组件。
本章以三副本 Web、独立卷文件标记、节点 HTTP 标记和有限打印任务展示控制行为。完整的数据库复制、故障选主、真实云节点扩容需额外环境,不从这些小实验推断。
4、本章验收
应能独立完成一次成功发布、一次未就绪发布的定位与回滚;验证同名 StatefulSet Pod 重建后的 PVC 与数据;解释 CronJob 为什么需要幂等;用 API 返回和 PDB status 证明一次驱逐为何被拒绝或允许。
进入 Service 与服务发现 后,把这些可替换实例接到稳定访问入口,继续区分对象控制链与真实请求数据路径。
