Semaphore vs AWX: Ansible Automation UI für Self-Hosting im Vergleich 2026

Ansible ist das meistgenutzte Configuration-Management-Tool im DevOps-Bereich — doch wer Playbooks im Team verwalten, Jobs planen und Ausführungen protokollieren will, braucht eine Web-Oberfläche. Semaphore und AWX sind die zwei führenden Open-Source-UIs für Ansible. Beide decken ähnliche Anwendungsfälle ab, unterscheiden sich aber erheblich in Ressourcenverbrauch, Setup-Komplexität und Zielgruppe.

Was ist Semaphore?

Semaphore UI (früher: Ansible Semaphore) ist ein leichtgewichtiger, in Go geschriebener Webserver, der als Docker-Container in wenigen Minuten betrieben werden kann. Die Anwendung bietet:

  • Projekte und Inventare — Git-Repositories als Quellen, statische oder dynamische Inventare
  • Task Templates — vordefinierte Ausführungskonfigurationen für Playbooks
  • Scheduling — Cron-basierte automatische Ausführung von Tasks
  • Teams und Berechtigungen — RBAC auf Projektebene
  • Notifications — Telegram, Slack, E-Mail über Webhooks
  • Audit Log — vollständige Ausführungshistorie mit Logs

Die Codebasis ist auf GitHub öffentlich verfügbar, aktiv gepflegt und verzeichnet über 10.000 Stars. Der Ressourcenverbrauch ist minimal: 50–100 MB RAM reichen für den Betrieb.

Was ist AWX?

AWX ist das upstream Open-Source-Projekt von Red Hat Ansible Automation Platform (früher Ansible Tower). Es bietet Enterprise-Funktionen wie:

  • Workflow Automation — komplexe Abhängigkeitsgraphen zwischen Jobs
  • Dynamic Inventory — Anbindung an AWS, Azure, GCP, VMware, Proxmox
  • Credential Management — verschlüsseltes Vault-System für Secrets
  • RBAC — feingranulare Berechtigungen auf Organisations- und Team-Ebene
  • Notifizierungen — Slack, PagerDuty, Webhooks, E-Mail
  • Container-based Execution — Execution Environments (EE) als OCI-Images
  • REST API + CLI (awxkit) — vollständig automatisierbar

AWX läuft auf Kubernetes und erfordert deutlich mehr Ressourcen als Semaphore. Typische Installationen benötigen 4–8 GB RAM, mehrere Pods und eine PostgreSQL-Instanz.

Setup-Vergleich

Semaphore: Docker in 5 Minuten

version: '3'
services:
  semaphore:
    image: semaphoreui/semaphore:latest
    environment:
      SEMAPHORE_DB_DIALECT: bolt
      SEMAPHORE_ADMIN: admin
      SEMAPHORE_ADMIN_PASSWORD: secret
      SEMAPHORE_ADMIN_EMAIL: admin@example.com
    volumes:
      - semaphore-data:/var/lib/semaphore
    ports:
      - "3000:3000"

Ein einzelner Container, keine externe Datenbank erforderlich (SQLite/BoltDB). Für Produktiv-Setups empfiehlt sich PostgreSQL.

AWX: Kubernetes-Deployment

kubectl apply -f https://raw.githubusercontent.com/ansible/awx-operator/main/deploy/awx-operator.yaml
kubectl apply -f awx-instance.yaml

Der AWX Operator vereinfacht die Installation erheblich, erfordert aber einen funktionierenden Kubernetes-Cluster mit PersistentVolumes, Ingress und ausreichend Ressourcen.

Kernfunktionen im Vergleich

Feature Semaphore AWX
Setup-Aufwand Gering (1 Container) Hoch (Kubernetes)
RAM-Bedarf 50–200 MB 4–8 GB
Workflow-Editor Nein Ja (visuell)
Dynamic Inventory Begrenzt Vollständig (Cloud-Provider)
Credential Vault Ja (einfach) Ja (erweitert, isoliert)
Execution Environments Nein Ja (OCI/Container)
RBAC Projekt-Level Organisations/Team-Level
API Begrenzt Vollständig (REST + CLI)
Scheduling Cron Cron + Workflow
Community Aktiv (GitHub) Red Hat + Community

