From 9eb937a5ceb95c6c5241ed10e57b566a58f002b7 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Sun, 7 Feb 2021 00:47:09 +0100 Subject: add simple kubernetes cluster upgrade doc --- roles/kubernetes/kubeadm/upgrade | 57 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 roles/kubernetes/kubeadm/upgrade (limited to 'roles/kubernetes/kubeadm/upgrade') diff --git a/roles/kubernetes/kubeadm/upgrade b/roles/kubernetes/kubeadm/upgrade new file mode 100644 index 00000000..dc0a360a --- /dev/null +++ b/roles/kubernetes/kubeadm/upgrade @@ -0,0 +1,57 @@ +Cluster Upgrades: +================= + +primary master: +--------------- + +VERSION=1.20.2 + +apt-get update +apt-get install -y --allow-change-held-packages "kubeadm=$VERSION-00" && apt-mark hold kubeadm +kubeadm version +kubeadm upgrade plan + +kubectl drain $(hostname) --ignore-daemonsets --delete-local-data +kubeadm upgrade apply "v$VERSION" + +sed "s/^kubernetesVersion: .*$/kubernetesVersion: $VERSION/" -i /etc/kubernetes/kubeadm.config +apt-get update && apt-get install -y --allow-change-held-packages "kubelet=$VERSION-00" "kubectl=$VERSION-00" && apt-mark hold kubelet kubectl + +// security updates + reboot ? + +kubectl uncordon $(hostname) + + +secondary master: +----------------- + +VERSION=1.20.2 + +apt-get update +apt-get install -y --allow-change-held-packages "kubeadm=$VERSION-00" && apt-mark hold kubeadm + +kubectl drain $(hostname) --ignore-daemonsets --delete-local-data +kubeadm upgrade node +apt-mark unhold kubelet kubectl && apt-get update && apt-get install -y kubelet="$VERSION-00" "kubectl=$VERSION-00" && apt-mark hold kubelet kubectl + +// security updates + reboot ? + +kubectl uncordon $(hostname) + + +worker nodes: +------------- + +VERSION=1.20.2 + +apt-get update +apt-get install -y --allow-change-held-packages "kubeadm=$VERSION-00" && apt-mark hold kubeadm + +@primary master: kubectl drain --ignore-daemonsets --delete-local-data + +kubeadm upgrade node +apt-mark unhold kubelet kubectl && apt-get update && apt-get install -y kubelet="$VERSION-00" "kubectl=$VERSION-00" && apt-mark hold kubelet kubectl + +// security updates + reboot ? + +@primary master: kubectl uncordon -- cgit v1.2.3