Skip to content
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

Merged
merged 2 commits into from
Jan 17, 2022

Conversation

markdroth
Copy link
Contributor

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

@repokitteh-read-only
Copy link

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to (api/envoy/|docs/root/api-docs/).
envoyproxy/api-shepherds assignee is @lizan
CC @envoyproxy/api-watchers: FYI only for changes made to (api/envoy/|docs/root/api-docs/).

🐱

Caused by: #19517 was opened by markdroth.

see: more, trace.

Copy link
Member

@htuch htuch left a 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.

@htuch htuch merged commit 65a82d7 into envoyproxy:main Jan 17, 2022
joshperry pushed a commit to joshperry/envoy that referenced this pull request Feb 13, 2022
…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]>
@markdroth markdroth deleted the xds_lb_wrr_locality_pick branch May 11, 2022 16:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants