Skip to main content

Upgrade control plane

Een kubernetes cluster bestaat uit 2 soorten nodes:

  1. 1  of meerdere control plane nodes
  2. meerdere worker nodes

Het upgrade process voor een control plane node verschilt van die van een worker node.

Upgraden van een cluster bestaat uit het updaten van minor versie naar minor versie +1. Er kan geen minor versie worden overgeslagen.

Om een control plane node te updaten volg je de volgende stappen:

1. stoppen van de kube-apiserver

killall -s SIGTERM kube-apiserver

2. Updaten van kubeadm


edit /etc/apt/sources.list.d/kubernetes.list
update version number naar next minor

sudo apt-mark unhold kubeadm
sudo apt update
sudo apt install -y kubeadm
sudo apt-mark hold kubeadm

3. inventariseren welke versie naartoe kan worden geupgrade

sudo kubeadm upgrade plan

4. drain de node (geldt bij iedere node)

kubectl drain node --ignore-daemonsets --delete-emptydir-data

5. apply de upgrade op de eerste node in het cluster

sudo kubeadm upgrade apply v1.31.x

Iedere volgende node (zowel control plane als worker nodes) kan worden geupgrade met:

sudo kubeadm upgrade node

6. Wanneer de upgrade van de eerste control plane klaar is, kan kubectl en kubelet worden geupgrade

sudo apt-mark unhold kubelet kubectl
sudo apt install -y kubelet='1.31.8-*' kubectl='1.31.8-*'
sudo apt-mark hold kubelet kubectl

7. daarna de kubelet service herstarten

sudo systemctl daemon-reload
sudo systemctl restart kubelet

8. Vervolgens de node weer vrijgeven

kubectl uncordon node

Bovenstaande stappen kunnen uiteraard ook in de online documentatie worden gevonden op: kubeadm cluster upgrade
Na de upgrade van de eerste control plane moet mogelijk ook de CNI plugin worden bijgewerkt.