Upgrading shared cluster components (Upgrading from Version 5.1 to Version 5.2)

Before you upgrade IBM® Software Hub, you must upgrade the License Service and scheduling service. If the IBM Certificate manager is installed on the cluster, you must also upgrade the Certificate manager.

Upgrade phase
  • You are not here. Updating your client workstation
  • You are not here. Collecting required information
  • You are not here. Preparing to run an upgrade in a restricted network
  • You are not here. Preparing to run an upgrade from a private container registry
  • You are not here. Upgrading prerequisite software
  • You are here icon. Upgrading shared cluster components
  • You are not here. Preparing to upgrade an instance
  • You are not here. Upgrading an instance
Who needs to complete this task?

Cluster administrator A cluster administrator must complete this task.

Remember: If you gave another user the minimum role-based access control (RBAC) to install the scheduling service and you want that user to upgrade the scheduling service, you must complete Giving a user the minimum RBAC to install the scheduling service before you complete this task.
When do you need to complete this task?

One-time setup You must complete this task before you upgrade IBM Software Hub.

If you have multiple instances of IBM Software Hub on the cluster, it is strongly recommended that you upgrade the shared components to the same release as the latest version of IBM Software Hub that you plan to install on the cluster.

Before you begin

Best practice: You can run the commands in this task exactly as written using the installation environment variables. Ensure that you added the new environment variables from Updating your environment variables script.

In addition, ensure that you source the environment variables before you run the commands in this task.

About this task

IBM Cloud Pak foundational services Certificate manager (IBM Certificate manager)
If you are using the Red Hat® OpenShift® cert-manager, the IBM Cloud Pak foundational services Certificate manager upgrade will be skipped.
If you're not sure whether the IBM Certificate manager is installed on the cluster, run the following command:
oc get csv | grep ibm-cert-manager
  • If the IBM Certificate manager is installed, the command returns information about the project where the Certificate manager is installed and the version that is installed.
  • If the IBM Certificate manager is not installed, the command returns an empty response.
License Service
The location of the License Service depends on whether you installed IBM Software Hub or whether you upgraded an instance of IBM Cloud Pak® for Data that you previously migrated to the private topology.
  • If you installed IBM Software Hub, the License Service is in the project defined by the ${PROJECT_LICENSE_SERVICE} environment variable.
  • If you upgraded from IBM Cloud Pak for Data, the location of the License Service depends on how you installed IBM Cloud Pak for Data:
    • If you installed with the private topology, the License Service is in the project defined by the ${PROJECT_LICENSE_SERVICE} environment variable.
    • If you migrated to the private topology, the License Service is in the project defined by the ${PROJECT_CS_CONTROL} environment variable.

If you're not sure which project the License Service is in, run the following command:

oc get deployment -A |  grep ibm-licensing-operator

Compare the project that is returned by the command to the projects that are in your installation environment variables script.

Scheduling service
If you're not sure whether the scheduling service is installed on the cluster, run the following command:
oc get scheduling -A
  • If the scheduling service is installed, the command returns information about the project where the scheduling service is installed and the version that is installed.

    Ensure that the COMPONENTS variable in your environment variables script includes the scheduler component.

  • If the scheduling service is not installed, the command returns an empty response.

Procedure

  1. Log the cpd-cli in to the Red Hat OpenShift Container Platform cluster:
    ${CPDM_OC_LOGIN}
    Remember: CPDM_OC_LOGIN is an alias for the cpd-cli manage login-to-ocp command.
  2. Upgrade the License Service and the IBM Certificate manager, if it is installed.

    The command that you run depends on where the License Service is installed and whether the IBM Certificate manager is installed:

    Environments with the IBM Certificate manager

    The License Service is in the ${PROJECT_LICENSE_SERVICE} project
    cpd-cli manage apply-cluster-components \
    --release=${VERSION} \
    --license_acceptance=true \
    --cert_manager_ns=${PROJECT_CERT_MANAGER} \
    --licensing_ns=${PROJECT_LICENSE_SERVICE}

    The License Service is in the ${PROJECT_CS_CONTROL} project
    cpd-cli manage apply-cluster-components \
    --release=${VERSION} \
    --license_acceptance=true \
    --cert_manager_ns=${PROJECT_CERT_MANAGER} \
    --licensing_ns=${PROJECT_CS_CONTROL}

    Environments without the IBM Certificate manager

    The License Service is in the ${PROJECT_LICENSE_SERVICE} project
    cpd-cli manage apply-cluster-components \
    --release=${VERSION} \
    --license_acceptance=true \
    --licensing_ns=${PROJECT_LICENSE_SERVICE}

    The License Service is in the ${PROJECT_CS_CONTROL} project
    cpd-cli manage apply-cluster-components \
    --release=${VERSION} \
    --license_acceptance=true \
    --licensing_ns=${PROJECT_CS_CONTROL}

    Wait for the cpd-cli to return the following message before proceeding to the next step:
    [SUCCESS] ... The apply-cluster-components command ran successfully.
  3. Confirm that the License Service pods are Running or Completed:

    The License Service is in the ${PROJECT_LICENSE_SERVICE} project
     oc get pods --namespace=${PROJECT_LICENSE_SERVICE}

    The License Service is in the ${PROJECT_CS_CONTROL} project
     oc get pods --namespace=${PROJECT_CS_CONTROL}

  4. If the IBM Certificate manager is installed, confirm that the Certificate manager pods in the ${PROJECT_CERT_MANAGER} project are Running or Completed:
    oc get pods --namespace=${PROJECT_CERT_MANAGER}
  5. If the scheduling service is installed, upgrade the scheduling service:
    cpd-cli manage apply-scheduler \
    --release=${VERSION} \
    --license_acceptance=true \
    --scheduler_ns=${PROJECT_SCHEDULING_SERVICE}
  6. If you upgraded the scheduling service, confirm that the scheduling service pods are Running or Completed:
    oc get pods --namespace=${PROJECT_SCHEDULING_SERVICE}

What to do next

Now that you've upgraded the shared cluster components, you're ready to complete Preparing to upgrade an instance of IBM Software Hub (Upgrading from Version 5.1 to Version 5.2).