0Pricing
Ansible Academy · Lektion

Rollenabhängigkeiten in meta/main.yml

Verketten Sie Rollen, die andere benötigen.

Rollenabhängigkeiten in meta/main.yml ist eine kostenlose Ansible Academy-Lektion auf CoddyKit. Dies ist Lektion 1 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.

Rollen, die andere Rollen benötigen

Manche Rollen funktionieren nur, wenn zuvor eine andere Rolle ausgeführt wurde. Ihre App-Rolle benötigt möglicherweise eine Basisrolle, die den Server vor der Bereitstellung absichert.

meta/main.yml kennenlernen

Jede Rolle kann eine Datei namens meta/main.yml enthalten. Darin werden Metadaten der Rolle gespeichert, etwa Autor, unterstützte Plattformen und Abhängigkeiten.

Der Schlüssel dependencies

Im meta/main.yml listet der Schlüssel dependencies die Rollen auf, die vor dieser Rolle ausgeführt werden müssen. Ansible wendet sie automatisch zuerst an.

dependencies:
  - role: common
  - role: firewall

Abhängigkeiten werden zuerst ausgeführt

Wenn Sie eine Rolle anwenden, führt Ansible deren aufgeführte dependencies davor und in der angegebenen Reihenfolge aus. Anschließend werden die Tasks Ihrer Rolle ausgeführt.

Variablen an eine Abhängigkeit übergeben

Sie können einer Abhängigkeit direkt in der Liste Variablen übergeben. Die Basisrolle wird genau so konfiguriert ausgeführt, wie diese Rolle sie benötigt.

dependencies:
  - role: nginx
    vars:
      http_port: 8080

Eine echte Abhängigkeitskette

Eine webapp-Rolle hängt von nginx ab, das wiederum von common abhängt. Wenden Sie webapp an, wird die gesamte chain automatisch in der richtigen Reihenfolge aufgelöst.

Bedingte Abhängigkeiten

Eine Abhängigkeit kann eine when-Bedingung enthalten und wird dann nur auf passenden Hosts ausgeführt. So können Sie beispielsweise die Firewall-Rolle auf Entwicklungsrechnern überspringen.

dependencies:
  - role: firewall
    when: env == 'prod'

Abhängigkeiten sind statisch

Abhängigkeiten in meta werden aufgelöst, bevor der Play startet. Sie können keine später erfassten Laufzeit-Fakten verwenden. Halten Sie ihre Bedingungen daher einfach.

Auch Galaxy liest meta

Wenn Sie eine Rolle aus Ansible Galaxy installieren, liest Galaxy meta/main.yml und lädt automatisch alle dort aufgeführten Abhängigkeiten herunter.

Abhängigkeiten ehrlich halten

Listen Sie eine Rolle nur dann als Abhängigkeit auf, wenn sie tatsächlich zuerst ausgeführt werden muss. Verborgene Ketten erschweren das Verständnis und die Fehlersuche in der Automatisierung.

Auch Galaxy-Informationen stehen hier

Neben Abhängigkeiten enthält meta/main.yml galaxy_info: Lizenz, minimale Ansible-Version und Plattformen. Damit wird dokumentiert, wie eine Rolle verwendet werden soll.

Kurzer Check

Rufen Sie sich in Erinnerung, wo Sie festlegen, dass eine Rolle vor einer anderen ausgeführt werden muss.

Zusammenfassung

Listen Sie erforderliche Rollen unter dependencies in meta/main.yml auf. Ansible führt diese Kette zuerst aus, optional mit Variablen und Bedingungen. 🔗

Häufig gestellte Fragen

Ist die Lektion „Rollenabhängigkeiten in meta/main.yml“ kostenlos?

Ja — der vollständige Text von „Rollenabhängigkeiten in meta/main.yml“ 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 „Rollenabhängigkeiten in meta/main.yml“?

Verketten Sie Rollen, die andere benötigen. 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 1 von 4.

Wie lange dauert die Lektion „Rollenabhängigkeiten in meta/main.yml“?

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

  1. Rollenabhängigkeiten in meta/main.yml
  2. defaults und vars: Die Reihenfolge beim Überschreiben
  3. include_role und import_role zur Laufzeit
  4. allow_duplicates und Idempotenz von Rollen
← Zurück zu Ansible Academy