-
Notifications
You must be signed in to change notification settings - Fork 524
Closed
Description
I'd also like to expose the configuration for zone aware lb and weighted localities under BTP load balancer settings and have a WIP PR I plan to bring up at the contributors call.
Something like this is what I'd like to have available:
apiVersion: gateway.envoyproxy.io/v1alpha1 kind: BackendTrafficPolicy metadata: name: btp spec: loadBalancer: requestDistribution: type: PreferLocalZone|WeightedZone preferLocalZoneConfig: # maps to ZoneAwareLbConfig and overrides Service config (e.g. TrafficDistribution) forceLocalZone: true forceLocalZoneMinZoneSize: 1 minClusterSize: 1 weightedZoneConfig: # maps to LocalityWeightedLbConfig and weights will be considered during buildXdsClusterLoadAssignment() weights: zone1: 25 zone2: 50 zone3: 25
I have two main use cases in my environment:
- Support for the default zone aware routing config - We run Kubernetes in physical datacenters which can span hundreds of racks/zones. I'd like to set a preference that traffic stays local but I don't want to require running an Envoy pod on every rack in order to serve traffic to backends there. In most cases this will be true but I'd like the Envoy dataplane pods to have awareness of other locality zones and be able to distribute load evenly. In my PR I've added support to track the Envoy ProxyInfra and render an XDS cluster for this to work.
- Ability to directly set weights per locality zone - In situations with uneven incoming traffic between zones or a separate set of loadbalancing infra is present that Envoy isn't aware of it'd be great if as a user I was able to adjust the zone weights accordingly.
Metadata
Metadata
Assignees
Labels
No labels