k8s - Pod重启时间

问题描述 投票:1回答:1

我正在运行它来查看k8s中作业重启的工作原理。

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

阿尔卑斯山的形象已经存在。第一次失败几乎在一秒钟内发生。 k8s需要5分钟才能完成5次重启!为什么不立即尝试?有没有办法减少2次重启之间的时间?

enter image description here

kubernetes
1个回答
1
投票

看看Pod Lifecycle文档:

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

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

另外,请注意使用kubectl run您不会模拟“作业重启”。工作由Job Controllers管理,在处理pod /容器错误时表现略有不同,因为它考虑了restartPolicyparallelismcompletionsbackoffLimit配置的组合:

在某些情况下,由于配置中的逻辑错误,您需要在重试一定次数后使作业失败。为此,请设置.spec.backoffLimit以指定在将作业视为失败之前的重试次数。默认情况下,退避限制设置为6.作业控制器重新创建与作业关联的失败窗格,指数后退延迟(10秒,20秒,40秒......)上限为6分钟。

© www.soinside.com 2019 - 2024. All rights reserved.