-
Notifications
You must be signed in to change notification settings - Fork 39k
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
kubeadm: apply "master" label/taint migration for 1.24 #107533
kubeadm: apply "master" label/taint migration for 1.24 #107533
Conversation
- Rename the function in postupgrade.go to better reflect what is being done. - During "upgrade apply" find all nodes with the old label and remove it by calling PatchNode. - Update health check for CP nodes to not track "master" labeled nodes. At this point all CP nodes should have "control-plane" and we can use that selector only.
- Update the markcontrolplane phase used by init and join to only label the nodes with the new control plane label. - Cleanup TODOs about the old label. - Remove outdated comment about selfhosting in staticpod/utils.go. Selfhosting has not been supported in kubeadm for a while and the comment also mentions the "master" label. - Update unit tests.
- Apply "control-plane" taint during init/join by adding the taint in SetNodeRegistrationDynamicDefaults(). The old taint "master" is still applied. - Clarify API docs (v1beta2 and v1beta3) for nodeRegistration.Taint to not mention "master" taint and be more generic. Remove example for taints that includes the word "master". - Update unit tests.
- During "upgrade apply" call a new function AddNewControlPlaneTaint() that finds all nodes with the new "control-plane" node-role label and adds the new "control-plane" taint to them. - The function is called in "apply" and is separate from the step to remove the old "master" label for better debugging if errors occur.
/triage accepted |
/approve cancel |
https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/107533/pull-kubernetes-e2e-kind/1481653925294641152
kubernetes/test/e2e/framework/test_context.go Line 301 in e045e5c
pull-kubernetes-e2e-kind can set non-blocking-taints with flag. Or we should change its default value? |
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> (cherry picked from commit 78b1a796be4ed5b587dbfa5d246702923574250f)
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> (cherry picked from commit 78b1a796be4ed5b587dbfa5d246702923574250f)
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane WARNING: openshift 4.11 still uses the old label. Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> (cherry picked from commit 1094ec9)
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> (cherry picked from commit 1094ec9)
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Partial cherry-pick from 1094ec9 for ovnkube-trace only. Authored-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Andreas Karis <ak.karis@gmail.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Partial cherry-pick from 1094ec9 for ovnkube-trace only. Authored-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Andreas Karis <ak.karis@gmail.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Partial cherry-pick from 1094ec9 for ovnkube-trace only. Authored-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> Signed-off-by: Andreas Karis <ak.karis@gmail.com>
As per kubernetes/kubernetes#107533 applied in kubernetes 1.24, replace all occurences of node-role.kubernetes.io/master with node-role.kubernetes.io/control-plane Cherry-pick for ovnkube-trace.go only Signed-off-by: Riccardo Ravaioli <rravaiol@redhat.com> (cherry picked from commit 1094ec9) Signed-off-by: Andreas Karis <ak.karis@gmail.com>
The master label is no longer present on kubeadm control plane nodes(v1.24). For new clusters, the label 'node-role.kubernetes.io/master' will no longer be added to control plane nodes, only the label 'node-role.kubernetes.io/control-plane' will be added. For more information, refer to KEP-2067[https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint]: Rename the kubeadm "master" label and taint. the kubernetes pr: kubernetes/kubernetes#107533 Change-Id: I3056b642db0a1799089998e3c020b4203c9a93ab
* Update openstack-helm-infra from branch 'master' to 6034a00bf7049d2a7f10bd946d04436a3041ed87 - Replace node-role.kubernetes.io/master with control-plane The master label is no longer present on kubeadm control plane nodes(v1.24). For new clusters, the label 'node-role.kubernetes.io/master' will no longer be added to control plane nodes, only the label 'node-role.kubernetes.io/control-plane' will be added. For more information, refer to KEP-2067[https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint]: Rename the kubeadm "master" label and taint. the kubernetes pr: kubernetes/kubernetes#107533 Change-Id: I3056b642db0a1799089998e3c020b4203c9a93ab
* Update openstack-helm from branch 'master' to 73e696b3fbbbbcfb3b6acb1b191885f98ff2b18d - Replace node-role.kubernetes.io/master with control-plane The master label is no longer present on kubeadm control plane nodes(v1.24). For new clusters, the label 'node-role.kubernetes.io/master' will no longer be added to control plane nodes, only the label 'node-role.kubernetes.io/control-plane' will be added. For more information, refer to KEP-2067[https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint]: Rename the kubeadm "master" label and taint. the kubernetes pr: kubernetes/kubernetes#107533 Change-Id: Iad8c833371efb3ec35149c89eb8fafdf1150fa87
The master label is no longer present on kubeadm control plane nodes(v1.24). For new clusters, the label 'node-role.kubernetes.io/master' will no longer be added to control plane nodes, only the label 'node-role.kubernetes.io/control-plane' will be added. For more information, refer to KEP-2067[https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint]: Rename the kubeadm "master" label and taint. the kubernetes pr: kubernetes/kubernetes#107533 Change-Id: Iad8c833371efb3ec35149c89eb8fafdf1150fa87
What type of PR is this?
/kind cleanup feature
What this PR does / why we need it:
adapt the kubeadm managed labels and taints to changes planned in release 1.24, as part of the effort to remove usages of the word "master".
short summary:
details from the KEP:
https://git.k8s.io/enhancements/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint
1.24 = stage 2
Which issue(s) this PR fixes:
xref kubernetes/kubeadm#2200
Special notes for your reviewer:
Does this PR introduce a user-facing change?
Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.: