ConfigsApr 16, 2026·3 min read

AWX — Web UI, API, and Task Engine for Ansible

AWX is the upstream open-source project behind Red Hat Ansible Automation Platform, providing a web UI, REST API, and task engine for running, scheduling, and managing Ansible playbooks at scale.

TL;DR
AWX provides a web UI, REST API, and task engine for managing Ansible playbooks, inventories, and credentials at scale.
§01

What it is

AWX is the upstream open-source project behind Red Hat Ansible Automation Platform. It provides a web-based user interface, REST API, and task engine built on top of Ansible. AWX lets teams manage playbook execution, inventories, credentials, scheduling, and role-based access control through a central dashboard rather than running Ansible from individual command lines.

Operations teams and DevOps engineers who run Ansible at scale across multiple environments and team members benefit most. AWX adds the collaboration, scheduling, and auditing layers that raw Ansible CLI lacks.

§02

How it saves time or tokens

AWX centralizes Ansible automation management. Instead of each engineer running playbooks from their laptop with different inventory files and variable overrides, AWX provides a single source of truth. Job templates define exactly what runs, against which inventory, with which credentials. The REST API enables integration with CI/CD pipelines, ticketing systems, and monitoring tools. Scheduled jobs and webhook triggers automate recurring tasks without manual intervention.

§03

How to use

  1. Deploy AWX using the AWX Operator on Kubernetes:
# Install the AWX Operator
kubectl apply -f https://raw.githubusercontent.com/ansible/awx-operator/main/deploy/awx-operator.yaml

# Create an AWX instance
cat <<EOF | kubectl apply -f -
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx
spec:
  service_type: nodeport
EOF
  1. Access the web UI at the NodePort address and log in with the admin credentials.
  1. Create a Project (Git repo with playbooks), Inventory, Credential, and Job Template to start running automation.
§04

Example

# Trigger a job template via REST API
curl -X POST https://awx.example.com/api/v2/job_templates/5/launch/ \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"extra_vars": {"env": "production", "version": "2.1.0"}}'

# Check job status
curl https://awx.example.com/api/v2/jobs/42/ \
  -H 'Authorization: Bearer YOUR_TOKEN'
§05

Related on TokRepo

§06

Common pitfalls

  • AWX requires Kubernetes for deployment (via the AWX Operator). The older Docker Compose method is deprecated. Plan for a K8s cluster or use K3s for lightweight setups.
  • AWX is the upstream project and moves faster than the commercial Ansible Automation Platform. Expect more frequent updates and occasional breaking changes.
  • Resource requirements are significant. AWX needs at least 4GB RAM and 2 CPU cores for the Kubernetes pods. Large inventories and concurrent jobs require more.

Frequently Asked Questions

Is AWX the same as Ansible Tower?+

AWX is the upstream open-source project. Ansible Tower was the commercial product built from AWX, now rebranded as Ansible Automation Platform. AWX is free and community-supported; the commercial version adds enterprise support, certified content, and SLA guarantees.

Can AWX schedule Ansible playbook runs?+

Yes. AWX supports cron-like scheduling for job templates. You can configure daily, weekly, or custom schedules directly in the web UI. Scheduled jobs run automatically and store results for audit.

Does AWX support role-based access control?+

Yes. AWX provides RBAC for organizations, teams, and users. You can control who can view, edit, or run specific job templates, inventories, and credentials. This is critical for multi-team environments.

How does AWX integrate with CI/CD pipelines?+

AWX exposes a REST API and webhook endpoints. CI/CD tools like Jenkins, GitLab CI, or GitHub Actions can trigger job templates via API calls. AWX returns job status and output through the same API.

Can I run AWX without Kubernetes?+

The officially supported deployment method uses the AWX Operator on Kubernetes. The legacy Docker Compose method exists but is deprecated and no longer maintained. For simple setups, use K3s as a lightweight Kubernetes distribution.

Citations (3)

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets