Upgrading IBM Software Hub to version 5.3.1
Upgrade IBM Software Hub from version 5.3.0 to 5.3.1, including the CPD platform, Events Operator, Knative Eventing, and watsonx Orchestrate components. The process also applies the latest hotfix to resolve known issues.
Before you begin
Ensure that you upgrade Cloud Pak for Data CLI version to 14.3.1 or later.
Procedure
- Create an environment variables file named
cpd_vars.shand update the variables for your environment.For detailed instructions, see Setting up installation environment variables. -
Load the environment variables file:
source cpd_vars.sh - Download the Cloud Pak for Data CLI version 14.3.1 binary for your system architecture. For detailed instructions, see Updating the IBM Software Hub command-line interface.
-
Restart the
olm-utilscontainer to update from version 5.3.0 to 5.3.1.cpd-cli manage restart-containerThis command replaces the existing workspace.Note: Back up the old workspace or theinstall-options.ymlfile before you proceed. -
Log in to Red Hat OpenShift Container Platform cluster:
$OC_LOGIN - Log in to the Red Hat OpenShift Container Platform cluster from the
olm-utilscontainer:$CPDM_OC_LOGINNote: Complete steps 7 through 10 only if your deployment requires the Knative operator. -
Deploy the IBM Events Operator cluster resources.
cpd-cli manage deploy-events-operator \ --release=${VERSION} \ --cluster_resources=true -
Apply the IBM Events Operator custom resource definitions.
oc apply \ -f ${CPD_CLI_MANAGE_WORKSPACE}/work/ibm-events-operator-crds.yaml \ --server-side \ --force-conflicts -
Deploy the IBM Events Operator to the operator and operand namespaces.
cpd-cli manage deploy-events-operator \ --release=5.3.1 \ --events_operator_ns=${PROJECT_CPD_INST_OPERATORS} \ --events_operand_ns=${PROJECT_CPD_INST_OPERANDS} -
Deploy Knative Eventing with the upgrade flag.
cpd-cli manage deploy-knative-eventing \ --release=${VERSION} \ --block_storage_class=${STG_CLASS_BLOCK} \ --upgrade=true -
Reauthorize the Namespacescope operator with minimum RBAC permissions:
oc get role nss-managed-role-from-${PROJECT_CPD_INST_OPERATORS} \ -n ${PROJECT_CPD_INST_OPERATORS} \ -o json | jq 'any(.rules[].apiGroups[]; . == "*")'- If the command returns
true, the operator does not need reauthorization. - If the command returns false, the operator uses minimum RBAC and requires reauthorization. Follow the procedure in Reauthorizing the Namespacescope Operator with minimum RBAC before you continue.
- If the command returns
-
Download the case files for the components to be upgraded.
cpd-cli manage case-download \ --components=${COMPONENTS} \ --release=${VERSION} \ --operator_ns=${PROJECT_CPD_INST_OPERATORS} \ --cluster_resources=true \ --patch_download=falseEnsure thatpatch_downloadis set tofalse. Specify all components in the components variable, such ascpd_platformandwatsonx_orchestrate.Warning: Ensure that thepatchfolder does not exist in your working directory. For example, <your_working_directory>/offline. -
Verify the case versions after the download completes. Note:
- Ensure that the case versions for watsonx Orchestrate and Zen are
7.1.0and6.4.0, respectively. - The default location of the work directory is cpd-cli-workspace/olm-utils-workspace/work.
- To check the version of a downloaded case, go to the following directory: cpd-cli-workspace/olm-utils-workspace/work/offline/5.3.1/.ibm-pak/data/cases. The case version information is available in this directory.
- Ensure that the case versions for watsonx Orchestrate and Zen are
-
Apply the cluster-scoped resources from the work directory:
oc apply -f cluster_scoped_resources.yaml \ --server-side \ --force-conflicts -
Review the license terms for the release.
cpd-cli manage get-license \ --release=${VERSION} -
Upgrade the Cloud Pak for Data platform component.
cpd-cli manage install-components \ --license_acceptance=true \ --components=cpd_platform \ --release=${VERSION} \ --operator_ns=${PROJECT_CPD_INST_OPERATORS} \ --instance_ns=${PROJECT_CPD_INST_OPERANDS} \ --image_pull_prefix=${IMAGE_PULL_PREFIX} \ --image_pull_secret=${IMAGE_PULL_SECRET} \ --upgrade=true -
Validate that the Cloud Pak for Data platform and Zen service are upgraded successfully.
oc get ibmcpd -o yaml oc get zenservice -o yamlVerify that the Cloud Pak for Data platform version is 5.4.0 and the Zen service version is 6.4.0. If the versions match, the Cloud Pak for Data platform upgrade is successful. - Add the following content to install-options.yaml:
--- non_olm: watsonxOrchestrate: installMode: "agentic" size: small watsonxAI: watsonxaiifm: falseThis file contains the configuration options for your watsonx Orchestrate installation.
-
Run the watsonx Orchestrate upgrade:
cpd-cli manage install-components \ --license_acceptance=true \ --components=watsonx_orchestrate \ --release=${VERSION} \ --operator_ns=${PROJECT_CPD_INST_OPERATORS} \ --instance_ns=${PROJECT_CPD_INST_OPERANDS} \ --image_pull_prefix=${IMAGE_PULL_PREFIX} \ --image_pull_secret=${IMAGE_PULL_SECRET} \ --param-file=/tmp/work/install-options.yml \ --skip_components=watson_assistant \ --upgrade=true -
After the upgrade starts and new components begin to deploy, apply hotfix 5.3.1.4 to resolve
the 502 bad gateway issue.
For more information about this hotfix, see IBM Support: Hotfix 5.3.1.4.
-
Apply the patch to the channel integrations pod:
oc patch wo wo \ -n cpd-instance-1 \ --type=merge \ --patch '{ "spec": { "image": { "digestOverrides": { "channel-integrations": "sha256:5db27d33535eb84857888ce5e74c9ec8b7a594e203d5b2265ffb45a25081df9d" } } } }' -
Apply the patch to the
pgbouncerconfiguration with a timeout of 180 seconds:oc patch watsonxorchestrates.wo.watsonx.ibm.com/wo \ -n "${PROJECT_CPD_INST_OPERANDS}" \ --type=merge \ -p '{"spec":{"pgbouncer":{"config":{"global":{"idle_transaction_timeout":"180"}}}}}'
-
Apply the patch to the channel integrations pod: