K8S核心架构最全详解(图文全面总结)

K8S是云原生核心,下面我详解K8S核心架构@mikechen

K8S架构

Kubernetes(简称K8S),作为当代容器编排与管理的事实标准。

其核心架构由若干关键组件协同工作以实现高可用、可扩展与自动化的容器平台。

K8S核心架构最全详解(图文全面总结)-mikechen

                +----------------------+
                |   Master 节点       |
                |----------------------|
                | API Server           |
                | Scheduler            |
                | Controller Manager   |
                | ETCD                 |
                +----------+-----------+
                           |
                           |
         -----------------------------------------
         |                |                      |
+----------------+  +----------------+  +----------------+
|  Worker Node   |  |  Worker Node   |  |  Worker Node   |
|----------------|  |----------------|  |----------------|
| Kubelet        |  | Kubelet        |  | Kubelet        |
| Kube-Proxy     |  | Kube-Proxy     |  | Kube-Proxy     |
| Containerd     |  | Containerd     |  | Containerd     |
+----------------+  +----------------+  +----------------+

Kubernetes(K8S)的核心架构可以一句话概括:一个“控制平面 + 数据平面”的主‑从式集群操作系统。

通过声明式 API + 控制器模式,把成百上千台节点上的容器统一调度、运维和治理。

 

API Server

API Server(kube-apiserver):集群的唯一入口,是K8S“中枢神经”。

K8S核心架构最全详解(图文全面总结)-mikechen

提供RESTful API,负责认证、授权、API聚合与请求处理,是集群的协调中心。

作用:

所有请求入口(kubectl / UI);

数据校验;

持久化数据到ETCD;

👉 一句话:所有操作都必须经过API Server。

 

etcd

集群“数据库”,存储所有对象(Pod、Service、Deployment等)。

K8S核心架构最全详解(图文全面总结)-mikechen

etcd提供强一致性,通常采用三节点或更多节点的高可用部署。

备份关键!数据丢失=集群全丢。

 

Controller Manager

在 Kubernetes (K8S) 架构中,Controller Manager(控制器管理器) 是集群的“大脑”之一。

负责维持集群的期望状态(Desired State),如果说 API Server 是通信中心,那么 Controller Manager 就是执行中心。

Controller Manager(kube-controller-manager):运行各种控制器。

比如:ReplicationController、Deployment Controller、Node Controller等。

K8S核心架构最全详解(图文全面总结)-mikechen

kube-controller-manager 是一个守护进程,运行在 Master 节点上,内嵌了多个控制器(Controller)。

每个控制器只负责一类资源,比如 Pod 副本、Node、Namespace、ServiceAccount 等。

 

工作节点组件

K8S核心架构最全详解(图文全面总结)-mikechen

Kubelet:节点上的主要代理,负责与API Server通信。

接收PodSpec并确保容器按期望运行;负责就绪与存活探针、资源监控与状态上报。

Container Runtime:实际运行容器的引擎(如containerd、CRI-O)。

通过CRI与kubelet交互。负责镜像拉取、容器生命周期管理等。

Kube-proxy:实现服务发现与负载均衡,负责将Service抽象映射到后端Pod。

评论交流
    说说你的看法