Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

1.kubectl将yaml文件转换为json,提交给apiserver,apiserver通过kubeconfig进行认证,将Pod信息存储到etcd

2.scheduler通过list watch机制监听到创建新Pod的事件,根据Pod属性决定调度到哪个Node上,Pod属性包括请求的CPU/内存大小、nodeSelector、亲和性、污点容忍等,同时给Pod打标签指明调度到具体哪个节点,可以通过kubectl get pod -owide查看

3.apiserver拿到调度结果并写入到etcd中

4.kubelet从apiserver获取分配到其所在节点的Pod

5.kubelet调用CNI接口创建Pod网络,调用CSI进行存储卷挂载,调用CRI接口启动容器

6.Docker把容器的状态汇报给kubelet

7.kubelet将Pod状态更新到apiserver,apiserver将状态信息写到etcd中

8.kubectl get pod