Applying the updated custom resource

An upgraded custom resource must be applied to the operator.

Before you begin

When you ran the bai-deployment.sh script in the upgradeDeployment mode, the script displayed the commands under Next Actions to patch and apply the custom resource. You can run the commands on your cluster. The commands in the Procedure section are examples.

Procedure

  1. Set the following environment variable.
    export projectName=<bai-project>

    Where <bai-project> is the target namespace.

  2. Run the following command to apply the custom resource.
    kubectl apply -f ./bai-upgrade/project/$projectName/custom_resource/insightsengine.yaml -n $projectName
  3. Check the status of the deployment.
    Use the bai-deployment.sh script in upgradeDeploymentStatus mode to check the status of the deployment.
    ./bai-deployment.sh -m upgradeDeploymentStatus -n $projectName
    Note:
    • If the upgradeDeploymentStatus output does not show any progress or shows failures, review the zen-operator, insights-engine-operator, or other operator logs for potential causes based on the failure point.
    • If zen-metastoredb pods are scaled down, you need to scale up the zen-metastoredb pods and re-run the bai-deployment.sh script in upgradeDeploymentStatus mode.
    The script shows the following output before zenService is upgraded to the new version. The output shows the earlier installed version of zenService before you upgrade to the new version. The following output is an example.
     BAI Upgrade Status
    ##########################################################
    zenService Version (6.4.5)       : 6.2.x
    zenService Status (Completed)    : Completed
    zenService Progress (100%)       : 100%
    The DeploymentStatus page refreshes automatically and shows the zenService status. The following output is an example.
         BAI Upgrade Status
    ##########################################################
    zenService Version (6.4.5)       : 6.2.x
    zenService Status (Completed)    : InProgress
    zenService Progress (100%)       : 0%
    The following output is an example of the script output when zenService upgrade is complete. The zenService version number might vary based on the version of Business Automation Insights.
    BAI Upgrade Status
    ##########################################################
    zenService Version: (6.4.5)
    zenService Status: Completed
    zenService Progress: 100%

    The zenService upgrade may take up to two hours to complete. After the zenService upgrade completes, the script refreshes to display the upgrade status of the Business Automation Insights components.

  4. The upgradeDeploymentStatus runs indefinitely and refreshes the status checks at regular intervals. It can take several hours for the upgrade to complete. Once all statuses are displayed as successful (or not installed), manually exit the script (Ctrl+c).
  5. The script output includes a section that is labeled Next Action that provides the next steps that should be run after upgrade deployment is complete. Follow the steps in Next Action.
  6. Use the kubectl get pods command to confirm that the pods in your deployment scaled up successfully.
    kubectl get pods -w
    Wait for the reconcile loop to finish. All the container pods are started with the new images. If jobs are removed, the pods are eventually deleted.

    The wait time depends on how many pods that you have in your deployment.

    Note: If the bai-deployment.sh script has created Business Automation Insights savepoints during the upgrade process, there will be a recovery_path parameter with the location of the Business Automation Insights savepoint that has been added to the generated insightsengine CR at cert-kubernetes-bai/scripts/bai-upgrade/custom_resource/insightsengine.yaml in different sections under bai_configuration. Once the upgrade has been completed, you must remove all instances of the recovery_path parameter from the CR .

What to do next

Continue with the upgrade by following the steps in Completing post-upgrade tasks.

How to access the capability services

A ConfigMap is created in the namespace to provide the cluster-specific details to access the services and applications. Components that are successfully upgraded have the new URLs in the ConfigMap. If any components failed, the URLs are not included. The ConfigMap name is prefixed with the deployment name (default is baideploy). You can find the ConfigMap containing the routes information by clicking Workloads > ConfigMaps and then searching for the string "bai-access-info".

The content of the ConfigMap depends on the components that are included. Each component has one or more URLs.

<component1> URL: <RouteUrlToAccessComponent1>  
<component2> URL: <RouteUrlToAccessComponent2> 

When all of the containers are running, you can access the services. For the components that are not defined in the BAI custom resource, like Business Teams Service, you can add the defined prefix for the UI (teamserver/ui) to the cpd_host. The full URL is https://cpd_host/teamserver/ui, where cpd_host is the result of the command kubectl get route cpd.

The IBM Cloud Pak Platform (Zen) UI is used to provide a role-based user interface for all Cloud Pak capabilities. Capabilities are dynamically available in the UI based on the role of the user that logs in. If you did not run the postinstallation script on your cluster to validate the upgrade, you can find the URL for the Zen UI in the OpenShift Container Platform console by clicking Networking > Routes and looking for the name cpd, or by running the following command.

kubectl get route |grep "^cpd"

Log in to the Admin Hub to configure your LDAP with the Identity Management (IM) service. You have two options to log in, Enterprise LDAP and IBM provided credentials (cpadmin only). To log in to the Admin Hub to configure the LDAP, then click IBM provided credentials (cpadmin only). You can get the details for the IBM-provided cpadmin user by getting the contents of the platform-auth-idp-credentials secret in the namespace used for the Business Automation Insights deployment.

kubectl -n <namespace> get secret platform-auth-idp-credentials -o jsonpath='{.data.admin_username}' | base64 -d && echo

You get the password by running the following command:

kubectl -n <namespace> get secret platform-auth-idp-credentials -o jsonpath='{.data.admin_password}' | base64 -d && echo

You can change the default password at any time. For more information, see Changing the cluster administrator password External link opens a new window or tab .

You can then onboard users and groups to Zen for any capability that provides a route. These users and user groups can then work with business applications and business automations by using the Zen-enabled routes.