【问题标题】:How to configure the restart times of Kubernetes Jobs?如何配置 Kubernetes Jobs 的重启时间?
【发布时间】:2017-08-11 04:47:02
【问题描述】:

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

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

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

【问题讨论】:

    标签: kubernetes jobs kubernetes-jobs


    【解决方案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
    

    【讨论】:

      【解决方案2】:

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

      completions: 3 - 运行次数

      【讨论】:

        猜你喜欢
        • 2017-04-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-29
        • 1970-01-01
        • 2016-07-12
        • 2020-05-26
        • 2020-08-06
        相关资源
        最近更新 更多