注意,作业的.spec.activeDeadlineSeconds
优先于.spec.backoffLimit
。因此,正在重试一个或多个失败pod的作业一旦达到activeDeadlineSeconds
指定的时间限制将不会部署额外的pod,即使backoffLimit
尚未到达。
说明,如果作业失败,您可能希望kubernetes重新运行该作业。backofflimit用于指定在认为作业失败之前重试的次数。默认情况下,回退限制设置为6。你可以覆盖它
默认情况下,作业将不间断地运行,除非Pod失败或容器退出错误,此时作业将遵循.spec。如上所述的backoffLimit。一旦.spec。backoffLimit已达到,作业将被标记为失败,任何正在运行的pod将被终止。
另一种终止作业的方法是设置一个活动截止日期。通过设置.spec来实现这一点。将作业的activedeadlinesseconds字段设置为秒数。activedeadlinesseconds适用于作业的持续时间,无论创建了多少个pod。一旦作业达到activedeadlinesseconds,它的所有运行pod将被终止,并且作业状态将变为type: Failed with reason: DeadlineExceeded.
请注意,作业的.spec。activedeadlinesseconds优先于它的.spec. backofflimit。因此,一个正在重试一个或多个失败pod的作业,一旦达到activedeadlinesseconds指定的时间限制,即使尚未达到backoffLimit,也不会部署额外的pod。