我有一项服务将同时处理 10 秒(可能高达 100 秒)的数千个 Web 套接字。
我正在尝试找出负载平衡的最佳方法。
举例来说,我有2个pod,每个pod达到10K连接,然后我的HPA扩展了一个新的POD,现在我的连接是:
Pod1:10K 吊舱2:10K Pod3:0
负载均衡器仍将继续向 pod 1 和 2 发送新连接。我希望它们开始将它们发送到 pod3,直到它赶上。
这有可能吗?对于这样的事情,最好的策略是什么?
Istio 默认情况下将使用带有 catch 的最不活跃请求。它选择 2 个主机并选择活动请求最少的主机。检查这里和这里。
或者您可以尝试自定义 Envoy 过滤器并编写自己的负载均衡器,它可以查看所有主机并找到活动请求最少的主机。