Ansible im Vergleich zu Chef: Was Sie wissen müssen

URL kopieren

Ansible® und Chef sind auf Open Source basierende IT-Automatisierungstools der Community. Mit beiden Tools können Sie den IT-Betrieb und die Arbeit Ihrer DevOps-Teams durch die Automatisierung von Routineaufgaben vereinfachen, beispielsweise die Konfiguration und Provisionierung von Systemen, Software-Deployments sowie die Verwaltung von Updates für eine große Zahl von Servern oder Endgeräten.

Ansible ist für seine Nutzerfreundlichkeit bekannt, die sich durch den flexibleren agentenlosen Ansatz ergibt, bei dem die Installation von zusätzlicher Software auf den zu automatisierenden Zielen entfällt. Im Gegensatz dazu basiert Chef auf einem agentenbasierten Ansatz, d. h. auf den Maschinen wird zusätzliche Software benötigt. Ein weiteres Hauptunterscheidungsmerkmal ist, dass Ansible die Python-basierte Konfigurationssprache YAML verwendet, die leichter zu erlernen und auf Administrationsteams ausgerichtet ist. Chef hingegen verwendet Ruby, eine domainspezifische Sprache (DSL), die auf Entwicklungsteams ausgerichtet ist und eine steilere Lernkurve hat. 

In diesem Artikel werden die Ähnlichkeiten und Unterschiede von Ansible und Chef im Detail erklärt.

Zum Guide für den Einstieg in Ansible Automation Platform

Wie fügen sich Ansible und Chef in die Bandbreite der Automatisierungstools ein? Ansible, Chef, Salt und Puppet gehören zu den meistgenutzten Open Source IT-Automatisierungstools. Diese Produkte verwenden einen anderen Automatisierungsansatz. Außerdem sind sie als Unternehmenslösungen verfügbar und werden von verschiedenen Softwareunternehmen verkauft. Viele IT-Unternehmen verwenden mehr als eine Lösung für verschiedene Zwecke oder kombinieren diese sogar. 

  • Ansible wurde 2015 von Red Hat übernommen und ist als Red Hat Ansible® Automation Platform erhältlich.
  • Chef wurde 2020 von Progress übernommen und ist in einer Reihe kommerzieller Produkte inklusive Chef Enterprise Automation Stack erhältlich. 
  • Salt (im Handel als SaltStack bekannt) wurde 2020 von VMWare übernommen und ist Teil des vRealize-Automatisierungsportfolios, das kürzlich den neuen Markennamen „VMware Aria Automation“ erhalten hat. VMware wurde 2022 von Broadcom übernommen. 
  • Puppet wird von Perforce unterstützt und ist in einer Reihe kommerzieller Produkte erhältlich, darunter Puppet Enterprise und Puppet Bolt.

Red Hat Ressourcen

Ansible

Ansible ist eine auf Open Source basierende, in Python geschriebene Befehlszeilen-Software für die IT-Automatisierung. Damit können Sie Systeme konfigurieren, Software bereitstellen und fortschrittliche Workflows orchestrieren, wodurch Aufgaben wie Anwendungs-Deployments, Netzwerkkonfiguration- und -betrieb sowie Systemupdates unterstützt werden. Red Hat Ansible Automation Platform ist ein Subskriptionsprodukt, das auf Ansible aufbaut und zahlreiche Features für Unternehmen umfasst.

Die Stärke von Ansible liegt in seiner Community. Sein zentrales GitHub-Repository zieht Tausende von Mitwirkenden an, und Zehntausende von Repositories beruhen darauf (Stand: Herbst 2022). Seine beliebte Konferenz für Nutzende, AnsibleFest, ist Teil des jährlich stattfindenden Red Hat Summit, und Ansible Meetups werden regelmäßig auf der ganzen Welt organisiert. In dieser engagierten Community findet sich ein enormes Fachwissen zu Ansible, und die Mitwirkenden sorgen dafür, dass Ansible dauerhaft in andere beliebte Softwareprojekte integriert bleibt. Nutzerinnen und Nutzer von Ansible können auf Hunderte von Modulen und Plugins zugreifen und so die Möglichkeiten dieser Lösung erweitern. 

Ansible wurde mit Fokus auf Einfachheit und Nutzungsfreundlichkeit konzipiert. Da Sicherheit und Zuverlässigkeit im Vordergrund stehen, gibt es nur eine minimale Anzahl an beweglichen Teilen. Der Transport findet über OpenSSH statt, wobei andere Transport- und Abrufalternativen verfügbar sind. Außerdem wird eine für Menschen lesbare Sprache verwendet, die den Einstieg auch ohne umfassendes Training erleichtert.

Ansible verwendet einen Kontrollknoten (auf dem Ansible ausgeführt wird) und gemanagte Knoten (die Geräte, die automatisiert werden – oftmals ein Linux®- oder Windows-Rechner). Da Ansible agentenlos ist, kann es mit Geräten kommunizieren, ohne dass eine Anwendung oder ein Service auf dem gemanagten Knoten installiert werden muss. Ansible Automation Platform kann Automatisierungsjobs mit einer Technologie namens Automatisierungs-Mesh auf Ausführungsknoten verteilen.  

