Enabling Business Automation Insights for your container environment

To capture Content events for further processing, you can configure a connection to a Business Automation Insights deployment, then install and configure the Content event emitter. The Content event emitter supports a subscription to Creation Event, Update Event, Deletion Event, and Get Content Event. Other event types are not supported. The Get Content Event is not configured by default, because when configured, it results in a large increase in emitted events.

Before you begin

Before you configure the Content event emitter, make sure that you have access to the IBM Business Automation Insights (BAI) service that processes the content events.

You can deploy BAI in one of the following ways:

Procedure

  1. Extract the BAI configuration information from your chosen BAI deployment.

    You need to extract and import configuration information, secrets, and certificates from BAI deployment into your CPE deployment in the FNCM container environment. You can package the configuration information into a zip file (for example, BAI_Kafka_config.zip). Make sure that the zip file that contains BAI configuration information is available in the machine where you want to enable BAI in the Content Platform Engine. Hence, the operator to configure the CPE deployment to connect to the BAI Kafka services.

    For more information, see topic Preparing to enable Business Automation Insights.

  2. Access a client machine that has access to the Kubernetes cluster for the FNCM deployment.
  3. Create a folder on the client machine to hold the files that are created as part of this procedure and go to the directory that you created.
    mkdir mytmp
    cd mytmp
    
  4. Within the folder, copy and extract the BAI configuration information from the zip file that you created in Step 1.
  5. Create a configmap named fncm-bai-configuration for the BAI configuration information within the CPE namespace.
    1. Specify the name of the file as bai_kafka_info.txt.
    2. Specify the mounting path for the file as ./BAI_Kafka_config/bai_kafka_info.txt
    3. Create a configmap named fncm-bai-configuration.
      kubectl create configmap fncm-bai-configuration 
      --from-file=bai_kafka_configuration=./BAI_Kafka_config/bai_kafka_info.txt -n <namespace>
  6. Within the CPE namespace, create a secret by using the contents of the BAI_Kafka_config/bai_kafka_secret.yaml file.
    1. Use the secret YAML file that you exported from the BAI deployment and clean the file for use in CPE deployment.
      You need to remove fields and values for ownerReferences, resourceVersion, uid, and creationTimestamp. These fields are specific to the BAI environment from where the secret was exported and must be removed before the YAML is used to create the secret for the next deployment.
    2. Update the namespace.
      The name of the namespace must match the FNCM deployment environment.
    3. Retain the name of the secret.
      The name of the secret must match the value corresponding to the key connection_secret_name in the newly created fncm-bai-configuration configmap.
      kubectl create -f ./BAI_Kafka_config/bai_kafka_secret.yaml -n <FNCM deployment namespace>
  7. Configure the Content event emitter.
    • (Option 1) - You can have the operator automatically configure the event emitter when the object store is initialized at deployment time. You can use the initialize_configuration section of the custom resource YAML and specify a parameter to include and configure the emitter during initialization:
      spec:
        initialize_configuration:
          ic_obj_store_creation: 
            object_stores:
              - oc_cpe_obj_store_display_name: "OS01"
              ## Make sure you set the initialization parameters values for object stores "OS01", "OS02", "OS03" in your domain before you set the value for "oc_cpe_obj_store_enable_content_event_emitter" parameter 
                oc_cpe_obj_store_enable_content_event_emitter: true
      
      If you use this method for configuring the emitter, you do not need to complete the manual steps in Option 2.
    • (Option 2) - If you want to add the Content event emitter functionality to an existing object store or add an object store after your initial deployment is completed, you can follow steps to install and configure the Content event emitter for your object store. Follow the steps to manually configure the content event emitter:
      1. Retrieving the Content event emitter module for configuration
      2. Initial event emitter configuration
      3. Upgrading the configuration of the Content event emitter
      You can customize which events are emitted by making different choices for which triggers are selected for the subscription.
  8. Apply the updated custom resource and modify your deployment.
    For more information, see topic Modifying your deployment.