Setting Up Dynamic Deployment of Additional Plug-ins


This procedure describes how to set up ConfigMaps for the dynamic deployment of additional Control-M plug-ins in the Agent pod, along with the Kubernetes plug-in. Supported plug-ins are plug-ins that were developed in Control-M Application Integrator, including Helix Control-M Integrations.

Before You Begin

Ensure that your role is granted the authorizations described in Setting-Up-Control-M-Access-and-Authorizations.

Begin

  1. Create a YAML file with the definitions of a ConfigMap that lists the IDs of the plug-ins that you want to deploy, and apply the ConfigMap in Kubernetes.
    The following example plugin_list_cmap.yaml file lists two custom plug-ins:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: plugins-list
    data:
      plugins_list.txt: |
        JOBTYPE1
        JOBTYPE2

    Obtain plug-in IDs from the following locations:

  2. Obtain the certificates required by the deployed plug-ins and create a ConfigMap for the certificates by running the following command:
    kubectl create configmap mapName --from-file=key1=value1 --from-file=key2=value2
    Where key1... keyvalues define a path to each required certificate, as in the following example of a ConfigMap named cert-config:
    kubectl create configmap cert-config --from-file=key1=/path/to/cert1.pem --from-file=key2=/path/to/cert2.pem
    The certificates are stored in the Application Integrator keystore.
  3. Create a YAML file with the definitions of a ConfigMap that contains Application Integrator proxy settings for the plug-ins that you want to deploy, and apply the ConfigMap in Kubernetes.
    Define Application Integrator proxy settings as described in Proxy Server Parameters for Running Jobs.
    If you plan to use the Kubernetes plug-in to run pods to completion, ensure that you include the Kuberentes Server URL, kubernetes.default.svc, in your list of hostnames to exclude from using the proxy.
    The following is an example of such a YAML file:

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ai-proxy
    data:
      proxy.host: "host"
      proxy.port: "1234"
      proxy.user: "user"
      proxy.pass: "pass"
      proxy.nonProxyHosts: "mycompany.com|localhost|kubernetes.default.svc"
      proxy.ssl: "false"
  4. During the deployment of Control-M/Agents in the Kubernetes cluster, set the following Helm installation parameters to the names of the ConfigMaps that you created in the previous steps:

    • ai.additionalPluginsConfigMapName
    • ai.additionalCertsConfigMapName
    • ai.proxyConfigMapName

    For more information, see Deploying-Agents-Using-a-Helm-Chart and Helm-Installation-Parameters

    Example

    The following Helm parameters point to the ConfigMaps from the examples on this page:

    --set ai.additionalPluginsConfigMapName=plugins-list --set ai.additionalCertsConfigMapName=cert-config --set ai.proxyConfigMapName=ai-proxy


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*