Question 22
Domain 1: Cluster Architecture, Installation & ConfigurationWhich sequence correctly upgrades a Kubernetes cluster by one minor version using kubeadm on the control plane and a worker node?
Correct answer: A
Explanation
Kubeadm upgrades follow the documented sequence: on the control plane, upgrade kubeadm first, then run "kubeadm upgrade plan" and "kubeadm upgrade apply," followed by upgrading kubelet/kubectl and restarting kubelet. For a worker node, the node is drained, kubeadm/kubelet/kubectl are upgraded, "kubeadm upgrade node" is run, kubelet is restarted, and the node is uncordoned so workloads can resume.
Why each option is right or wrong
A. On the control plane: upgrade kubeadm, run kubeadm upgrade plan, then kubeadm upgrade apply, upgrade kubelet/kubectl, and restart kubelet; on the worker: drain it, upgrade kubeadm/kubelet/kubectl, run kubeadm upgrade node, restart kubelet, and uncordon it.
Kubernetes’ kubeadm upgrade procedure is version-locked: the control plane must have kubeadm upgraded first, then `kubeadm upgrade plan` is used to verify the target minor version and `kubeadm upgrade apply` performs the control-plane component upgrade; only after that are `kubelet` and `kubectl` upgraded and the kubelet restarted, per the kubeadm upgrade workflow in the official docs. For a worker node, the node is first drained to evict pods safely, then `kubeadm`, `kubelet`, and `kubectl` are upgraded, `kubeadm upgrade node` is run to update node-specific state, the kubelet is restarted, and the node is uncordoned so it can resume scheduling.
B. On the control plane: drain the node, upgrade kubelet/kubectl first, then run kubeadm upgrade node; on the worker: run kubeadm upgrade apply, then restart containerd.
C. On the control plane: run kubeadm upgrade apply before upgrading kubeadm, then upgrade the control plane manifests manually; on the worker: uncordon first, then drain and upgrade only kubectl.
D. On the control plane and workers: upgrade kubectl only, then reboot all nodes; kubeadm upgrade plan is optional and kubeadm upgrade node is not needed.