Die DevOps-Kultur setzt sich in der IT-Branche immer mehr durch, Das bedeutet einen wachsenden Bedarf an IT-Profis, die nicht nur bereit sind, die Denkweise und Methodik hinter dem DevOps-Lösungsansatz zu übernehmen, sondern auch in der Lage sind, DevOps-Kenntnisse mit neuen Software-Tools wie Chef, Puppet und Ansible zu erwerben, die zu den herausragendsten Tools für Konfigurationsmanagement und Bereitstellungsautomatisierung gehören. Jedes dieser Tools hat seine besonderen Stärken. Diese Automatisierungs- und Orchestrierungswerkzeuge machen das Leben für Infrastrukturen jeder Größe einfacher.

Wählen Sie das für Sie am besten geeignete Werkzeug, denn es macht Sie produktiver und welches Werkzeug Sie benötigen, hängt von Ihren Anforderungen und Ihrer aktuellen Umgebung ab. Tools wie Chef, Puppet, Ansible sind nicht notwendigerweise nur für DevOps Services, ihre Verwendung in der IT-Organisation kann den Grundstein für die Beschleunigung von Bereichen wie Anwendungsbereitstellung, Patching usw. legen.

Nachfolgend finden Sie eine Zusammenfassung einiger Stärken der einzelnen Tools und ein paar Dinge, die Sie dazu bewegen könnten, eines der beiden zu verwenden:

Warum Puppet?

Puppet ist langsamer, aber am weitesten verbreitet und unterstützt mehrere Betriebssysteme. Puppet ist ein Konfigurationsmanagementsystem, das eine Möglichkeit bietet, den Zustand der IT-Infrastruktur zu definieren und die automatische Durchsetzung des richtigen Zustands zu ermöglichen. Es genießt wohl den größten Bekanntheitsgrad unter den drei Systemen. Es ist das vollständigste in Bezug auf die verfügbaren Aktionen, Module und die Benutzeroberfläche. Puppet repräsentiert das gesamte Bild der Orchestrierung von Rechenzentren, umfasst nahezu jedes Betriebssystem und bietet tiefgreifende Tools für die wichtigsten Betriebssysteme

  • Läuft auf Linux, CentOS, Debian, Ubuntu, Fedora, BSD, MacOS, Windows und anderen.
  • Verwendet seine eigene „einfache“ Syntax, die Puppet DSL oder Domain Specific Language. Sie können auch benutzerdefinierte Ruby-Module verwenden.
  • Umfassende Berichtsfunktionen
  • Große Bibliothek von bestehenden Modulen in Puppet und Module sind von unterschiedlicher Qualität.
  • Web-Benutzeroberfläche ist nur in der Enterprise-Version verfügbar
  • Einfache Architektur: Puppet-Server und Puppet-Agenten
  • Puppet bietet eine effiziente und skalierbare Softwarelösung für die Verwaltung der Konfigurationen einer großen Anzahl von Geräten.
  • Systemadministratoren verwenden Puppet, um Rechenressourcen wie physische und virtuelle Server und Netzwerkgeräte zu verwalten.
  • Puppet wird über eine Client/Server-Anordnung bereitgestellt, bei der der Server oder Puppet-Master einen oder mehrere Client-Knoten verwaltet.

Warum Chef?

Chef ist komplex, aber schnell und leistungsstark, es ist eine Automatisierungsplattform, die Infrastruktur in Code umwandelt. Viele Devops Services Unternehmen entscheiden sich für Chef, weil es ihnen erlaubt, ihr System wie ein Objekt zu behandeln, denn mit der Benutzerfreundlichkeit geht ein Mangel an Robustheit einher. Chef ähnelt Puppet in Bezug auf das Gesamtkonzept, da es einen Master-Server und Agenten gibt, die auf verwalteten Knoten installiert sind, aber es unterscheidet sich in der tatsächlichen Bereitstellung mit Devops Solutions & Services.

  • Umfassende Ruby-Syntax für Konfigurations-„Rezepte“: Dies bringt eine höhere Lernkurve, aber mehr Leistung
  • Web-Benutzeroberfläche ist Standard und frei.
  • Architektur ist komplexer: Sie benötigen einen Chef-Server, Chef-Agenten und eine Chef-Workstation für die Konfiguration und Verwaltung
  • Große Bibliothek mit bestehenden Rezepten von unterschiedlicher Qualität.
  • Einfaches, plattformübergreifendes und in sich geschlossenes Installationsverfahren.
  • Schnellere Leistung.

