Chapter 8. Install Private Automation Hub

With all the prerequisites set and in place, the final step is to modify the inventory file for a clustered automation hub installation and run setup.sh.

Within this reference environment, the controlplane-1.site1.example.com system is used to run the setup.sh for the clustered automation hub environment as it can access all the nodes.

Note

The following installation is done on site Ansible Site 1 of this reference environment Ansible Automation Platform cluster. After completion, ensure to follow the same steps for Ansible Site 2.

On controlplane-1.site1.example.com, as the ansible user, perform the following:

  1. Change directory into ansible-automation-platform-setup-2.1.0-1.tar.gz

    cd ansible-automation-platform-setup-2.1.0-1/
  2. Backup the existing inventory file

    $ cp inventory inventory-controller.bkup
  3. Modify the inventory file to include with the appropriate information about your environment. Below is an example of this reference environment.

    [automationcontroller]
    
    [automationcontroller:vars]
    
    [execution_nodes]
    
    [automationhub]
    ahub-1.site1.example.com 1
    ahub-2.site1.example.com
    ahub-3.site1.example.com
    
    
    [database]
    ahub-db.site1.example.com 2
    
    [servicescatalog_workers]
    
    [sso]
    
    [all:vars]
    admin_password=''
    
    pg_host=''
    pg_port=''
    
    pg_database=''
    pg_username=''
    pg_password=''
    pg_sslmode=''  # set to 'verify-full' for client-side enforced SSL
    
    registry_url= 'registry.redhat.io' 3
    registry_username='myusername' 4
    
    
    #Handled by Ansible vault
    registry_password='' 5
    
    receptor_listener_port=27199
    
    #Handled by Ansible vault
    automationhub_admin_password='' 6
    
    automationhub_pg_host='ahub-db.site1.example.com' 7
    automationhub_pg_port='5432' 8
    
    automationhub_pg_database='automationhub'
    automationhub_pg_username='automationhub'
    
    #Handled by Ansible vault
    automationhub_pg_password='' 9
    
    automationhub_pg_sslmode='prefer'
    
    sso_console_admin_password=''
    1
    automation hub nodes.
    2
    Set the node that will install the PostgreSQL database for the automation hub installation.
    3
    Execution Environment images are downloaded and included in your installation. Proper credentials required to download the images.
    4
    User credential for access to registry_url.
    5
    Password credential for access to registry_url.
    6
    Set the password for admin user to access the UI upon install completion.
    7
    Set the PostgreSQL host (database node).
    8
    Set the PostgreSQL port to use for the automation hub database node.
    9
    Set the password for the PostgreSQL database.
    Note

    All the information regarding the Ansible Automation Platform controller installation was removed.

  4. Create a file labeled credentials_ah.yml that will store the encrypted credentials.

    $ cat credentials_ah.yml
    automationhub_admin_password: my_long_ahub_pw
    automationhub_pg_password: my_long_ahub_pw
    registry_password: my_long_registry_pw
  5. Encrypt the credentials_ah.yml file using ansible-vault.

    $ ansible-vault encrypt credentials_ah.yml
    New Vault password:
    Confirm New Vault password:
    Encryption successful
    Warning

    Store your encrypted vault password in a safe place.

  6. Verify the credentials_ah.yml file is encrypted

    $ cat credentials_ah.yml
    $ANSIBLE_VAULT;1.1;AES256
    36383639653562386534316333333961383336306465336465613831353435313530376464616539
    3765393063303065323466663330646232363065316666310a373062303133376339633831303033
    34313534383962613632303761636632623932653062343839613639653635643365616233313365
    3636616639313864300a353239373433313339613465326339313035633565353464356538653631
    63346434383534643237663862353361366632613634333231316334363939396461326561643336
    3430633534303935646264633034383966336232303365383763
  7. Run the setup.sh for installation of Ansible Automation Platform 2.1 and pass the credentials_ah.yml, as well as, the --ask-vault-pass option

    $ ANSIBLE_BECOME_METHOD='sudo' ANSIBLE_BECOME=True ANSIBLE_HOST_KEY_CHECKING=False ./setup.sh -e @credentials_ah.yml -- --ask-vault-pass
    Note

    The following ANSIBLE*_ variables are set to ensure a successful install.

    Note

    For more information regarding the different values that can be set within your inventory file, visit: Setting up the inventory file

  8. Login to the private automation hub dashboard, e.g. automationhub-cluster.site1.example.com