Ansible Tower (formerly ‘AWX’) is a web-based solution that makes Ansible even more easy to use for IT teams of all kinds. It’s designed to be the hub for all of your automation tasks.
Tower allows you to control access to who can access what, even allowing sharing of SSH credentials without someone being able to transfer those credentials. Inventory can be graphically managed or synced with a wide variety of cloud sources. It logs all of your jobs, integrates well with LDAP, and has an amazing browsable REST API. Command line tools are available for easy integration with Jenkins as well. Provisioning callbacks provide great support for autoscaling topologies.
AWX provides a web-based user interface, REST API, and task engine built on top of Ansible. It is the upstream project for Tower, a commercial derivative of AWX.
1. Setup Requirements
yum install -y epel-release
yum remove python-docker-py
pip install cryptography
pip install jsonschema
pip install docker-compose~=1.23.0
pip install docker –upgrade
yum install -y yum-utils device-mapper-persistent-data lvm2 ansible git python-devel python-pip python-docker-py vim-enhanced
2. Install docker
Configure docker ce stable repository.
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce -y
Start docker service.
systemctl start docker
Enable docker service.
systemctl enable docker
3. Deploy AWX
Clone AWX repo
git clone https://github.com/ansible/awx.git
Clone commercial logos
git clone https://github.com/ansible/awx-logos.git
$ vim inventory
ansible-playbook -i inventory install.yml -vv
Check the status
docker ps -a
AWX is ready and can be accessed from the browser.
username is “admin” and the password is “password”.