How to install Ansible Tower on Red Hat / CentOS

How to install Ansible Tower on Red Hat / CentOS

Ansible Tower Installation
Ansible Tower Installation

WHY RED HAT ANSIBLE TOWER?

Ansible Tower is a web-based UI that provides an enterprise solution for IT automation. It

  • has a user-friendly dashboard
  • complements Ansible, adding automation, visual management, and monitoring capabilities.
  • provides user access control to administrators.
  • graphically manages or synchronizes inventories with a wide variety of sources.
  • a RESTful API
  • And much more…​

ANSIBLE TOWER TYPES OF MODE

Depending on the needs of the enterprise, Ansible Tower can be implemented using one of the following architectures.

Single Machine with Integrated Database

All Ansible Tower components, the web front-end, RESTful API back end, and PostgreSQL database resides on a single machine. This is the standard architecture.

Single Machine with Remote Database

The Ansible Tower web UI and RESTful API back end are installed on a single machine, and the PostgreSQL database is installed on another server on the same network. The remote database can be hosted on a server with an existing PostgreSQL instance outside the management of Ansible Tower. Another option is to have the Ansible Tower installer create a PostgreSQL instance on the remote server, managed by Ansible Tower, and populate it with the Ansible Tower database.

High Availability Multimachine Cluster

Earlier Ansible Tower versions offered a redundant, active-passive architecture consisting of a single active node and one or more inactive nodes. Starting with Red Hat Ansible Tower 3.1,this architecture is now replaced by an active-active, high-availability cluster consisting of multiple active Ansible Tower nodes. Each node in the cluster hosts the Ansible Tower web UI and RESTful API back end and can receive and process requests. In this cluster architecture, the PostgreSQL database is hosted on a remote server. The remote database can reside either on a server with an existing PostgreSQL instance outside the management of Ansible Tower, or on a server with a PostgreSQL instance created by the installer and managed by Ansible Tower.

OpenShift Pod with Remote Database

In this architecture, Red Hat Ansible Tower operates as a container-based cluster running on Red Hat OpenShift. The cluster runs on an OpenShift pod, which contains four containers to run the Ansible Tower components. OpenShift adds or removes pods to scale Ansible Tower up and down. The installation procedure for this architecture is different from the other architectures.

RED HAT ANSIBLE TOWER FEATURES

Two types of license are available for Ansible Tower: basic and enterprise. An enterprise license offers access to all Ansible Tower features. A basic license offers access to only a subset of the Ansible Tower features and does not include many enterprise-level options, such as logging aggregation, and clustering. The following are some of the many features offered by Ansible Tower for controlling, securing, and managing Ansible in an enterprise environment.

Visual Dashboard

The Ansible Tower web UI displays a Dashboard which provides a summary view of an enterprise’s entire Ansible environment. The Ansible Tower Dashboard allows administrators to easily see the current status of hosts and inventories, as well as the results of recent job executions.

Role-based Access Control (RBAC)

Ansible Tower uses a Role-based Access Control (RBAC) system which maintains security while streamlining user access management. It simplifies the delegation of user access to Ansible Tower objects such as Organizations, Projects, and Inventories.

Graphical Inventory Management

You can use the Ansible Tower web UI to create inventory groups and add inventory hosts. You can also update inventories from an external inventory source such as public cloud providers, local virtualization environments, and an organization’s custom configuration management database (CMDB).

Job Scheduling

You can use Ansible Tower to schedule playbook execution and updates from external data sources either on a one-time basis or recurring at regular intervals. This allows routine tasks to be performed unattended and is especially useful for tasks such as backup routines, which are ideally executed during operational off-hours.

Real-time and Historical Job Status Reporting

When you initiate a playbook execution in Ansible Tower, the web UI displays the playbook’s output and execution results in real time. The results of previously executed jobs and scheduled job runs are also available in Ansible Tower.

User-triggered Automation

Ansible simplifies IT automation and Ansible Tower takes it a step further by enabling user self-service. The Ansible Tower streamlined web UI, coupled with the flexibility of its RBAC system allows administrators to reduce complex tasks to simple easy-to-use routines.

Remote Command Execution

Ansible Tower makes the on-demand flexibility of Ansible ad hoc commands available through its remote command execution feature. User permissions for remote command execution are enforced using the Ansible Tower RBAC system.

Credential Management

Ansible Tower centrally manages authentication credentials. This means that you can run Ansible plays on managed hosts, synchronize information from dynamic inventory sources, and import Ansible project content from version control systems. It encrypts the passwords or keys provided so that they cannot be retrieved by Ansible Tower users. Users can be granted the ability to use or replace these credentials without actually exposing them to the user.

Centralized Logging and Auditing

Ansible Tower logs all playbook and remote command execution. This provides the ability to audit when each job was executed and by whom. In addition, Ansible Tower offers the ability to integrate its log data into third-party logging aggregation solutions, such as Splunk and Sumologic.

Integrated Notifications

Ansible Tower notifies you when its job executions succeed or fail. Ansible Tower can deliver notifications using many different applications, including email, Slack, and HipChat.

Multiplaybook Workflows

Complex operations often involve the serial execution of multiple playbooks. Ansible Tower multiplaybook workflows allow users to chain together multiple playbooks to facilitate the execution of complex routines involving provisioning, configuration, deployment, and orchestration. An intuitive workflow editor also helps to simplify the modelling of multiplaybook workflows.

RESTful API

The Ansible Tower RESTful API exposes every Ansible Tower feature available through the web UI. The API’s browsable format makes it self-documenting and simplifies the lookup of API usage information.

Requirements

Ansible Tower has the following requirements:

  • Supported Operating Systems: Ansible Tower can be installed and is supported on 64-bit x86_64 versions of Red Hat Enterprise Linux 7, CentOS 7, and Ubuntu 16.04 LTS.
  • The latest stable release of Ansible
  • 4 GB RAM minimum
  • 20 GB hard disk

RED HAT ANSIBLE TOWER LICENSING AND SUPPORT

Administrators interested in evaluating Ansible Tower can obtain a trial license at no cost.

Instructions on how to get started are available at https://www.ansible.com/tower-trial

Administrators interested in progressing beyond trial licensing can choose from three types of Red Hat Ansible Tower subscriptions:

Self-support

Targeted at small deployments, this includes a basic Ansible Tower subscription, with software maintenance and upgrades but no technical support or service level agreement (SLA). Some “enterprise” features of Ansible Tower are not included. Versions supporting up to 250 managed nodes are available. Larger deployments should consider the enterprise subscriptions.

Standard

The Standard edition includes an enterprise Ansible Tower subscription with entitlement to all Ansible Tower features and 8×5 technical support. Pricing is based on the number of nodes that are managed.

Premium

The Premium edition also includes an enterprise Ansible Tower subscription with software maintenance and upgrades and all Ansible Tower features, but with entitlement to 24×7 technical support. Pricing is based on the number of nodes managed.

ANSIBLE TOWER INSTALLERS

Two different installation packages are available for Ansible Tower.

The standard setup Ansible Tower installation program can be downloaded from http://releases.ansible.com/ansible-tower/setup/

The latest version of Ansible Tower for Red Hat Enterprise Linux 7 is always located at https://releases.ansible.com/ansibletower/setup/ansible-tower-setup-latest.tar.gz

This archive is smaller but requires internet connectivity to download Ansible Tower packages from various package repositories.

A different, bundled installer for RHEL 7 is available at http://releases.ansible.com/ansible-tower/setup-bundle/ansible-tower-setup-bundle-latest.el7.tar.gz

This archive includes an initial set of RPM packages for Ansible Tower so that it may be installed on systems disconnected from the internet.

Those systems still need to be able to get software packages for Red Hat Enterprise Linux 7 and the Red Hat Enterprise Linux 7 Extras channel from

reachable sources. This may be preferred by administrators in higher security environments. This installation method is not currently available for Ubuntu.

INSTALLING ANSIBLE TOWER

The following procedure applies to the bundled installer to install Ansible Tower on a single Red Hat Enterprise Linux 7.4 or later system with access to the Red Hat Enterprise Linux 7 Extras repository.

1. As the root user, download the Ansible Tower setup bundle to the system.

Ansible bundle download

2. Extract the Ansible Tower setup bundle and change into the directory containing the extracted contents.

Ansible pkg extract

3. Edit the inventory file to set passwords for the Ansible Tower admin account (admin_password), the PostgreSQL database user account (pg_password), and the

RabbitMQ messaging user account (rabbitmq_password).

Inventory modification

4. Run the setup.sh script to start the Ansible Tower installer.

[root@towerhost ansible-tower-setup-bundle-3.6.4-1]# ./setup.sh

…output omitted…

PLAY [Install Tower isolated node(s)] ***************************************************************************

skipping: no hosts matched

PLAY RECAP ***************************************************************************

localhost                  : ok=158  changed=83   unreachable=0    failed=0    skipped=81   rescued=0    ignored=3