Execution Environments — AWX's größter Vorteil

Execution Environments (EE) sind OCI-konforme Container-Images, die alle Ansible-Abhängigkeiten (Collections, Python-Bibliotheken, System-Pakete) bündeln. Damit sind Playbook-Ausführungen vollständig reproduzierbar — unabhängig vom Hostsystem.

# ee-definition.yaml
---
version: 1
dependencies:
  galaxy:
    collections:
      - name: kubernetes.core
      - name: community.general
  python:
    - boto3
    - kubernetes

Semaphore kennt dieses Konzept nicht — Playbooks laufen direkt auf dem Semaphore-Host. Das ist für einfache Szenarien ausreichend, kann aber bei unterschiedlichen Python-Umgebungen zu Problemen führen.

Wann Semaphore wählen

Semaphore ist die richtige Wahl für:

Kleine Teams und Homelab-Setups: Wer 2–5 Admins hat und Ansible-Playbooks zentralisiert ausführen will, ohne Kubernetes betreiben zu müssen, ist mit Semaphore ideal bedient. Der Setup dauert unter 10 Minuten.

Ressourcenknappe Umgebungen: Ein kleiner VPS mit 1–2 GB RAM reicht vollkommen aus. Semaphore teilt sich problemlos einen Host mit anderen Services.

Einfache Workflows: Wenn die Anforderungen in "führe dieses Playbook gegen dieses Inventar aus" passen, bietet Semaphore genau die richtige Abstraktionsebene ohne Overengineering.

Schneller Einstieg: Teams, die von ad-hoc ansible-playbook-Aufrufen auf eine zentrale UI umstellen wollen, finden in Semaphore eine flache Lernkurve.

Wann AWX wählen

AWX empfiehlt sich für:

Enterprise und große Organisationen: Multi-Tenant-Setups mit Organisationsstrukturen, feingranularen Berechtigungen und mehreren Teams profitieren von AWX's ausgereiftem RBAC-System.

Komplexe Workflows: Wer Job-Abhängigkeiten, Approval-Gates, Parallelausführungen und bedingte Branches in Workflows braucht, hat mit AWX die bessere Ausgangslage.

Cloud-Inventare: Die native Anbindung an AWS, Azure, GCP und andere Cloud-Provider über Dynamic Inventories ist ein klares AWX-Alleinstellungsmerkmal.

Red Hat Ecosystem: Teams, die Red Hat Enterprise Linux, OpenShift oder Ansible Automation Platform nutzen, profitieren von der nahtlosen Integration.

Performance und Skalierung

Semaphore skaliert vertikal und ist für sequenzielle Aufgaben ausgelegt. Parallele Ausführungen sind möglich, aber nicht das Design-Ziel.

AWX skaliert horizontal über Kubernetes: mehrere awx-task-Pods können gleichzeitig Jobs ausführen. Für Organisationen mit hunderten von Jobs täglich ist das entscheidend.

Monitoring und API-Integration

Semaphore bietet grundlegende Webhooks und eine REST-API für grundlegende Automatisierung. Logs sind in der Web-UI einsehbar.

AWX bietet eine vollständige REST-API mit Client-Bibliotheken (awxkit), Prometheus-Metriken unter /api/v2/metrics und tiefe Integration in CI/CD-Pipelines:

awx job_templates launch --id 42 --monitor --tower-host https://awx.example.com

Fazit: Semaphore oder AWX?

Für Homelab, kleine Teams und unkomplizierte Ansible-Setups ist Semaphore die klare Empfehlung: minimal, schnell, wartungsarm. Wer kein Kubernetes betreiben will oder kann, hat keine echte Alternative.

AWX ist für Organisationen mit komplexen Anforderungen, mehreren Teams und Cloud-Infrastruktur die richtige Wahl — trotz höherem Betriebsaufwand.

Die Entscheidung hängt weniger von persönlichen Präferenzen ab als von der Infrastruktur und den Teamstrukturen. Wer heute mit Semaphore anfängt, kann später zu AWX migrieren — der umgekehrte Weg ist selten notwendig.

Weiterführende Artikel

Verwandte Technologien im Techradar