• Skip to main content
  • Skip to header right navigation
  • Skip to site footer

Roger Perkin

Network Automation Architect

  • Network Automation
    • Network Automation Courses
    • Ansible Automation Platform
    • Ansible Workshop
    • What is Network Automation?
    • Network Automation Tools
    • ContainerLab
    • Ansible Training
      • What is Ansible Software?
      • Ansible Tutorial for Beginners
      • Ansible Network Automation
      • Ansible Hosts File
    • Python Network Automation
      • Nornir
      • Python Network Automation Course
      • Python for Network Engineers
      • Python VENV / Virtual Environment Tutorial
      • Python Tutorial for Beginners
      • pyATS
    • Network Source of Truth
      • NetBox Training
      • Infrahub
    • NetDevops
    • DevOps Tutorial
      • Git Training
      • Terraform Training
      • Linux Training
      • Kubernetes Training
      • Devops Training Course
      • Azure Devops Training
    • Terraform
    • GIT
      • Git Commands
      • What is GitHub?
    • Docker Training
    • Confluence
    • Microsoft Azure
  • Cisco
    • ISE
    • SD WAN Training
    • Password Recovery
    • Software-Upgrade-Guides
    • BGP
    • Data Center
    • WIRELESS
  • CCIE
  • Blog
  • About
    • My Red Special Guitar
  • Contact

AWX

Home » Network Automation » Ansible

Ansible AWX

Ansible AWX Tutorial

Ansible AWX is the open-source version of Ansible Tower, which is now Ansible Automation Controller which is part of the 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
https://docs.ansible.com/ansible/latest/collections/awx/awx/index.html

or

https://ansible.readthedocs.io

Ansible AWX vs Tower / AAP

Just to clarify on the terms Ansible AWX is the open source upstream version of what was Ansible Tower which 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

ansible awx gui

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

Ansible AWX templates also known as job templates, are configurations within the Ansible AWX platform that define how Ansible playbooks are executed.

A job template in Ansible AWX consists of various parameters and settings that specify how a particular Ansible playbook should be executed. These settings can include:

  1. Inventory: Specifies the hosts or groups of hosts that the playbook should target. AWX allows for dynamic inventory management, enabling the use of scripts or external sources to generate the inventory dynamically.
  2. Credentials: Defines the credentials needed to authenticate with the target hosts, such as SSH keys, usernames, and passwords.
  3. Playbook: Specifies the Ansible playbook that should be executed. This can either be a playbook stored within the AWX project or a playbook fetched from an external source, such as a Git repository.
  4. Limit: Optionally restricts the execution of the playbook to a subset of hosts within the inventory.
  5. Extra Variables: Allows passing additional variables to the playbook, which can be used to customize its behavior dynamically.
  6. Verbosity Level: Specifies the level of detail for the output generated during playbook execution.
  7. Timeouts: Defines the maximum duration allowed for playbook execution before it is considered failed.
  8. Notification Settings: Configures how notifications should be handled upon playbook completion, including email notifications or triggering webhooks.

By creating and configuring job templates in Ansible AWX, users can define standardized procedures for executing Ansible playbooks across their infrastructure. This helps streamline automation workflows, improve repeatability, and facilitate collaboration among team members working on infrastructure automation tasks. Additionally, AWX provides features for scheduling playbook execution, tracking job status, and auditing playbook runs, enhancing visibility and control over automation processes.

AWX Credentials

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.

AWX Projects

An Ansible AWX Project refers to the organisational structure within the Ansible AWX platform where Ansible playbooks, inventories, and related files are stored and managed. Ansible AWX is an open-source web-based interface for managing Ansible projects, playbooks, and tasks. It provides a centralized location for storing and orchestrating Ansible automation workflows, making it easier to collaborate on infrastructure management tasks.

