This guide helps you get your Ansible Tower installation up and running as quickly as possible.
At the end of the installation, using your web browser, you can access and fully utilize Tower.
1.2. Prerequisites and Requirements
For platform information, refer to Supported Platforms and Requirements and Platform Specific Notes in the Ansible Tower Installation and Reference Guide.
Ansible Tower has the following requirements:
Note
Tower is a full application and the installation process installs several dependencies such as PostgreSQL, Django, Apache, and others.
It is required that you install Tower on a standalone VM or cloud instance and do not co-locate any other applications on that machine
(beyond possible monitoring or logging software). Although Tower and Ansible are written in Python, they are not just simple Python libraries. Therefore Tower cannot be installed in a Python virtualenv, a Docker container, or any similar subsystem; you must install it as described in the installation instructions below.
Supported Operating Systems:
- Red Hat Enterprise Linux 6 64-bit
- Red Hat Enterprise Linux 7 64-bit
- CentOS 6 64-bit
- CentOS 7 64-bit
- Ubuntu 12.04 LTS 64-bit
- Ubuntu 14.04 LTS 64-bit
The latest stable release of Ansible
An HTML5 compliant web browser
2 GB RAM minimum (4+ GB RAM recommended)
- 2 GB RAM (minimum and recommended for Vagrant trial installations)
- 4 GB RAM is recommended per 100 forks
20 GB hard disk
64-bit support required (kernel and runtime)
For Amazon EC2:
- Instance size of m3.medium or larger
- An instance size of m3.xlarge or larger if there are more than 100 hosts
For HA MongoDB setups:
The default scan operation has the four (4) modules listed, but you can add your own. Depending on the kinds of modules and the size of the facts you are gathering, that size might be larger.
To help keep the size down, you can use a management job to purge old facts. Refer to Management Jobs in the Ansible Tower Administration Guide for more information
Note
Tower depends on Ansible playbooks and requires the installation of the latest stable version of Ansible before installing Tower.
Use the latest stable release of Ansible for best performance and to ensure the latest bug fixes are available. Versions of Ansible 1.8 or later are supported for Ansible Tower 2.2.
Detailed instructions on installing Ansible are available at: http://docs.ansible.com/intro_installation.html
While other operating systems may technically function, currently only the above list is supported to host an Ansible Tower installation. If you have a firm requirement to run Tower on an unsupported operating system, please contact Ansible via the Red Hat Customer Portal at https://access.redhat.com/. Management of other operating systems (nodes) is as documented by the Ansible project itself, and allows for a wider list.
Actual RAM requirements vary based on how many hosts Tower will manage simultaneously (which is controlled by the forks
parameter in the job template or the system ansible.cfg
file). To avoid possible resource conflicts, Ansible recommends 4 GB of memory per 100 forks. For example, if forks
is set to 100, 4 GB of memory is recommended; if forks
is set to 400, 16 GB of memory is recommended.
A larger number of hosts can of course be addressed, though if the fork number is less than the total host count, more passes across the hosts are required. These RAM limitations are avoided when using rolling updates or when using the provisioning callback system built into Tower, where each system requesting configuration enters a queue and is processed as quickly as possible; or in cases where Tower is producing or deploying images such as AMIs. All of these are great approaches to managing larger environments. For further questions, please contact Ansible via the Red Hat Customer Portal at https://access.redhat.com/.
Note
It is strongly recommended to use the latest stable release of Ansible for best performance and to ensure the latest bugfixes are available. However, any version of Ansible 1.8 or later is supported for Ansible Tower 2.2.
The requirements for systems managed by Tower are the same as for Ansible at: http://docs.ansible.com/intro_getting_started.html
For convenience, summaries of those instructions are in the following sections.
1.3. Configuration and Installation for Ansible with Red Hat Enterprise Linux and CentOS
The following steps help you configure access to the repository as well as install Ansible.
1.3.2. Install Ansible on Red Hat Enterprise Linux and CentOS (version 6 or later):
root@localhost:~$ yum install ansible
1.5. Tower Installation Scenarios
Tower installs in one of three scenarios and each of these scenarios are configurable through the Tower Installation Wizard:
- Single Machine integrated installation
- Single Machine with an external database
- High Availability Multi-Machine with an external database
For more information on these installation scenarios, refer to Tower Installation Scenarios.