constructed: Hosts nach Tags gruppieren
Erstellen Sie Gruppen aus Cloud-Metadaten.
constructed: Hosts nach Tags gruppieren ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 3 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 DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Rohe Hosts reichen nicht aus
Eine flache Liste von EC2-Instanzen lässt sich nur schwer gezielt ansprechen. Sie benötigen Gruppen wie webservers oder production, die aus den Metadaten der einzelnen Hosts erstellt werden.
Zwei Möglichkeiten zum Gruppieren
Sie können innerhalb des aws_ec2-Plugins mit keyed_groups gruppieren oder für komplexere Logik das constructed-Plugin darüberlegen.
keyed_groups anhand eines Tags
Die Option keyed_groups wandelt automatisch einen Tag-Wert in einen Gruppennamen um – eine Gruppe für jeden unterschiedlichen Wert.
keyed_groups:
- key: tags.Environment
prefix: envPräfixe halten Namen sauber
Ein prefix wie env wandelt den Wert prod in die Gruppe env_prod um, sodass Cloud-Tags nicht mit Ihren eigenen Gruppennamen kollidieren.
Das constructed-Plugin
Das constructed-Plugin fügt vorhandenen Hosts mithilfe von Jinja2 Gruppen und Variablen hinzu, nachdem eine andere Quelle sie geladen hat.
plugin: constructedgroups: anhand eines Ausdrucks erstellen
Unter groups entscheidet ein Jinja2-Ausdruck über die Zugehörigkeit. Hosts, für die der Ausdruck true ergibt, werden dieser Gruppe hinzugefügt.
groups:
is_prod: "tags.Environment == 'prod'"compose: Hostvariablen festlegen
Mit dem Schlüssel compose legen Sie anhand von Ausdrücken neue Hostvariablen fest, etwa indem Sie aus einem Tag einen App-Namen für die spätere Verwendung ableiten.
compose:
app: tags.Service | default('unknown')keyed_groups auch hier
constructed unterstützt ebenfalls keyed_groups. Damit können Sie dynamische Gruppennamen aus jedem bereits vorhandenen Fakt oder jeder vorhandenen Variable erzeugen.
strict erkennt Tippfehler
Setzen Sie strict: true, damit ein fehlerhafter Ausdruck deutlich fehlschlägt, anstatt einen Host, den Sie gruppieren wollten, stillschweigend zu überspringen.
strict: trueGruppen jetzt sauber ansprechen
Sobald Gruppen vorhanden sind, schreiben Sie Plays ganz natürlich für diese Gruppen, etwa mit hosts: is_prod, ohne irgendwo eine statische Hostliste zu benötigen.
- hosts: is_prod
roles:
- webserverQuellen der Reihe nach verknüpfen
Verweisen Sie Ansible auf ein Verzeichnis mit Inventory-Dateien. Es lädt zuerst aws_ec2, danach reichert constructed diese Hosts mit Ihren Gruppen an.
Kurzer Check
Rufen Sie in Erinnerung, welche Option automatisch Gruppen aus einem Tag erstellt.
Zusammenfassung
Verwenden Sie keyed_groups mit dem constructed-Plugin sowie groups und compose, um Cloud-Tags in saubere, gezielt ansprechbare Ansible-Gruppen umzuwandeln. 🏷️
Häufig gestellte Fragen
Ist die Lektion „constructed: Hosts nach Tags gruppieren“ kostenlos?
Ja — der vollständige Text von „constructed: Hosts nach Tags gruppieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „constructed: Hosts nach Tags gruppieren“?
Erstellen Sie Gruppen aus Cloud-Metadaten. Du übst DevOps Bootcamp 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 DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp 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 3 von 4.
Wie lange dauert die Lektion „constructed: Hosts nach Tags gruppieren“?
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 DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-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
- Statische Grenzen und das Modell des Inventory-Plugins
- Das Inventory-Plugin aws_ec2
- constructed: Hosts nach Tags gruppieren
- Caching und mehrere Inventory-Quellen