Puppet

offizielles Puppet Grundlagen Training (Getting Started With Puppet)

Änderungen sind der Normalfall in großen Serverfarmen, aber auch in kleineren Büro-Installationen. Werden sie manuell durchgeführt, schleichen sich gerne Fehler ein: Konfigurationsstände sind unterschiedlich, Dienste fallen unplanmäßig aus, Daten gehen verloren.

Um solche Fehler soweit wie möglich auszuschließen, implementiert man Automatisierungskonzepte. Die dafür verfügbaren Lösungen unterstützen die Systemadministratoren bei täglichen Aufgaben wie Paketinstallationen, Konfigurationsänderungen oder Systeminstallationen. Wichtig ist dabei, dass die erforderlichen Änderungen nicht mehr manuell ausgeführt werden, sondern innerhalb einer zentralen Komponente beschrieben werden. Um sie dann vor dem Rollout zu testen. Dann spielt es auch keine Rolle mehr, ob die Änderung auf einem, hundert oder sogar tausend Systemen durchgeführt wird.

Eine sehr gute Lösung zur Automatisierung von solchen Aufgaben ist Puppet. Puppet setzt die gewünschten Änderungen (im ITIL-Deutsch "changes") - unabhängig vom Betriebssystem - auf den Servern um. Die genaue Verteilung bestimmt Puppet durch eine deklarative Beschreibungssprache, sowie Dienste-Definitionen und Rechnerklassen.

Die notwendigen Konfigurationsdaten der Server kann Puppet selbst generieren. Dadurch ist es möglich, beispielsweise eine Änderung an allen DNS Servern vorzunehmen, ohne genau zu wissen wie die Server heißen oder welche IP Adressen sie haben.

Dieser Kurs vermittelt Ihnen die notwendigen Fähigkeiten zur Planung, Installation und Administration eines Puppet Konfigurationsmanagement Systems. Das Hauptziel dieses Kurses ist es, Puppet zu verstehen, praktische Erfahrungen im Umgang mit den wichtigsten Funktionen zu sammeln und ein Grundverständnis für komplexe Strukturen zu erwerben.

Lerninhalte:

  • So richten Sie eine Puppet-Entwicklungsumgebung ein
  • Wie Sie eine nicht verwaltete IT-Infrastruktur unter Kontrolle bringen
  • Wie und wann Ad-hoc-Aufgaben mit Bolt- und Puppet-Aufgaben ausgeführt werden sollen
  • Wie und wann der Systemstatus mithilfe von Puppet-Modulen verwaltet werden soll
  • Verwalten von Windows- und Linux-Servern mithilfe einer gemeinsamen Puppet-Codebasis
  • Suchen, Herunterladen, Umschließen und Bereitstellen von Puppet-Modulen aus Puppet Forge.
  • Klassifizieren von Testknoten, um die Konfiguration zu erzwingen
  • Sammeln und Analysieren von Ergebnissen in der Enterprise Console

Dieses Training wird als Grundlage für die Zertifizierung zum Puppet Certified Professional empfohlen.

Trainer und Dozenten

Das Puppet Grundlagen Training erfolgt durch Martin Alfke.
Martin Alfke ist Mitgründer und Geschäftsführer der example42 GmbH, Puppet Certified Professional 2013 & 2015 und Puppet Certfied Consultant. Die example42 GmbH ist offizieller Puppetlabs Training und Service Delivery Partner.

Martin arbeitet seit 2007 mit Puppet und führt seit 2011 die offiziellen Trainings in Europa durch.

Dieses Training wird als Grundlage für die Zertifizierung zum Puppet Certified Professional empfohlen.

Voraussetzungen

Diese Schulung wendet sich an Systemadministratoren, die bereits Erfahrung mit Linux-Systemen haben.

Während der Kurse wird praktisch ausschließlich das Thema Puppet als Konfigurationsmanagement bearbeitet, die grundlegenden Mechanismen von Linux-Systemen werden als bekannt vorausgesetzt, ebenso wie Kenntnisse im Bereich TCP/IP Dienste wie sie z.B. in unserer Linux Netzwerkdienste Schulung vermittelt werden.

Die Schulungsunterlagen sind überwiegend nur in englischer Sprache verfügbar. Daher ist ein Verständnis der englischen Sprache unbedingte Voraussetzung.

Welche Tutorials könnten helfen, bevor ich am Training nehme?

Obwohl für diesen Kurs keine Voraussetzungen vorhanden sind, empfehlen wir Ihnen, die folgenden Tutorials zu absolvieren, um sich am ersten Tag des Unterrichts wohl zu fühlen:

  • Git-Grundlagen. Wenn Sie mit Git nicht vertraut sind, bietet dies eine schöne Einführung (https://git-scm.com/doc)
  • GitLab. Dies ist unser Klassenzimmer-Git-Server (https://docs.gitlab.com/ee/gitlab-basics/)
  • VS-Code. Dies ist unser empfohlener Klassenzimmer-Editor (https://code.visualstudio.com/docs/introvideos/basics)

Inhalt

Übersicht

  • Das Ressourcen Modell
  • Sprache und Ausdrücke
  • Architektur und Installation
  • Anpassungen

Ziele

  • System-Konfigurationen in der Puppet Beschreibungssprache als Ressourcen modellieren.
  • Häufige Ausdrücke in der Puppet-Sprache.
  • Fehler im Puppet Code finden und beheben.
  • Die Architektur des Puppet Framework verstehen.
  • Beispielhaft eine Puppet Client/Server Umgebung installieren.

Workshop

Tag 1

  • Übersicht über Puppenprodukte
  • Erkunden Sie die Puppet Enterprise-Konsole
  • Führen Sie Puppet Discovery aus
  • Führen Sie Puppet Bolt und Tasks aus
  • Puppet-Plans verstehen
  • Verstehe deklarativ und imperative Puppet Konzepte
  • Richten Sie Ihre Laborumgebung ein

Tag 2

  • Verstehen Sie den Lebenszyklus eines Puppet-Agentenlaufs.
  • Verwenden Sie Puppet-Module aus Forge
  • Erstellen Sie Wrapper-Module
  • Wenden Sie grundlegende Modultests an
  • Erstellen Sie Rollen- und Profilmodule

Tag 3

  • Erstellen Sie mit Puppet eine Grundlinie
  • Erstellen und akzeptieren Sie Parameter in der Baseline.
  • Definieren Sie einen Anwendungsstack mit Puppet