Upgrade Guide¶
Upgrading a MetalK8s cluster is handled via utility scripts which are packaged with every new release. This section describes a reliable upgrade procedure for MetalK8s including all the components that are included in the stack.
Warning
Upgrading a single-node cluster from 2.6.x to 2.7.y with
SparseLoopDevice
volumes will force draining of this single node.
Expect an interruption of service during this upgrade (production
deployments should not rely on SparseLoopDevice
volumes).
Supported Versions¶
Note
MetalK8s supports upgrade of at most one minor version at a time. For example:
from 2.4.0 to 2.4.4
from 2.4.0 to 2.5.1
Please refer to the release notes for more information.
Upgrade Pre-requisites¶
Before proceeding with the upgrade procedure, make sure to complete the pre-requisites listed in ISO Preparation.
Run pre-checks¶
You can test if your environment will successfully upgrade with the following command. This will simulate the upgrade pre-checks and provide an overview of the changes to be carried out in your MetalK8s cluster.
Important
The version prefix metalk8s-X.Y.Z as used below during a MetalK8s upgrade must be the new MetalK8s version you would like to upgrade to.
/srv/scality/metalk8s-X.Y.Z/upgrade.sh --dry-run --verbose
Upgrade Steps¶
Ensure that the upgrade pre-requisites above have been met before you make any step further.
To upgrade a MetalK8s cluster, run the utility script shipped with the new version you want to upgrade to:
Important
The version prefix metalk8s-X.Y.Z as used below during a MetalK8s upgrade must be the new MetalK8s version you would like to upgrade to.
From the Bootstrap node, launch the upgrade.
/srv/scality/metalk8s-X.Y.Z/upgrade.sh