第二篇: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的关系如下:

相关推荐
AKCJDJ36 分钟前
k8s的管理及控制器管理
云原生·容器·kubernetes
SCandL1521 小时前
k8s service
linux·容器·kubernetes
众人皆醒我独醉3 小时前
InferenceGraph:把多个推理服务编排成 DAG
面试·kubernetes·gpu
众人皆醒我独醉3 小时前
LLMService:KServe 面向 LLM 的下一步
面试·kubernetes·gpu
aaaBsBsBsB3 小时前
k8s pod管理
运维·docker·容器
阿里云云原生3 小时前
解决 AI Agent 可观测性难题:eBPF 技术在 Serverless 容器场景下的落地应用
云原生
Doep_key5 小时前
Kubenetes控制器
运维·docker·容器
做一个AK梦6 小时前
论基于云原生数据库的企业信息系统架构设计
数据库·云原生
梦想不只是梦与想6 小时前
Docker Compose文件
docker·容器·docker compose
分布式存储与RustFS6 小时前
在自己的机器上复现 RustFS 性能基准:warp 压测实操
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准