k8s-窗格重启时间

时间:2019-03-19 19:32:13

标签: kubernetes

我正在运行此程序以查看作业重新启动在k8s中如何工作。

kubectl run alpine --image=alpine --restart=OnFailure -- exit 1

高山图像已经存在。第一次故障几乎在一秒钟内发生。 k8s需要5分钟才能完成5次重启!为什么不立即尝试?有什么办法可以减少两次重启之间的时间?

enter image description here

1 个答案:

答案 0 :(得分:1)

看看Pod Lifecycle文档:

  

由kubelet重新启动的已退出容器将以指数退避延迟(10s,20s,40s…)重新启动,上限为五分钟,并在成功执行十分钟后重置。

我认为无法配置退避延迟时间。
编辑:有一个open issue请求此功能。

此外,请注意,使用kubectl run 并不是在模拟“作业重新启动” 。作业由Job Controllers管理,该作业在处理容器/容器错误时的行为略有不同,因为它考虑了restartPolicyparallelismcompletionsbackoffLimit配置:

  

在某些情况下,您想要在完成一定数量的工作后失败   由于配置等逻辑错误而重试。为此,请设置   .spec.backoffLimit在考虑之前指定重试次数   作业失败。退避限制默认设置为6。失败   与作业关联的Pod由作业控制器重新创建   最多六分钟的指数退避延迟(10s,20s,40s…)。