首页 > 解决方案 > Pod 无需重启即可进入初始化状态

问题描述

进入一个奇怪的场景,在 2-3 天后,应用程序的 Pod 移动到init state;其中,而其容器都没有重新启动。

kubectl describepod 给出了关于其阶段的以下状态。

Conditions:
  Type              Status
  Initialized       False 
  Ready             True 
  ContainersReady   True 
  PodScheduled      True 

正如我们所看到的,它的所有容器都在运行并且可用,但不知何故,它的 init 容器再次开始执行并陷入了一些错误。我检查了单个容器的重新启动计数,它是 0。这不是一种情况,这可以每 2-3 天重现一次。我还查看了 RAM 和 CPU 峰值,但什么也没有。

在什么情况下会出现这个问题?什么可以触发 init 容器的执行而无需重新启动或容器没有故障。

标签: kuberneteskubernetes-pod

解决方案


在我们的例子中,这是一个正在做的家务脚本

docker system prune -a

它正在删除所有未标记的容器。它还包括我们的 init 容器,可能是因为它已完成/停止。我会推荐使用 kubernetes GC 而不是在集群中执行这些低级命令。


推荐阅读