Agent Deployment Scenarios
The following table presents examples of helm install <chart> commands that demonstrate how to deploy Control-M/Agents to a Kubernetes cluster in various use cases.
Scenario | Command | Description |
---|---|---|
Multiple Agents in the Application namespace | helm install <releaseName> controlm/helix-controlm-agent --version 9.21.310 --namespace=<agentNamespace> --set server.name=IN01 --set api.endpoint=https://controlm-tenant-aapi.us2.controlm.com/automation-api --set api.token=<apiToken> --set agent.tag=Admin --set pvc.storageClass=efs-sc | Deploys two Agents in the Application namespace (in the same namespace where Kubernetes jobs run) with a storage class that supports ReadWriteMany access mode. |
Multiple Agents in an Agent namespace separate from the Application namespace | helm install <releaseName> controlm/helix-controlm-agent --version 9.21.310 --namespace=<agentNamespace> --set server.name=IN01 --set api.endpoint=https://controlm-tenant-aapi.us2.controlm.com/automation-api --set api.token=<apiToken> --set agent.tag=Admin --set pvc.storageClass=efs-sc --set pod.serviceAccount.create=false --set pod.serviceAccount.name=<serviceAccountName> | Deploys two Agents in an Agent namespace (separate from the Application namespace where Kubernetes jobs run) using a pre-defined service account and with a storage class that supports ReadWriteMany access mode. |
Single Agent in the Application namespace | helm install <releaseName> controlm/helix-controlm-agent --version 9.21.310 --set agent.replicas=1 --set server.name=IN01 --set api.endpoint=https://controlm-tenant-aapi.us2.controlm.com/automation-api --set api.token=<apiToken> --set agent.tag=Admin --set pvc.storageClass=gp2 --set pvc.accessMode=ReadWriteOnce --set pvc.volumeSize=5Gi | Deploys a single Agent in the Application namespace (in the same namespace where Kubernetes jobs run) with a storage class set to ReadWriteOnce access mode with 5Gi. |
Multiple Agents in the Application namespace based on a pre-built docker image with external Java | helm install <releaseName> controlm/helix-controlm-agent --version 9.21.310 --set server.name=IN01 --set api.endpoint=https://controlm-tenant-aapi.us2.controlm.com/automation-api --set api.token=<apiToken> --set agent.tag=Admin --set pvc.storageClass=efs-sc --set image.repo=<imageRepo> --set image.tag=<imageTag> --set image.pullSecrets[0].name=dockerhub-controlm-cred | Deploys two Agents in the Application namespace (in the same namespace where Kubernetes jobs run) based on a pre-built docker image with external Java from a private Docker Hub repository (whose credentials are stored in a secret) and with a storage class that supports ReadWriteMany access mode. |
Multiple Agents in the Application namespace with deployment of multiple plug-ins | helm install <releaseName> controlm/helix-controlm-agent --version 9.21.310 --namespace=<agentNamespace> --set server.name=IN01 --set api.endpoint=https://controlm-tenant-aapi.us2.controlm.com/automation-api --set api.token=<apiToken> --set agent.tag=Admin --set pvc.storageClass=efs-sc --set ai.additionalPluginsConfigMapName=plugins-list --set ai.additionalCertsConfigMapName=cert-config --set ai.proxyConfigMapName=ai-proxy | Deploys two Agents in the Application namespace (in the same namespace where Kubernetes jobs run) with a storage class that supports ReadWriteMany access mode. The Agent pods contain the Kubernetes plug-in, as well as additional Control-M plug-ins listed in a Kubernetes configMap. Additional configMaps list the required certificates and Application Integrator proxy settings for these plug-ins. |