Erst bereitstellen, dann in einem Ablauf konfigurieren
Übergeben Sie neue Hosts an Konfigurations-Playbooks.
Erst bereitstellen, dann in einem Ablauf konfigurieren ist eine kostenlose Ansible Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Ansible Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Ansible Academy-Kurs umfasst insgesamt 4 Lektionen.
Zwei Aufgaben, ein Playbook
Provisionierung lässt einen Server vorhanden sein. Konfiguration macht ihn nutzbar. Die eigentliche Stärke liegt darin, beides in einem einzigen, reibungslosen Play zu erledigen. 🔗
Auf dem Steuerknoten provisionieren
Aufgaben zur Cloud-Erstellung werden lokal über die AWS-API ausgeführt. Daher richtet sich das Provisionierungs-Play an localhost, nicht an den neuen Server.
- hosts: localhost
gather_facts: false
tasks:
- amazon.aws.ec2_instance: { name: web-01 }Den neuen Host erfassen
Sie können sich nicht per SSH mit einer Maschine verbinden, über die Sie noch nichts wissen. Erfassen Sie das Ergebnis von ec2_instance mit register, um die aktuelle öffentliche IP-Adresse abzurufen.
- amazon.aws.ec2_instance:
name: web-01
register: ec2Zur Laufzeit zum Inventar hinzufügen
Das Modul add_host fügt den neuen Server dem laufenden Inventar hinzu. Ein späteres Play kann ihn dadurch ohne statische Datei als Ziel verwenden.
- add_host:
name: "{{ ec2.instances[0].public_ip_address }}"
groups: launchedWarten, bis SSH bereit ist
Eine startende Instanz ist nicht sofort erreichbar. wait_for wartet, bis Port 22 antwortet, bevor Sie eine Verbindung herstellen.
- wait_for:
host: "{{ ec2.instances[0].public_ip_address }}"
port: 22Ein zweites Play starten
Öffnen Sie nun ein neues Play, das auf die gerade erstellte Gruppe launched zielt. Dieses Play wird direkt auf dem Cloud-Server ausgeführt.
- hosts: launched
become: true
tasks:
- ping:Den neuen Host konfigurieren
Sobald sich der Host im Inventar befindet, übernehmen gewöhnliche Module. Installieren Sie Pakete, kopieren Sie Konfigurationen und starten Sie Dienste genau wie auf jedem anderen Knoten.
- hosts: launched
tasks:
- package:
name: nginx
state: presentDen richtigen SSH-Benutzer angeben
Cloud-Images verwenden bestimmte Anmeldungen, etwa ubuntu oder ec2-user. Setzen Sie ansible_user, damit das Konfigurations-Play die Verbindung korrekt herstellt.
add_host:
name: "{{ ec2.instances[0].public_ip_address }}"
groups: launched
ansible_user: ubuntuEine Datei, von Anfang bis Ende
Das Ergebnis ist ein einziges Playbook: Play eins erstellt die Infrastruktur, Play zwei konfiguriert sie. Führen Sie es einmal aus, und ein funktionsfähiger Server wird bereitgestellt.
Durchgehend idempotent
Beide Teile sind idempotent. Bei einer erneuten Ausführung wird die vorhandene Instanz erkannt und die Konfiguration angeglichen, sodass der Ablauf sicher wiederholbar ist.
Host-Key-Abfragen überspringen
Ein brandneuer Host verfügt über einen unbekannten SSH-Schlüssel. Deaktivieren Sie host_key_checking für die gestartete Gruppe, damit die erste Verbindung nicht ins Stocken gerät.
add_host:
name: "{{ ec2.instances[0].public_ip_address }}"
groups: launched
ansible_ssh_common_args: "-o StrictHostKeyChecking=no"Kurzer Check
Sie haben gerade eine EC2-Instanz gestartet und möchten, dass das nächste Play sie konfiguriert – ohne statischen Inventory-Eintrag. Was überbrückt diese Lücke?
Zusammenfassung
Sie haben Provisionierung und Konfiguration miteinander verknüpft: Erstellen auf localhost, IP registrieren, add_host verwenden, auf SSH warten und anschließend in einem zweiten Play konfigurieren. ✨
Häufig gestellte Fragen
Ist die Lektion „Erst bereitstellen, dann in einem Ablauf konfigurieren“ kostenlos?
Ja — der vollständige Text von „Erst bereitstellen, dann in einem Ablauf konfigurieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Ansible Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Ansible Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Erst bereitstellen, dann in einem Ablauf konfigurieren“?
Übergeben Sie neue Hosts an Konfigurations-Playbooks. Du übst Ansible Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Ansible Academy zu starten?
Keine Vorkenntnisse erforderlich. Ansible Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Erst bereitstellen, dann in einem Ablauf konfigurieren“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Ansible Academy-Lektion Code schreiben und ausführen?
Ja. Jede Ansible Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Cloud-Collections und Authentifizierung
- EC2-Instanzen deklarativ starten
- Netzwerk: VPCs, Subnetze und Security Groups
- Erst bereitstellen, dann in einem Ablauf konfigurieren