September 5, 2023 By Kodie Glosser
Marissa Treible
3 min read

Planning and managing your cloud ecosystem and environments is critical for reducing production downtime and maintaining a functioning workload. In the “Managing your cloud ecosystems” blog series, we cover different strategies for ensuring that your setup functions smoothly with minimal downtime.

In the second blog of the series, we’re discussing best practices for upgrading your clusters to newer versions. If you haven’t already, make sure you also check out our previous entry on ensuring workload continuity during worker node upgrades.

Major, minor and patch upgrades

The Kubernetes community releases new Kubernetes major/minor versions every three to four months. The IBM Cloud Kubernetes Service release cycle closely mimics this schedule, with new releases based on the most recent community version. These major or minor upgrades introduce new features and operation changes and deprecate or stabilize existing features. You are responsible for applying these updates to the cluster master and worker nodes.

Patch updates are released by IBM Cloud on a bi-weekly basis and include community patches, security patches and component updates. Patch updates are automatically applied to cluster masters, but you are responsible for updating your cluster’s worker nodes. Changes included in patch updates are documented in the version change logs.

For more information about each upgrade type, see the IBM Cloud Kubernetes Service version information or the Kubernetes community release history.

Before you upgrade

Before you begin the upgrade process, it is important to fully analyze and understand the changes included in the release to determine if you must adjust your setup. For instance, you may need to change any scripts that rely on features that are deprecated or unsupported in the new version. You can find details on what is included in new version releases in the IBM Cloud Kubernetes service documentation.

Applying upgrades

When you apply version upgrades, it’s important to take a step-by-step approach that prevents downtime for your services. Begin in your development environment, followed by your QA clusters. Then, if there are no issues, upgrade your production environment.

1. Upgrade the cluster master in your development environment by running the following command. For more detailed steps, see Steps to update the cluster master in the IBM Cloud Kubernetes Service docs. (Note: This step is for major or minor upgrades. For patch updates, skip to step 2).

ibmcloud ks cluster master update --cluster <cluster_name> --version <new_version>

This process might take some time, but you can track its progress with the ibmcloud ks cluster get --cluster <cluster_name> command. In the output, look for the Master → Version field. When the new version is listed, the master upgrade is complete.

2. Next, upgrade the worker nodes in your development environment. Be aware that worker nodes temporarily become unavailable when upgrading. Review our previous blog post on worker node upgrades to determine the best way to complete this step, based on your setup, to ensure that your workload continues to run while the worker nodes upgrade.

3. When the cluster master and worker nodes in your development cluster are all upgraded, take time to test your services. Any issues you encounter should be addressed at this point before you upgrade your production-level clusters.

4. After completing the first round of testing, repeat steps 1 through 3 for your QA cluster or any other pre-production clusters.

5. When all of your pre-production clusters have been upgraded and tested, and there are no issues that need to be addressed, repeat steps 1 through 3 for your production clusters.

Wrap up

Keeping your clusters up to date with the latest Kubernetes version is essential for a healthy workload. By beginning the upgrade process in your pre-production environment and testing your services at each step, you can prevent issues and downtime when you upgrade your production-level clusters.

Be sure to look out for the next blog in our series, which will cover migrating workers to a new OS version.

Learn more about IBM Cloud Kubernetes Service clusters
Was this article helpful?
YesNo

More from Cloud

IBM Cloud Virtual Servers and Intel launch new custom cloud sandbox

4 min read - A new sandbox that use IBM Cloud Virtual Servers for VPC invites customers into a nonproduction environment to test the performance of 2nd Gen and 4th Gen Intel® Xeon® processors across various applications. Addressing performance concerns in a test environment Performance testing is crucial to understanding the efficiency of complex applications inside your cloud hosting environment. Yes, even in managed enterprise environments like IBM Cloud®. Although we can deliver the latest hardware and software across global data centers designed for…

10 industries that use distributed computing

6 min read - Distributed computing is a process that uses numerous computing resources in different operating locations to mimic the processes of a single computer. Distributed computing assembles different computers, servers and computer networks to accomplish computing tasks of widely varying sizes and purposes. Distributed computing even works in the cloud. And while it’s true that distributed cloud computing and cloud computing are essentially the same in theory, in practice, they differ in their global reach, with distributed cloud computing able to extend…

How a US bank modernized its mainframe applications with IBM Consulting and Microsoft Azure

9 min read - As organizations strive to stay ahead of the curve in today's fast-paced digital landscape, mainframe application modernization has emerged as a critical component of any digital transformation strategy. In this blog, we'll discuss the example of a US bank which embarked on a journey to modernize its mainframe applications. This strategic project has helped it to transform into a more modern, flexible and agile business. In looking at the ways in which it approached the problem, you’ll gain insights into…

IBM Newsletters

Get our newsletters and topic updates that deliver the latest thought leadership and insights on emerging trends.
Subscribe now More newsletters