Swiftorial Logo
Home
Swift Lessons
Matchups
CodeSnaps
Tutorials
Career
Resources

Installing Ansible Tower/AWX

Introduction

Ansible Tower/AWX is a web-based solution for managing Ansible automation. It provides a user interface, REST API, and task engine to manage and control Ansible deployments.

Prerequisites

  • Operating System: CentOS/RHEL 7 or 8, Ubuntu 18.04 or 20.04
  • Docker installed
  • PostgreSQL database (for Tower) or Redis (for AWX)
  • Python 3 and pip installed
Note: Ensure your system has at least 2GB of RAM and 20GB of disk space.

Installation Steps

  1. Update the system packages:
  2. sudo yum update -y  # For CentOS/RHEL
    sudo apt update && sudo apt upgrade -y  # For Ubuntu
  3. Install Docker:
  4. sudo yum install -y yum-utils
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    sudo yum install -y docker-ce
    sudo systemctl start docker
    sudo systemctl enable docker
  5. Download and install Ansible AWX:
  6. git clone https://github.com/ansible/awx.git
    cd awx/installer
    ansible-playbook -i inventory install.yml

Configuration

After installation, you need to configure AWX by setting up the admin user:

docker exec -it awx_task bash
awx-manage createsuperuser

Follow the prompts to create an admin user.

FAQ

What is the difference between Ansible Tower and AWX?

Ansible Tower is the commercial version of AWX, which is the open-source community version. Tower offers additional features like support and advanced security.

Can I use Ansible Tower/AWX for enterprise-level automation?

Yes, both Ansible Tower and AWX are designed to handle enterprise-level automation needs effectively.

Is it necessary to have a database for AWX?

AWX uses a database (PostgreSQL) to store its configuration and state, which is mandatory for its operation.