第二篇:k8s工作流程

我们来看通过deployment部署pod的常规流程:

  1. kubectlapiserver发送部署请求(例如使用 kubectl create -f deployment.yml)
  2. apiserver 将 Deployment 持久化到etcd;etcd与apiserver进行一次http通信。
  3. controller manager 通过watch api监听 apiserverdeployment controller 看到了一个新创建的deplayment对象 更后,将其从队列中 拉出,根据deployment的描述创建一个ReplicaSet 并将 ReplicaSet 对象返回apiserver并持久化回etcd。 以此类推,当replicaset控制器看到新创建的replicaset对象,将其从队列中拉出,根据描述创建pod对象。
  4. 接着scheduler调度器看到未调度的pod对象,根据调度规则选择一个可调度的节点,加载到pod描述中nodeName字段,并将pod对象返回apiserver并写入etcd。
  5. kubelet在看到有pod对象中nodeName字段属于本节点,将其从队列中 拉出,通过容器运行时创建pod中描述的容器。

deployment-replicaset-pod的关系如下:

相关推荐
Lumbrologist8 小时前
【零基础部署】Docker 部署 CrewAI 多 Agent 编排框架保姆级教程
运维·docker·容器
Dongwoo Jeong12 小时前
微服务架构(MSA)是如何诞生的?
微服务·云原生·架构
半旧夜夏12 小时前
【保姆级】微服务组件环境搭建(Docker Compose版)
java·linux·spring cloud·微服务·云原生·容器
阿里云云原生13 小时前
实战解析:如何用自然语言驱动混沌工程?Blade AI Agent 实现故障演练全链路自动化
云原生
张忠琳14 小时前
【kubernetes v1.21】(kubelet 1)Kubelet 核心架构与启动流程
云原生·架构·kubernetes·kubelet
宇明一不急15 小时前
k8s HPA storageclass configmap
云原生·容器·kubernetes
ZzzZZzzzZZZzzzz…17 小时前
Docker + K8s集群搭建实战:1 Master+2 Node,含Harbor私有仓库与软路由
docker·云原生·容器·kubernetes·容器编排·集群部署·cri-dockerd
xier_ran18 小时前
【infra之路】模块三:Kubernetes (下) — 阶段一毕业项目:在集群里跑 PyTorch 训练
pytorch·容器·kubernetes
Waay18 小时前
K8s新手实操|emptyDir卷超详细实战(附完整命令+核心理解)
云原生·容器·kubernetes
liux352818 小时前
K8s 核心接口:CNI、CSI、CRI、LB 一篇讲透
云原生·容器·kubernetes