Exercise 4.0: Explore Red Hat Ansible Automation Controller¶
Objective¶
Ansible Automation Controller is a web-based solution where you can centralize and control your IT infrastructure with a visual dashboard, role-based access control, job scheduling, integrated notifications and graphical inventory management. Ansible Automation Controller includes a REST API and CLI in addition to the web UI.
In this lab, you will log in and perform some basic configurations that will be used in later labs to perform automation tasks against your F5 BIG-IP device.
- This exercise will cover:
Determining the Ansible Automation Platform version
Locating and understanding:
Inventories
Credentials
Projects
Templates
Guide¶
Step 1: Access the Ansible Automation Platform¶
In your Deployment goto Components –> Ansible-Node –> Access –> Ansible-Controller
![]()
Step 2: Login to the Ansible Automation Platform¶
This login information has been provided by the instructor at the beginning of class.
The username will be
admin
password provided by instructor
After logging in the Job Dashboard will be the default view as shown below.
Click on the ? information button on the top right of the user interface and then click About.
![]()
information button link¶
A window will pop up similar to the following:
![]()
version info window¶
Take note that the Ansible Automation Controller version is provided here.
Step 3: Examine the Inventory¶
An inventory is required for Red Hat Ansible Controller to be able to run jobs. An inventory is a collection of hosts against which jobs may be launched, the same as an Ansible inventory file. In addition, Red Hat Ansible Controller can make use of an existing configuration management database (cmdb) such as ServiceNow or Infoblox DDI.
More info on Inventories in respect to Ansible Controller can be found in the documentation here
Click on the Inventories button under RESOURCES on the left menu bar.
![]()
Inventories Button¶
Under Inventories, Click on the
Workshop Inventory
.![]()
Workshop Inventory¶
Under the
Workshop Inventory
, click the HOSTS button at the top. There will be hosts configured here. Click on one of the devices.![]()
Inventories Hosts¶
![]()
Host Specific Data¶
Click on the
Workshop Inventory
link at the top of the page to return the top level menu.Click on GROUPS. This is where you can configure Group of hosts
![]()
Inventory Groups¶
Step 4: Examine the Workshop Project¶
A project is how Ansible Playbooks are imported into Red Hat Ansible Automation Controller. You can manage playbooks and playbook directories by either placing them manually under the Project Base Path on your Ansible Tower server, or by placing your playbooks into a source code management (SCM) system supported by Controler, including Git, Subversion, and Mercurial etc.
For more information on Projects in Controller, please refer to the documentation
Click on the Projects button under RESOURCES on the left menu bar.
![]()
projects link¶
Under PROJECTS there will be one pre-configured projects,
Ansible Project Demos
. Open it up by clicking on the object.Note
that
Git
is listed for this project. This means this project is usingGit
for Source Controle Type.![]()
project link¶
Under the
Ansible Project Demos
click the Source Control Type drop down menuNote
Note that Git, Manual and Subversion are some of the choices. Return the choice to Git so that the Project continues to function correctly.
Step 5: Examine the Workshop Credential¶
Credentials are utilized by the Red Hat Ansible Automation Platform for authentication when launching Jobs against machines, synchronizing with inventory sources, and importing project content from a version control system. For the workshop we need a credential to authenticate to the network devices.
For more information on Credentials in Automation Controller please refer to the documentation.
Click on the Credentials button under RESOURCES on the left menu bar.
![]()
credentials link¶
Under CREDENTIALS there will be a few pre-configured credentials. Click on the
Workshop Credential
.Under the
Workshop Credential
(Edit) examine the following:
The CREDENTIAL TYPE is a
Machine
credential.The USERNAME is set to
rhel-user
.The PASSWORD is
blank
. This credential is using a SSH Private Key instead of a password.The SSH PRIVATE KEY is already configured and is
ENCRYPTED
.![]()
credential¶
Click Cancel (Do not SAVE anything.)
Step 6: Examine the Job Template¶
Templates or Job Templates define the parameters that will be used when executing an Ansible playbook. These parameters include previously mentioned features such as which project and inventory will be used. Additionally, parameters such as logging level and process forks allow for additional granularity on how playbooks are ran.
Click on the Templates button under RESOURCES on the left menu bar.
![]()
There will not be any configured templates at this time, we will be configuring one later in this lab.
![]()
Takeaways¶
Ansible needs an inventory to execute Ansible Playbooks against. This inventory is identical to what users would use with the command line only Ansible project.
Ansible Automation Controller can sync to existing Source Control Types including
GitHub
.Ansible Automation Controller can store and encrypt credentials including SSH private keys and plain-text passwords. Ansible Automation Platform can also sync to existing credential storage systems such as CyberArk and Vault by HashiCorp
Job Templates define the parameters that will be used when executing an Ansible playbook
Complete¶
You have completed lab exercise 4.0
You have now examined all three components required to get started with Ansible Automation Controller. (A credential, an inventory and a project).
In the next exercise we will create a job template.
Click here to return to the Ansible Network Automation Workshop