Running a Kubernetes cluster in production will definitely require upgrading the Kubernetes components to newer versions at some point. How you perform the upgrade itself depends on the tools that you use to bootstrap and manage the cluster. But in general, the high-level procedure looks as follows:
- Upgrade the components running on the primary master node.
- Upgrade the components running on the additional master nodes.
- Upgrade the worker nodes.
There is an important rule that you have to follow to ensure safe upgrades: you can only upgrade the cluster by one minor version at once. It means that, for example, a cluster that has version 1.16 can be only upgraded to 1.17—you cannot make a jump straight to 1.18. The reason for this is the version skew policy for Kubernetes master components, which allows running one minor version difference at most only...