Ansible-Playbooks als gemeinsame Teamjobs ausführen

Behalten Sie Ihre Playbooks in Git. Nutzen Sie Semaphore, um sie mit gespeicherten Inventaren und Zugangsdaten auszuführen, Wartungen zu planen und Ergebnisse für jeden Host zu prüfen.

Das Playbook ist geteilt. Kann das Team es ausführen?

Inventar, SSH-Schlüssel, Vault-Passwort und Optionen stehen noch in der Shell-Historie einer Person. Jede Übergabe beginnt mit derselben Einrichtung.

Ausführungskonfiguration neben dem Playbook speichern

  • Hosts und Verweise auf Zugangsdaten einmal auswählen
  • Limits, Tags und Eingaben zur Ausführung bereitstellen
  • Teammitglieder den Job ausführen und seine Ausgabe prüfen lassen

Ihre Playbooks für tägliche Infrastrukturarbeit verwenden

Eine Linux-Flotte patchen

Führen Sie Ihr Patch-Playbook für ein ausgewähltes Inventar aus. Verwenden Sie für einen kleineren Durchlauf ein Host-Limit und prüfen Sie danach die Host-Ergebnisse.

Einen vorbereiteten Job teilen

Ein Anwendungsrelease bereitstellen

Wählen Sie das Release über Ausführungseingaben und verwenden Sie das gespeicherte Repository, Inventar und die Vault-Zugangsdaten wieder.

Einen vorbereiteten Job teilen

Zertifikate nach Zeitplan erneuern

Planen Sie Ihr Erneuerungs-Playbook und konfigurieren Sie Benachrichtigungen für fehlgeschlagene Tasks. Bewahren Sie für jede Ausführung einen Nachweis auf.

Einen Zeitplan einrichten

Ein Playbook konfigurieren, ausführen und die Hosts prüfen

Ansible hinter einem Hosting-Control-Panel

Savvii verwendet Semaphore, um Bereitstellungs-Playbooks hinter seiner Laravel-Middleware auszuführen. In der veröffentlichten Fallstudie bedient die Architektur rund 600 Server von Agenturkunden.

Ansehen, wie Savvii es ausführt

In einem Workflow bereitstellen, konfigurieren und prüfen

Verbinden Sie Terraform-Provisionierung, Ansible-Konfiguration und Python-Prüfungen in einem Workflow. Übergeben Sie Infrastruktur-Ausgaben an die Playbook-Eingaben und anschließend Werte des konfigurierten Dienstes zur Prüfung. Ergänzen Sie Freigaben und Fehlerpfade dort, wo der Vorgang sie benötigt.

Wartung einer Linux-FlotteWorkflow
Umgebung bereitstellen
Bei ErfolgAusgaben → Eingaben
Die Server konfigurieren
Bei ErfolgAusgaben → Eingaben
Die Dienste prüfen
Bei Fehler
Diagnosedaten sammeln

Ansible-Steuerung mit gespeicherter Ausführungskonfiguration

Hosts auswählen, ohne den Job neu aufzubauen

Verwenden Sie ein statisches Inventar, eine Repository-Datei oder ein von Ihrer Umgebung unterstütztes dynamisches Inventar. Aktivieren Sie die Limit-Abfrage, wenn eine Ausführung nur einen Teil des Inventars betreffen soll.

Tags, Limits und Prüfmodus beibehalten

Speichern Sie Standardwerte in der Vorlage und stellen Sie die vom Team benötigten Ansible-Optionen beim Start bereit. Survey Variables erfassen benutzerdefinierte Eingaben wie eine Release-Version oder Änderungsreferenz.

Git- und Vault-Zugangsdaten wiederverwenden

Verknüpfen Sie gespeicherte Zugangsdaten für Repository- und Hostzugriff sowie bei Bedarf mehrere Ansible-Vault-Passwörter. Ihre Playbooks, Rollen und Collections bleiben im bestehenden Repository.

Wartung planen oder mehrere Jobs koordinieren

