Kubernetes Upgrade 1.24.7 to 1.31

Hi Good People,

I am looking to upgrade HA Kubernetes Cluster in the Staging environment from 1.24.7 to 1.30.

Currently we have 3 master node and 18 worker nodes.

Cluster information:

Kubernetes Server version: : 1.24.7
Client Version: v1.33.1
CRI-O Version :1.24.6 , 1.24.3 , 1.24.4
ETCD: 3.5.3-0
kube-apiserver: v1.24.7
kube-scheduler: v1.24.7
kube-controller-manager: v1.24.7
OS-IMAGE : Rocky Linux 8.10 (Green Obsidian)

How should I proceed with the cluster upgrade? We have a lot of applications running according to different node selectors, It is a air gapped system, so only few nodes having internet access..

Also, We are using Helm Chart and normal k8’s deployment manifests for some of them.

Upgrading a Kubernetes cluster from v1.24.7 to v1.31 is a multi-step process. Kubernetes does not support skipping minor versions—you must upgrade one minor version at a time (e.g., 1.24 → 1.25 → 1.26 so on and so forth until 1.31)

  1. Backup everything for each upgrade.
  2. Go through release logs of each upgrades.
  3. Check helm compatibility, Upgrade Helm, kubectl to the latest supported version.
  4. Pre-download all required Kubernetes binaries, container images (kube components, CNI, etc.), and Helm charts. Use local yum/dnf repo. use tools like kubeadm, ctr, skopeo, or crane