Definition „Puppet (Software)“

Was ist Puppet?

| Autor / Redakteur: HJL / Stephan Augsten

Große Unternehmen erhalten mit Puppet Enterprise besondere Monitoring- und Continuous-Delivery-Funktionen, beispielsweise für Infrastructure-as-Code-Szenarien.
Große Unternehmen erhalten mit Puppet Enterprise besondere Monitoring- und Continuous-Delivery-Funktionen, beispielsweise für Infrastructure-as-Code-Szenarien. (Bild: Puppet)

Puppet ist ein Open-Source-Projekt mit Enterprise-Unterstützung. Das Admin-Tool erlaubt die automatisierte Konfiguration von Computern und Servern sowie der darauf installierten Dienste. Das Einsatzfeld reicht vom Einzel-Server bis hin zu großen Rechner-Verbundsystemen.

Bei der Konfiguration eines Servers bedienen sich Entwickler und Administratoren spezieller Konfigurationsmanager. Im Idealfall lassen sich damit viele Aufgaben automatisieren. Puppet wurde mit dieser Zielvorgabe im Jahre 2005 von den Puppet Labs, Portland, Oregon entwickelt. Seit April 2016 firmiert auch der Hersteller unter dem Namen Puppet.

Ideengeber und Hauptentwickler ist Luke Kanies. Das in Ruby geschriebene Konfigurations-Management-Tool ist plattformübergreifend konzipiert. Die Zielgruppe liegt jedoch eindeutig beim unixoiden DOS. Zu den unterstützen Host-Systemen gehören Stand 2018

  • CentOS
  • Oracle Linux
  • Red Hat
  • Scientific Linux
  • SuSE sowie
  • Ubuntu.

Mit einigen Einschränkungen können auch Systeme unter Windows mit Puppet konfiguriert und verwaltet werden.

Client-Server-Funktionsprinzip

Puppet liegt das Client-Server-Funktionsprinzip zugrunde, auf dem Server ist der „PuppetMaster“ resident. Er hält alle Konfigurationen der im Verbund aktiven Rechner vor. Der aktuelle Ist-Zustand des Systems wird ermittelt und mit dem für die Konfiguration hinterlegten Soll-Zustand verglichen. In Ableitung aus der ermittelten Differenz werden die erforderlichen Operationen errechnet und durchgeführt.

Grundsätzlich sind Entwickler und Administratoren in der Lage, mit Hilfe von Puppet zentral alle in ein Netzwerk eingebundenen Rechner zu verwalten. Herkömmlich konfigurierte Dienste können unbeeinflusst neben den mit Puppet hinterlegten Abläufen betrieben werden. Dies ist möglich, da alle Dateien und Konfigurationen, die nicht im PuppetMaster beschrieben sind, von dort auch nicht reglementiert werden.

Werkzeuge zur Automatisierung von großen Systemen

Die wirkungsvolle Architektur prädestiniert Puppet als Konfigurations-Management-Tool für große Systemnetzwerke und Rechnerverbundsysteme. Dies dokumentiert sich beim Blick auf die weltweit installierte Basis. Darunter finden sich komplexe Rechner-Installationen, wie beispielsweise jene von Google, Harvard und Stanford University.

Hier ist ebenfalls die charakteristische Arbeitsweise vorzufinden: Der PuppetMaster bildet die zentrale Server-Komponente während der PuppetAgent auf den zu konfigurierenden Systemen installiert ist. In der Praxis bedeutet dies, dass der Administrator auch in komplexen Verbund-Systemen in der Lage ist, den PuppetMaster auf einem definierten Server im Netzwerk anzulegen und auszuführen. Ein von Puppet erstellter „Catalog“ enthält die Modulen und Manifeste für die Konfiguration.

Einen wesentlichen Beitrag zum Komfort der Puppet-Architektur leistet der „PuppetAgent“. Er wird vom Master auf allen zu konfigurierenden Systemen ausgeführt. Als Basis dienen die im Catalog als Soll-Zustand hinterlegten Konfigurationseinstellungen. Die Kommunikation zwischen Agent und Master erfolgt über HTTPS. Zertifikate auf beiden Seiten dienen der Absicherung der bidirektionalen Kommunikationsprozesse.

Visualisierung des System-Status

