Kubernetes 架构原则与对象设计专栏导览

专栏定位

本专栏是 Kubernetes 系列的总纲——在深入任何具体组件之前,先建立对 K8s 整体架构的系统性认知。K8s 不是一堆组件的简单堆砌,它的每一个设计决策背后都有清晰的架构原则:声明式 API、控制器模式、面向终态的协调、Level-triggered 而非 Edge-triggered。理解这些原则,你才能理解”K8s 为什么这样设计”而不仅仅是”K8s 怎么用”。

本专栏同时深入 K8s 的对象模型——Pod、Deployment、Service、ConfigMap 等不是孤立的概念,它们共享一套统一的 API 对象框架(GVR/GVK、metadata/spec/status 三段式、Label/Selector 松耦合关联)。掌握这套框架后,遇到任何 K8s 资源都能快速理解其设计意图。

前置知识容器核心原理专栏(Namespace、Cgroups、UnionFS、容器网络、OCI 标准)。

目录

序号文章核心内容
0101 Kubernetes 的诞生与设计哲学从 Borg 到 K8s 的演进、K8s 解决的核心问题、声明式 vs 命令式、面向终态、控制器模式、Level-triggered 设计
0202 Kubernetes 整体架构控制平面(API Server / etcd / Scheduler / Controller Manager)与数据平面(kubelet / kube-proxy / 容器运行时)、组件交互流程、一个 Pod 从创建到运行的完整链路
0303 API 对象模型与 GVR 体系API 对象的统一结构(TypeMeta / ObjectMeta / Spec / Status)、Group-Version-Resource(GVR)与 Group-Version-Kind(GVK)、API 版本演进(alpha/beta/stable)、CRD 扩展机制
0404 Label Selector 与松耦合设计Label 与 Annotation 的语义差异、Selector 的匹配机制(等式/集合)、Label 如何实现 Deployment→ReplicaSet→Pod 的级联关联、OwnerReference 与垃圾回收
0505 核心工作负载对象深度解析Pod 的设计哲学(为什么不是容器而是 Pod)、Deployment / StatefulSet / DaemonSet / Job 的设计动机与适用场景、控制器如何管理这些对象
0606 etcd 与 Kubernetes 的状态存储etcd 的 Raft 共识、Watch 机制、MVCC 版本控制、K8s 如何使用 etcd(ResourceVersion / List-Watch 协议)、etcd 的运维与容量规划

推荐阅读路径

  • 快速建立全局认知:01 → 02
  • 深入 API 设计:03 → 04 → 05
  • 理解状态存储:02 → 06

与其他专栏的关系

后续专栏本专栏提供的基础
API Server 专栏API 对象模型(GVR/GVK)、etcd 存储
控制器和调度器专栏控制器模式、声明式协调、工作负载对象
生命周期管理和服务发现专栏Pod 设计哲学、Label/Selector
生产实践与集群管理专栏整体架构、组件职责

关联专栏

  • Docker:容器内核基础(Namespace/CGroups/UnionFS)
  • API Server:API 对象模型、etcd 存储
  • 控制器和调度器:控制器模式、声明式协调
  • etcd:K8s 的唯一持久化存储
  • YARN:K8s vs YARN 资源调度对比