Here are the key components and functionalities of an Ansible AWX Project:

  1. Playbooks: Playbooks are YAML files that define a series of tasks to be executed by Ansible on target hosts. In AWX Projects, playbooks are stored and version-controlled, allowing users to manage and update automation logic efficiently.
  2. Inventories: Inventories in Ansible AWX Projects define the hosts and groups of hosts that Ansible should manage. They can be static, specifying a list of hosts manually, or dynamic, generated dynamically using external sources such as cloud providers or inventory scripts.
  3. Variables: Projects can include variable files that contain data used by playbooks during execution. These variables can be defined at different levels, including playbook-level variables, group variables, and host variables.
  4. Credentials: AWX Projects can include credentials used to authenticate with target hosts. These credentials can be SSH keys, usernames, passwords, or other authentication methods required for accessing and managing hosts.
  5. Source Control Integration: Ansible AWX integrates with version control systems like Git, allowing projects to be synchronized with external repositories. This enables collaboration, version tracking, and change management for Ansible automation assets.
  6. Permissions and Access Control: AWX Projects support role-based access control (RBAC), allowing administrators to define user roles and permissions for accessing and modifying project resources. This ensures security and compliance by restricting access to sensitive infrastructure components.
  7. Job Templates: Job Templates are configurations within AWX Projects that define how Ansible playbooks should be executed. They specify parameters such as inventory, credentials, playbook, and other settings required for playbook execution.

Overall, Ansible AWX Projects provide a structured and centralised environment for managing Ansible automation assets, facilitating collaboration, version control, and streamlined execution of infrastructure automation workflows. They serve as the foundation for building and orchestrating complex automation solutions in IT environments of all sizes.

AWX Inventories

Inventories are either static or dynamic providing details of the hosts you want to automate.

AWX Hosts

AWX API

One of the main benefits of using AWX is the API, you can drive AWX via it’s API which opens up a great deal of options for your automations.

AWX Playbook Example

The demo will show how to get an Ansible Playbook into AWX and run, the playbook it will consist of the following steps.

1. Creating first AWX Project

2. Integrating GitHub Repo to AWX

Red Hat Ansible Automation Platform vs AWX

If you want to learn more about Ansible AWX you can check out my Ansible Network Automation Course – which is part of my Network Automation Course Bundle

Ansible 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.

Ansible AWX

What are the advantages of AWX vs Tower?

The primary advantage of AWX vs Tower is AWX is free and also you have all of the enterprise features for an unlimited number of nodes. Ansible AWX is the upstream open source version of Tower so contains all the features of Tower but with the disadvantage that you have no support, so all issues you face using AWX have to be supported by the community, if you install Tower a subscription based version from Red Hat you get support from Red Hat.

Is AWX the same as Tower?

AWX is the open source version of Tower, once installed it is operationally the same as Tower, which is the commercial version of AWX and offers additional features and support through a subscription like Automation Hub and Certified Collections.

What is the difference between AWX and automation controller?

AWX is the upstream open source version of Ansible Automation controller, which is part of the Ansible Automation Platform. AWX is designed to be a frequently released upstream project where all the development happens.

Automation controller is then developed by features in AWX and security hardened providing the automation controller stable version.

Ansible Configuration

What is the benefit of AWX?

Is AWX and Ansible Tower the same?

What is the difference between AWX and Ansible?

What are the disadvantages of Ansible AWX?

Ansible AWX

Ansible AWX

What is the equivalent of an Ansible inventory in the AWX world?

The Ansible Inventory is a list of hosts to be automated by Ansible and stored in a text file. Within AWX it uses the same file.

Ansible Automation Platform vs Ansible AWX

Is Ansible AWX Free?

Ansible AWX is free to install and use as there are no license restrictions which is great for a lab or POC, but if you are looking at using Ansible AWX in production be aware of hidden costs like support to keep the platform operational, compared to Ansible Automation Platform which comes with support from Red Hat.

Ansible AWX Documentation

The Ansible AWX Documentation can be found here – https://ansible.readthedocs.io/projects/awx/en/latest/

Ansible AWX API

For some Ansible AWX API Examples including how to pull Inventory & how get get an API token
Check out this post – 10 Ansible AWX API Examples

What is the difference between Templates and Projects in AWX?

Ansible AWX Projects

Projects in AWX are used to:

  • Define the source of your Ansible playbooks and related files
  • Connect to version control systems (like Git repositories) to fetch playbook content
  • Manage playbook updates and syncing

Key aspects of projects include:

  • They specify where AWX should look for playbooks, roles, and other Ansible content
  • Projects can be linked to Git repositories for version control
  • They allow for easy updating of playbook content by syncing with the source repository

Ansible AWX Templates

Templates in AWX, on the other hand, are used to:

  • Define how a specific job or workflow should be executed
  • Specify which playbook to run from a project
  • Set variables, credentials, and other parameters for job execution

