Kubernetes 架构一张图讲透

Kubernetes 核心组件及作用说明

Kubernetes Master 控制平面核心组件

API Server

整个集群的统一入口,所有请求(kubectl、UI、组件通信)都必须经过它。负责认证、鉴权、校验请求并写入 etcd,是"集群大脑的入口层"。

etcd

分布式键值存储数据库,用来保存整个集群的所有状态数据,包括 Pod、Service、Deployment 配置与状态,是 Kubernetes 的"唯一事实来源"。

Controller Manager

负责维护集群状态一致性,比如副本数量不足会自动补 Pod,节点宕机会触发迁移,本质是"自动修复控制器"。

Scheduler

负责调度 Pod 到具体 Node 上运行,根据资源情况(CPU、内存、亲和性、污点等)做最优分配,是"任务分配调度员"。

Kubernetes Node 工作节点核心组件

kubelet

运行在每个 Node 上,负责与 API Server 通信并管理本机 Pod 生命周期(创建、启动、监控、删除),是"节点执行代理"。

kube-proxy

负责 Service 网络规则,实现 Pod 之间以及外部访问的负载均衡,本质是"网络转发与服务发现代理"。

Container Runtime

真正运行容器的组件,如 containerd 或 Docker,负责镜像拉取与容器创建,是"容器执行引擎"。

附加核心概念组件

CoreDNS

负责集群内部 DNS 解析,实现服务名访问服务 IP,是"服务发现系统"。

Ingress Controller

负责集群外部流量入口控制,实现 HTTP/HTTPS 路由转发,是"南北向流量入口网关"。

总结一句话理解
API Server 负责入口,etcd 负责存储,Controller 负责自愈,Scheduler 负责调度,Node 上 kubelet 负责执行,kube-proxy 负责网络,Runtime 负责真正跑容器,DNS 和 Ingress 负责对外服务能力。

流程总结

核心流程kubectl apply 提交期望 → apiserver 验证并记录 → etcd 存储状态差异 → controller 循环修正 → scheduler 决策最优节点 → kubelet 执行容器任务 → kube-proxy 提供稳定访问。

设计哲学:声明式(只描述目标)、控制循环(持续对齐状态)、最终一致性(自动收敛)。Kubernetes 不是命令驱动,而是一个"自运转"的状态驱动系统。

留言 4

相关推荐
望易16 分钟前
刚设计的大模型架构-双域耦合认知框架
算法·架构
狂炫冰美式1 小时前
人均配了AI, 为什么公司还是没变快? 🤔 本质还是分布式系统问题
前端·后端·架构
她的男孩3 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
狗哥哥4 小时前
地图渲染模块架构设计文档
架构
ethantan16 小时前
AI Agent 组成:像人一样思考的智能体
人工智能·程序员·架构
Cosolar18 小时前
vLLM 生产级部署完全指南
人工智能·后端·架构
云上工程笔记20 小时前
从 0 到 1 配 OpenCode 多 Agent:7 个角色协作、视觉委托与权限隔离实战
架构
王二端茶倒水20 小时前
从千兆到万兆:宽带运营不能只卖套餐,要管用户生命周期从千兆到万兆:宽带运营需要管理用户生命周期
后端·网络协议·架构