GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So fügen Sie Puppet Agents zu Foreman hinzu

Dies ist der zweite Teil des Foreman-Tutorials. In der ersten Anleitung haben wir Ihnen bereits die Installation und Konfiguration von Foreman auf Ubuntu Server 18.04 LTS gezeigt und jetzt zeige ich Ihnen, wie Sie Puppet Agents zu Foremen hinzufügen.

Voraussetzungen

  • Vorarbeiter-Puppenmeister
  • Root-Rechte

Was werden wir tun?

  1. Hosts einrichten
  2. Installieren und konfigurieren Sie Puppet Agent
  3. Signiere Zertifikate auf dem Foreman Puppet Master
  4. Testen

Schritt 1 - Hosts einrichten

Zunächst müssen wir den FQDN (Fully Qualified Domain Name) der Puppet-Agent-Server konfigurieren.

Ändern Sie den Hostnamen des Servers mit dem folgenden hostnamectl-Befehl.

hostnamectl set-hostname client.hakase-labs.io

Bearbeiten Sie danach die Datei „/etc/hosts“.

vim /etc/hosts

Ändern Sie die IP-Adresse und den FQDN mit Ihren eigenen und fügen Sie sie ein.

10.9.9.20   server.hakase-labs.io   server
10.9.9.21   client.hakase-labs.io   client

Speichern und schließen.

Testen Sie nun den Host mit dem folgenden Befehl und stellen Sie sicher, dass der FQDN des Servers in Ihre gültige IP-Adresse aufgelöst wird.

ping $(hostname -f) -c 3

Schritt 2 – Puppet Agent installieren und konfigurieren

In diesem Schritt installieren wir den Puppet Agent 5 auf Ubuntu 18.04- und CentOS 7-Servern. Wir möchten das Puppet-Repository zum System hinzufügen und dann die Puppet-Agentenpakete sowohl auf Ubuntu- als auch auf CentOS-Servern installieren.

- Installieren Sie Puppet Agent auf Ubuntu 18.04 Server

Laden Sie das Paket-Repository herunter und fügen Sie es dem System hinzu.

cd /tmp && wget https://apt.puppetlabs.com/puppet5-release-bionic.deb
sudo dpkg -i puppet5-release-bionic.deb

Aktualisieren Sie danach die Ubuntu-Repositories und installieren Sie die Puppet-Agent-Pakete mit den folgenden apt-Befehlen.

sudo apt update
sudo apt install -y puppet-agent

- Installieren Sie Puppet Agent auf CentOS 7 Server

Laden Sie das Paket-Repository herunter und fügen Sie es dem System hinzu.

cd /tmp && wget https://yum.puppet.com/puppet5/puppet5-release-el-7.noarch.rpm
rpm -ivh puppet5-release-el-7.noarch.rpm

Installieren Sie danach die Puppet-Agent-Pakete mit dem folgenden Befehl.

sudo yum install -y puppet-agent

Wenn die Installation abgeschlossen ist, müssen wir die Standard-Puppet-Konfiguration bearbeiten und die Agent-Einstellungen definieren.

Gehen Sie in das Verzeichnis „/etc/puppetlabs/puppet“ und bearbeiten Sie die Konfigurationsdatei „puppet.conf“.

cd /etc/puppetlabs/puppet/
vim puppet.conf

Ändern Sie den Server-FQDN und den Zertifikatsnamen mit Ihrem eigenen und fügen Sie ihn ein.

[agent]
    server = server.hakase-labs.io
    certname = client.hakase-labs.io
    runinterval = 180
    environment = production
    listen = false
    pluginsync = true
    report = true

Speichern und beenden.

Führen Sie danach den Puppet-Agent-Dienst mit dem folgenden Befehl aus.

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

Oder starten Sie den Dienst neu, falls erforderlich.

sudo systemctl restart puppet

Der Puppet-Agent läuft sowohl auf Ubuntu- als auch auf CentOS-Servern.

Schritt 3 - Zertifikatsanforderungen der Puppet-Agenten signieren

Um die Zertifikatsanfragen der Puppet-Agenten zu signieren, können wir die Terminal-Shell des Puppet-Master-Servers (in diesem Fall der Foreman-Server selbst) oder das Foreman-Dashboard verwenden.

- Zertifikatsanforderungen mit Terminal Shell signieren

Melden Sie sich beim Puppet-Master-Server an (in diesem Handbuch ist der Foreman-Server) und überprüfen Sie die Zertifikatsanforderung mit dem folgenden Befehl.

sudo /opt/puppetlabs/bin/puppetserver ca list

Jetzt sehen Sie das Client-Namenszertifikat, signieren Sie mit dem folgenden Befehl.

sudo /opt/puppetlabs/bin/puppetserver ca sign --certname client.hakase-labs.io

Und das Puppet-Agent-Zertifikat wurde dem Puppet-Master über den Terminalserver hinzugefügt.

