Kubernetes 控制器(Controller)详解【20260530】002篇
文章目录
- Kubernetes 控制器详解
- 一、核心概念
- 1. 工作原理:调谐循环
- 2. 控制器分类
- 二、常用原生控制器(重点)
- 1. Deployment(最常用,无状态应用)
- 作用
- 核心能力
- 典型使用场景
- 极简示例
- 2. ReplicaSet(副本集)
- 作用
- 特点
- 3. StatefulSet(有状态应用)
- 作用
- 三大核心特性
- 典型场景
- 4. DaemonSet(节点守护进程)
- 作用
- 场景
- 两种更新策略
- 5. Job & CronJob(任务类控制器)
- (1)Job
- (2)CronJob
- 6. HPA(Horizontal Pod Autoscaler 水平Pod自动扩缩容)
- 作用
- 工作流程
- 三、其他内置控制器(辅助)
- 四、控制器层级关系(调用链路)
- 五、核心对比表
- 六、关键总结
- 七、常用排查命令
Kubernetes 控制器详解
K8s 控制器(Controller)是控制平面核心组件,本质是循环调谐(Reconciliation Loop):持续对比「期望状态」和「集群实际状态」,自动修正差异,保证资源始终符合定义。
一、核心概念
1. 工作原理:调谐循环
- 监听(Watch):监听 API Server 资源变化(创建/删除/修改)
- 对比:拿
yaml 期望状态vs集群当前状态 - 调谐:不一致则执行操作,拉回至期望状态
- 循环:永久循环,实现自愈、扩缩容、滚动更新
2. 控制器分类
- 内置控制器:K8s 原生,运行在
kube-controller-manager - 自定义控制器:CRD + Operator,扩展业务能力
