5.7.12. 备用后端和 Weights
一个路由通常与一个服务相关联,使用 to: 令牌,带有 kind:service。对路由的所有请求都由服务中的端点根据 负载平衡策略 处理。
支持路由可以有多达四项服务。每个服务处理的请求部分由服务 weight 进行管理。
第一项服务使用之前使用 to: 令牌输入,而且可以使用 alternateBackend: 令牌输入 3 个额外服务。每个服务都必须是 kind:service,这是默认设置。
每一服务关联有一个 权重。服务处理的请求部分是 weight / sum_of_all_weights。当服务具有多个端点时,服务的权重会分布到端点中,每个端点至少达到 1。如果服务 weight 是 0,则服务端点将获得 0。
weight 必须介于 0-256 之间。默认值为 100。当 weight 为 0 时,服务不参与负载均衡,但继续为现有的持久连接服务。
使用 alternateBackends 也可以使用 roundrobin 负载均衡策略,确保请求根据 weight 按预期分发给服务。roundrobin 可使用路由 注解,或使用环境变量为路由设置路由。
以下是使用备用后端进行 A/B 部署的示例路由配置。
带有 alternateBackends 和 weight 的路由: