Job 失败了怎么办

72次阅读
没有评论

共计 721 个字符,预计需要花费 2 分钟才能阅读完成。

这期内容当中丸趣 TV 小编将会给大家带来有关 Job 失败了怎么办,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

如果 Job 失败了会怎么样呢?

修改 myjob.yml,故意引入一个错误:

先删除之前的 Job:

如果将  restartPolicy  设置为  OnFailure  会怎么样?下面我们实践一下,修改 myjob.yml 后重新启动。

运行新的 Job 并查看状态:

当前  SUCCESSFUL  的 Pod 数量为  0,查看 Pod 的状态

可以看到有多个 Pod,状态均不正常。kubectl describe pod  查看某个 Pod 的启动日志:

日志显示没有可执行程序,符合我们的预期。

下面解释一个现象:为什么  kubectl get pod  会看到这么多个失败的 Pod?

原因是:当第一个 Pod 启动时,容器失败退出,根据  restartPolicy: Never,此失败容器不会被重启,但 Job DESIRED  的 Pod 是  1,目前  SUCCESSFUL  为  0,不满足,所以 Job controller 会启动新的 Pod,直到  SUCCESSFUL  为  1。对于我们这个例子,SUCCESSFUL  永远也到不了  1,所以 Job controller 会一直创建新的 Pod。为了终止这个行为,只能删除 Job。

Job 的  SUCCESSFUL Pod 数量还是为  0,看看 Pod 的情况

这里只有一个 Pod,不过  RESTARTS  为  3,而且不断增加,说明  OnFailure  生效,容器失败后会自动重启。

上述就是丸趣 TV 小编为大家分享的 Job 失败了怎么办了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计721字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)