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
- Ansible vs. Chef vs. SaltStack: Configuration Management im Vergleich 2026
- ArgoCD vs Flux CD: GitOps-Tools für Kubernetes im Vergleich 2026
- Woodpecker CI vs. Drone CI: Lightweight CI/CD für Self-Hoster im Vergleich 2026