Planning for IBM Business Automation Workflow on containers

Before you install stand-alone Business Automation Workflow on containers, it is important to understand what you need, what options you have, the entitlement of your license, and how you can measure the usage of your deployments.
As the stand-alone Business Automation Workflow on containers administrator, you need to produce a deployment plan on private/hybrid/public cloud to support your line of business (LoB) needs. You must work with other IT administrators (Enterprise Cloud Admin, DBA Admin, Security Admin, LDAP Admin) to gather information on the corporate IT infrastructure. Information such as databases, LDAP, security, Kafka, and storage classes are paramount to create a picture of your deployment architecture. All of this data is needed to properly configure the Business Automation Workflow capabilities.
Important: Usage metrics help you to ensure that the sum of all CPU limits do not exceed the Virtual Processing Cores (VPC) entitlements on all virtual servers. You must install either the Cloud Platform Metering Service or IBM License Metric Tool (ILMT) to gather the data.

The Detailed system requirements External link opens a new window or tab page provides the requirements for Business Automation Workflow on containers.

Deployment profiles

Based on your cluster requirement, you can pick a deployment profile (sc_deployment_profile_size) and enable it during installation. Business Automation Workflow provides small, medium, and large deployment profiles. You can set the profile during installation, in an update, and during an upgrade.

The default profile is small. Before you install, you can change the profile to medium or large. You can scale up or down a profile anytime after installation.
Attention: The values in the hardware requirements tables were derived under specific operating and environment conditions. The information is accurate under specific conditions, but the results that are obtained in your operating environments might vary significantly. Therefore, IBM cannot provide any representations, assurances, guarantees, or warranties regarding the performance of the profiles in your environment.

The following table describes each deployment profile.

Table 1. Deployment profiles and estimated workloads
Profile Description Scaling (per 8-hour day) Minimum number of worker nodes
Small (no HA) For environments that are used by 10 developers and 25 users. For environments that are used by a single department with a few users; useful for application development.
  • Processes 10,000 documents
  • Processes 5,000 human workflows
  • Processes 500,000 Straight Thru Processes processes
  • Processes 1.25 million Straight Thru Service Flows
  • Processes 5,000 transactions
  • Processes 500,000 decisions
  • Supports failover
8
Medium For environments that are used by 20 developers and 125 users. For environments that are used by a single department and by limited users.
  • Processes 100,000 documents
  • Processes 25,000 human workflows
  • Processes 1 million Straight Thru Processes processes
  • Processes 3.5 million Straight Thru Service Flows
  • Processes 25,000 transactions
  • Processes 2,000,000 decisions
  • Supports HA and failover
  • Provides at least two replicas of most services, if configuring failover
16
Large For environments that are used by 50 developers and 625 users. For environments that are shared by multiple departments and users.
  • Processes 1,000,000 documents
  • Processes 125,000 human workflows
  • Processes 2 million Straight Thru Processes processes
  • Processes 7 million Straight Thru Service Flows
  • Processes 125,000 transactions
  • Processes 5,000,000 decisions
  • Supports HA and failover
  • Provides at least two replicas of most services, if configuring failover
32

You can use custom resource templates to update the hardware requirements of the services that you want to install.

The following sections provide the default resources for each capability. For more information about the minimum requirements of foundational services, see Hardware requirements and recommendations for foundational services External link opens a new window or tab.

Note: The system requirements for small, medium, and large profiles are derived under specific operating and environment conditions. Due to the differences in hardware, networking, and storage, the resources vary for each workload in different environments. It is important that you run a performance test with peaked workload in a Test or UAT environment. Monitor the resource usage (for example CPU and memory) to determine the resource usage for each component. Based on the resource usage, make changes to CPU request, CPU limit, memory request, and memory limit in the custom resource for each component.

Ephemeral storage is storage that is tied to the lifecycle of a pod, so when a pod finishes or is restarted, that storage is deleted. It is used in any situation where your workloads need or generate transient local data, like logging. Use the /bin/df tool to monitor ephemeral storage usage on the volume where ephemeral container data is located. You can manage local ephemeral storage by setting quotas that define the limit ranges and the number of requests.

Small profile hardware requirements

  • Table 2 Operator default requirements for a small profile
  • Table 3 Foundation default requirements for a small profile
  • Table 4 Business Automation Workflow default requirements for a small profile
  • Table 5 Content Cortex default requirements for a small profile
Table 2. Operator default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
ibm-cp4ba-operator 500 1000 256 2048 NA 1 No
ibm-content-operator 500 1000 256 2048 NA 1 No
ibm-pfs-operator 100 500 20 1024 NA 1 No
ibm-workflow-operator 100 500 20 1024 NA 1 No
ibm-opensearch-operator 500 2000 820 2048 5120 (6144 for HA) 3 No

CPU Request and CPU Limit values are measured in units of millicore (m).

