Configuring optional IBM Business Automation Workflow components in an existing production deployment
Before you begin
- Ensure you have access to the
cert-kubernetes-baw/scriptsdirectory. - Verify that you have permissions to run scripts and modify deployment resources.
- Back up the existing Custom Resource (CR) and property files.
- Confirm that the Kubernetes cluster and namespace are correctly configured.
- Prepare SSL certificates if SSL is enabled for any configuration.
About this task
baw-prerequisites.sh script in property
mode with the --update-components flag. Note that this feature is limited to
installing and uninstalling optional components; it does not support changing the database type,
modifying the LDAP type, or generating network policies.Procedure
- Run the
update-componentsscript in property mode from thescriptsfolder inside thecert-kubernetes-bawdirectory:./baw-prerequisites.sh -m property --update-components - The script checks for property files in
scripts/baw-prerequisites/<namespace>/propertyfile. If not found, you will
be prompted to provide the path to the property
files. Example:
[INFO] The "baw-prerequisites.sh" script is being executed in update mode to modify the optional components for the current deployment. For more details on modifying the selected optional components for the current deployment refer Knowledge Center. [INFO] Checking if the default property file directory -> "/root/cert-kubernetes/scripts/baw-prerequisites/project/cp4ba/propertyfile" contains all required property files... All required property files are found in the default path. Do you want to use this path? (Yes/No)[Default: Yes]: - The script displays the current deployment configuration and prompts you to update
optional components. Available components and their current status are
listed. Example:
[INFO] The current configurations for the active Deployment in cp4ba are listed below. Configuration | Value ---------------------------------------------------+--------------------------------------------------- Current Custom Resource Type | icp4acluster Current Custom Resource Name | bawdeploy Current Deployment Patterns Selected | Business Automation Workflow Current Optional Components Selected | Business Automation Insights LDAP Directory Type | IBM Security Directory Server Slow Storage Class Name | nfs-client Medium Storage Class Name | nfs-client Fast Storage Class Name | nfs-client Block Storage Class Name | nfs-client Deployment Profile Size | small Database Server Type | postgresql Database Server List | rg-db1 Network Policy template generation | true External PostgresDB enabled for IM | true External PostgresDB enabled for ZEN | true External PostgresDB enabled for BTS | true Number of Content Object Stores configured | 0 Do you want to continue to update the current list of Optional Components deployed? (Yes/No)(default No):Pattern "Business Automation Workflow Authoring": Select optional components: [INFO] cmis will be added along with optional components by default. 1) Business Automation Insights (Installed) 2) Data Collector and Data Indexer 3) Exposed Kafka Services 4) Workplace Assistant 5) (Preview) Authoring Assistant Tips: Press [ENTER] if you do not want any optional components or when you are finished selecting your optional components Enter a valid option [1 to 5 or ENTER]:User can add or remove optional components from this section.-
If selecting already selected optional component, status of that component will be switching from Installed to To be UnInstalled.
-
If selecting a new optional component, Selected status will be added.
-
- Update property files:
- Edit the regenerated property files.
baw_db_name_user.propertybaw_db_server.propertybaw_LDAP.propertybaw_user_profile.property
- Add SSL certificates into the respective folders, if SSL is enabled for any configuration.
- Previous iteration property files are backed up in: scripts/baw-prerequisites/project/<namespace>/propertyfile/original_property_file
Note: The script fills common properties automatically, but you must review and update the property files before proceeding. - Edit the regenerated property files.
- Do not recreate databases that already exist. If additional databases are required,
create them using the generated database scripts. After updating the property files, run the
baw-prerequisites.sh script in the
generatemode to generate the files you will run to create databases and secrets.
If the script detects that the property files do not have custom values, it displays messages to help you identify the missing values../baw-prerequisites.sh -m generate -n <namespace_name>The script generates a directory (if you selected a database type other than EDB Postures) and a shell script:- scripts/baw-prerequisites/project/<namespace>/dbscript - Directory that contains SQL files to create databases
- scripts/baw-prerequisites/project/<namespace>/create_secret.sh - Shell script to create secrets
- After you generate all the necessary files for your Business Automation Workflow deployment, make sure that the SQL files and the script have the correct values before you apply them.
- If the databases already exist, do not recreate them. If you need more, create them using
the generated scripts. When ready, if you chose a database type other than EDB Postgres, run the
scripts on your database server and then use the shell script to create the required secrets.
- To create databases:
- Copy the contents of your
scripts/baw-prerequisites/project/<namespace>/dbscriptdirectory to your database server (if needed). - Log in to your database client or use the command line to run all the SQL scripts. The following
example is for PostgreSQL.
psql -f dbscript/ban/postgresql/<namespace>/createICNDB.sql
- Copy the contents of your
- The user will also be expected to drop SSL certificates to the respective folders if
SSL has been chosen for any configurations. To create secrets:
- Make sure that you can access your cluster by using kubectl:
kubctl get node - Run the shell
script:
./baw-prerequisites/project/<namespace>/create_secret.sh - Verify that the secrets are created in your cluster:
kubectl get secret ... ibm-ban-secret Opaque 8 37s ibm-cp4ba-db-ssl-secret-for-postgres171 Opaque 2 34s ibm-fncm-secret Opaque 12 35s bawdeploy-bas-admin-secret Opaque 2 39s ldap-bind-secret Opaque 2 38s
- Make sure that you can access your cluster by using kubectl:
- To create databases:
- Optional: After all of the required databases and secrets are created, run
the baw-prerequisites.sh script again in the
validatemode to check the generated secrets, databases, and LDAP connection.
The command checks that all of the required secrets are found and submits a validation query to the LDAP server and the list of remote database servers. If the operation succeeds within the timeout threshold, the validation is marked as PASSED! No queries are run and no data is changed../baw-prerequisites.sh -m validate -n <namespace_name>If a connection is not successful, a message informs you which connection failed. Check the values in your property files so that you can correct them and try again.
The script also immediately asks whether you want to run Storage Validation and Performance Validation tests. The Storage Validation checks the functional availability of the storage classes by creating temporary PVCs and confirming whether they bind successfully. To test the performance of the storage configuration, choose to run the Performance Validation. The storage validation takes approximately 25 minutes and the performance validation takes approximately 50 minutes.
Note:When you select “no” to run the Storage Validation and the Performance Validation, the script outputs the command in storage_and_performance_validation mode in case you want to run the tests later.
When you select “no” to run the Storage Validation, then the script outputs the command in storage_validation mode in case you want to run this test later. When you select “no” to run the Performance Validation, then the script outputs the command in performance_validation mode in case you want to run this test later.
./baw-storage-validation.sh -m storage_and_performance_validation -n <BAW_NAMESPACE> ./baw-storage-validation.sh -m storage_validation -n <BAW_NAMESPACE> ./baw-storage-validation.sh -m performance_validation -n <BAW_NAMESPACE>If you select “yes” to either of the validation tests, the script checks that the prerequisite tools are installed on your system.- If a prerequisite tool is not installed, the script prompts you to run a shell script
(
baw-storage-validation.sh), which installs the missing tools. - When all the prerequisites are installed, the script proceeds with a selected validation test.
For more information, see Installing the prerequisites for Business Automation Workflow on containers
Note: Storage and performance validation features works only on Red Hat® OpenShift® clusters. - If a prerequisite tool is not installed, the script prompts you to run a shell script
(
- Run the deployment script to generate the Business Automation Workflow CR based on the
property
files.
Follow the prompts in the command window to enter the required information../baw-deployment.sh -n <namespace_name>- Accept the license.
- Confirm the summary of capabilities.
- Select the cloud platform that you are using.
- Optionally, provide a URL to a ZIP file that contains JDBC or ICCSAP drivers. If you need to change the URL after creating the CR, see step 8 for details.
- Verify that the information is correct.
Note:- Preserve manual changes - Before running the script, identify any sections in your current CR that were added manually and not generated by the script. You will need to add these sections back after the new CR is generated.
- Backup and review - The script creates a backup folder containing the original CR inside the
generated-crdirectory. Review the newly generated CR and make any necessary adjustments. - File naming requirement - Do not rename the generated Custom Resource file. The file name must match the name of the live Custom Resource file.
- Removing Business Automation Insights from deployment - If Business Automation Insights is being removed:
- Apply the new CR and wait for the operators to reconcile.
- Manually delete the
FlinkDeploymentCR.Leaving it behind does not affect functionality, but some Business Automation Insights Flink components will remain.
Results
The optional components in your existing Business Automation Workflow deployment are updated according to your selections without requiring a full redeployment.
What to do next
- Validate the deployment and confirm that the added or removed components are functioning as expected.
- Monitor logs and reconcile any manual changes in the CR if necessary.