章节摘要:本章跟着一条线走——orders-api 的声明离开你的终端之后、抵达工作节点之前,在控制平面里经历的那段"看不见的旅程"。kubectl 提交的对象先过 API Server 的认证、授权、准入三道关卡,被修订成合法形态后写入 etcd 账本;调度器与控制器再通过 Watch 机制收到广播,各自认领任务。
上一章结束时,orders-api 的声明还只是一个文本文件。当你在终端敲下 kubectl apply,这份声明开始了旅程中最凶险的一段:它要穿过一整套安检与登记体系。凶险在哪?在于集群里流转的任何数据都必须先变成"资源对象"——API Server 只受理结构化的资源,etcd 只存储通过校验的资源,其余组件只消费 Watch 推送的资源变更。三道关卡、一本账、一套广播,构成了控制平面的全部戏份。
理解这条线的直接收益是排障提速:apply 报 403,是关卡二的授权问题;apply 成功但 Pod 迟迟不出现,多半是账本之后没人接单(调度或控制器异常)。本章把这条线走通,后续遇到任何"声明不动了",都能定位到具体环节。
先看声明的受理全景,四类组件各守一段:

本章三节,对应声明的三段路程:
三节是严格的接力关系:没有 2.1 的资源模型,2.2 的报错读不懂;没有 2.3 的 Watch 机制,第4章的调和循环就成了无源之水。
本章的认知拐点在 2.3:etcd 是集群唯一的记忆,Watch 是集群的神经系统。想通这一点,"组件之间怎么协同"的疑问就全部消解——它们不直接通信,全都盯着同一本账的变更流。第4章讲控制器每隔秒级对账一次、第3章讲调度器监听未绑定的 Pod,机制上都是在 Watch 这条神经上做文章。
结论一句话:apply 返回 created,只代表声明过了安检、入了账;声明变成运行中的容器,是账本之后一串组件接力的结果,接力过程从第3章开始展开。
声明已经入账、广播已经发出。第3章切到工作节点一侧:调度器如何为每个 Pod 挑选节点、kubelet 如何把容器真正拉起来,以及容器跑起来之后,探针如何接管"健康裁判"的职务。