Komplexe Vorgänge erfordern ein hohes Maß an Transparenz. Dies gilt insbesondere dann, wenn Puppet-Durchläufe nicht reibungslos funktionieren. Ein „PuppetReport“ wird dem Master zur Verfügung gestellt und über einen Datenbankeintrag dokumentiert. Die „PuppetDashboard“-Software visualisiert alle Status-Meldungen auf der Benutzeroberfläche des Administrators. Dieses Monitoring ist insbesondere in komplexen Netzwerken ein probates Überwachungswerkzeug.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

DevQOps – eine Frage der Qualität

Code Quality Testing als DevOps-Stütze

DevQOps – eine Frage der Qualität

DevOps-Strategien etablieren sich immer weiter, haben ihr volle Leistungsfähigkeit jedoch noch nicht zwingend erreicht. Was auf dem Weg zum nächsten Evolutionsschritt fehlt, ist der maximale Qualitätsanspruch. Willkommen im Zeitalter der DevQOps. lesen

C3 Integrated Development Studio verfügbar

Low-Code/No-Code-Umgebung für KI-Anwendungen

C3 Integrated Development Studio verfügbar

Mit dem Integrated Development Studio (IDS) hat C3 eine eigene Low-Code- und No-Code-Umgebung bereitgestellt. KI-Anwendungen lassen damit sich aus einer Hand entwickeln, bereitstellen und betreiben. lesen

Continuous Delivery for Puppet Enterprise 2.3 veröffentlicht

Bessere Docker-Container- und LDAP-Unterstützung

Continuous Delivery for Puppet Enterprise 2.3 veröffentlicht

Schnellere Inbetriebnahme, LDAP-Integration und bessere Docker-Unterstützung: Die neue Version von Continuous Delivery for Puppet Enterprise soll etliche Verbesserungen für den Betrieb in großen Unternehmen bieten. lesen

Data-Management-Automatisierung als Antwort?

Steigende Anforderungen an Test/Dev im Jahr 2019

Data-Management-Automatisierung als Antwort?

Automatisiertes Datenmanagement unterstützt die Umsetzung von DevOps. Test/Dev-Umgebungen werden damit generell dynamischer und fit für die Hybrid-Cloud-Ära gemacht, wie wir im Folgenden zeigen. lesen

Continuous Delivery for Puppet Enterprise 2.2 verfügbar

Bessere Deployment-Workflows und Azure-DevOps-Support

Continuous Delivery for Puppet Enterprise 2.2 verfügbar

Bereits sechs Monate nach der Neueinführung hat Continuous Delivery for Puppet Enterprise einen Sprung auf Version 2.2 gemacht. Neben dem Support von Azure DevOps wurden Deployment-Genehmigungen und eine Skalierungsunterstützung für die Wirkungsanalyse umgesetzt. lesen

Chef-Server fürs Konfigurationsmanagement aufsetzen

AWS OpsWorks for Chef Automate, Teil 1

Chef-Server fürs Konfigurationsmanagement aufsetzen

Der verwaltete Config-Management-Service von AWS hört auf den Namen OpsWorks. Dieser Workshop beschreibt, wie man mit OpsWorks einen Chef-Server aufsetzt und dann einen existenten Host zum Chef-verwalteten Knoten macht, um auf diesem per Rezept eine Webanwendung zu bootstrappen. lesen

GitLab als Marktführer in der Softwareentwicklung

100 Millionen Dollar für DevOps-Vision

GitLab als Marktführer in der Softwareentwicklung

GitLab plant neue Investitionen, um sich im DevOps-Bereich von der Planung bis hin zum Monitoring möglichst breit aufzustellen. Dabei hilft eine 100 Millionen Dollar hohe „series D“-Finanzierungsrunde, die den Wert von GitLab auf über eine Milliarde Dollar hochtreibt. lesen

Wo möchte man auf der DevOps-Reifeskala stehen?

Verschiedene DevOps-Umsetzungen

Wo möchte man auf der DevOps-Reifeskala stehen?

DevOps wird meist in einer der folgenden drei Formen umgesetzt: Als Lite-Version, Operations-orientiertes oder Development-orientiertes DevOps. Aber welches Modell passt zu meinem Unternehmen? lesen

IaC mit AWS OpsWorks implementieren

Konfigurationsmanagement in AWS

IaC mit AWS OpsWorks implementieren

„Wir würden gerne die Konfiguration unserer Server in AWS automatisieren. Welche Möglichkeiten existieren für die Umsetzung von Infrastructure as Code?“ lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45333334 / Definitionen)