Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #5352 +/- ##
==========================================
+ Coverage 65.19% 65.33% +0.13%
==========================================
Files 214 220 +6
Lines 34321 35180 +859
==========================================
+ Hits 22377 22986 +609
- Misses 10591 10777 +186
- Partials 1353 1417 +64 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
0529343 to
61f063a
Compare
|
Still WIP but this example "works". A challenge is the way that Envoy internally tries to keep an overall equal request level between other Proxy instances so I think we'll need to add the EnvoyProxy service as an EDS cluster in bootstrap and then have the endpoints populated afterwards. |
|
@jukie Hi! I am considering using this feature for my edge-proxy envoy setup and I was wondering if you could give me some clarifications on how this feature's intent and perhaps some thoughts on your implementation. |
|
Because for now my thoughts are that zone-aware routing does not quite align with the edge proxy setup :) |
|
@AlexKrudu , @jukie is working in upstream to change the behavior for ingress envoyproxy/envoy#38756, which can be leveraged here |
|
Thanks @arkodg! But with that force_locality_direct_routing feature enabled, wouldn't the zone-aware rouing feature equivalent to just setting priority P(0) for the endpoints in the same zone as the envoy? And P(1) for the rest for instance |
|
@AlexKrudu we're trying to achieve zone precedence/priority w/o explicitly using the priority feature, and adding another level of precedence within priority (0) you could achieve the same with priority, but you'd have to build a different CDS + EDS for every envoy in every zone which is non trivial + requires more resources like memory |
c819e9e to
10280ec
Compare
|
/retest |
|
Is there any preference for handling EnvoyProxy RBAC? Will need permissions to get nodes in the cluster for zone discovery
|
|
hey @jukie vote for B we'll need to also create a Role and RoleBinding here going forward if zone aware routing is enabled in EnvoyProxy
|
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
bfe574f to
263a7ba
Compare
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
|
Hey @arkodg, this is ready for review now! |
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
|
/retest |
|
/retest |
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
77be171 to
f182175
Compare
|
Because I've added multiple nodes to the E2E tests the UDS pods need to include affinity for the proxy pods |
|
/retest |
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
|
/retest |
|
/retest |
| } | ||
|
|
||
| rawPatch := client.RawPatch(types.JSONPatchType, []byte(patch)) | ||
| if err := m.Patch(ctx, pod, rawPatch); err != nil { |
There was a problem hiding this comment.
it would be better to add some webhook metrics in the following PR.
Signed-off-by: jukie <10012479+Jukie@users.noreply.github.com>
|
/retest |
What type of PR is this?
What this PR does / why we need it:
This is the second half to #5299 and adds support for Kubernetes Topology Aware Routing and Traffic Distribution via Envoy Zone Aware Routing.
Bindingresource creations and injects underlying node topology information back to the pod.Which issue(s) this PR fixes:
Fixes #1909
Release Notes: Yes