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

相关推荐
张忠琳9 小时前
【NVIDIA】 NVIDIA Container Toolkit v1.19.1 — OCI 模块超深度分析之三
云原生·容器·架构·kubernetes·nvidia
阿里云云原生10 小时前
让 AI Agent 看见正在发生的业务,阿里云 EventHouse 正式商业化
云原生
Elastic 中国社区官方博客10 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
AOwhisky12 小时前
Python 学习笔记(第十五期)——运维自动化(下·后篇):堡垒机实战——paramiko高阶篇
运维·python·学习·云原生·自动化·运维开发
风曦Kisaki13 小时前
#企业级docker私有仓库构建:harbor仓库与阿里云镜像仓库
阿里云·docker·容器
期待着201313 小时前
docker 安装 ,在centos7.9
运维·docker·容器
微三云 - 廖会灵 (私域系统开发)14 小时前
电商系统从单体到微服务拆分实践:拆什么、怎么拆、拆完后怎么办
微服务·云原生·架构
骑上单车去旅行15 小时前
Docker Compose 命令完全指南:从构建到运维
docker·容器·eureka
前端Baymax17 小时前
K8s PodCrashLoopBackOff假阳性排查
云原生·容器·kubernetes
spider_xcxc17 小时前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s