Locality-aware Load Balancing
In a multi-zone deployment , locality-aware load balancing instructs data plane proxies to try to keep requests within one zone. The amount of traffic that remains in one zone depends on the health of the service endpoints in that zone.
By way of example, consider a request from a service in Kuma zone
east to another
backend. If all of the endpoints for
backend in zone
east are healthy,
the request will be sent to one of those endpoints rather than to another zone.
backend endpoints in zone
east become unhealthy, some traffic begins to flow
backend instances in other zones.
Locality-aware load balancing is currently implemented using Envoy priorites, see
the Envoy documentation
for more details.
Enabling locality-aware load balancing
Locality-aware load balancing is configured at the
It can be enabled as follows:
apiVersion: kuma.io/v1alpha1 kind: Mesh metadata: name: default spec: routing: localityAwareLoadBalancing: true
The configuration can be applied with
kubectl apply -f [..].