-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
xds: add config for wrr_locality and round_robin LB policy extensions #19517
Conversation
Signed-off-by: Mark D. Roth <[email protected]>
Signed-off-by: Mark D. Roth <[email protected]>
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
api/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.proto
Show resolved
Hide resolved
api/envoy/extensions/load_balancing_policies/round_robin/v3/round_robin.proto
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, @lizan can you review as non-Googler? Thanks.
…envoyproxy#19517) This PR adds two new LB policy extension configurations, to be used in gRPC via the new load_balancing_policy field: * round_robin: This allows configuring the built-in ROUND_ROBIN LB policy via the new extension-based API. * wrr_locality: This is an extension config for a new policy that does ROUND_ROBIN-style locality picking and then delegates to a child LB policy extension to pick the endpoint within the locality. This will allow users to plugin their own custom endpoint-picking logic without having to reimplement the locality-picking logic. This is a small step toward moving away from the legacy lb_policy enum. Completing that migration will require work in Envoy to create extension configs for all built-in LB policies and register those extensions. Risk Level: Low Testing: N/A Docs Changes: Included in PR Release Notes: N/A Platform Specific Features: N/A Signed-off-by: Mark D. Roth <[email protected]> Signed-off-by: Josh Perry <[email protected]>
Signed-off-by: Mark D. Roth [email protected]
Commit Message: xds: add config for wrr_locality and round_robin LB policy extensions
Additional Description: This PR adds two new LB policy extension configurations, to be used in gRPC via the new
load_balancing_policy
field:round_robin
: This allows configuring the built-in ROUND_ROBIN LB policy via the new extension-based API.wrr_locality
: This is an extension config for a new policy that does ROUND_ROBIN-style locality picking and then delegates to a child LB policy extension to pick the endpoint within the locality. This will allow users to plugin their own custom endpoint-picking logic without having to reimplement the locality-picking logic.This is a small step toward moving away from the legacy
lb_policy
enum. Completing that migration will require work in Envoy to create extension configs for all built-in LB policies and register those extensions.Risk Level: Low
Testing: N/A
Docs Changes: Included in PR
Release Notes: N/A
Platform Specific Features: N/A
CC @htuch @temawi @ejona86 @dfawley @pianiststickman