如何解决Kubernetes/Istio - 出现错误时重启服务
我在 Kubernetes 中部署了一个应用程序。我正在使用 Istio 服务网格。当发生特定错误时,需要重新启动我的一项服务。这是使用 Istio 可以实现的吗?
我不想使用 cronjob。此外,让应用程序自行重启似乎是一种反模式。
该应用程序是一个带有 fastify 的 node js 应用程序。
解决方法
Istio 是一个网络连接工具。当 David Maze 在评论中非常正确地提及时,我正在创建此答案:
Istio 与此完全无关。另一种方法是使用 Kubernetes liveness probe,如果集群可以检测到 pod 不可达;但如果您要为代码添加活性挂钩,则the Kubernetes documentation also endorses just crashing 会出现不可恢复的故障。
kubelet 使用活性探针来了解何时重新启动容器。例如,活性探测器可能会捕捉到一个应用程序正在运行但无法取得进展的死锁。在这种状态下重新启动容器有助于提高应用程序的可用性,尽管存在错误。
另见:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。