So installieren Sie Puppet 4 in einem Master-Agent-Setup unter CentOS 7

Einführung

Puppet von Puppet Labs ist ein Konfigurationsverwaltungstool, mit dem Systemadministratoren die Bereitstellung, Konfiguration und Verwaltung einer Serverinfrastruktur automatisieren können. Durch vorausschauendes Planen und die Verwendung von Konfigurationsverwaltungstools wie Puppet können Sie die Zeit für die Wiederholung grundlegender Aufgaben verkürzen und sicherstellen, dass Ihre Konfigurationen in Ihrer gesamten Infrastruktur konsistent und genau sind. Sobald Sie den Dreh raus haben, Ihre Server mit Puppet und anderen Automatisierungstools zu verwalten, haben Sie mehr Zeit, um andere Aspekte Ihres Setups zu verbessern.

Puppet gibt es in zwei Varianten: Puppet Enterprise und Open Source Puppet. Es läuft auf den meisten Linux-Distributionen, verschiedenen UNIX-Plattformen und Windows.

In diesem Tutorial erfahren Sie, wie Sie Open Source Puppet 4 in einem Agent / Master-Setup unter CentOS 7 installieren. In diesem Setup kann der * Puppet Master * -Server, auf dem die Puppet Server-Software ausgeführt wird, zur Steuerung aller Ihrer anderen Server oder * Puppet Agent * -Knoten verwendet werden. Beachten Sie, dass wir anstelle von Passenger oder einer anderen Laufzeitumgebung das Puppet Server-Paket verwenden.

Voraussetzungen

Um diesem Tutorial folgen zu können, müssen Sie über Root- oder Superuser-Zugriff auf alle Server verfügen, mit denen Sie Puppet verwenden möchten. * Sie müssen außerdem einen neuen CentOS 7-Server erstellen, der als Puppet-Masterserver fungiert. * Wenn Sie über keine vorhandene Serverinfrastruktur verfügen, können Sie die Beispielinfrastruktur (siehe unten) anhand des Lernprogramms für die DNS-Einrichtung neu erstellen.

Bevor wir mit der Installation von Puppet beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen:

  • * Private Network DNS: * Forward- und Reverse-DNS müssen konfiguriert sein und jeder Server muss einen eindeutigen Hostnamen haben. Hier ist ein Tutorial zu configure your own private network DNS Server. Wenn Sie kein DNS konfiguriert haben, müssen Sie Ihre + hosts + - Datei für die Namensauflösung verwenden. Wir gehen davon aus, dass Sie Ihr privates Netzwerk für die Kommunikation innerhalb Ihrer Infrastruktur nutzen.

  • * Offene Firewall-Ports: * Der Puppet-Master muss über Port 8140 erreichbar sein. Wenn Ihre Firewall zu restriktiv ist, lesen Sie das FirewallD Tutorial für Anweisungen zum Zulassen eingehender Anforderungen an Port 8140.

Beispiel Infrastruktur

Wir werden die folgende Infrastruktur verwenden, um zu demonstrieren, wie Puppet eingerichtet wird:

Hostname Role Private FQDN

host1

Generic CentOS 7 server

host1.nyc3.example.com

host2

Generic CentOS 7 server

host2.nyc3.example.com

ns1

Primary nameserver

ns1.nyc3.example.com

ns2

Secondary nameserver

ns2.nyc3.example.com

Der Marionettenagent wird auf allen diesen Hosts installiert. Auf diese Hosts wird über ihre privaten Netzwerkschnittstellen verwiesen, die der Unterdomäne ".nyc3.example.com" im DNS zugeordnet sind. Dies ist dieselbe Infrastruktur, die im vorausgesetzten Lernprogramm beschrieben wird: https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-private-network-dns-server-on-centos -7 [So konfigurieren Sie BIND als privaten Netzwerk-DNS-Server unter CentOS 7].

Sobald Sie alle Voraussetzungen erfüllt haben, können Sie den Puppet-Masterserver erstellen.

Puppet Master Server erstellen

Erstellen Sie einen neuen * CentOS 7 * x64-Server mit dem Hostnamen "puppet". Die Hardwareanforderungen hängen davon ab, wie viele Agentenknoten Sie verwalten möchten. Zwei CPU-Kerne und 1 GB Arbeitsspeicher sind die Mindestvoraussetzung für die Verwaltung einer Handvoll Knoten. Bei einer größeren Serverinfrastruktur benötigen Sie jedoch mehr Ressourcen. Puppet Server ist standardmäßig so konfiguriert, dass 2 GB RAM verwendet werden.

