Kubernetes运行流程详解
Kubernetes运行流程详解
Kubernetes运行流程详解
1. 用户请求
- 用户通过
kubectl
命令行工具或API向K8s集群发送请求,例如部署一个新的应用。
2. API服务器
- 请求首先到达API服务器
(kube-apiserver)
。这是K8s的前门,处理所有的REST请求,验证并处理数据。
3. 调度器
- 当请求涉及创建新的Pod时,调度器
(kube-scheduler)
接手工作。它决定Pod应部署在哪个节点上,考虑到资源需求、硬件/软件/策略约束等因素。
4. 控制器管理器
- 控制器管理器
(kube-controller-manager)
运行一系列控制器。这些控制器监听集群状态的变化,并确保当前状态与用户期望状态一致。例如,副本集控制器确保指定数量的Pod副本始终运行。
5. etcd存储
- 集群的所有数据
(包括集群状态和配置)
都存储在etcd中,一个轻量级、分布式的键值存储数据库。
6. 节点(Node)
- 节点是运行Pod的物理或虚拟机。每个节点都运行两个关键组件:
- kubelet:与API服务器通信,并管理节点上的Pod。
- kube-proxy:维护节点网络规则,并执行连接转发。
7. Pod运行
- Pod是在Kubernetes上运行应用程序的基本单元,通常包含一个或多个容器。Pod的创建和管理都是按照
API
服务器的指令执行的。
8. 服务与Ingress
- 服务
(Service)
和Ingress负责管理外部访问Pod的方式。服务为Pod组提供内部集群内的网络访问,而Ingress
为服务提供外部访问的规则。
Kubernetes运行流程图
接下来,我将为您创建一张Kubernetes运行流程的图表,以帮助更清晰地理解这一过程。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 小帕鲁流浪记
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果