10 张图带你搞懂 Kubernetes Pod 的创建流程

2021-02-02 00:00:00 专区 订阅 付费 是一个 操作系统




将 Pod 部署运行在 Kubernetes 内,前几个步骤你可能很熟悉

  1. kubectl 将 YAML 发送到 API
  1. Pod 存储在 etcd 中
  1. 调度程序分配一个节点(此时Pod配置清单文件存储在 etcd 中,节点内并没有该 pod 
  1. kubelet 开始创建 Pod
  1. kubelet 将创建容器的委托委派给 CRI
  1. kubelet 代表将容器连接到 CNI 的网络
  1. CNI 分配一个 IP 地址
  1. 检查探针

  2. kubelet 将 IP 地址报告给控制平面

此时 Pod 就已经创建完成了,除非 Pod 是服务的一部分,否则 Kubernetes会在此处停止。如果 Pod 属于服务,Kubernetes 会创建一个端点 endpoint -它连接 Pod 的 IP 地址和端口(targetPort)。将端点 endpoint 添加到端点(对象 object)。

这些端点将会用于以下:

  • kube-proxy设置iptables规则

  • CoreDNS更新DNS条目

  • Ingress入口控制器设置下游服务downstreams

  • Service meshes

  • More operators其他运营商

就这样,完成一个 Pod 的创建和发布,对于删除 Pod 来说过程一样,不过是相反。

本文转载自:「云原生生态圈」,原文:https://tinyurl.com/y3cmm8ba,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。



你可能还喜欢

点击下方图片即可阅读

推荐 4 款超好用本地 Kubernetes 部署工具



原文链接:https://mp.weixin.qq.com/s/PlqhyZ1_THrlG7Y76GjR4g




相关文章