So installieren Sie Puppet Master und Agent in rhelbasierten Systemen
- 3199
- 191
- Lana Saumweber
Entwickelt von Puppenspiel Lans, Marionette ist ein Open-Source-Konfigurations-Management-Tool, das zur Automatisierung und Zentralisierung der Konfiguration der Infrastruktur verwendet wird, wie z. B. Server Ansible Und Koch. Es hilft der einfachen Ausführung repetitiver Aufgaben, die sonst umständlich und zeitaufwändig wäre.
Puppet nimmt eine Kunden-Server-Architektur ein und umfasst die folgenden herausragenden Aspekte.
- Puppenmeister/Server - Dieser Knoten enthält alle Konfiguration.
- Marionettensklave - Dies sind die verwalteten Kundenknoten in Ihrer Umgebung. Alle Sklaven werden vom Puppenmeister verwaltet und lassen den Puppenagenten installieren und laufen.
- PUPPETDB - Dies ist eine Datenbank, die alle von Puppet generierten Daten speichert.
In diesem Handbuch werden wir demonstrieren, wie man installiert Puppenspieler Und Agent In rhelbasierten Verteilungen wie CentOS, Fedora, Rocky und Almalinux.
Laborumgebung Setup
Puppenmeisterknoten mit IP 139.144.20.170 - Rocky Linux 8 Puppet Slave mit IP 45.79.206.178 - Ubuntu 22.04
Inhaltsverzeichnis
1- Laborumgebung Setup
- Schritt 1: Konfigurieren Sie den Hostnamen in Puppet Master und Slave
- Schritt 2: Puppet Repository auf Puppet Master (Rocky Linux) hinzufügen
- Schritt 3: Installieren Sie die Puppe auf Puppet Master (Rocky Linux)
- Schritt 4: Configure Puppet Master Server (Rocky Linux) konfigurieren
- Schritt 5: Konfigurieren Sie die JVM -Speicherzuweisung (optional)
- Schritt 6: Starten und Aktivpupper -Server aktivieren und aktivieren
- Schritt 7: Starten und aktivieren Sie Puppet Agent
- Schritt 8: Puppenservice in der Firewall zulassen
- Schritt 9: Hinzufügen von Puppen -Binärordner zu $ Path
- Schritt 10: Überprüfen Sie den Puppet -Server mithilfe von Puppet Client
- Schritt 11: Installieren und Konfigurieren von Puppet Agent auf Slave
- Schritt 12: Verbinden Sie Puppet Agent mit Puppet Server
- Abschluss
Schritt 1: Konfigurieren Sie den Hostnamen in Puppet Master und Slave
Melden Sie sich in Ihr System an und aktualisieren Sie die Softwarepakete mit dem Befehl DNF wie folgt, um die Softwarepakete zu verbessern.
$ sudo dnf update -y -y
Konfigurieren Sie als nächstes einen Hostnamen für Ihre Knoten, der auf dem Weg beim Einrichten wertvoll ist Marionette auf Ihrem System.
Für Puppenmeister
$ sudo hostnamectl set Hostname puppetmaster.Tecmint.com
Für Puppensklave
$ sudo hostnamectl set-Hostname Puppet-Agent
Bestätigen Sie den neuen Hostnamen mit dem hostnamectl Befehl:
$ hostnamectlÜberprüfen Sie das Linux -System -Hostname
Aktualisieren Sie als nächstes die /etc/hosts Datei für beide Systeme mit dem Hostnamen und den DNS -Datensätzen wie gezeigt.
Wechseln Sie zum Root -Benutzer.
$ su -
Aktualisieren Sie als nächstes die /etc/hosts Datei mit der IP -Adresse und Hostname oder FQDN Ihres Systems.
Für Puppenmeister
# echo "139.144.20.170 Puppetmaster.Tecmint.com ">> /etc /hostsFügen Sie Hostname in /etc /hosts Datei hinzu
Für Puppensklave
# echo "45.79.206.178 Puppet-Agent ">> /etc /hosts
Sobald die Hostnamen und DNS -Datensätze eingerichtet wurden, fahren Sie mit dem nächsten Schritt fort.
Schritt 2: Puppet Repository auf Puppet Master (Rocky Linux) hinzufügen
Installieren Marionette, Wir müssen sein Repository zum System hinzufügen. Führen Sie dazu den folgenden Befehl aus.
$ sudo dnf install https: // yum.Marionette.com/puppet-release-el-8.Keinarch.RPM -y
Fügen Sie das Puppet -Repository auf Rocky Linux [Puppet Master] hinzu, um zu bestätigen, dass das Repository erfolgreich hinzugefügt wurde. Führen Sie den Befehl rpm aus:
$ rpm -qi puppet -feleaseÜberprüfen Sie das Puppenrepository
Stellen Sie außerdem sicher, dass Sie das Epel -Repository wie gezeigt hinzufügen.
$ sudo dnf install https: // dl.Fedoraproject.org/pub/epel/epel-release-latest-8.Keinarch.RPM -yInstallieren Sie das Epel -Repository unter Rocky Linux
Als nächstes aktivieren Sie die Elektrowerkzeuge Repository, das Entwicklertools und Bibliotheken bietet. Das Repository bietet auch eine Host von Paketen, die bei der Installation anderer Anwendungen als Abhängigkeiten benötigt werden.
$ sudo dnf config-Manager-set-fähige Powertools
Um sicherzustellen, dass der Cache vollständig auf dem neuesten Stand ist und alle Metadaten vorhanden sind, erstellen Sie den Cache wie gezeigt.
$ sudo dnf makecacheAktualisiert DNF -Metadaten -Cache
Schritt 3: Installieren Sie die Puppe auf Puppet Master (Rocky Linux)
Bevor Sie installieren Marionette, Stellen Sie sicher, dass alle erforderlichen Repositorys wie folgt aktiviert wurden.
$ sudo dnf repolistDNF -Repositories anzeigen
Als nächstes installieren Sie Puppet -Server folgendermaßen.
$ sudo dnf installieren puppetserver -y
Der Befehl installiert eine Host von Paketen einschließlich Pupper Server Und Agent, Java Openjdk, Lua, NSS und vieles mehr. Unten finden Sie die Befehlsausgabe.
Installieren Sie Puppet Server unter Rocky LinuxUm zu bestätigen, dass die Pupper Server Wurde installiert, führen Sie den Befehl aus:
$ rpm -qi puppetserver
Der Befehl druckt detaillierte Informationen wie Name, Version, Veröffentlichung, Architektur und Installation Datum aus, um einige zu erwähnen.
Bestätigen Sie die Installation der Puppet -ServerSchritt 4: Configure Puppet Master Server (Rocky Linux) konfigurieren
Einmal Puppet -Server ist installiert, der nächste Schritt besteht darin, es zu konfigurieren. Greifen Sie daher wie gezeigt auf die Hauptkonfigurationsdatei für Puppet zu.
$ sudo vim/etc/puppetlabs/puppet/puppet.Conf
Unter dem [Server]
Abschnitt Fügen Sie den DNS -Eintrag wie gezeigt hinzu.
DNS_ALT_NAMES = PUPPETMASTER.Tecmint.Com, Puppetmaster, Puppeterver
Außerdem fügen Sie die hinzu [hauptsächlich]
Abschnitt wie folgt, wo Puppetmaster.Tecmint.com ist der FQDN oder Hostname Ihres Puppet -Servers.
[Main] certname = puppetmaster.Tecmint.com server = puppetmaster.Tecmint.com Umgebung = Produktion Runinterval = 1H
So sieht unsere Konfiguration aus.
Configure Puppet Master Server konfigurierenSpeichern Sie die Änderungen und beenden Sie die Konfigurationsdatei.
Schritt 5: Konfigurieren Sie die JVM -Speicherzuweisung (optional)
Standardmäßig, 2GB von JAVA Gedächtnis wird zugewiesen Puppet Master Server. Wenn Ihr System keinen ausreichenden Speicher hat, können Sie die Serverkonfigurationsdatei bearbeiten und einen niedrigeren Wert wie 1 GB zuweisen.
Greifen Sie daher auf die Konfigurationsdatei zu.
$ sudo vim/etc/sysconfig/puppeterververver
Suchen Sie diese Argumente: -Xms2g -xmx2g
und ändern 2g Zu 1g (bedeutet 1 GB).
Speichern Sie die Änderungen und beenden Sie die Konfigurationsdatei.
Schritt 6: Starten und Aktivpupper -Server aktivieren und aktivieren
Starten Sie die erforderlichen Änderungen, nachdem Sie alle erforderlichen Änderungen vorgenommen haben Puppet -Server Service wie gezeigt.
$ sudo systemctl starten puppeterver
Ermöglichen Sie dann, dass der Dienst mit dem Startzeit oder dem Start des Systems beginnen.
$ sudo systemctl aktivieren puppeterver
Führen Sie den Befehl aus, um zu überprüfen, ob der Puppet -Server ausgeführt wird:
$ sudo systemctl status puppeterver
Die folgende Ausgabe bestätigt, dass der Puppet -Server ausgeführt wird.
Überprüfen Sie den Status des Puppet -ServersSchritt 7: Starten und aktivieren Sie Puppet Agent
Die Installation von Puppet -Server installiert auch den Agenten auch. Der Agent startet jedoch nicht automatisch und Sie müssen es manuell tun.
Führen Sie den Befehl aus, um den Puppenagenten zu starten.
$ sudo systemctl starten puppet
Erwägen Sie außerdem, den Agenten mit dem Start zu ermöglichen.
$ sudo systemctl aktivieren puppet
Überprüfen Sie nun, ob der Agent aktiv ist und ausgeführt wird, indem Sie den folgenden Befehl ausführen.
$ sudo systemctl status puppetPrüfen Sie den Status des Puppenagenten -Agenten
Schritt 8: Puppenservice in der Firewall zulassen
Eine andere Sache, die Sie in Betracht ziehen müssen, ist, den Puppendienst in der gesamten Firewall so zu ermöglichen, dass auf den Server über das Netzwerk zugegriffen werden kann.
Führen Sie dazu die folgenden Befehle aus.
$ sudo firewall-cmd --add-service = puppetmaster --permanent $ sudo Firewall-cmd-Reload
Schritt 9: Hinzufügen von Puppen -Binärordner zu $ Path
Marionettenbinärdateien befinden sich in /opt/puppetlabs/bin. Zum Zeitpunkt des Schreibens dieses Leitfadens ist das Verzeichnis bereits in die platziert $ Path.
Um dies zu bestätigen, führen Sie die aus drucken Befehl wie gezeigt.
$ dintenv | Grep PuppetlabsBestätigen Sie die Binärweg der Puppe
Sie können dies auch wie gezeigt überprüfen.
$ welche Puppe /opt/puppetlabs/bin/puppet
Wenn aus irgendeinem Grund Marionette wird nicht hinzugefügt zu $ Path, Wechseln Sie zum Root -Benutzer
$ su -
Führen Sie dann die folgenden Befehle aus, um es hinzuzufügen $ Path.
# echo 'Exportpath = $ path:/opt/puppetlabs/bin' | Tee -a ~//.bashrc # source ~/.bashrc
Schritt 10: Überprüfen Sie den Puppet -Server mithilfe von Puppet Client
Um zu bestätigen, dass die Marionette Der Server wird wie erwartet ausgeführt. Führen Sie den Befehl aus:
$ sudo/opt/puppetlabs/bin/puppet Agent -Test - -ca_server = puppetmaster.Tecmint.com
Die folgende Ausgabe bestätigt, dass alle gut aussehen.
Überprüfen Sie den Puppet -ServerSie können das gleiche wie der Stammbenutzer wie gezeigt erreichen
# Puppet Agent -t
Um verfügbare Zertifikate auf dem anzuzeigen Puppenspieler Knoten, den folgenden Befehl ausführen.
$ sudo/opt/puppetlabs/bin/puppetserver ca -alleÜberprüfen Sie die Zertifikate auf Puppet Server
Bisher haben wir es geschafft zu installieren Puppet -Server Und Agent auf dem Master -Knoten. Wenn Sie dies gesucht haben, dann sind Sie fertig und bestäubt.
Wir haben jedoch erwähnt, dass Puppet in einer Kunden-Server-Architektur arbeitet. Im folgenden Schritt werden wir demonstrieren, wie Sie den Puppenagenten auf dem Clientknoten installieren und konfigurieren.
Schritt 11: Installieren und Konfigurieren von Puppet Agent auf Slave
In diesem Abschnitt werden wir installieren Marionettenagent auf einen Ubuntu Sklave Knoten und dann Kommunikation zwischen den Puppenmeister Knoten und der Klient.
Für Ubuntu 22.04
$ wget https: // apt.Puppetlabs.com/puppet7-release-jammy.Deb $ sudo dpkg -i puppet7-release-jammy.Deb $ sudo apt Update $ sudo Apt Installieren Sie Puppet -Agent -y -y
Für Ubuntu 20.04
$ wget https: // apt.Marionette.com/puppet7-release-fokal.Deb $ sudo dpkg -i puppet7-release-fokal.Deb $ sudo apt Update $ sudo Apt Installieren Sie Puppet -Agent -y -y
Greifen Sie nach der Installation auf die Konfigurationsdatei des Agenten zu.
$ sudo vim/etc/puppetlabs/puppet/puppet.Conf
Fügen Sie den folgenden Abschnitt hinzu.
[main] server = puppetmaster.Tecmint.com
Speichern Sie die Änderungen und beenden Sie.
Um die Änderungen anzuwenden, starten Sie den Puppet Agent Service neu.
$ sudo systemctl restart puppet $ sudo systemctl aktivieren puppet
Schritt 12: Verbinden Sie Puppet Agent mit Puppet Server
Der letzte Schritt besteht darin, eine Verbindung zwischen dem herzustellen Puppet -Server und das Agent auf dem Client -System installiert. Zu diesem Zeitpunkt zugreifen.
$ sudo/opt/puppetlabs/bin/puppet Agent -t
Sie erhalten eine Benachrichtigung darüber, dass das Zertifikat noch nicht unterschrieben wurde.
Stellen Sie eine Verbindung zum Puppet -Server und zum Agenten herGehen Sie zur Puppenmeister Knoten und Auflisten Sie die anhängigen Zertifikate auf. Hier ist das Zertifikat als aufgeführt als Puppenspiel.Mitglieder.Linode.com.
$ sudo/opt/puppetlabs/bin/puppetserver ca listeListen Sie Zertifikate auf Puppet Server auf
Unterschreiben Sie nun das Zertifikat mit dem folgenden Befehl:
$ sudo/opt/puppetlabs/bin/puppetserver ca Zeichen-Zertifikat-Puppentagent.Mitglieder.Linode.comZeichen Zertifikate auf Puppet Server
Gehen Sie schließlich zurück zum Client -Knoten und unterschreiben Sie das Zertifikat.
$ sudo/opt/puppetlabs/bin/puppet Agent -tStellen Sie eine Verbindung zum Puppet -Server und zum Agenten her
Abschluss
Dies bringt uns zum Ende dieses Leitfadens. In diesem Artikel haben wir gezeigt, wie man installiert Puppenspieler Und Agent auf rhelbasierten Systemen verwenden Rocky Linux 8 Knoten in unserem Setup.
- « So erstellen Sie füllbare Formulare mit Benutzerrollen in nur Dokumenten
- ARPWATCH - Überwachen Sie die Ethernet -Aktivität {IP und MAC -Adresse} unter Linux »