Pod生命周期

在内容更新且发生变化时,resourceVersion(从etcd最新版本号开始)变成etcd最新版本号+1;不同于pod,pod控制器和cr都有generation,从1开始,会加1。

创建Pod内容器

删除Pod资源

status.phase

status.phase是Pod的当前状态。

Phase的5种取值

Pending
API对象已经被创建并保存在Etcd中。Pod里有些容器因为某种原因而不能被顺利创建。例如,调度不成功。
Running
Pod调度成功,容器都已经创建成功,并且至少有一个正在运行中。

常见场景
1. Pod中业务容器正常运行。
2. 重启策略是OnFailure的Job,业务容器反复重启。
3. Pod中业务容器反复重启。

Succeeded
Pod里的所有容器都正常运行完毕,并且已经退出了,不会被重启。这种情况在运行一次性任务时最为常见。

常见场景
重启策略是OnFailure的Job,业务容器都正常退出。

Failed
Pod里至少有一个容器以不正常的状态(非0的返回码)退出。

常见场景
1. 重启策略是Never的Job,业务容器异常退出。
2. Pod被驱逐。
Unknown
Pod的状态不能被kubelet汇报给kube-apiserver。有可能是Master和Kubelet间的通信出现了问题。

参考资料

《Kubernetes进阶实战》

posted on 2023-07-16 09:45  王景迁  阅读(22)  评论(0)    收藏  举报

导航