如何解决kubernetes如何处理livenessProbe失败?
我想了解如果在kubernetes中进行活动探测失败,幕后会发生什么?
这里是上下文:
我们正在使用 Helm Chart 在Kubernetes集群中部署应用程序。
我们有状态服务和无头服务。为了初始化mTLS,我们创建了'job'类型,在'command'中传递了shell和python脚本作为参数。
我们在'docker image'中编写了'docker-entrypoint.sh'以便进行一些初始化工作。
在statefulSet内,我们将shell脚本作为命令传递给'livenessProbe',该脚本每30秒运行一次。
我想知道我的livenessProbe是否由于任何原因而失败: 1.舵表是否监视此探测器并重启容器,还是K8的责任? 2.如果重新启动容器,我的“ docker-entryPoint.sh”会执行吗? 3.容器重新启动时,“作业”会执行吗?
Kubernetes如何处理livenessProbe故障以及需要采取什么步骤?
解决方法
- 这不是掌舵人的责任。在准备就绪探测失败的情况下,重新启动Pod是kubernetes的责任。
- 是的
docker-entryPoint.sh
是在容器启动时执行的。 - 作业需要再次应用于集群才能执行。另外,您可以使用initcontainer,它保证可以在主容器启动之前运行。
- Kubelet杀死容器并在活动性探测失败时重新启动它。
要回答您的问题,活动性探测和就绪性探测基本上是操作,它们会调用您的应用程序pod来检查其是否健康。 这与头盔图表无关。 一旦活动性或就绪性探针失败,容器就会重新启动。 我会说这些活动探针故障会影响您的应用程序正常运行时间,因此请使用滚动部署并自动扩展您的pod数量以启用可用性。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。