网站首页 > 文章精选 正文
想真正读懂 Kubernetes 的底层运作,你必须理解它的“权力架构”。
Pod 是什么?Node 是什么?Control Plane 又是做什么的?
它们之间有什么关系?怎么协同工作?
本篇带你构建一个完整、系统、可视化的 Kubernetes 架构脑图,彻底搞清这些基础概念。
为什么要搞懂这些核心概念?
很多初学者学习 Kubernetes 时,容易陷入“YAML 写多了,但不知其所以然”的误区。
你可能会遇到这样的问题:
- Pod 是不是就等于容器?
- Node 和 Cluster 是什么关系?
- Deployment 和 Pod 是啥关系?能不能直接创建 Pod?
- Control Plane 是不是只有 Master 节点?
要学会用 Kubernetes 解决问题,必须跳出配置的细节,先搞清楚“整体结构”。
一图读懂 Kubernetes 架构全景图
1. Cluster(集群):Kubernetes 的运行大本营
Cluster 就是 Kubernetes 管理的一整个容器平台,由多个节点(Node)组成。
- 它包含两个部分:
- 控制平面(Control Plane):负责“指挥调度”(脑子)
- 工作节点(Worker Nodes):负责“实际干活”(身体)
2. Control Plane:集群大脑,调度与决策中枢
Control Plane 是 Kubernetes 的“中枢系统”,决定 Pod 怎么部署、怎么扩容、怎么恢复。
核心组件包括:
组件 | 作用 |
API Server | 对外接口入口,所有操作的“前台” |
etcd | 集群状态数据库,保存“期望状态”和配置 |
Controller Manager | 各种控制器管理器(如 Deployment 控制器) |
Scheduler | 调度器,负责 Pod 分配到合适 Node |
它们之间的配合逻辑:
3. Node:工作节点,容器运行的“舞台”
Node 是运行容器(Pod)的物理机或虚拟机。
每个 Node 至少包含两个关键组件:
组件 | 说明 |
Kubelet | 与 API Server 通信,负责管理 Pod 生命周期 |
Container Runtime | 比如 Docker、containerd,用于运行容器 |
kube-proxy | 负责服务访问、网络转发 |
Node 上执行的是 Kubernetes 控制下的具体“动作”。
4. Pod:Kubernetes 的最小调度单元
Pod 是 Kubernetes 的基本“工作单位”,也是它调度的最小颗粒。
一个 Pod 可以包含一个或多个容器(通常是一个),这些容器共享以下资源:
- 网络命名空间(同 IP、端口)
- 存储卷(Volume)
- 环境变量、配置
举例:
apiVersion: v1
kind: Pod
metadata:
name: my-nginx
spec:
containers:
- name: nginx
image: nginx:1.25
ports:
- containerPort: 80
Pod ≠ 容器,理解 Pod 的“壳”意义
一个 Pod 是容器的“外壳”,它主要做三件事:
- 为容器提供一个统一的网络接口;
- 管理容器的生命周期;
- 是调度的基本单位(不是单个容器)。
多个容器在一个 Pod 内协作的场景较少见(如一个主容器 + 一个日志 sidecar),但正是 Pod 使得 Kubernetes 把容器做成了可编排的资源单位。
5. Deployment / ReplicaSet / Job:高级资源控制器
Pod 虽然是运行单元,但不能直接用它来实现高可用或自动扩容,因此需要更高层的资源控制器:
控制器 | 说明 |
Deployment | 管理 Pod 副本、实现滚动升级、重启 |
ReplicaSet | 被 Deployment 控制,保持指定数量的 Pod |
StatefulSet | 适用于有状态服务(数据库) |
DaemonSet | 每个节点运行一个 Pod(如日志收集) |
Job / CronJob | 一次性任务 / 定时任务 |
你真正使用的是这些高级资源,而不是直接控制 Pod。
6. Service / ConfigMap / Secret 等周边资源
除了运行容器,Kubernetes 还需要围绕它构建:
- 网络访问(Service)
- 配置管理(ConfigMap)
- 敏感信息存储(Secret)
- 存储挂载(PersistentVolume / Claim)
- 角色权限控制(RBAC)
这些组成了 Kubernetes 的完整功能体系。
总结:理解架构是使用 Kubernetes 的第一步
你可以把 Kubernetes 架构类比成一支现代化的军队:
构件 | 类比 | 职责 |
Control Plane | 指挥部 | 决策、调度、下发命令 |
Node | 士兵营房 | 执行 Pod,干实际活 |
Pod | 战斗单元 | 运行应用、服务外部流量 |
Deployment 等 | 战术安排 | 控制作战策略与部署方式 |
推荐练习
- 用 kubectl get all -A 观察集群各组件运行情况;
- 手动部署一个 Deployment,观察创建的 Pod、RS;
- 用 kubectl describe pod 理解 Pod 的生命周期。
小结
本文从全景图入手,系统讲解了 Kubernetes 的核心构件及其关系:
- Cluster 是平台整体;
- Control Plane 是大脑,Node 是执行者;
- Pod 是最小运行单位;
- Deployment 等资源控制器负责自动化管理;
- Service/ConfigMap 等提供周边配套支持。
理解这些架构构件,是你掌握 Kubernetes 的关键第一步。
关注我,不走丢,一起玩转 Kubernetes!
猜你喜欢
- 2025-07-09 别被云原生忽悠了:接地气的 K8s 生产落地长这样
- 2025-07-09 简单了解下Kubernetes网络通信(kubernetes网络模型)
- 2025-07-09 pod结构说明-运行容器的容器(容器中pod是什么意思)
- 2025-07-09 佚名运维 k8s 训练营 - 第1天(k8s运维是什么)
- 2025-07-09 k8s实践(三):pod常用操作(k8s pod service deployment)
- 2025-07-09 K8S之调度器-精细控制Pod分布(k8s pod调度过程详解)
- 2025-07-09 【超融合云计算中心】核心K8S容器实践应用指南
- 2025-07-09 Kubernetes从零到精通(01-简介)(kubernetes入门教程)
- 2025-07-09 service详解(service理解)
- 2025-07-09 kubernetes基本概念(kubernetes架构详解)
- 最近发表
-
- 五分钟轻松熟悉一个k8s Operator应用制作
- iLogtail 使用入门 - K8S 环境日志采集到 SLS
- k8s之配置CNI网络(k8s 网络配置)
- Linux系统K8S集群架构及常用操作命令之K9S安装及使用
- Centos 安装部署Kubernetes(K8s)(k8s环境搭建 centos)
- 集群外部署Prometheus+Grafana监控K8S解析
- k8s安装UI管理工具Kuboard安装(k8s安装步骤)
- k8s中使用Helm安装生产级别redis集群
- K8s集群(K8s集群添加新节点更新步骤)
- Kubernetes (k8s) 基本命令速查(k8s kubernetes教程)
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)