-
Notifications
You must be signed in to change notification settings - Fork 30
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
Check rke2-serving secret to determine controlPlane.Status.Initialized #302
Check rke2-serving secret to determine controlPlane.Status.Initialized #302
Conversation
ee213ba
to
785e80a
Compare
Locally built and tested, I can see it working with the
|
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
785e80a
to
8b643b3
Compare
Still looking at the failing test. status:
conditions:
- lastTransitionTime: 2024-04-22T08:41:07Z
message: 1 of 2 completed
reason: BootstrapFailed
severity: Warning
status: 'False'
type: Ready
- lastTransitionTime: 2024-04-22T08:41:07Z
message: Repeating bootstrap
reason: BootstrapFailed
severity: Warning
status: 'False'
type: BootstrapExecSucceeded
- lastTransitionTime: 2024-04-22T08:26:07Z
status: 'True'
type: ContainerProvisioned On the failing container itself I can see a lot of:
So the test runs in a 1 control-plane 3 worker nodes cluster. |
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
kind/bug
What this PR does / why we need it:
This should fix the behavior around setting the
controlPlane.Status.Initialized
flag.As per documentation, this flag is:
The implementation is in line with Kubeadm, but instead of checking if the
kubeadm-config
ConfigMap was uploaded on the cluster, we check if therke2-serving
secret was.This should be equivalent and as well a good enough marker that the control plane was indeed initialized.
Which issue(s) this PR fixes:
This should fix the RKE2 control plane provider deadlocking when disabling the
cloudController
kubernetes component.Disabling this component will forbid RKE2 from applying the
node.Spec.ProviderID
automatically. CAPI Infrastructure providers should manage that instead, but by contract they need theControlPlaneInitialized
condition to be true before attempting. This is the cause of the deadlock.Checklist: