Kubernetes CrashLoopBackOff的默认值是什么?
我有个吊舱:
kubectl run mynginx --image nginx -- echo hello我检查它的状况:
kubectl get pods -w
NAME READY STATUS RESTARTS AGE
mynginx 0/1 Pending 0 0s
mynginx 0/1 Pending 0 0s
mynginx 0/1 ContainerCreating 0 0s
mynginx 0/1 Completed 0 2s
mynginx 0/1 Completed 1 4s
mynginx 0/1 CrashLoopBackOff 1 5s
mynginx 0/1 Completed 2 20s
mynginx 0/1 CrashLoopBackOff 2 33s
mynginx 0/1 Completed 3 47s
mynginx 0/1 CrashLoopBackOff 3 59s
mynginx 0/1 Completed 4 97s
mynginx 0/1 CrashLoopBackOff 4 109s这是“预期的”。Kubernetes启动一个吊舱,它退出“太快”,Kubernetes再次调度它,然后Kubernetes将状态设置为CrashLoopBackOff。
现在,如果我开一个吊舱稍微有点不同:
kubectl run mynginx3 --image nginx -- /bin/bash -c "sleep 10; echo hello"我得到以下信息
kubectl get pods -w
NAME READY STATUS RESTARTS AGE
mynginx3 0/1 Pending 0 0s
mynginx3 0/1 Pending 0 0s
mynginx3 0/1 ContainerCreating 0 0s
mynginx3 1/1 Running 0 2s
mynginx3 0/1 Completed 0 12s
mynginx3 1/1 Running 1 14s
mynginx3 0/1 Completed 1 24s
mynginx3 0/1 CrashLoopBackOff 1 36s
mynginx3 1/1 Running 2 38s
mynginx3 0/1 Completed 2 48s
mynginx3 0/1 CrashLoopBackOff 2 62s
mynginx3 1/1 Running 3 75s
mynginx3 0/1 Completed 3 85s
mynginx3 0/1 CrashLoopBackOff 3 96s
mynginx3 1/1 Running 4 2m14s
mynginx3 0/1 Completed 4 2m24s
mynginx3 0/1 CrashLoopBackOff 4 2m38s这也是预料之中的。
但是,假设我设置了24小时的sleep,那么在最初两个荚退出之后,然后在每个下一个荚出口之后,我还会得到相同的CrashLoopBackOff吗?
发布于 2022-01-14 23:33:31
基于这些医生
restartPolicy适用于Pod中的所有容器。restartPolicy仅指在同一节点上由kubelet重新启动容器。在Pod出口的容器之后,kubelet以指数的延迟(10s,20,40,40,…)重新启动它们。,上限为五分钟。一旦容器执行了10分钟,没有任何问题,kubelet将重置该容器的重新启动退避定时器。
我认为这意味着在退出之前执行超过10分钟的任何操作都不会触发CrashLoopBackOff状态。
https://stackoverflow.com/questions/70716244
复制相似问题