pod生命周期
Pod阶段描述
Pod的状态属性是一个PodStatus对象,拥有一个phase字段。它简单描述了 Pod 在其生命周期的阶段。
阶段 | 描述 |
---|---|
Pending | Pod 已被 Kubernetes 接受,但尚未创建一个或多个容器镜像。这包括被调度之前的时间以及通过网络下载镜像所花费的时间,执行需要一段时间 |
Running | Pod 已经被绑定到了一个节点,所有容器已被创建。至少一个容器正在运行,或者正在启动或重新启动 |
Succeeded | pod中的所有容器都已经成功终止并且不会被重启 |
Failed | 所有容器都已经终止,但至少有一个容器终止失败,即容器返回了非0值的退出状态或已经被系统终止 |
Unknown | 由于一些原因,Pod 的状态无法获取,通常是与 Pod 通信时出错导致的 |
pod创建过程
pod是k8s的基础单元,一个pod资源创建过程如下:
1、用户通过kubectl或其他api客户端提交pod spec给api server
2、api server尝试着将pod对象的相关信息存入etcd中
3、将相关信息存入etcd中,api server即会返回确认信息至客户端,api server开始反映etcd中的状态变化
4、所有的k8s组件均使用watch机制来跟踪检查api server上的相关变动
5、kube-scheduler通过其watch觉察到api serve