Skip to content

Conversation

@muwaqar
Copy link

@muwaqar muwaqar commented Dec 9, 2025

What type of PR is this?

What this PR does / why we need it:

this is an initial scaffolding of api changes to support #5307
it introduces a new MergeBackends flag, when the flag is enabled:

  • xRoutes without BackendTrafficPolicy attached to them will be de-duplicated
  • xRoutes with BackendTrafficPolicy where ClusterSettings fields are not populated will be de-duplicated
  • xRoutes with BackendTrafficPolicy where ClusterSettings fields are populated will continue to behave as currently (per-HTTPRouteRule CDS entry)

also introduced is BackendPolicy which can be attached to a backend directly and customizes that backend behavior.

some open questions I have are:

  • ClusterSettings currently contains Retry but this is a RDS-level setting, not CDS. thought of moving Retry out into the parent struct, but it is a backwards incompatible change to BackendCluster struct (used by ExtAuthz, ExtProc, JWT, OIDC etc.)
  • Unsure if MergeBackends belongs in EnvoyProxy or EnvoyGateway config.

Which issue(s) this PR fixes:

Fixes #5307 (api scaffolding only)

Release Notes: Yes/No

@muwaqar muwaqar requested a review from a team as a code owner December 9, 2025 14:38

// BackendPolicy allows the user to configure the behavior of the connection
// between the Envoy Proxy and the backend service.
type BackendPolicy struct {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this sounds like a good solution for #7520

@arkodg
Copy link
Contributor

arkodg commented Dec 11, 2025

hey @muwaqar can we start off with a design doc for this, it doesnt need to be very formal, that can live in https://gateway.envoyproxy.io/contributions/design/

another idea id like to throw here if a user opts into a field setting like MergeBackends , EG could automatically dedup (backend, xBTP) tuples

@guydc
Copy link
Contributor

guydc commented Dec 11, 2025

+1 to the merge backends option

@muwaqar
Copy link
Author

muwaqar commented Dec 12, 2025

can we start off with a design doc for this

I agree that this is a fundamental change to current behavior to EG and quite an involved implementation change, so better to chart this out in a design doc so that the end state is clear. I shall start one, hoping to target the design closure by 1.7, the implementation would likely go into future milestones.

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.

Revisit Kubernetes Services mapping to Envoy v3.Cluster

4 participants