Upgrade OpenStack

Available since MOS 21.5

This section provides instructions on how to upgrade the OpenStack version on a MOS managed cluster.

Prerequisites

  1. Verify that your OpenStack cloud is running on the latest MOS release. See Release Compatibility Matrix NEW for the release matrix and supported upgrade paths.

  2. Just before the upgrade, back up your OpenStack databases. See Back up and restore a MariaDB Galera database for details.

  3. Verify that OpenStack is healthy and operational. All OpenStack components in the health group in the OpenStackDeploymentStatus CR should be in the Ready state. See OpenStackDeploymentStatus custom resource for details.

  4. Verify the workability of your OpenStack deployment by running Tempest against the OpenStack cluster as described in Run Tempest tests. Verification of the testing pass rate before upgrading will help you measure your cloud quality before and after upgrade.

  5. Read carefully through the MOS release notes of your MOS version paying attention to the Known issues section and the OpenStack upstream release notes for the target OpenStack version.

  6. Calculate the maintenance window using Calculate a maintenance window duration and notify users.

Perform the upgrade

To start the OpenStack upgrade, change the value of the spec:openstack_version parameter in the OpenStackDeployment object to the target OpenStack release.

Caution

It is not allowed to do skip level upgrades as well as downgrades.

When you change the value of the spec:openstack_version parameter, the OpenStack controller initializes the upgrade process.

To verify the upgrade status, use:

  • Logs from the osdpl container in the OpenStack controller pod.

  • The OpenStackDeploymentStatus object.

    When upgrade starts, the OPENSTACK VERSION field content changes to the target OpenStack version, and STATE displays APPLYING:

    kubectl -n openstack get osdplst
    NAME      OPENSTACK VERSION   CONTROLLER VERSION   STATE
    osh-dev   victoria            0.5.8.dev15          APPLYING
    

    When upgrade finishes, the STATE field should display APPLIED:

    kubectl -n openstack get osdplst
    NAME      OPENSTACK VERSION   CONTROLLER VERSION   STATE
    osh-dev   victoria            0.5.8.dev15          APPLIED
    

Verify the upgrade

  1. Verify that OpenStack is healthy and operational. All OpenStack components in the health group in the OpenStackDeploymentStatus CR should be in the Ready state. See OpenStackDeploymentStatus custom resource for details.

  2. Verify the workability of your OpenStack deployment by running Tempest against the OpenStack cluster as described in Run Tempest tests.