Ansible AWX Tutorial
Ansible AWX is the open-source version of Ansible Tower, now Ansible Automation Platform. Both AWX and Ansible Tower/AAP are web-based solutions for managing Ansible, but there are some differences between them, primarily in terms of support and certain features.
Ansible AWX Install
For a detailed overview on how to install Ansible AWX please check
Ansible AWX Install Guide on Ubuntu using Kubernetes or Docker
Basic requirements are:
- System installed with Linux
- 2 x CPU & 4GB RAM at least 40GB storage
- You can use m4.large instance on AWS
Ansible AWX Documentation
The Ansible AWX documentation can be found here
Ansible AWX vs Tower / AAP
Just to clarify on the terms Ansible AWX is the open source upstream version of what was Ansible Tower but is now called Ansible Automation Controller, which is party of the Ansible Automation Platform.
What are the advantages and disadvantages of using Ansible AWX
The primary advantage of using Ansible AWX is that it is open source and hence free to use, the main disadvantage is that you will be running without the support and stability that comes with a using the supported product like Ansible Automation Platform
Other benefits of using Ansible AWX over the CLI version of Ansible are
- Provides a central location to run Ansible playbooks instead of different engineers laptops. This ensures consistent and audited playbook operations.
- Centralised control node which can log automation events and also track successful and failed playbook runs.
- Better security management, you can connect AWX to AD or another credential management system and also delegate permissions as to who can run playbooks whilst hiding secrets. i.e. you could give a helpdesk operator the permission to run a playbook without exposing them to be able to edit the playbook or view any of the secrets.
- It also provides a REST API so you can integrate Ansible AWX with other tools.
Ansible AWX Terms
Once you have installed and logged into Ansible AWX you are faced with an empty screen which should look something like this
The main place we are going to focus on is under the Resources section.
Firstly the Jobs section will show you where every job has been run.
AWX templates are basically Playbooks.
Credentials are where you create your GitHub credentials to pull down playbooks and also where you add credentials to log into network devices or logging into Galaxy.
Projects are your source code repositories on GitHub
Inventories are either static or dynamic providing details of the hosts you want to automate.
AWX Playbook Examples
Red Hat Ansible Automation Platform vs AWX
Frequently asked questions
What is Ansible AWX used for?
Ansible AWX is used to manage Ansible Playbooks, Inventories, Credentials, and secrets between your team, it allows you to run Ansible playbooks from a WEB UI or API interface.
What is the difference between Ansible and AWX?
Ansible is the CLI version which you can run playbooks manually from the CLI and Ansible AWX is the open source upstream version of Ansible Automation Controller allowing you to run playbooks from a WEB UI or Rest API and AWX also allows you to control access to playbooks and credentials via RBAC.
What are the disadvantages of Ansible AWX?
The only real disadvantage of Ansible AWX is that it has no official support, any support is via the community.
What is the difference between Ansible AWX and Terraform?
Terraform is a tool designed specifically for provisioning of cloud infrastructure using state files, Ansible AWX is a tool to run Ansible Playbooks via a Web UI or Rest API, whilst they perform similar functions they are completely different tools.
What is the benefit of AWX?
The main benefit of AWX is that it provides a user-friendly interface to manage Ansible playbooks, inventories, and schedule jobs. The other major benefit is that it is open source and hence free to use.
What is the difference between AWX and Automation Controller?
Ansible AWX is the open source upstream project of Ansible Automation Controller. The main difference is that Ansible Automation Controller is fully supported by Red Hat whilst Ansible AWX has no official support and any support is obtained via the Ansible community.
How often is Ansible AWX released?
The typical release schedule for Ansible AWX is every 2 weeks.