Before answering the question, “What is Ansible Tower?”, it’s important to understand the basic principles of its predecessor, Ansible. An open-source product created by Red Hat, Ansible is a popular platform used to automate repetitive IT processes and manage configurations across an IT infrastructure.
Ansible replaces time-consuming and error-prone manual processes for tasks like cloud provisioning, configuration management, and application deployment, making it a staple for today’s system administrators and DevOps professionals. Ansible uses a push-based configuration that automatically sends pre-written configuration files (which Ansible calls playbooks) from the Ansible server (host) to the target machine (the node). The node then uses the simple configuration file to complete a task without the need to install additional software.
Ansible Tower is the enterprise version of Ansible. It allows sysadmins to deploy all of the benefits of Ansible at scale. And, like Ansible, it integrates with a broad base of your existing technology infrastructure: networking, security, application deployment, storage, software development lifecycle processes, etc.
Ansible Tower Features
Formerly known as AWX, Ansible Tower employs a web-based user interface that makes it even more intuitive for IT team members of all system administration experience levels. When thinking of Ansible vs Ansible Tower, it’s helpful to consider Ansible Tower’s capabilities as an extension of those available in Ansible. Its features include:
- Graphical user interface (GUI) dashboard
- Role-based access control
- Job scheduling
- Multi-playbook workflows
- RESTful API
- External logging integrations
- Real-time job status updates
Ansible Tower Architecture
There are three possible architectures available for Ansible Tower: single machine with integrated database, single machine with remote database, and high-availability multi-machine cluster. No matter which of the three you use, the primary architecture uses the same building blocks.
- Users interface with the platform via the graphical web interface or its RESTful API.
- Ansible Tower requires at least one host and one node.
- Playbooks are prewritten YAML code that acts as the blueprint of automation tasks. They are lists of tasks that automatically execute against hosts.
- Using Tower, a set, group, or classification of hosts runs playbooks.
- Ansible Tower is agent-less, meaning it works by uploading modules to the node then executing them–no “agent” or need to install special software.
Installation of Ansible Tower
There are two ways to install Ansible Tower: use the Standard installer or use the Bundled installer for Red Hat Enterprise Linux 7. Whichever you choose, be sure to meet the platform’s operating system requirements: Red Hat Enterprise Linux (RHEL) 7 and 8, CentOS 6 and 7, or Ubuntu 16.04.
Also, Tower requires you to first install and configure Ansible on your operating system, then install PostgreSQL.
Red Hat lays out the following installation steps based on users with Red Hat Enterprise Linux 8 as the base operating system.
- Download and then extract Ansible Tower to your control machine:
- Once you cd to ansible-tower-setup-184.108.40.206, you will see a variety of files:
- Open the inventory file in an editor (for example, vi inventory) in order to modify the admin_password, pg_password, rabbitmq_password, etc.:
- Once you’ve added the usernames and passwords, or even the pg_host and pg_port details, you are ready to run the setup.sh script to install Ansible Tower. The installation typically takes from 10 to 15 minutes to finish:
- Once the setup script finishes, you will be able to access your Tower instance via the web. Type your control machine’s IP address into the browser and hit Enter.
Benefits of Ansible Tower
Simplicity and ease of use are the cornerstones of both Ansible and Ansible Tower’s impressive list of benefits. From an enterprise strategy perspective, Ansible Tower’s overarching benefit is that it frees admins up from time-consuming manual work to focus on efforts that help deliver more value to the business. Here are some of the more specific benefits:
- The dashboard delivers visibility into your entire Ansible environment, like inventory status, recent job activity, detailed information about the hosts.
- It eliminates the need for writing scripts or custom code to deploy and update your applications.
- Easy-to-manage role-based access control means sysadmins can more readily assign and monitor users’ permissions based on predefined roles (not available with Ansible.) It even allows admins to allow SSH credentials sharing without someone being able to transfer those credentials.
- Portal mode provides a simplified interface that displays a single-page view of jobs and job templates. This is especially helpful for users that need to run Ansible jobs, but don’t need an advanced knowledge of Ansible or Tower.
- Fully-documented REST API allows you to integrate Ansible into your existing toolset and environment.
- Multi-playbook workflows allow users to configure a sequence of unrelated workflow templates that may or may not share inventory, playbooks, or permissions.
- Tower integrates with the major cloud environments: Amazon EC2, Rackspace, Azure.
Ansible Tower Pricing
Red Hat requires potential customers to contact them for specific pricing. There is also a free trial available, and discounts are available for multi-year purchases, larger volumes, and academic institutions.
Red Hat offers a standard and a premium version of Ansible Tower. Currently, the main difference between the two editions is the support levels: the standard option has 8x5 support, and the premium option has 24x7 support.
Usage of Ansible Tower
Ansible Tower is designed to be the hub for all of your automation tasks. In general, the main reasons enterprises use Tower fall under these categories:
- Managing credentials
- Making Ansible inventory management more intuitive using the GUI
- Managing job templates and job template workflows
- Remote execution of simple tasks like adding users, restarting any malfunctioning service, and resetting passwords on any host or group of hosts in the inventory
Increase team productivity and improve business outcomes with the Ansible Foundation Training Course. Enroll now!
Take a Deeper Dive Into Ansible
Simplilearn’s Ansible Foundation Training Course delivers system administrators and DevOps professionals the knowledge needed to master this open-source tool. This comprehensive beginner’s curriculum guides you towards creating your own playbooks, managing an entire cloud region, and configuring network devices across Linux or Windows operating systems.