【发布时间】:2020-11-25 11:36:59
【问题描述】:
我目前正在尝试自动扩展部署,当其当前运行的 Pod 的就绪性探测失败时。
在向其发送 POST 请求之前,pod 处于空闲状态,并且在处理请求时,它不会响应任何其他请求。
为了知道何时进行处理,我创建了一个端点,如果 pod 处于空闲状态,则返回 TRUE,否则返回 FALSE。
我配置就绪探测以查询此端点,以便在处理正在进行时将其标记为不可用(并在不再处理时将其标记为可用)。
默认情况下,我有一个有限的 pod 池(例如 5 个)可以响应请求。
但是当我的 5 个 pod 都不可用时,我仍然希望能够发送另一个带有其他参数的 POST 以触发另一个处理。
因此,当所有 pod 的就绪性探测失败时,我想扩展部署以便让其他 pod 可以响应请求。
这里的问题是我没有找到如何用 K8S 做这样的事情,或者这是否可能。有没有人可以帮助我解决这个问题?
另一种方法是创建一个“观察者”pod,它会观察给定部署的所有就绪探测,当我对所有 pod 都失败时,手表将负责扩展部署。
但是这种替代方案意味着如果可以在 K8S 中进行,我希望避免这种开发。
谢谢你:)
【问题讨论】:
标签: kubernetes autoscaling readinessprobe