Hostname Role Private FQDN

puppet

Puppet master

puppet.nyc3.example.com

Wenn Sie gerade Ihr DNS eingerichtet haben und nicht sicher sind, wie Sie neue Hosts einbinden sollen, lesen Sie die Informationen unter https://www.digitalocean.com/community/tutorials/how-to-configure-bind-as-a-private-network-dns -server-on-centos-7 # maintenance-dns-records Abschnitt [Maintenance DNS Records] des DNS-Tutorials. Im Wesentlichen müssen Sie einen "A" - und einen "PTR" -Datensatz hinzufügen und dem neuen Host erlauben, rekursive Abfragen durchzuführen. Stellen Sie außerdem sicher, dass Sie Ihre Suchdomäne so konfigurieren, dass Ihre Server kurze Hostnamen zum gegenseitigen Nachschlagen verwenden können.

Installieren Sie NTP

Da der Puppet-Masterserver als Zertifizierungsstelle für Agentenknoten fungiert, muss er die genaue Systemzeit einhalten, um mögliche Probleme bei der Ausstellung von Agentenzertifikaten zu vermeiden. Bei zeitlichen Unstimmigkeiten können Zertifikate abgelaufen sein. Zu diesem Zweck verwenden wir das Network Time Protocol (NTP).

Sehen Sie sich zunächst die verfügbaren Zeitzonen mit diesem Befehl an:

timedatectl list-timezones

Dadurch erhalten Sie eine Liste der für Ihren Server verfügbaren Zeitzonen. Wenn Sie die für Ihren Server richtige Einstellung für Region / Zeitzone gefunden haben, stellen Sie sie mit diesem Befehl ein (ersetzen Sie Ihre bevorzugte Region und Zeitzone):

sudo timedatectl set-timezone

Installiere NTP via yum mit diesem Befehl:

sudo yum -y install ntp

Führen Sie eine einmalige Synchronisation mit dem Befehl + ntpdate + durch:

sudo ntpdate pool.ntp.org