Führen Sie dieselbe Vorlage manuell, über eine API-Integration oder nach Zeitplan aus. Verwenden Sie einen Workflow für Abhängigkeiten, Freigaben und Erfolgs- oder Fehlerpfade zwischen Jobs.

FAQ

Kann ich meine bestehenden Ansible-Playbooks über Semaphore ausführen?

Ja. Erstellen Sie ein Ansible Task Template, wählen Sie Repository und Playbook-Pfad und verknüpfen Sie benötigtes Inventar, Variablen und Zugangsdaten. Ihre Rollen, Collections und Git-Prüfprozesse bleiben erhalten. Richten Sie die benötigten Ansible-Abhängigkeiten in der Ausführungsumgebung ein.

Welche Inventaransätze kann ich verwenden?

Verwenden Sie ein statisches Inventar, eine Inventardatei aus einem Repository oder ein von Ihrer Umgebung unterstütztes dynamisches Inventar. Speichern Sie das Inventar in der Vorlage. Aktivieren Sie die Limit-Abfrage, wenn Verantwortliche eine Ausführung auf bestimmte Hosts oder Gruppen einschränken müssen.

Können Ingenieure Ansible-Tags, Hostlimits oder den Prüfmodus wählen?

Ja. Konfigurieren Sie die unterstützten Eingabeabfragen und Optionen in der Vorlage und verwenden Sie diese beim Task-Start. Standardwerte bleiben für spätere Ausführungen gespeichert. Aktivieren Sie für unterstützte API-Überschreibungen wie ein Host-Limit zuerst die entsprechende Eingabeabfrage in der Vorlage.

Wie kann ich ein anderes Team ein Playbook ausführen lassen, ohne es zu bearbeiten?

Weisen Sie Projektrollen zu, die Aufgabenausführung und Ressourcenbearbeitung trennen. Das Team führt eine vorbereitete Vorlage mit ihrer gespeicherten Konfiguration aus. Benutzerdefinierte Enterprise-Rollen können den Zugriff auf ausgewählte Vorlagen beschränken. Prüfen Sie alle zugewiesenen Rollen, da ihre Berechtigungen zusammenwirken.

Kann ich Playbooks für Patches und Zertifikatserneuerungen zeitlich planen?

Ja. Erstellen Sie ein funktionierendes Ansible Task Template und ergänzen Sie einen Zeitplan für wiederkehrende Ausführungen. Ihr Playbook führt Patches oder Erneuerungen durch. Semaphore startet den Task zum konfigurierten Zeitpunkt und speichert Ausgabe und Status jeder Ausführung.

Kann Ansible in einem Workflow nach Terraform oder OpenTofu laufen?

Ja. Verbinden Sie ihre Task Templates in einem Workflow, damit auf die Infrastrukturbereitstellung Ansible-Konfiguration und ein separater Prüftask folgen können. Ergänzen Sie Erfolgs- oder Fehlerbedingungen und eine Freigabe, wenn Ihr Verfahren vor der Fortsetzung eine Entscheidung benötigt.

Wo sollte ich SSH-Schlüssel und Ansible-Vault-Passwörter speichern?

Speichern Sie Zugangsdaten-Einträge im Semaphore Key Store oder binden Sie eine unterstützte externe Geheimnisquelle an. Verknüpfen Sie ihre Verweise mit den Ressourcen und der Vorlage, die sie benötigen. Ein Job nutzt diese Konfiguration wieder, ohne dass Teammitglieder Geheimniswerte in jede Ausführung kopieren müssen.

Muss Ansible auf dem Rechner jedes Teammitglieds installiert sein?

Nein. Ansible läuft in der von Semaphore verwendeten Ausführungsumgebung. Richten Sie dort Version, Collections und Zugriff ein. Teammitglieder starten das gespeicherte Task Template über Oberfläche oder API und prüfen die aufgezeichnete Ausgabe, ohne die Laufzeitumgebung auf ihren Laptops nachzubauen.