Memory Request and Memory Limit values are measured in units of mebibyte (Mi).

Note: You must use an external PostgreSQL for the Identity Management (IM) service, Platform UI (Zen service), and Business Teams Service (BTS).
Table 3. Foundation default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi)
Navigator 1000 1000 3072 3072 1 No    
Navigator Watcher 250 500 256 512 1 No    
BAStudio 1100 2000 1752 3072 1 No 1024 2048
Table 4. Business Automation Workflow default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
Workflow Server 500 2000 2048 3060 1 Yes
Workflow Authoring 500 2000 2048 3072 1 No
Notes:
  • For components that are included in your Business Automation Workflow instance from Content Cortex, see Table 5.
  • Business Automation Workflow also creates some jobs that request 200m CPU and 128Mi Memory:
    • basimport-job is created only with Business Automation Studio.
    • case-init-job
    • db-init-job
    • content-init-job
    • ltpa-job
Table 5. Content Cortex default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
CPE 1000 1000 3072 3072 1 Yes
CSS 1000 1000 4096 4096 1 Yes
CMIS 500 1000 1536 1536 1 No
GraphQL 500 1000 1536 1536 1 No
Task Manager 500 1000 1536 1536 1 No
Note: Not all containers are used in every workload. If a feature like the Content Services GraphQL API is not used, that container requires less resources or is optionally not deployed.

In high-volume indexing scenarios, where ingested docs are full-text indexed, the CSS utilization can exceed the CPE utilization. Sometimes, this might be 3 - 5 times larger.

For optional processing such as thumbnail generation or text filtering, at least 1 GB of native memory is required by the CPE for each. If both types of processing are expected, add at least 2 GB to the memory requests/limits for the CPE.

With the processing of content, resources required increase with the complexity and size of the content. Increase both memory and CPU for the CPE and CSS services to reflect the type and size of documents in your system. Resource requirements might also increase over time as the amount of data in the system grows.

If the sc_deployment_fncm_license parameter is set to concurrent-user or authorized-user, the CPE License Service Collector and License Service Reporter are installed to send user metrics to IBM License Service. The License Service Reporter is similar to a Cron job in that it runs only once a day.

Table 6. Content Cortex default values for ephemeral storage requests and limits
Component Ephemeral Storage Request default value Ephemeral Storage Limit Default value
Content Platform Engine 4 Gi 4 Gi
Content Search Services 500 Mi 1.5 Gi
Content Management Interoperability Services 1 Gi 1 Gi
GraphQL 1 Gi 1 Gi
Task Manager 1 Gi 1 Gi
External Share 1 Gi 1 Gi
Content Navigator 1 Gi 3 Gi
Table 7. License Service Collector default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Collector (lscollector) 500 1000 512 1536 1024 1024 1 No
Table 8. License Service Reporter default requirements for a small profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Reporter (lsreporter) 500 1000 512 1536 1024 1024 1 No

Medium profile hardware requirements

  • Table 9 Operator default requirements for a medium profile
  • Table 10 Foundation default requirements for a medium profile
  • Table 11 Business Automation Workflow default requirements for a medium profile
  • Table 12 Content Cortex default requirements for a medium profile
Table 9. Operator default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
ibm-cp4a-operator 500 1000 256 2048 NA 1 No
ibm-content-operator 500 1000 256 2048 NA 1 No
ibm-pfs-operator 100 500 20 1024 NA 1 No
ibm-workflow-operator 100 500 20 1024 NA 1 No
ibm-opensearch-operator 500 2000 3512 5120 5120 (6144 for HA) 3 No
Table 10. Foundation default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi)
Navigator 2000 3000 4096 4096 2 No    
Navigator Watcher 250 500 256 512 1 No    
BAStudio 1000 2000 1752 3072 2 No 1024 2048
Table 11. Business Automation Workflow default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
Workflow Server 500 2000 2560 3512 2 Yes
Workflow Authoring 500 4000 1024 3072 1 No
Notes:
  • For components that are included in your Business Automation Workflow instance from Content Cortex, see Table 12.
  • Business Automation Workflow also creates some jobs that request 200m CPU and 128Mi Memory:
    • basimport-job is created only with Business Automation Studio.
    • case-init-job
    • db-init-job
    • content-init-job
    • ltpa-job
Table 12. Content Cortex default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
CPE 1500 2000 3072 3072 2 Yes
CSS 1000 2000 8192 8192 2 Yes
CMIS 500 1000 1536 1536 2 No
GraphQL 500 2000 3072 3072 3 No
Task Manager 500 1000 1536 1536 2 No
Note: Not all containers are used in every workload. If a feature like the Content Services GraphQL API is not used, that container requires less resources or is optionally not deployed.

In high-volume indexing scenarios, where ingested docs are full-text indexed, the CSS utilization can exceed the CPE utilization. In some cases, this might be 3 - 5 times larger.

