Control-M Automation API Provisioning

Control-M Automation API provides a Provision service for installation and setup of Control-M/Agents, plug-ins, and integration plug-ins, as well as for installation of Control-M/Servers.

Provisioning of Control-M/Servers or of new Control-M/Agents is based on images, which are json files that list the installation packages in the order that they are installed. Several default images are provided by the API, and you can create additional custom images (for example, for a newer version of the Control-M/Agent).

The following procedures describe the preparatory tasks for enabling provisioning of Agents and plug-ins:

The Provision service in Control-M Automation API also enables you to upgrade an existing Control-M/Agent, by deploying a new version of the Control-M/Agent or installing/upgrading Control-M Managed File Transfer (MFT) or Control-M Application Pack. To prepare for this type of provisioning, see Preparing Installation Packages for Agent Upgrades.

Setting Up a Local Repository for Provision Images and Installation Packages

This procedure describes how to set up an optional local repository where you can save both images and installation packages for the provisioning process.

You can use this repository instead of using the default location for installation packages on the Control-M/EM server (the AUTO_DEPLOY directory).

Alternatively, you can change the storage location of just the installation packages, as described in Changing the Location of the Provision Service Installation Packages.

Begin

  1. Create a repository directory in your file system or in a location accessible via HTTP (for example, in a JFrog Artifactory repository or in Amazon S3 Buckets).

    In this directory, you store the installation packages of Control-M components (such as Control-M/Agent, application plug-ins, integration plug-ins, or even plug-ins developed in Control-M Application Integrator) that you obtain as described in Obtaining Installation Packages for Provisioning.

  2. In the repository directory, create a descriptors directory to contain the JSON images for the provisioning process.

  3. (Optional) In the descriptors directory, create a silent directory to contain XML files for silent installations.

  4. Set up the use of the local repository during provisioning actions using one of the following options:

    • For a specific environment: Run the following environment configure API commands:

      • Set the path to the storage location of installation packages:

        Copy
        ctm environment configure EXT_AUTO_DEPLOY <repo_path>
        Copy
        ctm environment configure EXT_AUTO_DEPLOY file:///home//localProvisionRepo
        ctm environment configure EXT_AUTO_DEPLOY https://s3-us-west-2.amazonaws.com/localProvisionRepo
      • Set the path to the storage location of images:

        Copy
        ctm environment configure EXT_APPLICATION_ARTIFACTS_JSON_URL <repo_path>/descriptors
        Copy
        ctm environment configure EXT_APPLICATION_ARTIFACTS_JSON_URL file:///home//localProvisionRepo/descriptors
        ctm environment configure EXT_APPLICATION_ARTIFACTS_JSON_URL https://s3-us-west-2.amazonaws.com/localProvisionRepo/descriptors
    • For all environments associated with the Control-M/EM : Use a provision repository API command to set the path to the storage location of installation packages.

      Copy
      ctm provision repository::add <name> <location> [<description>]
      Copy
      ctm provision repository::add Location1 file:///home//localProvisionRepo "Local repository"

      You can use this API command to define multiple local repositories. To determine the default repository to use in provisioning actions, out of all the defined repositories, you can run the provision repository::set API command. Alternatively, you can specify the repository in each individual provisioning action, using the -r option in the provision image and provision agent::install API commands.

Changing the Location of the Provision Service Installation Packages

This procedure describes how to change the default location of the installation packages that are used by the Provision service.

This procedure requires communication with the Control-M/Server.

Alternatively, you can set up a local repository for both installation packages and provisioning images without communicating with the Control-M/Server, as described in Setting Up a Local Repository for Provision Images and Installation Packages.

Begin

  1. Navigate to the following directory:

    • UNIX: $HOME/ctm_em/etc/emweb/automation-api/downloads/descriptors

    • Windows: <EM_HOME>\ctm_em\emweb\automation-api\downloads\descriptors

  2. Open the ProvisionConfig.json file and change the ImagesLocation parameter to the new URI location.

    By default, the string is empty, which means it is set to <EM_HOME>/AUTO_DEPLOY.

    https://somewhere.someplace.com/

    file:///home/controlm/installers

Obtaining Installation Packages for Provisioning

This procedure describes how to obtain the installation packages that are referenced from the provisioning images.

For a list of installation packages that you must set up for the default provisioning images, see Installation Packages Referenced by Default Images.

You might need additional installation packages that you reference from your own custom images, as discussed in Creating a Custom Image for Provisioning.

Begin

  1. For each installation package of an Agent or plug-in, perform the following steps:

    1. Click https://www.bmc.com/available/edownloads.html and follow the instructions on the EPD site until you reach the Download Files page for the relevant product, version, and platform.

    2. From the Products tab, click the relevant installation package to download it.

    3. Save the installation package in one of the following locations:

  2. Prepare the installation package for Control-M for Advanced File Transfer (provided that you have installed Control-M Managed File Transfer), by copying the relevant DRAFT*.zip or DRAFT*.tar.Z file from <EM_HOME>/CM_DEPLOY to the location where you store all other installation packages.

Installation Packages Referenced by Default Images

The following table lists the installation packages that are referenced by the default provisioning images provided in Control-M Automation API.

Package Name Product Component Version Referencing Images

DRFZ4.9.0.21.000_AIX-x86_64.tar.Z

Control-M/Agent

9.0.21.000

  • Agent_21.AIX

  • Agent.AIX

DRKAI.9.0.20.000_AIX-x86_64.tar.Z

Control-M/Agent

9.0.20.000

Agent_20.AIX

