Ansible Engine und Tower für große Unternehmen IT-Verwaltung mit Red Hat Ansible Automation

Autor / Redakteur: Michael Matzer / Stephan Augsten

DevOps-Operationen wie das Lifecycle Management von Applikationen werden erst durch eine automatisierte Zuteilung von Ressourcen effizient. Hier hilft Red Hat Ansible, das im Herbst 2017 zahlreiche Neuerungen erfuhr.

Anbieter zum Thema

So sieht die Architektur von Ansible aus.
So sieht die Architektur von Ansible aus.
(© Red Hat)

Ansible, das 2015 von Red Hat gekauft wurde, ist eine in der Open-Source-Community entwickelte Lösung für die agentenlose IT-Automatisierung. Sie erlaubt das Lifecycle-Management von Apps durch Anwendungsverteilung, Konfigurationsmanagement, Netzwerkautomation und Workflow-Orchestrierung. Dies eignet sich insbesondere für größere IT-Umgebungen, in denen beispielsweise Red Hat Enterprise Linux zum Einsatz kommen könnte.

Ansible verwaltet Netzwerkknoten mithilfe der SSH (Secure Shell) auf LXC-Containern, für Windows-Zielsysteme sind ein WinRM-Plug-in und PowerShell vonnöten. Somit sind also OpenSSH, WinRM-Plug-in, PowerShell und Python auf dem zu verwaltenden Knoten erforderlich, dafür aber kein zusätzlicher Software-Agent. Die einzelnen Module, die in jeder Programmiersprache geschrieben sein können (vorzugsweise Python), nutzen zur Ausgabe das JSON-Dokumentenformat.

Roles & Playbooks

Einer der Hauptvorteile der Automatisierung besteht in der Wiederholung von IT-Funktionen und Abläufen. Die einzelnen Funktionen werden als Ansible Roles bezeichnet, Abläufe lassen sich als Playbooks speichern und verteilen.

Roles sind auf konventionelle Art strukturierte Content Directories, die sich zwischen Teams, Unternehmensteilen und Umgebungen portieren lassen. Die Ansible Roles fungieren daher quasi als "gemeinsame Sprache" für die Funktionalität von Ansible; sie können Variablen, Handlers, Files, Templates, Tasks und Module enthalten.

Playbooks hingegen beschreiben Konfigurationen, Deployment und Orchestrierung in Ansible. Zur Formulierung wiederverwendbarer Beschreibungen von Systemen dient YAML, wobei jedes Playbook eine Gruppe von Hosts zu einer Reihe von Rollen zuordnet.

Natürlich muss es im Hinblick auf Change Management auch ein Inventar geben. Das Inventar ist eine Beschreibung der Knoten, auf die von Ansible zugegriffen werden kann. Standardmäßig wird das Inventar durch eine Konfigurationsdatei im INI- Format beschrieben. Die Konfigurationsdatei listet entweder die IP-Adresse oder den Hostnamen jedes Knotens auf, der von Ansible zugänglich ist. Darüber hinaus können Knoten gruppiert werden. Ansible kann auch das Inventar dynamisch aus anderen Systemen beziehen.

Da Ansible Roles in Unternehmen weit verbreitet sind, hat sich der Community-Hub Ansible Galaxy als beste Möglichkeit herauskristallisiert, um die Roles zu organisieren, aufzufinden und sie gemeinsam zu nutzen.

Als Verwaltungskonsole dient AWX, bestehend aus einer REST-API, einem Web-Service und einer Web-basierten Konsole. Damit kann die mit Ansible verwaltete IT-Infrastruktur zentralisiert werden, dies erfolgt über ein visuelles Dashboard einschließlich Verwaltung aller Inventare, einer rollenbasierten Zutrittskontrolle, Job-Scheduling und Nachrichten. Von AWX ist das Tower-Produkt abgeleitet.

Bildergalerie
Bildergalerie mit 6 Bildern

Ansible Engine und Ansible Tower

„Red Hat Ansible Automation“ gibt es seit Herbst 2017 in zwei Editionen: Neben dem kostenlosen Community-Projekt Ansible, das von Red Hat unabhängig ist, liegen als kostenpflichtige Angebote Red Hat Ansible Engine und Red Hat Ansible Tower vor. Engine und Tower bieten Leistungsmerkmale, die große Unternehmen benötigen, um Sicherheit, Zuverlässigkeit und Skalierbarkeit zu gewährleisten.

Unternehmen sollen damit in die Lage versetzt werden, eine geschäftskritische Automatisierungslösung unternehmensweit einzuführen, zu betreiben und diese vollständig zu verwalten. Von dieser unternehmensweiten Einführung können laut Red Hat zwei Gruppen profitieren: IT-Abteilungen, die DevOps implementieren möchten, und IT-Verantwortliche, die mithilfe von Automatisierung ihre digitale Führungsposition ausbauen wollen.

Ansible Engine besteht aus dem quelloffenen Basisprodukt mit seinen über 100 Kernmodulen plus einer Support-Subskription. Das bedeutet Unterstützung durch die weltweit verfügbare Supportorganisation von Red Hat – entweder zu den üblichen Geschäftszeiten oder 24x7. Die Lizenz umfasst Open Source Assurance, Service Level Agreements (SLA) sowie regelmäßige Sicherheits- sowie Wartungsupdates.

Optional gibt es seit Oktober 2017 ein Networking Add-On „Ansible Engine for Network Automation“, das die Netzwerkautomatisierung erlaubt. Ansible Engine beinhaltet volle Engineering-Unterstützung für die netzwerkspezifischen Module Arista (EOS), Cisco (IOS, IOS-XR, NX-OS), Juniper (Junos OS), Open vSwitch und VyOS.

(ID:45114242)