K8S是大型架构核心,下面我详解K8S原理架构@mikechen
K8S 的整体架构
K8S 主要分为控制平面和工作节点两部分。

控制平面负责集群的管理与决策,核心组件包括:
API Server:集群的统一入口,所有请求都要经过它。它负责验证、认证、数据处理以及与其他组件通信。
etcd:分布式键值数据库,用于保存集群的所有状态信息,是 K8S 的“数据库”。
Scheduler:负责调度,将待运行的 Pod 分配到合适的节点上。
Controller Manager:运行各种控制器,持续检查系统状态并做出调整,例如副本控制器、节点控制器等。
Control Plane(控制平面)
整个 Kubernetes 的”大脑”。
主要包含五大组件。
① API Server
API Server 是整个集群的唯一入口。

所有请求:
kubectl
↓
API Server
例如:
kubectl get pods
实际上:
kubectl
↓
HTTPS
↓
API Server
↓
返回结果
所有组件都通过 API Server 通信。
② etcd
etcd 是 Kubernetes 的数据库。

保存:
- Pod;
- Node;
- Deployment;
- ConfigMap;
- Secret;
- Namespace;
例如:
Pod:
Java-01
Java-02
Redis
全部保存在 etcd。
③ Scheduler(调度器)
作用:
决定 Pod 放到哪台机器。
例如:
Node1
CPU:20%
Memory:30%
Node2
CPU:90%
Memory:80%
Scheduler:
↓
选择 Node1
④ Controller Manager
Controller 是 Kubernetes 的”自动驾驶系统”。

例如:
Deployment:
Replicas = 3
实际上:
Pod1
Pod2
Pod3
如果:
Pod2
挂掉
Controller:
↓
重新创建
Pod2
保证:
始终保持3个Pod
K8S工作节点
工作节点负责真正运行容器,主要包括:

kubelet:节点上的管理代理,负责接收 API Server 的指令并确保 Pod 正常运行。
kube-proxy:负责网络转发和服务访问规则的维护。
容器运行时:如 containerd、CRI-O,用于真正拉取镜像并启动容器。
这种架构使 K8S 具备良好的扩展性与可维护性,控制逻辑集中在控制平面,执行逻辑分散在各节点。