网站首页 > 文章精选 正文
Kubernetes (k8s) 核心运行原理的流程图
核心步骤说明:
- 用户提交配置
用户通过 kubectl 提交 YAML/JSON 格式的资源配置清单(Deployment、Service 等)。 - API Server 接收请求
kube-apiserver 验证请求合法性,将资源状态写入 etcd。 - 状态持久化
etcd 作为分布式键值存储,持久化保存集群所有状态数据。 - 控制器响应变更
Controller Manager 中的控制器(如 Deployment Controller)通过 Informer 机制 监听资源变更: - 比较当前状态与期望状态(例如:副本数不足时创建新 Pod)。
- 生成新的 Pod 配置并提交给 API Server。
- 调度器工作
Scheduler 监听未绑定的 Pod: - 过滤(Filter):排除不满足条件的 Node(如资源不足)。
- 打分(Score):对符合的 Node 优先级排序。
- 绑定(Bind):将 Pod 绑定到最优 Node(写入 etcd)。
- Node 节点执行
kubelet 监听分配到本节点的 Pod: - 调用 Container Runtime(如 containerd)拉取镜像、启动容器。
- 通过 CNI 插件配置容器网络。
- 服务发现与负载均衡
kube-proxy 监听 Service 和 Endpoint 变化: - 更新节点上的 iptables/IPVS 规则,实现服务负载均衡。
- 状态反馈
kubelet 持续收集 Pod/容器状态上报给 API Server,最终写入 etcd。
关键设计思想:
- 声明式 API:用户声明“期望状态”,系统自动收敛到该状态。
- 控制循环:控制器不断检查实际状态与期望状态的差异并修复。
- 组件松耦合:通过 API Server 的 REST API 交互,组件可独立升级。
- 事件驱动:基于 etcd 的 Watch 机制实现高效状态同步。
进阶流程示例(Deployment 扩缩容):
猜你喜欢
- 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 Kubernetes 核心概念全景图:Pod、Node、Cluster、Control Plane 等
- 2025-07-09 K8S之调度器-精细控制Pod分布(k8s pod调度过程详解)
- 2025-07-09 【超融合云计算中心】核心K8S容器实践应用指南
- 2025-07-09 Kubernetes从零到精通(01-简介)(kubernetes入门教程)
- 2025-07-09 service详解(service理解)
- 最近发表
-
- Vue3+Django4全新技术实战全栈项目|高清完结
- 工厂模式+策略模式消除 if else 实战
- 每天一个 Python 库:httpx异步请求,让接口测试飞起来
- 如何高效实现API接口的自动化测试?
- 前端工程化:从“手忙脚乱”到“从容协作”的进化记
- 使用C#创建服务端Web API(c#开发web服务器)
- SpringBoot之旅第四篇-web开发(springboot做web项目)
- 一文读懂SpringMVC(一文读懂新型政策性金融工具)
- Rust Web编程:第十二章 在 Rocket 中重新创建我们的应用程序
- Apache Druid 数据摄取——本地数据和kafka流式数据 一篇文章看懂
- 标签列表
-
- 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)