1

现在我们使用 Kubernetes 来运行用户的任务。我们需要 Kubernetes Jobs 的特性来在发生故障时重新启动任务。

但是我们的用户可能会提交有问题的应用程序,这些应用程序总是以非 zore 代码退出。Kubernetes 会一遍又一遍地重启这个任务。

是否可以为此配置重启时间?

4

2 回答 2

1

您可以使用标准的 pod 重启策略:https ://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

不幸的是,只允许使用“Never”或“OnFailure”的策略,因此如果您需要重新启动 X 次然后失败,这是不可能的。

例子:

apiVersion: batch/v1
kind: Job
metadata:
  name: pi
spec:
  template:
    metadata:
      name: pi
    spec:
      containers:
      - name: pi
        image: perl
        command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
      restartPolicy: Never
于 2017-03-20T12:07:44.460 回答
1

backoffLimit: 4 - 抛出错误前的重试次数

completions: 3 - 运行次数

于 2019-01-11T10:04:53.007 回答