首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以基于容器退出代码定义restartPolicy?

问是否可以基于容器退出代码定义restartPolicy?
EN

Stack Overflow用户
提问于 2018-02-14 22:30:37
回答 2查看 610关注 0票数 2

是否可以根据码头出口代码为吊舱应用restartPolicy?我的意思是,如果容器使用代码1退出,那么应该重新启动容器(restartPolicy =始终),但是当容器使用代码2退出时,pod就不应该重新启动(restartPolicy =从不)。

我在容器中有一个程序,其中有两个出口代码:

  • 退出1--如果故障是可恢复的(例如,当服务器停机/重新启动时,从服务器断开连接),
  • 退出2-故障不可恢复(传递错误的参数)。 我希望kubernetes在退出代码为1时重新启动荚,而不是当退出代码为2时重新启动,因为没有恢复的机会。

我想我可以欺骗kubernetes,将不可恢复故障的退出代码设置为0(正常终止),将可恢复故障的退出代码设置为1。然后将restartPolicy设置为onFailure,但我不喜欢这个解决方案。

EN

回答 2

Stack Overflow用户

发布于 2022-10-24 10:22:32

这是可能的库伯内特斯1.25:https://kubernetes.io/docs/concepts/workloads/controllers/job/#pod-failure-policy

它只存在于库伯奈特的工作岗位上。

对于您最初的问题,语法应该是:

代码语言:javascript
复制
apiVersion: batch/v1
kind: Job
spec:
  podFailurePolicy:
    rules:
    - action: FailJob
      onExitCodes:
        operator: In
        values: [2]
    - action: Ignore
      onPodConditions:
      - type: DisruptionTarget
票数 1
EN

Stack Overflow用户

发布于 2018-02-14 23:50:11

不是的。目前还不清楚“传递错误的论点”意味着什么,但从生命周期的角度来看,我们想要的似乎是防止在集群中出现这种情况的豆荚。如果可以在不运行容器的情况下检测到“传递的错误参数”条件,则可以为此使用AdmissionController。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48797297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档