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
- Update the system packages:
- Install Docker:
- Download and install Ansible AWX:
sudo yum update -y # For CentOS/RHEL
sudo apt update && sudo apt upgrade -y # For Ubuntu
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
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.