Kubernetes吊舱阶段与吊舱状态等效的条件是什么?

时间:2019-12-16 09:21:28

标签: kubernetes

我需要知道STATUS kubernetes可能拥有的所有pod

我的问题:-我使用kubectl get pods命令

找到了这些状态
  • 跑步
  • 待处理
  • ImagePullBackOff
  • CrashLoopBackOff
  • 已完成

但是,当我打开yaml定义的pod的Completed定义时,打开yaml文件。这是它的phase

因此,这意味着yaml中存在另一个值,而当我使用kubectl get pods时它给出了另一个值。

这些是pod phases定义中的yaml

  • 待处理
  • 跑步
  • 成功
  • 失败
  • 未知

我想知道当我执行kubectl get pods时,与上述这些命令等效吗?(例如:我为Completed得到Succeeded)?

1 个答案:

答案 0 :(得分:1)

Kubernetes正在将状态设置为Pod(因此状态为“主要”),状态本身可以具有“阶段”。 因此,例如,可以将状态 Completed分配给阶段Succeeded和阶段Failed,而状态 Running可以将被分配到此阶段。

但是通常,它几乎相同的运行正在运行,待处理是待处理。据我所知,阶段Unknown表示节点不可达,无法报告吊舱状态。

如官方文档所述:

  

Pod的状态字段是PodStatus对象,其中包含一个相位字段。

     

Pod的阶段是Pod在其生命周期中所处位置的简单概括。该阶段既不打算是对Container或Pod状态的观察的全面汇总,也不是要成为全面的状态机。

     

Pod相位值的数量和含义受到严格保护。除了此处记录的内容外,对于具有给定相位值的Pod,不应做任何假设。

https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/