Rollen anwenden und Rollenvariablen übergeben
Binden Sie eine Rolle ein und parametrisieren Sie sie.
Rollen anwenden und Rollenvariablen übergeben ist eine kostenlose DevOps Bootcamp-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 DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Eine Rolle mit roles: anwenden
Die einfachste Möglichkeit, eine Rolle zu verwenden, ist der Schlüssel roles in einem Play. Listen Sie die Rollennamen auf, und Ansible führt sie der Reihe nach aus.
- hosts: web
roles:
- nginx
- firewallRollen werden vor Tasks ausgeführt
Rollen unter roles werden vor allen Tasks desselben Plays ausgeführt. Denken Sie an diese Reihenfolge, wenn Sie Rollen und Tasks kombinieren.
Variablen direkt übergeben
Um eine Rolle anzupassen, übergeben Sie Variablen direkt an der Stelle, an der Sie sie anwenden. Ansible übernimmt diese und überschreibt damit die Standardwerte der Rolle.
roles:
- role: nginx
nginx_port: 8080Der Schlüssel role: macht es eindeutig
Wenn Sie Variablen übergeben, verwenden Sie den Schlüssel role, um die Rolle zu benennen, und fügen Sie die Variablen anschließend als gleichrangige Schlüssel darunter hinzu.
- role: postgres
db_name: shop
db_user: adminStandardwerte dienen als Fallback
Wenn Sie keine Variable übergeben, verwendet die Rolle ihren Wert aus defaults/main.yml. Deshalb funktioniert jede Rolle sofort ohne weitere Angaben.
Dieselbe Rolle zweimal mit Überschreibungen anwenden
Sie können eine Rolle mehrmals mit unterschiedlichen Variablen anwenden, beispielsweise um zwei Datenbankinstanzen aus einer einzigen Rolle zu konfigurieren.
Gruppenvariablen erreichen auch Rollen
Variablen in group_vars und host_vars werden automatisch an Rollen weitergegeben, die auf diesen Hosts angewendet werden. Eine direkte Übergabe ist nicht erforderlich.
Mit vars_files bleiben Plays übersichtlich
Lagern Sie Rolleneinstellungen mit vars_files aus dem Play in eine separate Datei aus, damit Ihr Playbook kurz und übersichtlich bleibt.
vars_files:
- web_settings.ymlinclude_role wird mitten im Play ausgeführt
Benötigen Sie eine Rolle mitten in Ihren Tasks? Verwenden Sie include_role als Task, um sie genau an dieser Stelle dynamisch anzuwenden.
- name: Set up nginx
ansible.builtin.include_role:
name: nginxDokumentieren Sie die akzeptierten Variablen
Eine gute Rolle führt in ihrer README die erwarteten Variablen auf. Klare Eingaben machen eine Rolle einfach und sicher für andere wiederverwendbar.
Eine Rolle, viele Server
Wenden Sie dieselbe parametrisierte Rolle auf vielen Hosts an und passen Sie jeden mit unterschiedlichen Variablen an. Das ist Wiederverwendung, ohne einen einzigen Task neu zu schreiben.
Kurzer Check
Überlegen Sie, wie Sie beim Anwenden einer Rolle ihren Standardwert überschreiben.
Zusammenfassung
Wenden Sie Rollen mit dem Schlüssel roles an, übergeben Sie Variablen direkt, um Standardwerte zu überschreiben, und verwenden Sie eine parametrisierte Rolle auf vielen Hosts wieder. 🚀
Häufig gestellte Fragen
Ist die Lektion „Rollen anwenden und Rollenvariablen übergeben“ kostenlos?
Ja — der vollständige Text von „Rollen anwenden und Rollenvariablen übergeben“ 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 „Rollen anwenden und Rollenvariablen übergeben“?
Binden Sie eine Rolle ein und parametrisieren Sie sie. 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 4 von 4.
Wie lange dauert die Lektion „Rollen anwenden und Rollenvariablen übergeben“?
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
- Warum Rollen: Vom Monolithen zu Modulen
- Der Aufbau eines Rollenverzeichnisses
- Eine Rolle mit ansible-galaxy init erstellen
- Rollen anwenden und Rollenvariablen übergeben