Ansible AWX: Torre de Control de Automatización 2026

Ansible AWX - torre de control de automatización con playbooks

Ansible AWX es la interfaz web y el motor de automatización que lleva tus playbooks de la línea de comandos a una plataforma centralizada, con control de acceso, programación y API. Es el proyecto de código abierto que da origen a Ansible Automation Platform, e ideal para equipos que quieren ejecutar, auditar y compartir automatizaciones sin depender de la terminal de una sola persona. En esta guía lo desplegarás con el AWX Operator y darás tus primeros pasos.

En este artículo aprenderás a:

  • Entender la arquitectura de Ansible AWX y cuándo usarlo.
  • Desplegar Ansible AWX con el AWX Operator sobre Kubernetes.
  • Crear inventarios, credenciales y plantillas de trabajo (job templates).
  • Programar ejecuciones y aplicar control de acceso por roles.

¿Qué es Ansible AWX y para qué sirve?

Ansible AWX es una aplicación web que actúa como torre de control de tus automatizaciones. En lugar de ejecutar ansible-playbook a mano en tu máquina, defines inventarios, credenciales y plantillas de trabajo en una interfaz gráfica, y lanzas o programas ejecuciones que quedan registradas con su salida completa. Es la versión libre y ascendente de la que bebe el producto comercial Red Hat Ansible Automation Platform.

Adoptar Ansible AWX aporta ventajas decisivas cuando la automatización deja de ser cosa de una persona y pasa a ser un proceso de equipo:

  • Control de acceso por roles (RBAC): defines quién puede ver, editar o ejecutar cada automatización.
  • Gestión segura de credenciales: las contraseñas y claves se cifran y nunca quedan expuestas en los playbooks.
  • Programación y API REST: lanzas trabajos por horario o desde otras herramientas mediante su API.
  • Auditoría: cada ejecución queda registrada con su resultado, útil para cumplimiento y depuración.

Si vienes de ejecutar playbooks manualmente, Ansible AWX es el siguiente paso natural. Complementa flujos que quizá ya conozcas, como los que vimos en nuestra guía de Ansible y GitOps para infraestructura declarativa.


Arquitectura de Ansible AWX

Comprender las piezas de Ansible AWX ayuda a desplegarlo y mantenerlo con criterio. La aplicación se compone de varios servicios que hoy se orquestan de forma nativa sobre Kubernetes mediante un operador.

  • Interfaz web y API: el frontend donde defines y lanzas la automatización, y la API REST que lo expone todo.
  • Base de datos PostgreSQL: almacena inventarios, plantillas, credenciales cifradas e historial.
  • Executor de tareas: los contenedores efímeros (execution environments) donde se ejecutan realmente los playbooks.
  • AWX Operator: el componente que instala y gestiona todo el ciclo de vida de Ansible AWX en el clúster.

Este diseño basado en contenedores hace que Ansible AWX sea escalable y reproducible: el operador se encarga de crear los recursos necesarios y de mantenerlos en el estado deseado, siguiendo el mismo patrón que otros operadores del ecosistema cloud native.

Requisitos previos

El método oficial actual para instalar Ansible AWX es el AWX Operator sobre un clúster de Kubernetes. Para un entorno de pruebas o un homelab, minikube es más que suficiente. Necesitarás lo siguiente:

  • Una máquina Linux con al menos 4 GB de RAM y 2 CPU libres.
  • Docker instalado como sustrato para minikube.
  • minikube y kubectl configurados y funcionando.
  • La herramienta kustomize para desplegar el operador.

Si necesitas repasar la instalación y el hardening de Docker antes de empezar, tienes nuestra guía de Ansible para instalar y asegurar Docker. Con la base lista, arrancamos el clúster.

minikube start --cpus=2 --memory=4g
kubectl get nodes

Cuando el nodo aparezca en estado Ready, tendrás el entorno preparado para desplegar el operador que instalará Ansible AWX.


Instalar Ansible AWX con el AWX Operator

Empezamos desplegando el AWX Operator. Creamos un fichero kustomization.yaml que referencia la versión del operador que queremos instalar. Fijar la versión garantiza despliegues reproducibles.

# kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
  - github.com/ansible/awx-operator/config/default?ref=2.19.1
images:
  - name: quay.io/ansible/awx-operator
    newTag: 2.19.1
namespace: awx

