Chapter 1. Installing the automation services catalog worker

You can use the following instructions to extend your Red Hat Ansible Automation Platform to connect to {Catalog} hosted service on cloud.redhat.com.

1.1. Prerequisites

  • Automation controller and any instance group nodes associated with an organization service account specified in /inventory must be running on a RHEL 8.4 virtual machine.
  • You have registered the RHEL 8.4 virtual machine with Red Hat Subscription Manager. Installation generates a certificate used to authenticate with cloud.redhat.com.
  • You have attached the Ansible Automation Platform SKU to the Catalog Worker node.
  • You have enabled SSH on the RHEL 8.4 virtual machine running the automation services catalog worker.
  • Automation controller with at least one organization configured, including inventories, projects and job templates.
  • A service account is created for each organization that has write permissions on all objects mentioned above. Application token is created when the installer is run and not required as a prerequisite.

1.2. Adding host variables to the installer

Installing the automation services catalog worker requires adding host vars in the Red Hat Ansible Automation Platform installer used for installation parameters. The 'host_vars' files store parameter information for each host you specify. Refer to the parameters table below for all available and required parameters.

Table 1.1. Available host_vars parameters

ParameterRequired

servicescatalog_controller_hostname

 

servicescatalog_controller_name

 

servicescatalog_controller_user

Yes

servicescatalog_controller_password

Yes

servicescatalog_controller_validate_certs

 

servicescatalog_http_proxy

 

servicescatalog_https_proxy

 

servicescatalog_no_proxy

 

Procedure

  1. Navigate to the Ansible Automation Platform setup or setup bundle installer directory.

    # cd ansible-automation-platform-setup-<latest>
  2. Create a new directory called host_vars:

    # mkdir host_vars
  3. Create a file for each required host. Examples with parameters for two hosts are included below.

    1. Service account on localhost:

      # touch finance
      ansible_connection: local
      
      servicescatalog_controller_name: Finance
      
      servicescatalog_controller_user: finance_sa
      servicescatalog_controller_password: <password>
    2. Service account on an additional host:

      # touch marketing
      ansible_host: IP address
      ansible_user: [User should have sudo access to install packages and write to system-level configuration files]
      ansible_become: true
      
      servicescatalog_controller_name: Marketing
      
      servicescatalog_controller_user: marketing_sa
      servicescatalog_controller_password: password
  4. Save each file.
  5. Open the inventory file in the Ansible Automation Platform installer:

    # vi inventory
  6. Add the host_vars for each host under [servicescatalog_workers]:

    [servicescatalog_workers]
    finance
    marketing
  7. Save the inventory file.

1.3. Running the installer

You can now proceed to run the installer.

  • Run the Ansible Automation Platform setup script:

    # ./setup.sh

Running the automation services catalog worker will create an application and an application token, install the necessary packages, connect to cloud.redhat.com, and start the service.

Verification

You can verify that the automation services catalog worker installed and connected to your automation service catalog, and that jobs ordered in automation service catalog run on automation controller.

Prerequisites

You are a Catalog Administrator and can create portfolios and add products to them.

  1. Log in to cloud.redhat.com
  2. Navigate to Ansible Automation PlatformAutomation Services Catalog.
  3. Click Platforms.
  4. Locate the platforms associated with the hosts you created for your host_vars.
  5. Click on a platform.
  6. Verify that inventory and templates from your automation controller are included.