Key aspects of templates include:

  • They reference a specific project to use for playbook content
  • Templates define the inventory, credentials, and other settings for job execution
  • They can be used to create reusable job definitions

Job Templates

Job templates are used for running individual playbooks

They consist of:

  • A reference to a specific playbook within a project
  • Inventory selection
  • Credential configuration
  • Other job-specific parameters

Workflow Templates

Workflow templates allow for more complex automation by:

  • Chaining multiple job templates together
  • Creating conditional paths based on job outcomes
  • Orchestrating complex multi-step processes

In summary, projects manage the source of your Ansible content, while templates define how that content should be executed as jobs within AWX. Projects provide the “what” (the playbooks and roles), and templates provide the “how” (the execution parameters and workflow)

Ansible AWX Backup

Docker Compose

Ansible AWX Server

Ansible AWX, an open-source project developed by Red Hat, has become a cornerstone in the world of automation and DevOps. It’s built on top of Ansible, providing a web-based user interface and REST API for managing Ansible projects, inventories, and playbooks.

AWX serves as the upstream project for Red Hat Ansible Automation Platform, offering enterprises a powerful tool for orchestrating complex IT environments.The community surrounding Ansible AWX is vibrant and constantly growing.

Contributors from various industries, including healthcare and financial sectors, collaborate to enhance its functionality and add new features. This open-source focus allows for rapid development and frequent releases, ensuring that AWX remains at the forefront of automation technology.

One of the key strengths of AWX is its ability to integrate with multiple platforms and sources. Users can connect their AWX instances to various version control repositories, such as GitHub or GitLab, to manage their Ansible projects. This integration facilitates a seamless DevOps workflow, allowing teams to review code changes and deploy updates efficiently.

AWX’s role-based access control (RBAC) is a crucial feature for enterprises that require fine-grained permissions. It allows administrators to define user roles and limit access to specific resources, projects, and inventories.

This functionality is particularly valuable for large organizations with complex hierarchies and strict security requirements. The execution environments in AWX provide a containerized approach to running Ansible playbooks. These environments can be customized to include specific requirements and dependencies, ensuring consistency across different deployment scenarios. Users can leverage Kubernetes operators to manage AWX deployments, making it easier to scale and maintain AWX instances in cloud-native environments.For those looking to learn AWX, the community offers a wealth of resources, including documentation, articles, and tutorials.

The project’s GitHub repository serves as a central hub for development, where users can review the source code, submit issues, and contribute to the project. The community also adheres to a code of conduct, fostering an inclusive and supportive environment for all contributors. While AWX is free and open-source, Red Hat offers an enterprise version with additional features and support through its Ansible Automation Platform. This subscription-based offering includes enhanced reporting, insights, and technical support, making it an attractive option for enterprises that require more robust solutions and dedicated assistance.AWX’s workflow capabilities allow users to create complex automation sequences, chaining together multiple playbooks and jobs.

This feature is particularly useful for orchestrating intricate DevSecOps processes, where security checks and compliance validations need to be integrated into the deployment pipeline.The project’s notification system keeps users informed about job statuses and system events. Administrators can set up various notification methods, including email, Slack, and custom webhooks, ensuring that the right people are alerted at the right time.

As AWX continues to evolve, it’s becoming an increasingly important tool in the DevOps toolkit. Its ability to manage and execute Ansible content at scale makes it invaluable for organizations of all sizes, from small startups to large enterprises. The project’s commitment to open-source principles and community-driven development ensures that it remains responsive to user needs and industry trends.For those who want to get involved, there are many ways to contribute to AWX. Whether it’s by submitting code, improving documentation, or participating in community discussions, every contribution helps to make AWX a more robust and feature-rich platform. The project welcomes contributors with various skills, from shell scripting to web development.

In conclusion, Ansible AWX represents a powerful solution for organizations looking to streamline their automation efforts. Its open-source nature, combined with the backing of Red Hat and a dedicated community, positions AWX as a leading choice for businesses seeking to enhance their DevOps practices and achieve greater operational efficiency.

awx documentation, ansible awx tutorial, awx docs, ansible awx training, install awx on ubuntu, awx without kubernetes, ansible awx install, install awx on docker, ansible awx, awx tutorial, awx, awx ansible, ansible awx documentation, ansible awx.awx, what is ansible awx, ansible disadvantages, awx ansible tutorial, what is awx, awx.awx, ansible awx docs, awx install, awx training, ansible/awx, awx python, awx terraform, ansible backup cisco config, awx awx, awx.awx ansible, ansible tower vs awx, awx system requirements, ansible awx requirements, auvik trial, awx getting started, awx install guide, awx tower documentation, anisble awx, awx user guide, awx tool, ansible awx rest api, ansible aw, what is awx ansible, ansible awx api

