Upgrade an operating system distribution¶
Available since 14.0.1 and 15.0.1 for MOSK 23.2
Warning
During the course of the Container Cloud 2.24.x series, Mirantis highly recommends upgrading an operating system on your cluster machines to Ubuntu 20.04 before the next major Cluster release becomes available. It is not mandatory to upgrade all machines at once. You can upgrade them one by one or in small batches, for example, if the maintenance window is limited in time.
Otherwise, the Cluster release update of the 18.04 based clusters will become impossible as of the Cluster releases introduced in Container Cloud 2.25.0, in which only the 20.04 distribution will be supported.
Distribution upgrade of an operating system (OS) is implemented for management, regional, and managed bare metal clusters.
For management and regional clusters, an OS distribution upgrade occurs automatically since Container Cloud 2.24.0 as part of cluster update and requires machines reboot. The upgrade workflow is as follows:
The distribution ID value is taken from the
id
field of the distribution from theallowedDistributions
list in the spec of theClusterRelease
object.The distribution that has the
default: true
value is used during update. This distribution ID is set in thespec:providerSpec:value:distribution
field of theMachine
object during cluster update.
For managed clusters, an in-place OS distribution upgrade should be performed between cluster updates. This scenario implies a machine cordoning, draining, and reboot.
To upgrade an OS distribution on managed cluster between releases:
Open the required
Machine
object for editing.In
spec:providerSpec:value:distribution
, set the required ID of the new OS version. For example,ubuntu/focal
.For description of the
Machine
object fields, see API Reference: Machine object.Monitor the upgrade progress using the
status:providerStatus:currentDistribution
field of the requiredMachine
object. Once the host reboots and the distribution upgrade completes, thecurrentDistribution
will match thedistribution
value previously set in the objectspec
. For the status fields description, see Machine status.
See also