Ansible für Gruppen (3)

Lesezeit
3 Minuten
Bis jetzt gelesen

Ansible für Gruppen (3)

16.10.2023 - 07:11
Veröffentlicht in:

Viele Workshops zu Ansible bewegen sich ausschließlich auf der Kommandozeile. Wer jedoch die Automatisierung in Gruppen nutzen will und Arbeitsabläufe delegieren möchte, braucht etwas mehr Ordnung und eine WebUI, wie sie AWX und andere Managementtools liefern. Im dritten und letzten Workshop-Teil geben wir einige praktische Hinweise zur Automatisierung und werfen einen Blick auf die Tools The Foreman, Katello und Manage IQ.

Praktische Automatisierung
Nachdem eine der beiden AWX-Varianten angelaufen ist, legen Sie zunächst eine Organisation an und fügen die essenziellen Credentials ein. Dazu gehören vor allem die Zugangsdaten zum verwendeten Git, ein SSH-Private-Key, um per SSH in die gemanagten Maschinen zu kommen, und die Login-Informationen zu einer Cloud- oder Enterprise-Virtualisierung. Im nächsten Schritt folgt das dynamische Inventory zur gewählten Cloud, gefolgt vom ersten Projekt mit Anbindung zum gewählten Git-Repo. Dann können Sie beginnen, Job-Templates anzulegen und zu testen. Sobald alles wie gewünscht funktioniert, folgen Workflow-Templates, die mehrere Schritte der Automatisierung zusammenfügen.

Wer auf AWX als Automation-Controller umsteigt, dürfte sich nach relativ kurzer Zeit im Tool zurechtfinden. Die eine oder andere tolle Funktion bleibt Ihnen dabei vielleicht verborgen, weswegen wir ein Feature hervorheben möchten: den Provisioning-Callback. Sie können einem Job-Template nämlich eine Callback-URL geben. Ruft ein Client diese URL mitsamt dem zugehörigen Password auf, führt AWX den Job im Template auf dem rufenden Zielsystem aus. Das setzt aber voraus, dass das Zielsystem auch Teil des Inventories ist, das zum Callback-Template gehört. Die Callback-Funktion ist gerade für mehrstufige Automatisierungen ungemein praktisch. Der Verwalter kann beispielsweise in der Vorlage seines OS-Rollouts festlegen, dass eine frisch erstellte VM beim ersten Start eine vorgegebene Callback-URL aufruft. AWX startet den gewünschten Workflow dann auf Zuruf.

Zudem verfügt AWX über eine vollständige und sehr gut dokumentierte Rest-API. Alle Funktionen von AWX lassen sich nicht nur in der Web-UI, sondern auch via Rest-API verwenden. Das kommt häufig bei Unternehmen zum Einsatz, die bereits ein eigenes Tool für Self-Service-Rollouts oder Workflow-Steuerung nutzen. Die wollen dann nicht, dass sich Nutzer direkt an der UI von AWX anmelden. Per API lässt sich dann dennoch der volle Funktionsumfang von AWX, gesteuert aus einem anderen Tool heraus, verwenden. Es gibt Installationen, die Tools wie Rundeck, ServiceNow oder Jenkins für Workflows nutzen und aus diesen Flows via API-Call zu AWX Ansible-Playbooks und -Rollen einbinden.

The Foreman und Katello
Das Management-Tool "The Foreman" verwaltet virtuelle und physische Maschinen, kann PXE-Dienste offerieren und sehr komfortabel VMs auf diversen Plattformen administrieren. The Foreman integriert eigentlich Puppet als Configuration-Management-Tool und fungiert dabei auch als Puppet-Master. Das Werkzeug nutzt dabei ein sehr flexibles Plug-in-System, über das sich die Funktion und UI des Tools erweitern lässt. Mit dem Repository-Management "Pulp" kann Foreman Update- und Patch-Rollouts verwalten. Das kommerzielle Red Hat Management Tool "Satellite" in der Version 6.x basiert beispielsweise auf Foreman und Pulp sowie dem Open-Source-Projekt "Katello", das die verschiedenen Komponenten und Funktionen zusammenbringt. Wer eine Open-Source-Version von Satellite betreiben will, folgt dieser Anleitung.

Das Managementtool The Foreman arbeitet nicht nur als Puppet-Master, sondern liefert über das Ansible-Plug-in auch Rollen an gemanagte oder neu erstellte Hosts.
Bild 4: Das Managementtool The Foreman arbeitet nicht nur als Puppet-Master, sondern liefert über das Ansible-Plug-in auch Rollen an gemanagte oder neu erstellte Hosts.
 

