-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Rework loadbalancer server selection logic #11329
Conversation
416f641
to
f38a6cf
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #11329 +/- ##
==========================================
- Coverage 43.78% 42.99% -0.79%
==========================================
Files 162 181 +19
Lines 14415 18796 +4381
==========================================
+ Hits 6311 8081 +1770
- Misses 6827 9513 +2686
+ Partials 1277 1202 -75
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
a149b59
to
5443d8e
Compare
168f212
to
a50f5d9
Compare
@brandond Thanks! With old implementation, we recently observe a panic when apiserver is offline. I hope this sort out all issues. |
I even doubt that this is the cause of #11346 |
a50f5d9
to
74dde01
Compare
Don't do that. On a fresh startup, that address will be unreachable until after kube-proxy starts to add iptables rules to handle traffic for the Kubernetes service. But kube-proxy won't be able to start because the agent can't contact the apiserver at that address until after kube-proxy is running. So you'll be stuck. Also this is all off topic. Please start a new issue for whatever you have going on here. |
This comment was marked as off-topic.
This comment was marked as off-topic.
None of these fields or functions are used in k3s or rke2 Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
…rivate Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
…watch fails Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
The error message should be printf style, not just concatenated. The current message is garbled if the command or result contains things that look like formatting directives: `Internal error occurred: error sending request: Post "https://10.10.10.102:10250/exec/default/volume-test/volume-test?command=sh&command=-c&command=echo+local-path-test+%!!(MISSING)E(MISSING)+%!!(MISSING)F(MISSING)data%!!(MISSING)F(MISSING)test&error=1&output=1": proxy error from 127.0.0.1:6443 while dialing 10.10.10.102:10250, code 502: 502 Bad Gateway` Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
fbdbcc5
to
129ac6d
Compare
Proposed Changes
This PR does the following:
This should be easier to test and maintain, and provide more consistent behavior:
Server state preference order:
Possible state changes:
Logging
Health check state transitions are also logged at INFO level, for better visibility when not running with debug logging enabled:
New Metrics
Note: This requires starting servers with the --supervisor-metrics flag to enable serving metrics on the supervisor port for both servers and agents.
Types of Changes
tech debt; enhancement
Verification
Testing
Yes
Linked Issues
User-Facing Change
Further Comments