Es ist üblich, die NTP-Konfiguration so zu aktualisieren, dass Pools verwendet werden, die sich geografisch näher an Ihrem NTP-Server befinden. Wechseln Sie in einem Webbrowser zu NTP Pool Project und suchen Sie eine pool zone, die geografisch in der Nähe des von Ihnen verwendeten Datencenters liegt. In unserem Beispiel wird der Pool für die Vereinigten Staaten (http://www.pool.ntp.org/zone/us) verwendet, da sich unsere Server in einem New Yorker Rechenzentrum befinden.

Öffne + ntp.conf + zum Bearbeiten:

sudo vi /etc/ntp.conf

Fügen Sie die Zeitserver von der Seite "NTP-Pool-Projekt" oben in die Datei ein (ersetzen Sie diese durch die Server Ihrer Wahl):

/etc/ntp.conf Auszug

server 0.us.pool.ntp.org
server 1.us.pool.ntp.org
server 2.us.pool.ntp.org
server 3.us.pool.ntp.org

Speichern und schließen.

Starten Sie NTP, um die neuen Zeitserver hinzuzufügen:

sudo systemctl restart ntpd

Zuletzt aktivieren Sie den NTP-Daemon:

sudo systemctl enable ntpd

Jetzt, da unser Server die genaue Zeit anzeigt, installieren wir die Puppet Server-Software.

Installieren Sie Puppet Server

Puppet Server ist die Software, die auf dem Puppet Master Server läuft. Es ist die Komponente, die Konfigurationen auf Ihre anderen Server überträgt, auf denen die Puppet-Agentensoftware ausgeführt wird.

Aktivieren Sie das offizielle Puppet Labs-Sammlungsrepository mit diesem Befehl:

sudo rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm

Installieren Sie das Paket + puppetserver +:

sudo yum -y install puppetserver

Puppet Server ist jetzt auf Ihrem Master-Server installiert, läuft aber noch nicht.

Speicherzuordnung konfigurieren (optional)

Standardmäßig ist Puppet Server so konfiguriert, dass 2 GB RAM verwendet werden. Sie sollten diese Einstellung basierend auf dem freien Speicher Ihres Masterservers und der Anzahl der verwalteten Agentenknoten anpassen.

Öffnen Sie zunächst "+ / etc / sysconfig / puppetserver " in Ihrem bevorzugten Texteditor. Wir verwenden " vi +":

sudo vi /etc/sysconfig/puppetserver

Suchen Sie dann die Zeile "+ JAVA_ARGS " und stellen Sie mit den Parametern " -Xms " und " -Xmx +" die Speicherzuordnung ein. Wenn Sie beispielsweise 3 GB Arbeitsspeicher verwenden möchten, sollte die Zeile folgendermaßen aussehen:

Speicherzuweisung

JAVA_ARGS="-Xms -Xmx"

Speichern und beenden, wenn Sie fertig sind.

Starten Sie Puppet Server

Jetzt können wir Puppet Server mit folgendem Befehl starten:

sudo systemctl start puppetserver

Aktivieren Sie anschließend Puppet Server, damit es beim Booten Ihres Masterservers gestartet wird:

sudo systemctl enable puppetserver

Puppet Server wird ausgeführt, verwaltet jedoch noch keine Agentenknoten. Lassen Sie uns lernen, wie Sie Puppet-Agenten installieren und hinzufügen!

Installieren Sie Puppet Agent

Die Puppet-Agentensoftware muss auf jedem Server installiert sein, den der Puppet-Master verwalten wird. In den meisten Fällen umfasst dies jeden Server in Ihrer Infrastruktur. Wie in der Einführung erwähnt, kann der Puppet-Agent auf allen wichtigen Linux-Distributionen, einigen UNIX-Plattformen und Windows ausgeführt werden. Da die Installation unter den einzelnen Betriebssystemen geringfügig variiert, wird nur die Installation auf CentOS 7-Servern behandelt. Anweisungen zur Installation des Puppet-Agenten auf Ubuntu 14.04-Servern finden Sie unter https://www.digitalocean.com/community/tutorials/how-to-install-puppet-4-in-a-master-agent-setup-on-ubuntu -14-04 # install-puppet-agent [hier].

  • Führen Sie diese Schritte auf allen Ihren Agentenservern aus. *

Aktivieren Sie das offizielle Puppet Labs-Sammlungsrepository mit diesem Befehl:

sudo rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-pc1-el-7.noarch.rpm

Installieren Sie das Paket + puppet-agent:

sudo yum -y install puppet-agent

Nachdem der Puppet-Agent installiert ist, starten Sie ihn mit dem folgenden Befehl:

sudo /opt/puppetlabs/bin/puppet resource service puppet ensure=running enable=true

Wenn Sie den Puppet-Agenten zum ersten Mal ausführen, generiert er ein SSL-Zertifikat und sendet eine Signaturanforderung an den Puppet-Master. Nachdem der Puppet Master das Agentenzertifikat signiert hat, kann er mit dem Agentenknoten kommunizieren und diesen steuern.

Denken Sie daran, diesen Abschnitt für alle Knoten Ihres Marionettenagenten zu wiederholen.

Zertifikate auf Puppet Master unterschreiben

Wenn Puppet zum ersten Mal auf einem Agentenknoten ausgeführt wird, sendet es eine Zertifikatsignierungsanforderung an den Puppet-Master. Bevor Puppet Server mit dem Agentenknoten kommunizieren und ihn steuern kann, muss es das Zertifikat des jeweiligen Agentenknotens signieren. Wir werden beschreiben, wie Sie signieren und nach Signaturanforderungen suchen.

Aktuelle Zertifikatsanforderungen auflisten

Führen Sie auf dem Puppet Master den folgenden Befehl aus, um alle nicht signierten Zertifikatanforderungen aufzulisten:

sudo /opt/puppetlabs/bin/puppet cert list

Wenn Sie gerade Ihren ersten Agentenknoten eingerichtet haben, wird eine Anforderung angezeigt. Der Hostname des Agentenknotens sieht folgendermaßen aus:

Output:  "host1.nyc3.example.com" (SHA256) 15:90:C2:FB:ED:69:A4:F7:B1:87:0B:BF:F7:DD:B5:1C:33:F7:76:67:F3:F6:23:AE:07:4B:F6:E3:CC:04:11:4C

Beachten Sie, dass kein "+" davor steht. Dies zeigt an, dass es noch nicht signiert wurde.

Unterzeichnen Sie eine Anfrage

Verwenden Sie zum Signieren einer Zertifikatsanforderung den Befehl + puppet cert sign + mit dem Hostnamen des zu signierenden Zertifikats. Um beispielsweise das Zertifikat von "+ host1.nyc3.example.com +" zu signieren, verwenden Sie den folgenden Befehl:

sudo /opt/puppetlabs/bin/puppet cert sign

Sie sehen die folgende Ausgabe, die angibt, dass die Zertifikatsanforderung signiert wurde:

Output:Notice: Signed certificate request for
Notice: Removing file Puppet::SSL::CertificateRequest  at '/etc/puppetlabs/puppet/ssl/ca/requests/.pem'

Der Puppet-Master kann nun den Knoten, zu dem das signierte Zertifikat gehört, kommunizieren und steuern.

Wenn Sie alle aktuellen Anfragen signieren möchten, verwenden Sie die Option "+ - all +" wie folgt:

sudo /opt/puppetlabs/bin/puppet cert sign --all

Zertifikate widerrufen

Möglicherweise möchten Sie einen Host aus Puppet entfernen oder einen Host neu erstellen und dann wieder zu Puppet hinzufügen. In diesem Fall möchten Sie das Zertifikat des Hosts vom Puppet Master widerrufen. Dazu können Sie die Aktion + clean + verwenden:

sudo /opt/puppetlabs/bin/puppet cert clean

Die zugehörigen Zertifikate des angegebenen Hosts werden von Puppet entfernt.

Alle signierten Anfragen anzeigen

Wenn Sie alle signierten und nicht signierten Anforderungen anzeigen möchten, führen Sie den folgenden Befehl aus:

sudo /opt/puppetlabs/bin/puppet cert list --all

Sie sehen eine Liste aller Anfragen. Signierten Anfragen geht ein "" voraus, und nicht signierte Anfragen haben kein "".

Output:+ "puppet"    (SHA256) 5A:71:E6:06:D8:0F:44:4D:70:F0:BE:51:72:15:97:68:D9:67:16:41:B0:38:9A:F2:B2:6C:BB:33:7E:0F:D4:53 (alt names: "DNS:puppet", "DNS:puppet.nyc3.example.com")
+ "host1.nyc3.example.com" (SHA256) F5:DC:68:24:63:E6:F1:9E:C5:FE:F5:1A:90:93:DF:19:F2:28:8B:D7:BD:D2:6A:83:07:BA:FE:24:11:24:54:6A
+ "host2.nyc3.example.com" (SHA256) CB:CB:CA:48:E0:DF:06:6A:7D:75:E6:CB:22:BE:35:5A:9A:B3:93:63:BF:F0:DB:F2:D8:E5:A6:27:10:71:78:DA
+ "ns2.nyc3.example.com" (SHA256) 58:47:79:8A:56:DD:06:39:52:1F:E3:A0:F0:16:ED:8D:40:17:40:76:C2:F0:4F:F3:0D:F9:B3:64:48:2E:F1:CF

Glückwunsch! Ihre Infrastruktur kann jetzt von Puppet verwaltet werden!

Erste Schritte mit Puppet

Nachdem Ihre Infrastruktur für die Verwaltung mit Puppet eingerichtet wurde, zeigen wir Ihnen, wie Sie Puppet für einige grundlegende Aufgaben verwenden.

Wie Fakten gesammelt werden

Marionette sammelt Tatsachen über jeden seiner Knoten mit einem Werkzeug, das facter genannt wird. Facter sammelt standardmäßig Informationen, die für die Systemkonfiguration nützlich sind (z. Betriebssystemnamen, Hostnamen, IP-Adressen, SSH-Schlüssel und mehr). Es ist möglich, benutzerdefinierte Fakten hinzuzufügen, die nicht Teil des Standardfaktensatzes sind.

Die gesammelten Fakten können in vielen Situationen nützlich sein. Beispielsweise können Sie eine Webserverkonfigurationsvorlage erstellen und automatisch die entsprechenden IP-Adressen für einen bestimmten virtuellen Host eingeben. Sie können auch festlegen, dass die Distribution Ihres Servers "CentOS" ist. Führen Sie daher den Dienst "+ apache2 " anstelle von " httpd +" aus. Dies sind grundlegende Beispiele, die Ihnen jedoch eine Vorstellung davon geben sollen, wie Fakten verwendet werden können.

Führen Sie den folgenden Befehl aus, um eine Liste der Fakten anzuzeigen, die automatisch auf Ihrem Agentenknoten erfasst werden:

/opt/puppetlabs/bin/facter

Hauptmanifestdatei

Puppet verwendet eine domänenspezifische Sprache, um Systemkonfigurationen zu beschreiben. Diese Beschreibungen werden in Dateien gespeichert, die als "Manifeste" bezeichnet werden und die die Dateierweiterung ".pp" haben. Die Standard-Hauptmanifestdatei befindet sich * auf Ihrem Puppet-Master-Server * unter + / etc / puppetlabs / code / surroundings / production / manifests / site.pp +. Erstellen wir zunächst eine Platzhalterdatei:

sudo touch /etc/puppetlabs/code/environments/production/manifests/site.pp

Beachten Sie, dass das Hauptmanifest derzeit leer ist, sodass Puppet auf den Agentenknoten keine Konfiguration vornimmt.

Wie das Hauptmanifest ausgeführt wird

Der Puppet-Agent meldet sich regelmäßig beim Puppet-Server an (normalerweise alle 30 Minuten). Beim Einchecken werden Fakten über sich selbst an den Master gesendet und ein aktueller Katalog abgerufen. Dabei handelt es sich um eine kompilierte Liste der Ressourcen und ihrer gewünschten Zustände, die für den Agenten relevant sind und vom Hauptmanifest bestimmt werden. Der Agentenknoten versucht dann, die entsprechenden Änderungen vorzunehmen, um den gewünschten Status zu erreichen. Dieser Zyklus wird fortgesetzt, solange der Puppet-Master ausgeführt wird und mit den Agentenknoten kommuniziert.

Sofortige Ausführung auf einem bestimmten Agentenknoten

Sie können die Prüfung für einen bestimmten Agentenknoten auch manuell einleiten, indem Sie den folgenden Befehl ausführen (auf dem betreffenden Agentenknoten):

/opt/puppetlabs/bin/puppet agent --test

Wenn Sie dies ausführen, wird das Hauptmanifest auf den Agenten angewendet, der den Test ausführt. Möglicherweise wird folgende Ausgabe angezeigt:

Output:Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
...
Info: Loading facts
Info: Caching catalog for host1
Info: Applying configuration version '1457389302'
Notice: /Stage[main]/Main/File[/tmp/example-ip]/ensure: defined content as '{md5}dd769ec60ea7d4f7146036670c6ac99f'
Notice: Applied catalog in 0.04 seconds

Dieser Befehl ist nützlich, um zu sehen, wie sich das Hauptmanifest sofort auf einen einzelnen Server auswirkt.

Einmalige Manifeste

Mit dem Befehl + puppet apply + können Sie Manifeste ausführen, die sich nicht auf das Hauptmanifest beziehen. Es wendet das Manifest nur auf den Knoten an, von dem aus Sie apply ausführen. Hier ist ein Beispiel:

sudo /opt/puppetlabs/bin/puppet apply

Das Ausführen von Manifesten auf diese Weise ist nützlich, wenn Sie ein neues Manifest auf einem Agentenknoten testen oder ein Manifest nur einmal ausführen möchten (z. einen Agentenknoten auf einen gewünschten Zustand zu initialisieren).

Ein Beispielmanifest

Wie Sie sich vielleicht erinnern, befindet sich die Hauptmanifestdatei auf dem Puppet-Master unter + / etc / puppetlabs / code / surroundings / production / manifests / site.pp +.

Bearbeiten Sie es jetzt auf dem Puppet-Masterserver:

sudo vi /etc/puppetlabs/code/environments/production/manifests/site.pp

Fügen Sie nun die folgenden Zeilen hinzu, um eine Dateiressource zu beschreiben:

site.pp Beispiel

file {'/tmp/example-ip':                                            # resource type file and filename
 ensure  => present,                                               # make sure it exists
 mode    => '0644',                                                # file permissions
 content => "Here is my Public IP Address: ${ipaddress_eth0}.\n",  # note the ipaddress_eth0 fact
}

Nun speichern und beenden. Die Inline-Kommentare sollten die Ressource erläutern, die wir definieren. Auf diese Weise wird im Klartext sichergestellt, dass alle Agentenknoten eine Datei unter "+ / tmp / example-ip " mit den Berechtigungen " -rw-r - r - +" haben, deren Inhalt die öffentliche IP-Adresse des Knotens enthält .

Sie können entweder warten, bis sich der Agent automatisch beim Master anmeldet, oder Sie können den Befehl + puppet agent --test + (von einem Ihrer Agentenknoten) ausführen. Führen Sie dann den folgenden Befehl aus, um die Datei zu drucken:

cat /tmp/example-ip

Sie sollten eine Ausgabe sehen, die wie folgt aussieht (mit der IP-Adresse dieses Knotens):

Output:Here is my Public IP Address: .

Geben Sie einen Knoten an

Wenn Sie eine Ressource für bestimmte Knoten definieren möchten, definieren Sie ein "+ Knoten +" im Manifest.

Bearbeiten Sie auf dem Master "+ site.pp +":

sudo vi /etc/puppetlabs/code/environments/production/manifests/site.pp

Fügen Sie nun die folgenden Zeilen hinzu:

site.pp Beispiel

node 'ns1', 'ns2' {    # applies to ns1 and ns2 nodes
 file {'/tmp/dns':    # resource type file and filename
   ensure => present, # make sure it exists
   mode => '0644',
   content => "Only DNS servers get this file.\n",
 }
}

node default {}       # applies to nodes that aren't explicitly defined

Speichern und schließen.

Puppet wird nun sicherstellen, dass eine Datei unter + / tmp / dns + auf ns1 und ns2 existiert. Sie können den Befehl + puppet agent --test (von ns1 oder ns2) ausführen, wenn Sie nicht auf das geplante Abrufen des Puppet-Agenten warten möchten.

Beachten Sie, dass Puppet sein Möglichstes tut, um eine Ressource nicht zu berühren, wenn Sie sie nicht definieren. Wenn Sie diese Ressourcen aus dem Manifest löschen, werden die von Puppet erstellten Dateien nicht gelöscht. Wenn Sie möchten, dass die Dateien gelöscht werden, ändern Sie "" in " nicht vorhanden".

Diese Beispiele machen nichts Sinnvolles, aber sie beweisen, dass Puppet richtig funktioniert.

Verwenden eines Moduls

Verwenden wir nun ein Modul. Module sind nützlich, um Aufgaben zu gruppieren. In der Puppet-Community gibt es viele Module, und Sie können sogar eigene Module schreiben.

Installiere auf dem Puppet Master das + puppetlabs-apache + Modul von forgeapi:

sudo /opt/puppetlabs/bin/puppet module install puppetlabs-apache

Bearbeiten Sie nun + site.pp +:

sudo vi /etc/puppetlabs/code/environments/production/manifests/site.pp

Fügen Sie nun die folgenden Zeilen hinzu, um Apache auf host2 zu installieren:

site.pp Beispiel

node 'host2' {
 class { 'apache': }             # use apache module
 apache::vhost { 'example.com':  # define vhost resource
   port    => '80',
   docroot => '/var/www/html'
 }
}

# node default {}       # uncomment this line if it doesn't already exist in your manifest

Speichern und schließen. Wenn Puppet nun das nächste Mal host2 aktualisiert, installiert es das Apache-Paket und konfiguriert einen virtuellen Host mit dem Namen "example.com", der Port 80 abhört und einen Dokumentenstamm "+ / var / www / html +" hat.

Führen Sie auf * host2 * den folgenden Befehl aus:

sudo /opt/puppetlabs/bin/puppet agent --test

Sie sollten eine Reihe von Ausgaben sehen, die darauf hinweisen, dass Apache installiert wird. Öffnen Sie anschließend die öffentliche IP-Adresse von host2 in einem Webbrowser. Sie sollten eine Seite sehen, die von Apache bedient wird.

Glückwunsch! Sie haben Ihr erstes Puppet-Modul verwendet!

Fazit

Nachdem Sie über eine grundlegende Installation von Agent / Master Puppet verfügen, erfahren Sie jetzt, wie Sie Puppet zum Verwalten Ihrer Serverinfrastruktur verwenden. Schauen Sie sich das folgende Tutorial an: Getting Started With Puppet Code: Manifests and Modules.