Nutzerinnen und Nutzer von Ansible können verschiedene Teile ihrer Infrastruktur im Detail orchestrieren, indem sie Ansible Playbooks verwenden. Dabei handelt es sich um Dateien, die in der für Menschen lesbaren Sprache YAML geschrieben sind. Ansible hingegen verwendet einen prozeduralen (oder imperativen) Programmieransatz. Dabei wird versucht, die Konfiguration einer IT-Infrastruktur beizubehalten, indem die Schritte zum Erreichen eines gewünschten Zustands definiert werden.

Chef

Chef ist eine auf Open Source basierende IT-Automatisierungsplattform, die in Ruby DSL geschrieben ist und Infrastruktur in Code transformiert. Ähnlich wie bei Ansible Playbooks nutzt auch Chef wiederverwendbare Definitionen, die als Anspielung auf den Produktnamen „Kochbücher“ (Cookbooks) oder „Rezepte“ (Recipes) genannt werden, um zu automatisieren, wie Infrastruktur in Netzwerken konfiguriert, bereitgestellt und gemanagt wird. Dabei spielt es keine Rolle, ob es sich um On-Premise-, Cloud- oder Hybrid-Umgebungen handelt.  

Im Gegensatz zu Ansible verwendet Chef eine agentenbasierte Architektur. Dabei wird der Chef-Server auf der Hauptmaschine und der Chef-Client als Agent auf den einzelnen Client-Maschinen ausgeführt. Hinzu kommt eine zusätzliche Komponente, die als „Workstation“ bezeichnet wird. Diese enthält sämtliche Konfigurationen, die getestet und dann ohne Befehle vom Chef-Hauptserver zu den Client-Maschinen gesendet werden. Da die Verwaltung dieser Pull-Konfigurationen Programmierwissen voraussetzt, ist Chef selbst für erfahrene DevOps-Profis in der Anwendung komplizierter als andere Automatisierungstools.      

Die in Chef verwendete agentenbasierte Architektur bezeichnet ein Infrastruktur- und Automatisierungsmodell, bei dem bestimmte Software, sogenannte Agents, auf gemanagten Umgebungen ausgeführt werden müssen. Der Agent und seine Abhängigkeiten müssen dabei auf den einzelnen Zielknoten installiert sein, wodurch zusätzliche Sicherheitsprüfungen und -regeln erforderlich werden. Dies kann zu einem Problem werden, wenn Objekte automatisiert werden müssen, auf denen der Agent nicht verfügbar ist oder nicht ausgeführt werden darf. Außerdem müssen die Agents gewartet werden.

Die von Ansible verwendete agentenlose Architektur ist eine Methode zur Automatisierung und Verwaltung von IT-Geräten, bei der keine Agent-Software in den gemanagten Umgebungen installiert werden muss. Die Kontrollsoftware stellt über SSH eine Verbindung zu Remote-Maschinen her und kann diese anschließend sofort managen – ohne einen langwierigen Einrichtungsprozess. Bei dieser Architektur entfällt die Wartung eines Deployment-Systems, sobald die Konfiguration abgeschlossen ist.

Konfigurationsmanagement bezeichnet einen Prozess, bei dem Computersysteme, Server und Software in einem konsistenten, gewünschten Zustand gehalten werden. Damit können Unternehmen sicherstellen, dass ihre Systeme auch bei ständigen Veränderungen wie erwartet funktionieren. Das Konfigurationsmanagement kann automatisiert werden, wodurch Kosten, Komplexität und das Risiko manueller Fehler reduziert werden.  

DevOps und DevSecOps sind Akronyme für die englischen Begriffe „Development Operations“ (Entwicklungsoperationen) und „Development, Security and Operations“ (Entwicklung, Sicherheit und Operationen). Es handelt sich dabei um Ansätze für Unternehmenskultur, Automatisierung und Plattformdesign, bei denen die Sicherheit als eine gemeinsame Verantwortung im gesamten IT-Lifecycle integriert ist. DevOps und DevSecOps sind eigentlich Synonyme, da von Anfang an beabsichtigt war, dass Sicherheit Teil des DevOps-Ansatzes ist. Allerdings nutzen viele heutzutage den Begriff DevSecOps, um den Sicherheitsaspekt zu betonen.

YAML steht für „Yet Another Markup Language“ (oder „YAML Ain’t Markup Language“), und ist eine Datenserialisierungssprache, die oft zum Schreiben von Konfigurationsdateien verwendet wird. YAML wurde als einfach verständliche und von Menschen lesbare Sprache entwickelt und kann zusammen mit anderen Programmiersprachen verwendet werden. YAML ist ein Superset von JSON (JavaScript Object Notation).

