我正在为k8s吊舱使用侧卡模式,其中有两个容器:主容器和侧车容器。我想让Pod状态仅取决于主容器(例如,如果主容器失败/完成,则Pod应该处于相同状态),并丢弃边卡容器。
是否有一种优雅的方法?
答案 0 :(得分:0)
不幸的是,restartPolicy标志适用于Pod中的所有容器,因此这种简单的解决方案并没有真正起作用。您确定您的逻辑不应该在initContainer中而不是在挎斗中吗?如果确实需要搭便车,请在逻辑结束时让它永远休眠。
答案 1 :(得分:0)
Pod正在运行,并且有两个容器。容器1退出失败。
记录失败事件。
如果restartPolicy为:
- 始终:重新启动容器;广告连播阶段保持运行。
- OnFailure :重新启动容器;广告连播阶段保持运行。
- 从不:请勿重新启动容器;广告连播阶段保持运行。
如果容器1未运行,并且容器2退出:
记录失败事件。
如果restartPolicy为:
- 始终:重新启动容器;广告连播阶段保持运行。
- OnFailure :重新启动容器;广告连播阶段保持运行。
- 从不:Pod阶段变为失败。
作为带有重新启动策略的解决方法(此问题的部分解决方案):永不-您可以将livenees探测的结果从主容器应用到sidecar容器(使用exec,http或tcp探测器)。
使用微服务时,这不是一个好的解决方案。
示例:
Analyze -> Fields, Items, & Sets -> Calculated Field...
请告诉我是否有帮助。