Table of Contents

  • Ansible AWX
    • Ansible AWX Tutorial
    • Ansible AWX Install
    • Ansible AWX Documentation
    • Ansible AWX vs Tower / AAP
      • What are the advantages and disadvantages of using Ansible AWX
    • Ansible AWX Terms
      • AWX Templates
      • AWX Credentials
      • AWX Projects
      • AWX Inventories
      • AWX Hosts
    • AWX API
    • AWX Playbook Example
      • 1. Creating first AWX Project
      • 2. Integrating GitHub Repo to AWX
      • Red Hat Ansible Automation Platform vs AWX
    • Ansible AWX Frequently asked questions
      • What is Ansible AWX used for?
      • What is the difference between Ansible and AWX?
      • What are the disadvantages of Ansible AWX?
      • What is the difference between Ansible AWX and Terraform?
      • What is the difference between Ansible AWX and Jenkins?
      • What is the benefit of AWX?
      • What is the difference between AWX and Automation Controller?
      • Where can I find support for AWX?
      • How often is Ansible AWX released?
      • Can you upgrade AWX from one version to another?
      • Ansible AWX
      • What are the advantages of AWX vs Tower?
      • Is AWX the same as Tower?
      • What is the difference between AWX and automation controller?
    • Ansible Configuration
      • What is the benefit of AWX?
      • Is AWX and Ansible Tower the same?
      • What is the difference between AWX and Ansible?
      • What are the disadvantages of Ansible AWX?
      • Ansible AWX
        • Ansible AWX
      • What is the equivalent of an Ansible inventory in the AWX world?
      • Ansible Automation Platform vs Ansible AWX
      • Is Ansible AWX Free?
        • Ansible AWX Documentation
    • Ansible AWX API
    • What is the difference between Templates and Projects in AWX?
      • Ansible AWX Projects
      • Ansible AWX Templates
      • Job Templates
      • Workflow Templates
    • Ansible AWX Backup
    • Docker Compose
    • Ansible AWX Server
Category: Ansible Network Automation
ansible course for network engineers
Get Access to my Ansible Course NOW
Previous Post:Ansible Variable Precedence
Next Post:What is GitHub?what is github

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Sidebar

Hi I'm Roger Perkin,
Based in the UK working as a Network Automation Architect, CCIE #50038
About Roger | Twitter | Linkedin

python course for network engineers

More Ansible

  • What is Ansible?
  • AWX
  • Ansible Template Module
  • Ansible Vault Tutorial
  • Ansible vs Python Scripts
  • Advantages of Ansible Roles
  • Ansible Hosts File Tutorial
  • How to install Ansible Tower
  • Ansible Training
  • Ansible Cisco IOS Command
  • Use Ansible to Backup Cisco Config
  • Where are Ansible Modules Stored?
  • AnsibleFest London Review

Topics

Network Automation
Ansible
Python for Network Automation
CCIE
Cisco ISE
F5 Certification
BGP
OSPF
Network Automation Conferences
auvik promo banner
Pluralsight Trial

Git for Network Engineers

Ansible vs Nornir

Start learning today with my Network Automation Courses

Master Ansible, Python, Git, Nornir, Jenkins and more..


Buy me a coffeeBuy me a coffee

ansible network automation course

Have you seen my YouTube Channel?

YouTube Subscribe

Let’s get started

Take a look at my premium courses on Ansible, Nornir & Git or buy them all with the Network Automation Bundle!

Network Automation Courses

Navigation

Home

Blog

About

C

Python VENV Tutorial
Python for Network Engineers

Network Automation
Network Automation Courses
Network Discovery Tools
Network Automation Conferences
Ansible Training
Devops Tutorial
Network Source of Truth
DevOps Glossary
Network Monitoring Software

Contact

Contact

Get in touch with me here

[email protected]

  • Twitter
  • LinkedIn
  • YouTube
Buy me a coffeeBuy me a coffee

Copyright © 2025 · Roger Perkin · All Rights Reserved · Privacy Policy – Terms