【发布时间】:2021-07-20 09:09:16
【问题描述】:
我有一个应用程序部署到 Kubernetes,它依赖于外部应用程序。有时这两个之间的连接会进入无效状态,这只能通过重新启动我的应用程序来修复。
为了自动重启,我配置了一个活动探针来验证连接。
这一直很好用,但是,我担心如果那个外部应用程序出现故障(这样连接错误不仅仅是由于 pod 状态无效),我的所有 pod 都会立即重新启动,并且我的应用程序将变得完全不可用。我希望它继续运行,以便不依赖于不良服务的功能可以继续运行。
我想知道吊舱中断预算是否会防止这种情况发生,因为它会由于“自愿”中断而限制吊舱的数量。但是,K8s 文档没有说明活性探测失败是否是自愿中断。是吗?
【问题讨论】:
-
@DawidKruk 不幸的是,外部应用程序是 Azure CosmosDB,它没有适合我所处环境的最佳客户端驱动程序。但是,我在使用 ioredis 连接到我自己时遇到了类似的问题-hosted Redis 集群,所以我来看看。谢谢!