Chapter 4. 3scale operator-based upgrade guide: from 2.10 to 2.11

Upgrade Red Hat 3scale API Management from version 2.10 to 2.11, in an operator-based installation to manage 3scale on OpenShift 4.x.

To automatically obtain a micro-release of 3scale, make sure automatic updates is on. To check this, see Setting up the 3scale operator for micro releases.

Important

In order to understand the required conditions and procedure, read the entire upgrade guide before applying the listed steps. The upgrade process disrupts the provision of the service until the procedure finishes. Due to this disruption, make sure to have a maintenance window.

4.1. Prerequisites to perform the upgrade

This section describes the required configurations to upgrade 3scale from 2.10 to 2.11 in an operator-based installation.

  • An OpenShift Container Platform (OCP) 4.6, 4.7, or 4.8 cluster with administrator access.

    • You must perform the upgrade of 3scale from 2.10 to 2.11 before upgrading to OCP 4.9.
    • Note: If you upgrade OCP to 4.9 or greater before upgrading 3scale you will get a non-working installation.
  • 3scale 2.10 previously deployed via the 3scale operator.
  • Make sure the latest CSV of the threescale-2.10 channel is in use. To check it:

    • If the approval setting for the subscription is automatic you should already be in the latest CSV version of the channel.
    • If the approval setting for the subscription is manual make sure you approve all pending InstallPlans and have the latest CSV version.
    • Keep in mind if there is a pending install plan, there might be more pending install plans, which will only be shown after the existing pending plan has been installed.

4.2. Upgrading from 2.10 to 2.11 in an operator-based installation

To upgrade 3scale from version 2.10 to 2.11 in an operator-based deployment:

  1. Log in to the OCP console using the account with administrator privileges.
  2. Select the project where the 3scale-operator has been deployed.
  3. Click Operators > Installed Operators.
  4. Select Red Hat Integration - 3scale > Subscription > Channel.
  5. Edit the channel of the subscription by selecting threescale-2.11 and save the changes.

    This will start the upgrade process.

  6. Query the pods' status on the project until you see all the new versions are running and ready without errors:

    $ oc get pods
    Note
    • The pods might have temporary errors during the upgrade process.
    • The time required to upgrade pods can vary from 5-10 minutes.
  7. After new pod versions are running, confirm a successful upgrade by logging in to the 3scale Admin Portal and checking that it works as expected.
  8. Check the status of the APIManager objects and get the YAML content by running the following command. <myapimanager> represents the name of your APIManager:

    $ oc get apimanager <myapimanager> -o yaml
    • The new annotations with the values should be as follows:

      apps.3scale.net/apimanager-threescale-version: "2.11"
      apps.3scale.net/threescale-operator-version: "0.8.0"

After you have performed all steps, 3scale upgrade from 2.10 to 2.11 in an operator-based deployment is complete.