Product feature
Automation controller
Define, operate, scale, and delegate automation across your enterprise with a centralized web user interface (webUI) and application programming interface (API).
Overview
Automation controller is the command and control center for Red Hat® Ansible® Automation Platform, replacing Ansible Tower. It includes a webUI, API, role-based access control (RBAC), a workflow visualizer, and continuous integration and continuous delivery (CI/CD) integrations to help you organize and manage automation across your enterprise.
Automation controller brings a systematic approach to automation with Ansible Automation Platform. By standardizing how automation is deployed, initiated, delegated, and audited, it allows enterprises to automate with confidence, while reducing sprawl and variance across IT environments.
Features and benefits
Scale automation rapidly
With automation controller’s distributed, modular architecture—and the capabilities of automation mesh—operators can deploy instances over diverse platforms and deliver automation rapidly to meet volume demands, while also reducing overhead.
Automate consistently
By supporting automation execution environments, automation controller ensures that automation runs consistently across multiple platforms. Custom dependencies are not tightly coupled to the control plane, resulting in faster development cycles, reliability, and portability.
Standardize complex processes
Create workflows for complex processes that span IT teams, elevating automation beyond limited, siloed solutions. Logically sequence your automation in workflows that can run jobs simultaneously or conditionally, based on the success or failure of previous steps.
Improve governance
Ensure governance and access privileges across teams with RBAC, credential management, and native integration with enterprise authentication systems. Assign users and teams granular permissions to automation controller objects, such as projects, job templates, and inventories.
Enhance visibility
Gain observability of controller objects with a webUI that includes distinct "view" and "edit" perspectives. Use the automation topology viewer to visualize automation topologies—including hop, execution, hybrid, and control nodes—that span multiple sites, to better troubleshoot and support them.
Create a single source of truth
Automation controller provides dashboards and centralized logging to manage and track job execution from a single location, enabling collaboration across teams. Logging integrations and built-in activity streams allows you to integrate automation controller into existing auditing and reporting functions.
How does automation controller work?
![A diagram of Ansible Automation Platform’s main components A diagram of Ansible Automation Platform’s main components](/rhdc/managed-files/styles/wysiwyg_full_width/private/how-content-runs-in-automation-controller..png.webp?itok=MAcjVI3S)
A diagram of Ansible Automation Platform’s main components. Automation controller is where the main sources of automation content (seen on the left) are packaged into functional job templates, which automation mesh then distributes among execution nodes that can span IT environments (seen on the right).
Automation controller is the central location to configure and manage how automation runs across your infrastructure. It helps you build job templates to standardize how automation is deployed, initiated, and delegated, making it more reusable and consistent. Job templates—often referred to simply as automation jobs—define how your automation runs by combining Ansible Playbooks with controller objects, which include execution environments, projects, inventories, and credentials.
- Execution environments are how you define execution environment configuration and sources—such as private automation hub—providing a portable and maintainable environment for consistent automation execution throughout development and production.
- Projects are logical collections of playbooks that define your automation content sources. In other words, they’re how you add automation content to automation controller. Projects support multiple source types, source control management, RBAC, and integration with Red Hat Insights.
- Inventories allow you to define and logically group your target endpoints, such as servers, cloud instances, and security appliances. Automation controller uses native and custom plugins to dynamically divide inventories into groups of endpoints.
- Credentials are what you need to access and authenticate with external resources, repositories, or target endpoints. Users and teams can use credentials via RBAC controls—without access to the actual credential—and automation controller stores credentials to help secure resource and endpoint access.
Automation controller’s webUI dashboard allows you to manage and track the execution of automation jobs. It’s where you build workflows, launch job templates, view jobs as they are running, inspect the details of a specific job, and re-run a job—maintaining conditions or variables that were originally supplied when the job originally ran. The dashboard also includes intuitive filters that automation operators can use to display concise information relevant to the task at hand.
In addition to its webUI and simplified toolset, automation controller’s API is another way to scale and manage your automation. The browsable API enables seamless integration into other tools like monitoring, but also other orchestration tools like a SOAR or a CI/CD pipeline. With its flexible capabilities, automation controller allows you to manage inventory, launch and schedule workflows, track changes, and integrate into reporting—all from a centralized control plane.
Frequently asked questions
Where did the name "automation controller" come from, and why the change from "Ansible Tower"?
As Ansible Automation Platform continues to evolve, certain functionality has been decoupled—and will continue to be decoupled going forward—from what was formerly known as Ansible Tower.
Ansible Tower previously included the webUI and API (control plane) and execution plane (command-line Ansible) on every single node. This was not very scalable, because when you created a cluster with multiple nodes for redundancy, you were wasting resources; you don't need 5 webUIs running if you just want more execution capacity.
To solve this, we separated the control plane from the execution plane so that you can have multiple nodes—like virtual machines or servers—that are specifically dedicated to either control (webUI) or execution (running a playbook). This also makes it work more seamlessly on Kubernetes environments like Red Hat Openshift®.
It made sense to adjust the name to better reflect these enhancements, and better position the capabilities within Ansible Automation Platform.
Is Red Hat Openshift required for use with the automation controller?
No, automation controller can still be installed and run in physical and virtual environments on standalone Red Hat Enterprise Linux® servers.
Where do I download automation controller?
Automation controller is included as part of your Red Hat Ansible Automation Platform subscription, and can be downloaded from https://access.redhat.com/downloads/. If you are looking for a trial subscription check out the following link. If you are looking at a developer license to learn or use in a home lab, check out this page.
Keep learning
Training Course
Ansible Basics: Automation Technical Overview
Take this free, on-demand course to learn how to use automation controller to perform basic tasks with Ansible Automation Platform.
Documentation
Automation Controller Quick Setup Guide
Explore technical documentation that explains the basic steps for using automation controller and running your first playbook.
Technical blog
The Inside Playbook
Get insight from technical experts about the latest developments with automation controller and how to use it in Ansible Automation Platform.