Aplicamos ese kustomization para instalar el operador en el espacio de nombres awx. Tras unos segundos, el controlador del operador estará vigilando el clúster a la espera de una instancia que crear.

kubectl apply -k .
kubectl get pods -n awx -w

Cuando el pod del operador esté en Running, definimos la instancia de Ansible AWX mediante un recurso personalizado. Este manifiesto le dice al operador que despliegue una instancia completa y la exponga mediante un servicio NodePort.

# awx-demo.yaml
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx-demo
  namespace: awx
spec:
  service_type: nodeport

Aplica el manifiesto y observa cómo el operador crea la base de datos, la web y los demás componentes automáticamente. Este proceso puede tardar unos minutos la primera vez, ya que descarga las imágenes necesarias.

kubectl apply -f awx-demo.yaml
kubectl get pods -n awx

Cuando todos los pods estén en Running, tu despliegue de Ansible AWX estará listo. Obtén la URL de acceso y la contraseña inicial del administrador con estos comandos.

minikube service awx-demo-service -n awx --url
kubectl get secret awx-demo-admin-password -n awx \
  -o jsonpath="{.data.password}" | base64 --decode; echo

Abre la URL en el navegador y entra con el usuario admin y la contraseña que acabas de descifrar. Ya estás dentro de la interfaz de Ansible AWX.

⚠️ Advertencia

Cambia la contraseña de administrador por defecto nada más entrar y no expongas la interfaz directamente a Internet. En producción, publícala tras un proxy inverso con HTTPS y restringe el acceso mediante RBAC y autenticación corporativa.

Primeros pasos: inventarios, credenciales y plantillas

Con la interfaz abierta, el flujo típico para ejecutar tu primera automatización desde Ansible AWX consta de cuatro elementos que se conectan entre sí:

  • Proyecto: apunta a un repositorio Git que contiene tus playbooks, de modo que AWX siempre ejecuta la última versión.
  • Inventario: la lista de hosts sobre los que actuará, ya sea estática o dinámica desde tu proveedor cloud.
  • Credencial: las claves SSH o tokens necesarios, almacenados cifrados y nunca visibles en texto plano.
  • Plantilla de trabajo: une proyecto, inventario y credencial en un botón ejecutable y programable.

Al conectar un proyecto a Git, Ansible AWX se sincroniza automáticamente con tus playbooks, lo que encaja perfectamente con un flujo de trabajo basado en control de versiones. Para inventarios que cambian con frecuencia, puedes apoyarte en la técnica que explicamos en Ansible Dynamic Inventory para entornos multi-cloud.

Automatizar y programar con Ansible AWX

La verdadera potencia de Ansible AWX aparece cuando dejas de lanzar trabajos a mano. Una vez creada una plantilla de trabajo, puedes asociarle un horario para que se ejecute sola: pensemos en un parcheo semanal, una comprobación diaria de cumplimiento o una copia de seguridad nocturna.

Además, cada plantilla es accionable a través de la API REST. Esto permite integrarla en pipelines de CI/CD o dispararla desde otras herramientas mediante un simple webhook, convirtiendo a Ansible AWX en el motor de ejecución central de tu automatización. También puedes encadenar varias plantillas en un workflow visual, con ramas condicionales según el éxito o el fallo de cada paso, lo que resulta ideal para orquestaciones complejas como aprovisionar infraestructura y luego configurarla.

Casos de uso reales de la plataforma

Para entender el valor de esta herramienta conviene aterrizarla en situaciones concretas del día a día de un equipo de operaciones. Estos son algunos de los escenarios donde una torre de control de automatización marca la diferencia frente a ejecutar comandos sueltos:

  • Parcheo programado de servidores: una plantilla que actualiza sistemas cada domingo de madrugada, con el resultado registrado para auditoría.
  • Autoservicio para desarrolladores: permites que un equipo lance despliegues concretos sin darles acceso SSH a los servidores, gracias al control de acceso por roles.
  • Onboarding de máquinas nuevas: al aprovisionar un servidor, un webhook dispara la configuración base automáticamente.
  • Cumplimiento continuo: comprobaciones diarias que verifican que la configuración no se ha desviado del estándar definido.