The setup process completed successfully.

Setup log saved to /var/log/tower/setup-2020-05-07-15:21:03.log

[root@towerhost ansible-tower-setup-bundle-3.6.4-1]#

5. Now, open your browser, access the Ansible Tower web interface with your server’s IP or FQDN, the username is admin and the password that you configured in the inventory file.


Ansible Tower GUI mode

6. Log in to the Ansible Tower web UI as the Ansible Tower administrator with the admin account and the password you set in the installer’s inventory file.

Ansible Tower Gui login

7. Finaly, click on browse and provide .pem license file, agree the End user license Agreement and click submit button.

Ansible Tower License

Congratulations…!!! You have successfully installed Ansible Tower.

You can view video here and subscribe to my channel.

https://youtu.be/uDwMHN3feEA

33 thoughts on “How to install Ansible Tower on Red Hat / CentOS

  1. Okay, this might be a little bit random, but I saw your blog and had to ask, are you interested in a translation job? I know I’m a stranger but I felt like doing a good deed today by alerting a couple people that a good position has opened up here: https://msha.ke/freedomwithtay and they pay sometimes even $70/hour. Okay, they won’t always give that amount, I only made around $400 last week, but it’s part time and when times are tight, every little bit helps. Hope it helps, and my apologies if you’re not interested. Have a great day/evening!

  2. Just wish to say your article is as astounding. The clearness in your put up is simply cool and that i can think you are a professional on this subject. Well along with your permission allow me to grasp your feed to keep up to date with coming near near post. Thank you a million and please carry on the gratifying work.

  3. One thing is the fact one of the most popular incentives for utilizing your cards is a cash-back or even rebate offer. Generally, you’re going to get 1-5 back upon various expenditures. Depending on the credit card, you may get 1 again on most purchases, and 5 back on expenses made going to convenience stores, filling stations, grocery stores along with ‘member merchants’.

  4. My husband and i felt now joyous Louis managed to complete his research by way of the precious recommendations he received while using the weblog. It’s not at all simplistic to just find yourself giving out hints most people may have been selling. We really grasp we now have the writer to appreciate for that. The entire explanations you have made, the easy website navigation, the friendships you will give support to create – it’s got mostly fantastic, and it’s really aiding our son in addition to the family reason why the situation is pleasurable, and that is really vital. Many thanks for all the pieces!

  5. Thanks for your posting. One other thing is that if you are advertising your property alone, one of the difficulties you need to be cognizant of upfront is just how to deal with house inspection reports. As a FSBO home owner, the key to successfully shifting your property and saving money upon real estate agent commission rates is knowledge. The more you are aware of, the smoother your sales effort will probably be. One area that this is particularly crucial is assessments.

  6. Thanks for your article on the traveling industry. I’d personally also like contribute that if you are a senior contemplating traveling, it really is absolutely crucial to buy travel insurance for senior citizens. When traveling, senior citizens are at greatest risk of having a medical emergency. Having the right insurance package to your age group can look after your health and give you peace of mind.

  7. The very root of your writing whilst sounding agreeable at first, did not work very well with me after some time. Somewhere within the sentences you managed to make me a believer but just for a very short while. I however have got a problem with your jumps in assumptions and one would do nicely to help fill in all those gaps. In the event you actually can accomplish that, I could definitely end up being amazed.

  8. I must express my thanks to you for bailing me out of this circumstance. After surfing throughout the the net and getting suggestions that were not pleasant, I thought my life was gone. Existing minus the solutions to the issues you have fixed through your entire posting is a serious case, and the kind that might have badly damaged my entire career if I had not noticed the blog. The mastery and kindness in dealing with all the stuff was precious. I don’t know what I would have done if I hadn’t come across such a step like this. I can also at this moment relish my future. Thanks for your time very much for your impressive and effective help. I won’t hesitate to suggest your site to any person who desires support about this matter.

  9. Greetings from California! I’m bored to death at work so I decided to browse your website on my iphone during lunch break. I love the knowledge you present here and can’t wait to take a look when I get home. I’m surprised at how fast your blog loaded on my phone .. I’m not even using WIFI, just 3G .. Anyways, wonderful blog!

  10. The next time I read a blog, I hope that it doesnt fail me just as much as this one. I mean, Yes, it was my choice to read through, but I actually thought youd have something interesting to say. All I hear is a bunch of complaining about something that you could possibly fix if you werent too busy searching for attention.

Leave a Reply

Your email address will not be published. Required fields are marked *