vRA 8.1 – Integrating Ansible

In vRA 8 you can do integrations, in my case I have an Ansible server which I spend some time playing around with. I wanted to do an integration between vRA and Ansible. Both the community edition and Ansible Tower are supported. I will focus on the community edition here.

Here you can see what is possible in 8.1, I am guessing this will grow as later versions come along.

 

Prerequisites

Before starting with the integration in vRA you need to ensure a few things are setup on the Ansible server (Source: Configure Ansible Open Source integration in vRealize Automation Cloud Assembly).

  • Enable requiretty for your ansible user if this user is not root.
  • Make sure that your ansible user is added to the sudo file with the following paramters: username ALL=(ALL) NOPASSD: ALL
  • Configure the Vault Password file in /etc/ansible/ansible.cfg
  • Avoid host key failures by setting the “record_hosts_keys = false” in the paramiko_connection part of ansible.cfg (/etc/ansible/ansible.cfg)
  • It is also recommended to add the following to the ssh_connection
  • Giving the ansible user rw access to /etc/ansible is also required if you want to avoid using the root account.

 

[paramiko_connection] 
record_host_keys = False 

[ssh_connection] 
#ssh_args = -C -o ControlMaster=auto -o ControlPersist=60s ssh_args = -o UserKnownHostsFile=/dev/null # If you already have any options set for 
ssh_args, just add the additional option shown here at the end.

 

Adding the Integration in vRA

With those set, go to vRA login and then Integrations. (You find the integrations under Cloud Assembly –> Infrastructure –> Integrations)

 

Once there, click on Ansible and an Integration page opens up. Fill in the details as required. Here I use the root account, you probably do not want to do that in a prod environment.

Click on add and you should be taken back to the integration page and you now have at least two integrations.