Kubernetes服务未在pod之间均匀分配流量

yr9zkbsy  于 2023-03-01  发布在  Kubernetes
关注(0)|答案(2)|浏览(226)

我正在使用Kubernetesv1.20.10裸机安装。它有一个主节点和三个工作节点。应用程序只服务于HTTP请求。
我正在基于(HPA)水平Pod Autoscaler扩展部署,我注意到Pod之间的负载不均匀。只有第一个Pod获得了95%的负载,而另一个Pod获得的负载非常低。
我尝试了这里提到的答案,但没有工作:Kubernetes service does not distribute requests between pods

brc7rcf0

brc7rcf01#

根据所提供的信息,我假设你使用的是持久tcp连接http-keepalive,kubernetes服务为每个(新的)tcp连接分配负载,如果你有持久连接,只有额外的连接会被分配,这就是你观察到的效果。
尝试:禁用http keepalive或将最大keepalive时间设置为15秒,最大请求数设置为50。

ar7v8xwq

ar7v8xwq2#

如果连接是长期的,则客户端将在连接的整个生命周期内使用同一pod。只有新连接才会以循环方式分发。如果连接是长期的,则可以在客户端处理负载平衡,或将负载平衡的责任委派给反向代理(如traefik入口),以便以循环方式分发请求。

相关问题