- Zertifikatsanforderungen mit dem Foreman-Dashboard signieren

Klicken Sie auf "Infrastruktur". ' auf der linken Seite und wählen Sie dann "Smart Proxys". '.

Wählen Sie nun die 'Zertifikate aus ' Optionen aus der Dropdown-Schaltfläche des Vorarbeiter-Servers.

Jetzt erhalten Sie den Kundennamen, der Anfragen im Status „ausstehend“ stellt. Klicken Sie auf „Signieren“. ' Schaltfläche.

Überprüfen Sie danach die Agent-Hosts, indem Sie zur Seite „Hosts“ gehen.

Innerhalb der Datei „Hosts Klicken Sie im Menü auf „Alle Hosts ' und vergewissern Sie sich, dass Sie den Namen des Puppet-Agenten auf der Serverliste wie unten angegeben erhalten.

Nachfolgend Details zum Ubuntu Puppet Agent.

Schritt 4 – Testen

In diesem Tutorial testen wir den Puppet-Foreman-Server und den Puppet-Agent für die Bereitstellung der nginx- und NTP-Dienste auf dem Puppet-Agent-Host. Bevor wir beginnen, müssen wir die nginx- und ntp-Puppet-Module auf den Foreman-Server herunterladen und diese Module dann aktivieren und zum Puppet-Agenten hinzufügen.

- Laden Sie das Nginx Puppet-Modul herunter

Laden Sie das Nginx-Puppet-Modul herunter, indem Sie den folgenden Befehl auf dem Puppet-Master-Foreman-Server ausführen.

sudo /opt/puppetlabs/bin/puppet module install puppet/nginx

- Puppet-Module aktivieren

Importieren Sie danach das nginx-Modul über das Foreman-Dashboard.

Klicken Sie auf „Konfigurieren“. ' Menü auf der linken Seite und klicken Sie auf Puppet 'Klassen '.

Klicken Sie auf „Umgebung von server.hakase-labs.io importieren“. ', markieren Sie verfügbare Modulklassen und klicken Sie auf 'Aktualisieren '.

Jetzt erhalten Sie das Nginx-Modul in der Liste.

- Puppet-Modul zum Agent-Host hinzufügen

Klicken Sie auf "Hosts". Klicken Sie im Menü links auf „Alle Hosts“. ', um Listen verfügbarer Hosts zu erhalten.

Klicken Sie nun auf 'Bearbeiten '-Schaltfläche auf dem Agent-Host mit dem Namen 'client.hakase-labs.io'.

Gehen Sie zu den 'Marionettenklassen ', fügen Sie die Module 'nginx' und 'ntp' hinzu und klicken Sie auf 'Senden ' Schaltfläche.

Die Nginx- und NTP-Module wurden dem Agent-Host hinzugefügt.

Zusätzlich :

Wenn Sie aktive Klassen auf den Hosts überprüfen möchten, klicken Sie einfach auf „YAML ' auf den Detailinformationen zum Host und Ihnen wird die Rohquelle der YAML-Konfiguration angezeigt.

- Anwenden und testen

Wenn Sie die Änderungen manuell anwenden möchten, können Sie den folgenden Befehl auf den Puppet-Agent-Hosts ausführen.

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

Wenn der Vorgang abgeschlossen ist, wird das Ergebnis wie folgt angezeigt.

Überprüfen Sie danach den nginx- und ntp-Dienst, indem Sie den aufgelisteten Port überprüfen, um sicherzustellen, dass die HTTP- und NTP-Ports von den nginx- und ntp-Diensten verwendet werden.

netstat -plntu

Jetzt können Sie auf den nginx-Webserver auf dem Agentenknoten zugreifen.

curl client.hakase-labs.io

Führen Sie den folgenden Befehl aus, um die NTP-Serverkonfiguration zu überprüfen.

cat /etc/ntp.conf

Und Ihnen wird die NTP-Konfiguration angezeigt, die von Puppet verwaltet wird.

  • https://theforeman.org/manuals/

Linux
  1. So fügen Sie einem vorhandenen Linux-Server eine neue Festplatte hinzu

  2. So installieren Sie Puppet unter CentOS 8 / RHEL 8

  3. So installieren Sie Puppet 6.x auf CentOS 7 / RHEL 7

  4. So fügen Sie ein Yum-Repository hinzu

  5. So fügen Sie Ihrem Ubuntu 18.04-Server eine zusätzliche IP hinzu

So fügen Sie Windows Server 2008 eine zusätzliche öffentliche IP-Adresse hinzu

So fügen Sie Ihrem Ubuntu- oder Debian-Cloud-Server eine zusätzliche IP hinzu

So fügen Sie einem Ubuntu-Server eine private IP hinzu

So fügen Sie eine Website in cPanel und WHM unter CentOS 6.7 hinzu

So fügen Sie einem Debian-Server eine private IP hinzu

So installieren Sie Puppet Server unter CentOS 7