Scaling Interact containers

Each existing Interact machine runs a Kubernetes Interact deployment. If you have set the hostNetwork to TRUE, the existing network, which already supports multicast, can be used as it is without changing any settings. You can also use the existing load balancers over the Kubernetes Interact deployments.

To scale Interact pods for multiple server groups, refactor the helm chart to add services and deployments per server group. Each Server Group should point to a different Platform Instance. For example, if there are three RT server groups, there will be three Platform instances (three services and three deployments for Platform and Interact).

The CONTEXT_ROOTS variable, in the interact_configMap.yaml file drives:
  • the context roots for Interact and Platform.
  • PLT and RT database details per server group.

If you want to scale pods for a server group, run the following command:

kubectl scale deployment hcl-unica-interact --replicas=2

If the Interact POD crashes, or if you manually delete the pod, manually delete an entry from the configuration using the following command:

./configTool.sh -d -p 'Affinium|Campaign|partitions|partition1|Interact
|serverGroups|interactatm|instanceURLs|$1' -o "

In the earlier command $1 refers to the Interact POD name that crashed or was manually deleted.

Monitoring the scaled instances

Note: Ensure that VNC viewer exists on the host machine to monitor instances.

You can perform JMX monitoring for each of the scaled instances using port forwarding.

For POD1, run the following command:

kubectl port-forward --address 0.0.0.0 pod/unica-omnix-unica-interact-84d7b47f59-d2rsl 9998:9998 &

For POD2, run the following command:

kubectl port-forward --address 0.0.0.0 pod/unica-omnix-unica-interact-84d7b47f59-d2rsl 9999:9998 &

Additionally, if your application server is WebLogic, the DB hostname should be a fully qualified domain name or else the Kubernetes service name will not work.