For optional processing such as thumbnail generation or text filtering, at least 1 GB of native memory is required by the CPE for each. If both types of processing are expected, add at least 2 GB to the memory requests/limits for the Content Platform Engine (CPE).

With the processing of content, resource requirements increase with the complexity and size of the content. Increase both memory and CPU for the CPE and CSS services to reflect the type and size of documents in your system. Resource requirements might also increase over time as the amount of data in the system grows.

If the sc_deployment_fncm_license parameter is set to concurrent-user or authorized-user, the CPE License Service Collector and License Service Reporter are installed to send user metrics to IBM License Service. The License Service Reporter is similar to a Cron job in that it runs only once a day.

Table 13. License Service Collector default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Collector (lscollector) 500 1000 512 1536 1024 1024 1 No
Table 14. License Service Reporter default requirements for a medium profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Reporter (lsreporter) 500 1000 512 1536 1024 1024 1 No

Large profile hardware requirements

  • Table 15 Operator default requirements for a large profile
  • Table 16 Foundation default requirements for a large profile
  • Table 17 Business Automation Workflow default requirements for a large profile
  • Table 18 Content Cortex default requirements for a large profile
Table 15. Operator default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral storage Limit Number of replicas Pods are licensed for production/non-production
ibm-cp4a-operator 500 1000 256 2048 NA 1 No
ibm-content-operator 500 1000 256 2048 NA 1 No
ibm-pfs-operator 100 500 20 1024 NA 1 No
ibm-workflow-operator 100 500 20 1024 NA 1 No
ibm-opensearch-operator 1000 2000 3512 5128 5120 (6144 for HA) 3 No
Table 16. Foundation default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi)
Navigator 2000 4000 6144 6144 4 No    
Navigator Watcher 250 500 256 512 1 No    
BAStudio 2000 4000 1752 3072 2 No 1024 2048
Table 17. Business Automation Workflow default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
Workflow Server 1000 2000 3060 4000 4 Yes
Workflow Authoring 1000 2000 2000 3000 2 No
Notes:
  • For components that are included in your Business Automation Workflow instance from Content Cortex, see Table 18.
  • Business Automation Workflow also creates some jobs that request 200m CPU and 128Mi Memory:
    • basimport-job is created only with Business Automation Studio.
    • case-init-job
    • db-init-job
    • content-init-job
    • ltpa-job
Table 18. Content Cortex default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Number of replicas Pods are licensed for production/non-production
CPE 3000 4000 8192 8192 2 Yes
CSS 2000 4000 8192 8192 2 Yes
CMIS 500 1000 1536 1536 2 No
GraphQL 1000 2000 3072 3072 4 No
Task Manager 500 1000 1536 1536 2 No
Note: Not all containers are used in every workload. If a feature like the Content Services GraphQL API is not used, that container requires less resources or is optionally not deployed.

In high-volume indexing scenarios, where ingested docs are full-text indexed, the CSS utilization can exceed the CPE utilization. In some cases, this might be 3 - 5 times larger.

For optional processing such as thumbnail generation or text filtering, at least 1 GB of native memory is required by the CPE for each. If both types of processing are expected, add at least 2 GB to the memory requests/limits for the CPE.

With the processing of content, resources required increase with the complexity and size of the content. Increase both memory and CPU for the CPE and CSS services to reflect the type and size of documents in your system. Resource requirements might also increase over time as the amount of data in the system grows.

If the sc_deployment_fncm_license parameter is set to concurrent-user or authorized-user, the CPE License Service Collector and License Service Reporter are installed to send user metrics to IBM License Service. The License Service Reporter is similar to a Cron job in that it runs only once a day.

Table 19. License Service Collector default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Collector (lscollector) 500 1000 512 1536 1024 1024 1 No
Table 20. License Service Reporter default requirements for a large profile
Component CPU Request (m) CPU Limit (m) Memory Request (Mi) Memory Limit (Mi) Ephemeral Storage Request (Mi) Ephemeral Storage Limit (Mi) Number of replicas Pods are licensed for production/non-production
License Service Reporter (lsreporter) 500 1000 512 1536 1024 1024 1 No

Storage considerations

See Storage considerations External link opens a new window or tab.

Security considerations

See Security considerations External link opens a new window or tab.

Logging considerations

By default, logging is enabled in your cluster and the logs are stored in a dedicated persistent data store. You can also collect and forward the standard output stdout logs from the containers to help you troubleshoot issues and improve their health and performance. See Logging considerations External link opens a new window or tab.

Image tags or digests

For a production installation, choose between image tags or digests. To make sure that a container always uses the same version of an image, you can specify its digest instead of an image tag. The digest identifies a specific version of the image, so it is never updated by Kubernetes. See Choosing image tags or digests External link opens a new window or tab.