Introduction

Red Hat Ansible Automation Platform (AAP) is the enterprise version of Ansible — adding a web UI, role-based access control, centralized content management, and event-driven automation on top of the open-source Ansible engine. It's designed for teams that need governance, scalability, and support for their automation at scale.

AAP vs Open-Source Ansible

FeatureOpen-Source AnsibleAnsible Automation Platform
Engineansible-coreansible-core (certified)
Web UINo (use AWX)Automation Controller
Content HubAnsible GalaxyAutomation Hub (certified)
RBACNoYes
Event-DrivenNoEvent-Driven Ansible
SupportCommunityRed Hat subscription
Execution EnvironmentsManual buildIncluded + custom
AnalyticsNoAutomation Analytics
CostFreeSubscription required

Core Components

1. Automation Controller (formerly Ansible Tower)

The web UI and API for running automation:

  • Job Templates — define what playbook runs on which inventory
  • Workflows — chain multiple job templates with conditional logic
  • Schedules — cron-like scheduling for automated runs
  • RBAC — teams, users, and permissions
  • Credentials — securely store SSH keys, cloud tokens, vault passwords
  • Notifications — Slack, email, webhook on job success/failure
  • API — REST API for integration with CI/CD tools

2. Automation Hub (Private)

Centralized repository for Ansible content:

  • Certified Collections — Red Hat tested and supported
  • Validated Content — community collections tested by Red Hat
  • Private Hub — host your own collections internally
  • Execution Environments — container images with Ansible + dependencies

3. Event-Driven Ansible (EDA)

Respond to events automatically:

# EDA rulebook example
---
- name: Auto-remediate disk full
  hosts: all
  sources:
    - ansible.eda.webhook:
        host: 0.0.0.0
        port: 5000
  rules:
    - name: Disk usage alert
      condition: event.payload.alert == "disk_full"
      action:
        run_job_template:
          name: "Cleanup Disk Space"
          organization: "IT Ops"

4. Automation Analytics

Dashboard showing:

  • Job run statistics and trends
  • Host automation coverage
  • Module usage across the organization
  • Cost savings estimates

Architecture Overview

┌─────────────────────────────────────┐
│      Ansible Automation Platform     │
├──────────────┬──────────────────────┤
│ Automation   │   Automation Hub     │
│ Controller   │   (Collections +     │
│ (Web UI/API) │    Exec Envs)        │
├──────────────┼──────────────────────┤
│ Event-Driven │   Automation         │
│ Ansible      │   Analytics          │
├──────────────┴──────────────────────┤
│         Execution Environments       │
│    (Containerized ansible-core)      │
├─────────────────────────────────────┤
│          Managed Hosts               │
│   (Linux, Windows, Network, Cloud)   │
└─────────────────────────────────────┘

Installation Methods

1. RPM Installer (RHEL)

# Download from access.redhat.com
# Extract the bundle
tar xvf ansible-automation-platform-setup-bundle-*.tar.gz
cd ansible-automation-platform-setup-bundle-*/

# Edit inventory file
vi inventory

# Run installer
./setup.sh

Inventory configuration:

[automationcontroller]
controller.example.com

[automationhub]
hub.example.com

[database]
db.example.com

[all:vars]
admin_password='SecurePassword123!'
pg_host='db.example.com'
pg_port=5432
pg_database='awx'
pg_username='awx'
pg_password='SecureDBPass!'

2. OpenShift Operator

Install via OperatorHub in OpenShift 4.9+:

  1. Search for "Ansible Automation Platform" in OperatorHub
  2. Select update channel and installation mode
  3. The operator creates instances of Controller, Hub, and EDA

See: Install AAP on OpenShift

3. Containerized Installation (AAP 2.4+)

# New in AAP 2.4 — containerized deployment on RHEL
ansible-playbook -i inventory containerized_install.yml

System Requirements

ComponentCPURAMDisk
Controller4 cores16 GB40 GB
Hub2 cores8 GB60 GB
Database4 cores16 GB100 GB+
EDA2 cores8 GB40 GB

Supported OS: RHEL 8.6+ or RHEL 9.0+

Getting Started After Installation

1. Access the Web UI

Navigate to https://controller.example.com and log in with admin credentials.

2. Add an Inventory

Controller → Inventories → Add → Add Inventory
Name: "Production Servers"

3. Add Hosts

Production Servers → Hosts → Add
Host: web01.example.com

4. Create Credentials

Controller → Credentials → Add
Type: Machine
SSH Key: (paste private key)

5. Create a Project

Controller → Projects → Add
SCM Type: Git
SCM URL: https://github.com/org/ansible-playbooks.git

6. Create a Job Template

Controller → Templates → Add Job Template
Inventory: Production Servers
Project: My Playbooks
Playbook: site.yml
Credentials: My SSH Key

7. Launch the Job

Click Launch and monitor the output in real time.

Licensing

  • 60-day trial — free evaluation from red.ht/try_ansible
  • Standard subscription — includes Controller + Hub
  • Premium subscription — adds EDA + premium support
  • Developer subscription — free for individual development use

Conclusion

Ansible Automation Platform wraps the open-source Ansible engine with enterprise features — a web UI (Controller), certified content (Hub), event-driven automation (EDA), and analytics. Start with a 60-day trial or the free developer subscription. For open-source alternatives, AWX provides the upstream version of the Controller component.