Upgrading IBM Business Automation Workflow on containers

 Containers: 
If you installed IBM Business Automation Workflow on containers as a production (custom) deployment in 21.0.2, and you want to continue to using your applications in 21.0.3, you can upgrade your applications.

If you are on 21.0.x, you must install the latest 21.0.2 interim fix that includes JR64401 (IF006 or later) before you upgrade to 21.0.3.

Before you begin

  • If you have federated saved searches stored in the Elasticsearch index, you must migrate your saved searches before upgrading. Otherwise, your saved searches will be lost.
  • Before you start an upgrade, back up your data and take snapshots if necessary. You cannot properly roll back if you do not have your data backed up. Read Backing up your environments for additional instructions that are not covered in the container upgrade sections.

Procedure

To upgrade from 21.0.2 to 21.0.3:

  1. Upgrade dependencies to the new supported versions.
  2. Get access to the container images by following the steps in Getting access to container images.
    For a list of packages in IBM Passport Advantage, see Business Automation Workflow download documents. To find and download the images for an interim fix, go to Fix Central and search for "IBM Business Automation Workflow".
  3. Upgrade the operator to the new version before you apply your custom resource upgrades.
    To prevent any connection problems during the upgrade, make sure that the passwords that you use for databases and LDAP are not about to expire and refresh them if they are. For example, an out-of-date ldapPassword key in the LDAP bind secret stops UMS pods from restarting. These pods can also prevent other pods that integrate with UMS from restarting. The LDAP bind secret "ldap-bind-secret" is set in the lc_bind_secret parameter in the following ldap_configuration section.
    ldap_configuration:
       lc_bind_secret: ldap-bind-secret
    Important: If you are looking to upgrade a deployment that you installed with the operator lifecycle manager (OLM) in 20.0.0.2, then you must delete the previous version of the IBM operator catalog and install the new catalog into the Operator Hub. For more information, see Installing a production deployment in Operator Hub.
    Tip: When you upgrade from any version, you can upgrade the operator and keep the container image tags at the previous versions.
    You can upgrade the operator by running a script to the new version before you apply your custom resource upgrades. Refer to Upgrading the operator by running a script to complete the work.
    • When you are told to download the cert-kubernetes repository, go to https://github.com/IBM/cloud-pak/tree/master/repo/case/ and get the latest version of ibm-cs-bawautomation-2.2 to get the .tar.gz file for Business Automation Workflow. Extract the package, and then extract the contents from the .tar file in the ibm-cs-bawautomation/inventory/cp4aOperatorSdk/files/deploy/crs folder. Use the tar -xvzf command to extract it to the cert-kubernetes directory directory.
    • In Step 4, when you upgrade the icp4a-operator on your cluster, add a baw parameter:
      ./scripts/upgradeOperator.sh -n <project_name> -a accept -m baw
  4. Get the custom resource YAML file that you used to install Business Automation Workflow and update it for the new deployment.
    1. Change the metadata.labels.release parameter value to the new version, for example, 21.0.3.
    2. Change the appVersion parameter value in the spec section to the new version.
    3. Compare the new custom resource template under descriptors/patterns (for example, template ibm_cp4a_cr_production_FC_workflow-standalone.yaml) with the custom resource template that you used to install. Change the image.tag parameter values in all sections to the new version. Where required, add mandatory parameters to the file and provide specific values for parameters that previously used the default value.

      If your environment does not support dynamic provisioning and you have pfs_configuration.logs.storage.use_dynamic_provisioning set to false, you must create a persistent volume (PV) and persistent volume claim (PVC) for Process Federation Server. Follow the instructions in the step about creating the Process Federation Server PV and PVC in Preparing storage. Then, update the pfs_configuration.logs.storage.existing_pvc_name parameter in the custom resource to add the PVC name.

    4. In the baw_configuration section under case configuration, add parameters datasource_name_tos and connection_point_name_tos, as seen in the following example:
      baw_configuration:
        ## The configuration for case
        case:
          ## Specify the name of the non-XA datasource of Target Object Store (from dc_common_os_datasource_name in the dc_os_datasources section)
          ## It will not take effect if Target Object Store exists in initialize_configuration.ic_obj_store_creation.object_stores.
          datasource_name_tos: "BAWTOS"
          connection_point_name_tos: "connection_point_name_tos "
    5. If you are using OpenShift, continue to the next step. Otherwise, note that in 21.0.2, updates were made to ensure a consistent hostname for all components.
      • For Workflow Server configuration, an example of a hostname update might be a change from baw.test1.9.x.x.x.nip.io to baw-test1.9.x.x.x.nip.io. If you want to keep the hostname that you defined in a previous release, add the hostname attribute under the baw_configuration section. For example:
        baw_configuration:
             hostname: "baw.test1.9.x.x.x.nip.io"
        
      • For Process Federation Server configuration, an example of a hostname update might be a change from pfs.test1.9.x.x.x.nip.io to pfs-test1.9.x.x.x.nip.io. If you want to keep the hostname that you defined in a previous release, add the hostname attribute under the pfs_configuration section. For example:
        pfs_configuration:
                hostname: "pfs.test1.9.x.x.x.nip.io"
    6. Check the upgrade instructions for prerequisite capabilities in case upgrading them requires additional actions.
  5. Apply and verify the upgraded deployment.

    Follow the instructions in Applying the upgraded custom resource and Verifying the installation of IBM Business Automation Workflow on containers in 21.0.3. to complete the upgrade and verify the Workflow component.

    See Completing post-upgrade tasks to verify other components included as part of Business Automation Workflow on containers.

What to do next

For rollback instructions, see Rolling back an upgrade.