Mittlerweile gibt es auch ein umfangreiches Ansible-Plug-in für Katello/Foreman. Dieses verwaltet Ansible-System-Roles auf dem Foreman-Server, sodass sie der Anwender den Host-Gruppen zuordnen kann. Diese Rollen dienen in erster Linie dazu, grundlegende OS-Funktionen einer frisch erstellten VM einzurichten. Anwender nutzen das integrierte Ansible beispielsweise für SAP-Rollouts. Dabei generiert Foreman zunächst eine passende VM auf der gewünschten Zielplattform und schickt dann Rollen wie "SAP-Prepare", "Hana-Prepare" oder "Hana-Install" hinterher. In kleineren Umgebungen setzen viele Administratoren dagegen auf das VM- und Cloud-Automation-Tool Vagrant. Auch die Software von HashiCorp kann Ansible integrieren und Ansible-Playbooks über Vagrant-Files starten.

Manage IQ
Eine weitere, sehr leistungsfähige, aber komplexe Management-Lösung ist ManageIQ. Die kommerzielle Version dieser Appliance "CloudForms" wurde bislang von Red Hat vertrieben, dann aber an IBM abgetreten. Unabhängig davon steht die freie Upstream-Version ManageIQ für diverse Zielplattformen zur Verfügung. Zu den Stärken zählt das hybride Cloud-management, die umfangreiche CMDB und heterogene Verwaltungsfunktionen. Das Tool ist so leistungsfähig, dass es eine mehrteilige Artikelserie bräuchte, um nur die Grundfunktionen vorzustellen.

Die Management-Appliance ManageIQ verteilt wahlweise lokal gespeicherte Ansible-Rollen.
Bild 5: Die Management-Appliance ManageIQ verteilt wahlweise lokal gespeicherte Ansible-Rollen.
 

ManageIQ sammelt beispielsweise umfangreiche Informationen von den verwalteten virtuellen Maschinen, ohne dafür aber einen Client in den VMs zu benötigen. Vielmehr erstellt ManageIQ einfach Snapshots der VM-Disks, mounted diese an die eigene Appliance-VM und liest einfach das komplette Dateisystem nebst Windows-Registry und Konfigurationsdateien aus. Die Ergebnisse landen in der CMDB und stehen für Auswertungen, Workflows oder Reports bereit. Der große Haken an ManageIQ: Die Eirichtung ist alles andere als einfach und um den vollen Umfang des Tools abzurufen, kommen Sie kaum um Ruby Coding herum.

ManageIQ kann Ansible auf zweierlei Arten integrieren. Zum einen kommuniziert es mit einem bestehenden Tower- oder AWX-Setup und integriert dessen vollen Funktionsumfang in die eigenen Prozesse. ManageIQ geht dabei sogar so weit, dass es Tower/AWX-Surveys übernimmt und daraus direkt ManageIQ-Eingabemasken baut. Zum anderen kann der Administrator Ansible-Rollen aus Git-Repositories direkt in die Manage-IQ-Appliance synchronisieren. Diese weist der Administrator dann gemanagten Hosts oder Host-Gruppen zu und baut die Rollen in ManageIQ-Workflows oder Policies ein.

Fazit
UI-Tools wie AWX vereinfachen den Umgang mit der Automatisierungsplattform Ansible erheblich – vor allem erweitern Sie die Möglichkeit, in Teams zu arbeiten und Playbooks und Rollen aus verschiedenen Quellen zu übergreifenden Workflows zusammenzuführen. Mit der Containerisierung der AWX-Plattform steigen allerdings die Anforderungen an die Managementumgebung. Nur wegen AWX wird sich niemand einen eigenen Kubernetes-Cluster ins Rechenzentrum bauen. Wer aber ohnehin mit Kubernetes arbeitet, kann dessen Skalierungsoptionen für AWX voll ausnutzen. Dank Rest-API integriert sich AWX in bestehende Plattformen. Zudem verfügen Enterprise-Managementtools wie Foreman oder ManageIQ über eine Ansible-Integration, auch wenn deren Funktionalität nicht an AWX heranreicht.

ln/dr/Andreas Stolzenberger

Im ersten Teil der Workshopserie gingen wir auf die Vorzüge und die Installation von AWX ein. Im zweiten Teil zeigten wir, wie Sie AWX im Zusammenspiel mit Kubernetes und Docker Compose nutzen und Playbooks für AWX anpassen.

Ähnliche Beiträge

Ansible für Gruppen (2)

Viele Workshops zu Ansible bewegen sich ausschließlich auf der Kommandozeile. Wer jedoch die Automatisierung in Gruppen nutzen will und Arbeitsabläufe delegieren möchte, braucht etwas mehr Ordnung und eine WebUI, wie sie AWX und andere Managementtools liefern. Im zweiten Teil des Workshops zeigen wir, wie Sie AWX im Zusammenspiel mit Kubernetes und Docker Compose nutzen und Playbooks für AWX anpassen.

Effiziente Automatisierung in der Telko-Branche

Die Nachfrage nach Hochgeschwindigkeits-Anbindung über das Handynetz steigt unaufhörlich und neben dem Home Office werden alternative Arbeitsmodelle wie Workation immer populärer. Dieser gesteigerte Bedarf an Konnektivität eröffnet ungeahnte Potenziale für Telekommunikationsunternehmen – vor allem dank intelligenter Automatisierungstechnologien. Welche Rolle dabei unter anderem ITSM 3.0 spielt, lesen Sie im Fachartikel.