kubernetes - Pod 无需重启即可进入初始化状态
问题描述
进入一个奇怪的场景,在 2-3 天后,应用程序的 Pod 移动到init state;
其中,而其容器都没有重新启动。
kubectl describe
pod 给出了关于其阶段的以下状态。
Conditions:
Type Status
Initialized False
Ready True
ContainersReady True
PodScheduled True
正如我们所看到的,它的所有容器都在运行并且可用,但不知何故,它的 init 容器再次开始执行并陷入了一些错误。我检查了单个容器的重新启动计数,它是 0。这不是一种情况,这可以每 2-3 天重现一次。我还查看了 RAM 和 CPU 峰值,但什么也没有。
在什么情况下会出现这个问题?什么可以触发 init 容器的执行而无需重新启动或容器没有故障。
解决方案
在我们的例子中,这是一个正在做的家务脚本
docker system prune -a
它正在删除所有未标记的容器。它还包括我们的 init 容器,可能是因为它已完成/停止。我会推荐使用 kubernetes GC 而不是在集群中执行这些低级命令。
推荐阅读
- docker - Docker exec 命令中的管道返回错误
- pdfbox - 在 convertToImage 方法之后 PDFBox 不清理 tmp 文件
- angularjs - Angularjs选择带有对象数组的ng-options
- amazon-web-services - 当查询字符串包含没有值的键时,AWS API Gateway 失败并显示“无法调用”
- vba - VBA - 宏完成运行后 IE 崩溃
- ios - 如何自动关闭 Safari 视图控制器或 Chrome 自定义选项卡并返回移动应用程序?
- java - 按从用户以字符串格式插入的日期检索子值
- python - 无法使用 Matplotlib Python 缩放数据
- php - PHP中日期的动态颜色
- c++ - 当我设置大数字 n 时,我的代码编译速度非常慢。我不知道如何设置循环