Bei der Wahl einer Automatisierungslösung sollten Sie nicht nur die in einer aktuellen Softwareversion verfügbaren Features berücksichtigen, sondern auch die langfristige Ausrichtung der Plattform. Sowohl Chef als auch Ansible sind hochgradig skalierbar und bieten eine hohe Interoperabilität mit Kontrollmaschinen, die auf Linux/Unix ausgeführt werden, und Knoten, die auf Windows ausgeführt werden können. Dennoch sticht Ansible mit seiner aktiven Open Source Community und der Unterstützung von Red Hat heraus. 

Es ist auch nicht ungewöhnlich, dass Organisationen mehrere Automatisierungslösungen einsetzen. Ansible ist mit einem großen IT-Ökosystem von unterstützten Integrationen verbunden und kann zusammen mit vielen anderen Automatisierungs- und Konfigurationsmanagementtools als Orchestrator der Automatisierungstools verwendet werden. Zusätzlich lassen sich mit Ansible Systeme in Public Cloud-Hyperscaler wie Amazon Web Services (AWS), Microsoft Azure und Google Cloud Platform automatisieren – um nur einige zu nennen.

Im Vergleich zu Chef ist Ansible die bevorzugte Wahl für Nutzende, die auf der Suche nach Einfachheit, Benutzerfreundlichkeit und einer agentenlosen Automatisierungslösung sind. Ansible profitiert außerdem von einer großen Community aus Mitwirkenden und Partnerschaften, wird weit verbreitet in verschiedenen IT-Domains wie z. B. der Netzwerk- und Infrastrukturautomatisierung eingesetzt und für seine Integrationsfähigkeit mit anderen Tools sehr geschätzt. 

Red Hat Ansible Automation Platform ist ein sicherheitsgehärtetes und getestetes Subskriptionsprodukt, bei dem Open Source im Mittelpunkt steht und das Unternehmen umfassenden Lifecycle-Support bietet. Sein Upstream-Projekt „Ansible“ profitiert von der Erfahrung und dem Fachwissen Tausender Mitwirkender weltweit. 

Ansible Automation Platform umfasst zahlreiche Upstream-Komponenten, darunter mehr als 140 Red Hat Ansible Certified Content Collections von mehr als 60 Partnern und ROI-Tools (Return on Investment), die Unsicherheiten bei der Installation, Konfiguration und Unterstützung der Automatisierung in Ihrem Unternehmen beseitigen. Außerdem schafft es ein durchgängiges Automatisierungserlebnis für funktionsübergreifende Teams und bietet ein Plug-and-play-Erlebnis für Automatisierungsentwicklungs-, Engineering- und Operations-Teams.

Die Funktionen von Red Hat Ansible Automation Platform, wie Automation Analytics und Red Hat Insights, liefern leicht zugängliche Informationen über die Performance Ihrer Automatisierung. So können Sie die Auswirkungen der Automatisierung analysieren und Probleme mit größerer Präzision überwachen oder lösen. Mit dem Automatisierungs-Mesh können Sie die Steuerungs- und Ausführungskapazitäten unabhängig voneinander skalieren und die Automatisierung näher an den Endpunkten bereitstellen, die sie benötigen – und das mit geringen oder ganz ohne Ausfallzeiten. Dadurch erhalten Sie ein konsistentes Automatisierungserlebnis – vom Rechenzentrum über die Cloud bis hin zum Netzwerkrand.

Als agentenloses, nutzungsfreundliches IT-Automatisierungstool besticht Ansible durch seine Einfachheit, Flexibilität und seine starke Community von Nutzerinnen und Nutzern.

Red Hat Ansible Automation Platform kostenlos testen
Hub

Der offizielle Red Hat Blog

Lernen Sie mehr über unser Ökosystem von Kunden, Partnern und Communities und erfahren Sie das Neueste zu Themen wie Automatisierung, Hybrid Cloud, KI und mehr.

Red Hat Testversionen

Unsere kostenlosen Testversionen unterstützen Sie dabei, praktische Erfahrungen zu sammeln, sich auf eine Zertifizierung vorzubereiten oder zu bewerten, ob ein Produkt die richtige Wahl für Ihr Unternehmen ist.

Weiterlesen

Automatisierungstools: Ansible, Terraform, Puppet, Chef, Salt

Red Hat Ansible Automation Platform und andere Tools unterstützen Unternehmen bei der Automatisierung von IT-Prozessen. Funktionen und Unterschiede erklärt

Vergleich von Linux-Distributionen – Welche ist die beste?

Eine Linux Distro ist ein installierbares Betriebssystem, das auf Linux-Kernel basiert und Benutzerprogramme und Repositories unterstützt. Vorteile von RHEL

Was ist Podman Desktop?

Podman Desktop ist ein kostenloses Open Source-Tool, das das Arbeiten mit Containern in einer lokalen Entwicklungsumgebung vereinfacht.

Ressourcen zu Open Source

Ausgewähltes Produkt

  • Red Hat Ansible Automation Platform

    Eine Plattform für die Implementierung unternehmensweiter Automatisierung - unabhängig davon, in welcher Phase der Automatisierung Sie sich befinden.

Verwandte Artikel