Warum Ansible?

Ansible ist in Python geschrieben und erfordert nur, dass die Python-Bibliotheken auf den zu konfigurierenden Servern vorhanden sind. Es unterstützt kein Windows, ist aber sehr einfach, schnell und leichtgewichtig und völlig anders als Chef und Puppet. Der Schwerpunkt von Ansible liegt darauf, schlank und schnell zu sein und keine Node-Agent-Installation zu benötigen. Daher führt Ansible alle Funktionen über SSH aus. Es gibt eine Vielzahl von Modulen, die von System-, Datenbank- bis hin zu Cloud-Management reichen. Es ist relativ einfach, seine eigenen Module zu schreiben. Es werden viele Sprachen unterstützt, aber wenn Sie mit Python vertraut sind, werden Sie nicht viel Zeit brauchen, um Ihr eigenes Modul zu erstellen. Sie unterstützen alle Kerndienste der großen Cloud-Anbieter wie AWS, Rackspace, Digital Ocean, GCE, OpenStack usw.

  • Ansible ist Python-basiert
  • Die jüngste dieser drei Technologien, daher mit der kleinsten Community
  • Arbeitet ohne Agenten, hat aber viele Python-Abhängigkeiten, sobald Sie mit komplexen Operationen beginnen
  • Einfache Architektur: Sie brauchen nur eine Ansible-Workstation und SSH-Server. Keine Agenten und kein Server, aber Sie haben Python-Abhängigkeiten auf den Client-Rechnern
  • Web-Benutzeroberfläche verfügbar, aber mit eingeschränkten Funktionen, da sie separat vom Hauptprojekt entwickelt wird.
  • Skripte und Module können in jeder beliebigen Sprache erstellt werden, eine begrenzte Bibliothek wird zur Verfügung gestellt
  • Keine Windows-Unterstützung
  • einfachste Syntax und niedrigste Lernkurve
  • Ansible kann Paramiko, eine Python SSH2-Implementierung, oder Standard-SSH für die Kommunikation verwenden, aber es gibt auch einen Beschleunigungsmodus, der eine schnellere und umfangreichere Kommunikation ermöglicht.
  • Ansible hat eine Sammlung von Modulen, die zur Verwaltung verschiedener Systeme sowie von Cloud-Infrastrukturen wie Amazon EC2 und OpenStack verwendet werden können

Puppet oder Chef oder Ansible?

  • Puppet und Chef helfen Entwicklern und entwicklungsorientierten Organisationen, während Ansible viel flexibler auf die Bedürfnisse von Systemadministratoren eingeht
  • Ansibles einfache Oberfläche und Benutzerfreundlichkeit passen genau in die Psychologie von Systemadministratoren, und in einer Organisation mit vielen Linux- und Unix-Systemen ist Ansible vergleichsweise schnell und einfach zu betreiben.
  • Puppet ist von der Benutzerfreundlichkeit her das ausgereifteste und bequemste der drei, allerdings sind solide Ruby-Kenntnisse sehr empfehlenswert.
  • Puppet ist nicht so stromlinienförmig wie Ansible, und seine Konfiguration kann mitunter komplex werden. Es ist der sicherste Weg für verschiedene Umgebungen, aber in einer größeren oder ähnlichen Infrastruktur ist Ansible vielleicht besser geeignet.
  • Chef hat ein sehr stabiles und gut durchdachtes Layout, und obwohl es nicht ganz auf dem Niveau von Puppet ist, was die Grundfunktionen angeht, ist es eine sehr fähige Lösung. Chef könnte die schwierigste Lernkurve für Administratoren darstellen, denen es an signifikanter Programmiererfahrung fehlt, aber es könnte die logischste Lösung für entwicklungsorientierte Personen und Entwicklungsorganisationen sein.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.