Kubernetes 控制器(Controller)详解【20260530】001篇

Kubernetes 控制器(Controller)详解【20260530】001篇 文章目录Kubernetes 控制器(Controller)详解一、控制器是什么?——核心思想二、控制器的通用工作模式(Reconcile Loop)每一步的含义两个必须遵守的设计铁律三、控制器在集群架构中的位置四、内置工作负载控制器详解1. ReplicaSet(RS)—— 副本守护者2. Deployment —— 无状态应用的"标准答案"3. StatefulSet —— 有状态应用的专用控制器4. DaemonSet —— 每个节点一个(节点级守护进程)5. Job —— 一次性任务6. CronJob —— 定时任务(基于 Job)五、不只是 Workload —— 其他关键内置控制器六、控制器底层实现机制(Informer + WorkQueue 模式)Informer 做了什么?Reconcile 的典型骨架(伪代码)七、自定义控制器与 Operator 模式公式工作流程开发工具链CRD 的最小示意八、一张图总览:从"你写 YAML"到"Pod 跑起来"九、常见易混点速查Kubernetes 控制器(Controller)详解一、控制器是什么?——核心思想Kubernetes 的控制器是整个系统"自愈能力"和"自动化运维"的基石。它的本质可以用一句话概括:控制器就是一个永不停止的控制循环(Control Loop / Reconciliation Loop),持续驱动集群的「实际状态」向「期望状态」收敛。经典比喻——恒温器:你设定温度(Desired State) → 温控器读取房间实际温度(Actual State) → 对比差异,决定开/关空调 → 循环往复,直到实际 == 期望K8s 控制器做的事完全一样,只不过"温度"变成了Pod 副本数、Job 完成状态、Node 健康状态……,而"开空调"变成了通过 API Server 创建/删除 Pod、更新对象状态等。二、控制器的通用工作模式(Reconcile Loop)所有 K8s 控制器(内置 + 自定义)共享同一套骨架:┌──────