Ansible-Tutorial: Module und Collections

Module verrichten den Hauptteil der Arbeit und lassen sich flexibel erweitern. Die neue Collection-Infrastruktur macht die Erweiterungen einfach transportabel.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Lesezeit: 20 Min.
Von
  • Daniel Kobras
  • Mark Pröhl
Inhaltsverzeichnis

Tasks bilden den elementaren Baustein von Ansible, aus dem sowohl Ad-hoc-Kommandos als auch ganze Playbooks aufgebaut sind. Die bisherigen Teile des Tutorials haben verschiedene Methoden behandelt, beispielsweise über das Inventar oder Lookup-Plug-ins die Parametrisierung von Tasks direkt oder indirekt zu beeinflussen. Dieser dritte Teil beschäftigt sich nun mit der genauen Aufgabe, die ein Task erledigen soll. Dazu ist jedem Task exakt ein Ansible-Modul zugeordnet, das die zu verrichtenden Tätigkeiten festlegt.

Idealerweise gibt es analog zur bekannten Unix-Philosophie ein Modul für genau einen Zweck. In der Praxis wird dieser Grundsatz allerdings recht unterschiedlich interpretiert: Da jedes Modul sein Verhalten über Eingabeparameter steuern lassen kann, trifft man vor allem jenseits des Basisumfangs von Ansible hier durchaus auch auf umfangreiche Alleskönner. Meist geben sie sich schon in der Dokumentation durch die schiere Länge der Liste mit den erlaubten Parametern zu erkennen.

Ansible arbeitet grundsätzlich zustandslos. Für Module bedeutet das, dass sie möglichst unabhängig vom Ausgangszustand stets denselben Zielzustand herstellen sollen – auch dann, wenn sie mehrfach hintereinander aufgerufen werden. Module müssen somit idempotent sein.

Immer mehr Wissen. Das digitale Abo für IT und Technik.






Immer mehr Wissen. Das digitale Abo für IT und Technik.