配置负载均衡策略
应用网关为服务提供多种负载均衡策略,以满足不同场景需求。同时还提供预热功能,该功能在新节点创建时逐步提升流量,防止流量过大对新节点产生冲击。
配置负载均衡策略
- 登录微服务引擎控制台。
- 在左侧导航栏选择“应用网关 ”。
- 单击待操作的实例名称。
- 在左侧导航栏选择“路由管理 > 服务管理”。
- 在待配置负载均衡策略的服务的“负载均衡”列,单击
,在“负载均衡配置”弹出框配置策略。
负载均衡策略类型支持轮询、随机和一致性哈希三种,其配置参数如下。
- 轮询:
表1 轮询策略配置参数 参数
描述
负载均衡策略类型
下拉选项中选择“轮询”,将接受的请求流量按照顺序依次分配给每个后端服务。
预热时间
服务的预热配置。当预热时间为0时,表示不开启预热。建议预热时间为30~180s。
如果设置,新创建的服务节点将在此窗口的持续时间内从其创建时间开始保持预热模式,并且网关会逐渐增加该服务节点的流量,而不是发送成比例的流量。
最小健康实例比例
它用于确保在健康检查过程中,即使部分后端实例出现故障,系统仍然能够保持足够的可用性。假设有10台后端服务,如果将最小健康实例比例设置为80%,那么至少需要8台服务实例处于健康状态,负载均衡器会根据既定的负载均衡算法正常分配请求到健康的实例上;若健康状态的实例小于8台,则会将请求发送到所有实例上。
当健康实例数占所有实例的比例至少达到设置的比例时,则熔断策略配置中配置的熔断策略才会生效;当健康实例数占所有实例的比例低于设置的比例时,熔断策略不生效。
- 随机:
表2 随机策略配置参数 参数
描述
负载均衡策略类型
下拉选项中选择“随机”,将接受的请求流量会随机流向一个健康的主机。
最小健康实例比例
它用于确保在健康检查过程中,即使部分后端实例出现故障,系统仍然能够保持足够的可用性。假设有10台后端服务,如果将最小健康实例比例设置为80%,那么至少需要8台服务实例处于健康状态,负载均衡器会根据既定的负载均衡算法正常分配请求到健康的实例上;若健康状态的实例小于8台,则会将请求发送到所有实例上。
当健康实例数占所有实例的比例至少达到设置的比例时,则熔断策略配置中配置的熔断策略才会生效;当健康实例数占所有实例的比例低于设置的比例时,熔断策略不生效。
- 一致性哈希:
表3 一致性哈希策略配置参数 参数
描述
负载均衡策略类型
下拉选项中选择“一致性哈希”,可用于提供基于请求头、Cookie或其他属性的软会话亲和性。
最小健康实例比例
它用于确保在健康检查过程中,即使部分后端实例出现故障,系统仍然能够保持足够的可用性。假设有10台后端服务,如果将最小健康实例比例设置为80%,那么至少需要8台服务实例处于健康状态,负载均衡器会根据既定的负载均衡算法正常分配请求到健康的实例上;若健康状态的实例小于8台,则会将请求发送到所有实例上。
当健康实例数占所有实例的比例至少达到设置的比例时,则熔断策略配置中配置的熔断策略才会生效;当健康实例数占所有实例的比例低于设置的比例时,熔断策略不生效。
哈希计算依据
支持源IP哈希、Header哈希、Cookie哈希和请求参数哈希。
- 请求头Header:将以HTTP请求中的Header参数计算哈希,哈希相同的请求将会转发至同一个实例进行处理。
说明:
使用此计算依据时,需要设置“请求头”,在输入框中输入Header中对应的参数的Key值。
- 请求参数Param:将以HTTP请求中的Query参数计算哈希,哈希相同的请求将会转发至同一个实例进行处理。
说明:
使用此计算依据时,需要设置“请求参数”,在输入框中输入Query参数。
- 源IP:根据源地址中的内容获取哈希,将流量按照请求源IP地址的哈希值进行调度。
- Cookie:将以HTTP请求中的所有Cookie计算哈希,哈希相同的请求将会转发至同一个实例进行处理。
说明:
使用此计算依据时,需要设置“Cookie名称”、Cookie使用路径和Cookie生命周期。
- 请求头Header:将以HTTP请求中的Header参数计算哈希,哈希相同的请求将会转发至同一个实例进行处理。
- 轮询:
- 单击“确定”,负载均衡策略配置完成。