Upgrade the OpenStack control plane

Upgrade the OpenStack control plane

The OpenStack control plane upgrade stage includes upgrading of the OpenStack services APIs. To minimize the API downtime, we recommend that you select the quickest upgrade depth that does not include running OS_UPGRADE or OS_DIST_UPGRADE. You can perform both OS_UPGRADE and OS_DIST_UPGRADE during the post-upgrade stage if required.

To upgrade the OpenStack VCP:

  1. Log in to the Jenkins web UI.

  2. If Ironic will be upgraded, perform the following steps to upgrade Ironic Conductor before the Ironic API. The nova-compute service running on the Ironic Conductor nodes must be upgraded only after the Nova Controller has been upgraded.

    Caution

    The upgrade of Ironic is available starting from the MCP 2019.2.6 update. See MCP Release Notes: Maintenance updates for details.

    1. Verify that the following variables are set on each Ironic Conductor node in Reclass in the classes/nodes/_generated/<node_name>.yml files:

      parameters:
        _param:
          nova:
            upgrade:
              enabled: false
      
    2. Refresh pillars:

      salt '*' saltutil.refresh_pillar
      
    3. Run the Deploy - upgrade control VMs pipeline job on the Ironic Conductor nodes in the interactive mode setting the TARGET_SERVERS parameter to bmt*.

    4. Once the pipeline job execution is finished, verify that the following variables are set for each Ironic Conductor node in Reclass in the classes/nodes/_generated/<node_name>.yml files:

      parameters:
        _param:
          nova:
            upgrade:
              enabled: true
          ironic:
            upgrade:
              enabled: false
      
    5. Refresh pillars:

      salt '*' saltutil.refresh_pillar
      
  3. Run the Deploy - upgrade control VMs pipeline job on the OpenStack controller nodes in the interactive mode setting the parameters as follows:

    • TARGET_SERVERS=ctl*

      After you upgrade the ctl nodes, define the following values one by one to upgrade additional OpenStack components from Pike to Queens as required:

      • TARGET_SERVERS=share* to upgrade the Manila control plane

      • TARGET_SERVERS=mdb* to upgrade the Tenant Telemetry including Ceilometer, Gnocchi, Aodh, and Panko

      • TARGET_SERVERS=kmn* to upgrade Barbican

      • TARGET_SERVERS=bmt* to upgrade Ironic

        Note

        During the second execution of the pipeline job on the Ironic Conductor nodes, only nova-compute will be upgraded since Ironic has already been upgraded in step 2.

    • MODE=INTERACTIVE mode to get the detailed description of the pipeline job flow through the stages

  4. Verify that the control plane is up and the OpenStack services from the data plane are reconnected and working correctly with the newly upgraded control plane.

  5. Run the Deploy - upgrade control VMs pipeline job on the proxy nodes with TARGET_SERVERS=’prx*’ set.

  6. Verify that the public API is accessible and Horizon is working.

  7. Perform the upgrade of other control plane nodes where required depending on your deployment.

  8. Verify that the control plane is upgraded to the intended OpenStack release, APIs work correctly and are available, and the services enable the users to manage their resources.

    Note

    The new features of the intended OpenStack release are not available till the data plane nodes are upgraded.

  9. Proceed to Upgrade the OpenStack data plane.