我正在使用 Google Load Balancer 中的会话亲和性功能。但是我遇到了以下问题。
当给A-WEB Server施加压力时,访问服务器更改为B-WEB Server。根据LB参数,当CPU利用率超过80%时,更改访问服务器。但我配置了会话亲和性以保持访问。
我想继续访问同一个服务器,我遗漏了什么吗?
建筑学
在LB下搭建2个带有DB的WEB Server,用于搜索一些信息的数据。
配置LB参数
- 平衡模式:利用率
- 最大 CPU 利用率:80%(默认)
- 容量:100%(默认)
- 会话亲和性:生成的 Cookie
- 亲和力苦力 TTL : 1800
- 连接请求标头:300
- 安全策略:无
答案1
失败会话亲和性无论类型如何都可能发生(即客户端 IP 亲和性或Cookie 亲和性) 与以下场景中的实例。
如果目标实例变得不健康,会话亲和性将不起作用,当会话移动到健康实例时,亲和性将丢失。所以,除非所有的烘焙端都是健康的,否则你不应该假设完美的亲和性。
它对 UDP 流量几乎没有什么影响,因为UDP 会话是一个单一的请求和响应。
如果实例组容量耗尽,则必须将流量路由到不同的区域中断亲和性。
配置后端服务自动缩放将实例添加到实例组或从实例组中删除实例。无论哪种情况,后端服务都会重新分配负载,并且目标可能会移动,从而影响会话亲和性。
平衡模式设置为CPU 利用率,这可能会导致跨区域的计算容量发生变化,从而将一些流量发送到区域内的另一个区域。在压力条件下检查服务器 % CPU 利用率是否超过阈值水平。