Deploying TIBCO BusinessEvents® Cluster for No Backing Store on AWS

BusinessEvents cluster can be deployed on AWS using the configuration files (YAML format), which contain the configuration details for deployment including environment variables.

Prerequisites

For deploying BusinessEvents cluster for No Backing Store on AWS, you must first set up Kubernetes cluster on AWS and then upload your Docker image on AWS. For more information, see Running TIBCO BusinessEvents® on AWS Based Kubernetes Cluster.

Procedure

  1. Create Kubernetes resources, required for deploying BusinessEvents cluster, using the YAML files.
    These resources include deployment and services for the cluster. Thus, to deploy a BusinessEvents cluster, create:
    • a discovery node (pod) to start the cluster
    • a service to connect to discovery node
    • a cache agent node which connects to the discovery node service
    • an inference agent node which connects to the discovery node service
    • a service to connect to the inference agent.
    You can find the following sample YAML files at BE_HOME\cloud\kubernetes\.
    Sample Kubernetes Resource YAML Files for No Backing Store
    File Name Resource Resource Type Description
    bediscoverynode.yaml Discovery node Deployment Set up the container (containers) with the docker image (image) of the application. Provide a label (labels) to the deployment which the discovery node service can use as selector. Specify only one replica (replicas) of the discovery node.
    bediscovery-service.yaml Discovery node service Service (Internal) Set up the service to connect to the discovery node. Specify the label of the discovery node as the value of selector. Other nodes in the cluster use this service to connect to the discovery node. Specify the protocol and port to connect to this service.
    becacheagent.yaml Cache agent node Deployment Set up the container (containers) with the docker image (image) of the application. Specify replicas value and start as many cache agent as specified in the value. Connect to the discovery node service using the discovery protocol and port specified in the discovery node service.
    beinferenceagent.yaml Inference agent node Deployment Set up the container (containers) with the docker image (image) of the application. Provide a label (labels) to the deployment which the inference agent service can use as selector. Specify at least one replica (replicas) of the inference agent node. Connect to the discovery node service using the discovery protocol and port specified in the discovery node service.
    befdservice.yaml Inference agent service Service (LoadBalancer/External) Set up the service to externally connect to the inference agent. Setup the label of the inference agent as the value of the selector variable for connection. Specify the protocol and port to connect to this service externally.
  2. Run the create command of kubectl utility by using the YAML files to deploy the BusinessEvents cluster.
    For example, deploy the cluster by using the following sample files:
    kubectl create -f bediscovery-service.yaml
    
    kubectl create -f bediscoverynode.yaml
    
    kubectl create -f becacheagent.yaml
    
    kubectl create -f beinferenceagent.yaml
    
    kubectl create -f befdservice.yaml
    You can also get the external IP to the external service of the cluster by using the get services command. You can then use that IP to connect to the cluster.
    kubectl get services befdservice
    You can check the logs of individual BusinessEvents container pods using the following command:
    kubectl logs <pod>