-
Notifications
You must be signed in to change notification settings - Fork 386
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
🐛 server: revert non-standalone VW URL #2667
Conversation
/lgtm |
/retest |
/approve |
/hold e2e-sharded failure does look related e.g
#2407 passed so I need to figure out what changed and reproduce locally, currently I'm not clear why this previously worked given that AFAICS the controllers always use the loopback client... |
Partially reverts logic introduced in kcp-dev#2407 so we don't unconditionally use the external URL - when non-standalone VW mode is used we still need the old behavior, or the loopback client can't access the VW server. This breaks shard bootstrapping (evidently not in our e2e scenarios, but in a real deployment where probes mean the proxy isn't ready until the shard bootstrap is complete)
Ok the failure in the previous revision was my mistake, I used This should now be ready to land as a first step (enables the integrated-VW case to work again when the shard is deployed behind a However @ncdc FYI I think we'll have to do further work to enable the standalone-vw case on real clusters - currently the shard bootstrap dependency on |
@hardys let's chat tomorrow? |
Sure, but we could also consider landing this as an interim measure (to unblock the unstable test environment) |
/hold cancel This could land now to unblock things, but I'll follow-up with @ncdc to discuss the plan for standalone vw - we could also look at reworking sharded-test-server so e2e better replicates the serialized bootstrapping behavior implied by using services and probes in a "real" deployment. |
Turns out the proxy startup is already serialized (we wait until the shard is ready before starting the proxy), so the main difference is |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ncdc, sttts The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Flake #2589 |
Summary
Partially reverts logic introduced in #2407 so we don't unconditionally use the external URL - when non-standalone VW mode is used we still need the old behavior, or the loopback client can't access the non-standalone VW server.
This breaks shard bootstrapping (evidently not in our e2e scenarios, but in a real deployment where probes mean the proxy isn't ready until the shard bootstrap is complete)
I suspect further work will be required to make standalone VW mode work when deployed on a real cluster, since the ExternalAddress will go via the proxy, which depends on proxy bootstrapping (when the shard is deployed via a Service)