So installieren Sie Puppet Master und Agent in rhelbasierten Systemen

So installieren Sie Puppet Master und Agent in rhelbasierten Systemen

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 /hosts 
Fü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 -y 
Installieren 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 makecache 
Aktualisiert 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 repolist 
DNF -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 Linux

Um 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 -Server

Schritt 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 konfigurieren

Speichern 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).

Konfigurieren Sie die JVM -Speicherzuweisung

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 -Servers

Schritt 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 puppet 
Prü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 Puppetlabs 
Bestä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 -Server

Sie 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 her

Gehen 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 liste 
Listen 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.com 
Zeichen Zertifikate auf Puppet Server

Gehen Sie schließlich zurück zum Client -Knoten und unterschreiben Sie das Zertifikat.

$ sudo/opt/puppetlabs/bin/puppet Agent -t 
Stellen 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.