重启合并政策在Kubernetes找到的最好的来源我ahve是这样的:kubernetes重启策略的始终和失败之间的区别是什么?
http://kubernetes.io/docs/user-guide/pods/multi-container/#restartpolicy
但只列出了选择和不解释它们。 Always
和onFailure
有何区别?在重启之前不能失败吗?
重启合并政策在Kubernetes找到的最好的来源我ahve是这样的:kubernetes重启策略的始终和失败之间的区别是什么?
http://kubernetes.io/docs/user-guide/pods/multi-container/#restartpolicy
但只列出了选择和不解释它们。 Always
和onFailure
有何区别?在重启之前不能失败吗?
总是表示即使以零退出代码退出(即成功),容器也将重新启动。当你不关心容器退出的原因时,这很有用,你只是想确保它始终运行(例如Web服务器)。这是默认设置。
OnFailure表示如果容器以非零退出代码退出(即发生错误),则只能重新启动容器。当您想用pod完成某个任务并确保它成功完成时,这非常有用 - 如果不成功,它将会重新启动,直到它完成。
从不意味着容器将不会重新启动,无论它为何退出。
这些不同的重新启动的政策基本上映射到不同的控制器类型,你可以从kubectl run --help
看到:
--restart =“始终”:该吊舱重新启动策略。法律价值[始终,失败,永不]。如果设置为“始终”,则为该窗格创建部署,如果设置为“OnFailure”,则为该窗格创建作业,如果设置为“从不”,则会创建常规窗格。对于后两种--replicas必须是1默认 '始终'
ReplicationController是仅适用于具有RestartPolicy =一直吊舱。作业仅适用于RestartPolicy等于OnFailure或Never的Pod。