【问题标题】:K8s pods stuck in terminating state after worker node is shut down工作节点关闭后,K8s pod 卡在终止状态
【发布时间】:2021-07-28 02:13:32
【问题描述】:

每当我关闭一个工作节点时,在该节点上运行的 pod 都会卡在“终止 1/1”状态。在探测检查的默认 5 分钟后,Pod 被重新部署到健康的工作节点上,但来自上一个关闭节点的 Pod 仍显示为 1/1 并终止。它无限期地保持这种状态。有没有办法让这个过程更干净,这样每当 pod 重新部署到新的工作节点时,旧的 pod 都会被移除而不是处于终止状态?

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    这是预期的行为:Pod 需要保持在终止状态直到节点返回,以便主节点记得告诉节点停止这些 Pod 并收集所有剩余的日志、事件等。这是因为一个节点可能会进入未就绪状态,这不仅是因为关闭,还可能是因为临时网络碎片,在这种情况下,在链接恢复后,这些 pod 仍然存在。

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,不得不在 K8S 上进行更改以修复它。 更改垃圾收集处于这种状态的 pod。无论如何,即使节点在 pod 的终止GracePeriodSeconds 结束之前返回,一旦标记为“终止”,它将被删除。当然,最好优雅地终止,这样可以安全地释放资源。

      请谨慎使用。就我而言,我正在处理嵌入式系统,其中节点应始终在一起,因此终止处于这种卡住状态的 Pod 是有意义的。尤其是当其中一些 pod 附加到 ReadWriteOnce 卷时,这将阻止任何其他 pod 移交。

      拉取请求在这里:https://github.com/kubernetes/kubernetes/pull/103916

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-11
        • 2019-09-19
        • 2019-01-04
        • 1970-01-01
        • 2021-04-25
        • 2021-09-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多