DRKAI.9.0.20.000_Linux-x86_64.tar.Z

Control-M/Agent

9.0.20.000

Agent_20.Linux

DRFZ4.9.0.21.000_Linux-x86_64.tar.Z

Control-M/Agent

9.0.21.000

  • Agent_21.Linux

  • Agent.Linux

  • ApplicationsAgent.Linux

  • BigDataAgent.Linux

DR1CM.9.0.21.000_Linux-x86_64.tar.Z

Control-M for Databases

9.0.21.000

  • ApplicationsAgent.Linux

  • BigDataAgent.Linux

DRAFT.9.0.21.000_Linux-x86_64.tar.Z

Control-M for Advanced File Transfer

9.0.21.000

ApplicationsAgent.Linux

DR1CM.9.0.21.000_Linux-x86_64.tar.Z

Control-M for Hadoop

9.0.21.000

  • ApplicationsAgent.Linux

  • BigDataAgent.Linux

DRCTV.9.0.20.000_Linux-x86_64.tar.Z

Control-M/Server

9.0.20.000

Server_20.Linux

DRCTV.9.0.21.000_Linux-x86_64.tar.Z

Control-M/Server

9.0.21.000

Server.Linux

DRKAI.9.0.20.000_windows_x86_64.zip

Control-M/Agent

9.0.20.000

Agent_20.Windows

DRFZ4.9.0.21.000_windows_x86_64.zip

Control-M/Agent

9.0.21.000

  • Agent_21.Windows

  • Agent.Windows

  • ApplicationsAgent.Windows

DR1CM.9.0.21.000_windows_x86_64.zip

Control-M for Databases

9.0.21.000

ApplicationsAgent.Windows

DRAFT.9.0.21.000_windows_x86_64.zip

Control-M for Advanced File Transfer

9.0.21.000

ApplicationsAgent.Windows

DRCTV.9.0.20.000_windows_x86_64.zip

Control-M/Server

9.0.20.000

Server_20.Windows

DRCTV.9.0.21.000_windows_x86_64.zip

Control-M/Server

9.0.21.000

Server.Windows

Creating a Custom Image for Provisioning

This procedure describes how to create a custom image by copying and editing one of the provided default images. This procedure is useful, for example, if you want to install a newer version of the Control-M/Agent or Control-M/Server during provisioning, or if you want to install a new fix pack on top of the base version.

Begin

  1. Navigate to the following directory:

    • UNIX: $HOME/ctm_em/etc/emweb/automation-api/downloads/descriptors

    • Windows: <EM_HOME>\ctm_em\emweb\automation-api\downloads\descriptors

  2. Create a copy of one of the existing images and store it in one of the following locations:

    • If you do not use a local repository: In the same directory as the original image

    • If you use a local repository: In the descriptors directory in your repository

    Give your new image file a name according to its objective, followed by .Linux or .Windows, and then the file extension .json.

  3. Using any text editor, open the new image file that you created and edit the list of installation packages within it. Then save the file.

  4. Download any new installation packages that you referenced within your new image and have not yet obtained. Store them in the proper location, as discussed in Obtaining Installation Packages for Provisioning.

    For a list of installation packages that are referenced by the default images, see Installation Packages Referenced by Default Images.

    To prepare for provisioning of Control-M/Agent version 9.0.20.000 with Patch 1 (PAKAI.9.0.20.001) on a Windows host, a copy of the Agent.Windows.json image is named Agent_9020001.Windows.json. The PAKAI.9.0.20.001_windows_x86_64.zip file is downloaded from the EPD site and the image file is edited to contain the following JSON code:

    Copy
    {
       "OS": "windows-x86_64",
       "Installers":
          [
             "DRKAI.9.0.20.000_windows_x86_64.zip",
             "PAKAI.9.0.20.001_windows_x86_64.zip"
          ]
    }

    The above samples are overwritten by each new Automation API monthly release. You must copy the samples and make your own as indicated in step 2.

  5. Ensure that your new image is detected by the API, by running the ctm provision images command. Ensure that your new image is returned by the API command.

    For more information about this command, see Provision service.

Preparing Installation Packages for Agent Upgrades

This procedure describes how to prepare the installation packages that you need for Control-M/Agent upgrades using the Control-M Automation API Provision service.

Begin

  1. Ensure that the <EM_HOME>/AUTO_DEPLOY directory contains the relevant Control-M/Agent packages to which you plan to upgrade.

    If a package that you need is not yet located in this directory, obtain it from the EPD site:

    1. Click https://www.bmc.com/available/edownloads.html and follow the instructions on the EPD site until you reach the download page for the relevant version and platform of the Control-M/Agent.

    2. From the Products tab or the Patches tab, click the relevant Control-M/Agent package (DRKAI* or PAKAI* file, respectively) and save it in the <EM_HOME>/AUTO_DEPLOY directory.

  2. Ensure that the <EM_HOME>/CM_DEPLOY directory contains the relevant installation packages for the following components:

    • Control-M Managed File Transfer (MFT) Add-on: MFT installation packages for the Agent (DRAFT* or PAAFT*) are copied to the CM_DEPLOY directory during installation of Control-M MFT on the Control-M/EM server. If this directory does not yet contain the relevant package for Control-M MFT, download the relevant installation package (DRAFP* or PAAFP*) from the EPD site and perform the installation on the Control-M/EM server, as described in Control-M MFT Deployment Package Installation.

    • Control-M Application Pack Plug-in: Installation packages for this plug-in (DR1CM* or PA1CM*) are stored in the CM_DEPLOY directory during installation of Control-M/EM.