当 Kubernetes Pod 进入CrashLoopBackOff
状态,您将解决根本问题。如何强制重新安排时间?
要应用新配置,应创建新 Pod(旧 Pod 将被删除)。
-
如果您的 pod 是由以下人员自动创建的Deployment
or DaemonSet
资源,每次更新资源 yaml 后,此操作都会自动运行。
如果您的资源有,则不会发生这种情况spec.updateStrategy.type=OnDelete
.
-
如果问题与 docker 镜像内的错误有关,您已经解决了,您应该手动更新 pod,您可以使用滚动更新 https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/为此目的,如果新图像具有相同的标签,您可以删除损坏的 Pod。 (见下文)
-
如果节点发生故障,Pod 将在一段时间后在新节点上重新创建,旧 Pod 将在损坏的节点完全恢复后被删除。值得注意的是,如果您的 pod 是由以下人员创建的,则不会发生这种情况DaemonSet
or StatefulSet
.
您可以通过任何方式手动删除崩溃的 Pod:
kubectl delete pod <pod_name>
或者所有 pod 都带有CrashLoopBackOff
state:
kubectl delete pod `kubectl get pods | awk '$3 == "CrashLoopBackOff" {print $1}'`
如果您有完全死亡的节点,您可以添加--grace-period=0 --force
用于从 kubernetes 中仅删除有关此 pod 的信息的选项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)