En todos estos casos, el valor no está solo en ejecutar el playbook, sino en el gobierno que rodea esa ejecución: quién puede lanzarla, con qué credenciales, cuándo y con qué resultado. Ese es exactamente el espacio que cubre esta plataforma y que la terminal, por sí sola, no ofrece. A medida que tu organización crece, ese gobierno pasa de ser un lujo a ser una necesidad de seguridad y de cumplimiento normativo.


Entornos de ejecución y escalado

Un concepto clave que conviene dominar es el de los execution environments. Se trata de imágenes de contenedor que empaquetan Ansible, las colecciones y todas las dependencias que tus playbooks necesitan. En lugar de instalar paquetes en un servidor y arrastrar problemas de versiones, cada trabajo se ejecuta en un entorno limpio y perfectamente definido.

Esta arquitectura tiene dos grandes beneficios. Primero, la reproducibilidad: el mismo playbook se comporta igual hoy que dentro de seis meses, porque su entorno está congelado en una imagen. Segundo, el escalado: cuando el volumen de trabajos crece, el operador puede lanzar más contenedores de ejecución en paralelo repartiendo la carga por el clúster, sin que tengas que reconfigurar nada manualmente. Así, la plataforma acompaña el crecimiento de tu equipo sin convertirse en un cuello de botella, desde un puñado de tareas semanales hasta miles de ejecuciones diarias en una organización grande.

Buenas prácticas y solución de problemas en Ansible AWX

  • Copias de seguridad: respalda la base de datos PostgreSQL con regularidad; contiene toda tu configuración e historial.
  • Execution environments: personaliza las imágenes de ejecución para incluir las colecciones y dependencias que usan tus playbooks.
  • RBAC granular: asigna equipos y roles concretos en lugar de dar permisos de administrador a todos.
  • Recursos: si los pods se quedan en Pending, casi siempre falta CPU o memoria en el nodo; amplía minikube.

Cuando un trabajo falle, revisa su salida completa en la propia interfaz: Ansible AWX guarda el registro detallado de cada tarea, lo que facilita enormemente la depuración. Para seguir ampliando tus automatizaciones, visita nuestra categoría de tutoriales de Ansible.

Conclusión

Con Ansible AWX has llevado tu automatización de la terminal a una plataforma profesional, con control de acceso, credenciales cifradas, programación y API. Desplegarlo con el AWX Operator lo hace reproducible y escalable, y darás el salto de ejecutar playbooks sueltos a operar un sistema de automatización de equipo. A partir de aquí, conecta tus repositorios, define roles y empieza a programar tus tareas recurrentes.

Como recorrido de aprendizaje recomendado, empieza por automatizar una tarea sencilla y de bajo riesgo, como recopilar información de tus servidores o aplicar una configuración inocua. Una vez que domines el flujo de proyecto, inventario, credencial y plantilla, ve incorporando escenarios más ambiciosos: workflows encadenados, integraciones con tu pipeline de CI/CD y ejecuciones programadas. Este enfoque gradual te permite ganar confianza en la herramienta sin arriesgar tus sistemas de producción, y facilita que el resto del equipo adopte la plataforma sin fricción. Con el tiempo, comprobarás que centralizar la automatización no solo ahorra trabajo manual, sino que reduce errores humanos y aporta una trazabilidad que resulta impagable cuando algo falla o cuando llega una auditoría. En definitiva, es la inversión que transforma un conjunto de scripts dispersos en un servicio de automatización fiable, gobernado y preparado para escalar con tu organización.

Preguntas frecuentes sobre Ansible AWX

¿Ansible AWX es gratis?

Sí. Ansible AWX es de código abierto y gratuito. Es el proyecto ascendente de Red Hat Ansible Automation Platform, que sí es la versión comercial con soporte empresarial.

¿Puedo instalarlo con Docker Compose?

El método soportado oficialmente hoy es el AWX Operator sobre Kubernetes. Para pruebas locales, minikube o k3s ofrecen un clúster ligero donde desplegarlo sin complicaciones.

¿Qué diferencia hay con ejecutar playbooks a mano?

AWX añade interfaz web, control de acceso por roles, credenciales cifradas, programación, API y auditoría. Es el paso de la automatización individual a una plataforma compartida y gobernada.

¿Necesito saber Kubernetes para usarlo?

Solo para la instalación con el operador, que es guiada. El uso diario de Ansible AWX se hace desde su interfaz web, sin necesidad de tocar Kubernetes una vez desplegado.

Recursos y documentación oficial

Avatar

Por Mid

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x