Wie installiere ich Puppet Bolt, um Sysadmin-Aufgaben zu automatisieren?

Puppet Bolt unter Ubuntu installieren…


Marionettenbolzen ist ein Open-Source-Tool, das häufig zur Automatisierung der manuellen Arbeit verwendet wird.

Bolt basiert auf Ruby und seinem Befehlszeilentool, mit dem Skripts ausgeführt und Befehle auf einem lokalen und Remote-Server über SSH und WinRM ausgeführt werden. Es hilft Sysadmin, mehrere Server auf viele Arten zu verwalten.

  • Updates verwalten
  • Software Installation
  • Protokoll lesen
  • Dienste stoppen oder starten
  • Befehlsausführung

Die gute Nachricht ist, dass Sie keinen Agenten auf den Servern installieren müssen. Es ist agentenlos.

Voraussetzung

Das folgende Beispiel ist unter Ubuntu, daher benötigen Sie eine Ubuntu-VM mit Sudo-Zugriff auf root.

System aktualisieren

Wir empfehlen Ihnen dringend, das gesamte verfügbare Repository und Paket zu aktualisieren, bevor Sie ein neues Paket auf dem System installieren. Führen Sie den folgenden Befehl aus, und er erledigt die Aufgabe für Sie.

sudo apt-get update

Einbau des Marionettenbolzens

Da es agentenlos ist, müssen Sie nicht auf jedem Server installieren. Stattdessen nur auf einem Server, der als Master fungiert und zur Verbindung mit Remote-Servern verwendet werden kann. Bolt ist ein plattformübergreifendes Tool, mit dem Sie es auf Ihrem bevorzugten Betriebssystem installieren können.

  • Windows
  • Mac OS
  • RHEL
  • CentOS
  • Fedora
  • Debian
  • Ubuntu

Siehe die offizielle Seite für die neueste verfügbare Version. Lassen Sie uns dies unter Ubuntu installieren.

Führen Sie den folgenden Befehl aus, um das Paket abzurufen.

sudo wget https://apt.puppet.com/puppet6-release-bionic.deb

Installieren Sie als Nächstes das oben heruntergeladene Paket mit dem Befehl Debian package manager.

sudo dpkg -i puppet6-release-bionic.deb

Aktualisieren Sie das System erneut mit dem folgenden Befehl.

sudo apt-get update

Führen Sie abschließend den folgenden Befehl aus, um die Schraube zu installieren.

sudo apt-get installieren Marionettenbolzen

Du hast erfolgreich installiert Marionettenbolzen auf Ihrem Server.

Dies muss auf allen Servern erfolgen, die Sie über Bolt verwalten möchten.

Wie bereits erwähnt, stellt Bolt über den SSH-Schlüssel eine Verbindung zu einem anderen Server her. Ich gehe also davon aus, dass Sie bereits einen Schlüssel zwischen den Servern ausgetauscht haben. Wenn nicht, können Sie in diesem Handbuch den SSH-Schlüsselaustausch einrichten.

Stellen Sie eine Verbindung zu Remote-Servern her und führen Sie Bolt-Befehle aus.

Verwenden Sie den folgenden Befehl, um einen Befehl auf einem einzelnen Knoten auszuführen.

Bolzenbefehl run –nodes

Bitte ersetzen Sie den BEFEHL durch den Befehl, den Sie ausführen möchten, und NODE durch den Hostnamen oder die IP des Remote-Servers. In ähnlicher Weise können Sie einen Befehl auch auf mehreren Knoten ausführen.

Bolzenbefehl run -n

Wenn Sie einem Befehl eine Kennwortauthentifizierung hinzufügen müssen, können Sie diese mithilfe der Flags hinzufügen.

Bolzenbefehl run -n -u -p

Angenommen, Sie möchten sehen, wie lange das System ausgeführt wurde, dann müssen Sie den Befehl `uptime` wie folgt verwenden:

Laufzeit des Bolzenbefehls – Knoten 35.185.68.71,35.231.9.135

Sie sollten die folgende Ausgabe sehen.

[E-Mail geschützt]: ~ $ bolzen Befehlslaufzeit – Knoten 35.185.68.71,35.231.9.135
Begonnen am 35.185.68.71…
Begonnen am 35.231.9.135…
Beendet am 35.231.9.135:
STDOUT:
04:57:48 bis 7 min, 0 Benutzer, Lastdurchschnitt: 0,00, 0,03, 0,02
Beendet am 35.185.68.71:
STDOUT:
04:57:48 bis 9 min, 0 Benutzer, Lastdurchschnitt: 0,00, 0,00, 0,00
Erfolgreich auf 2 Knoten: 35.185.68.71,35.231.9.135
Lief auf 2 Knoten in 5,96 Sekunden

Möglicherweise möchten Sie einen Befehl ausführen, der die Leerzeichen enthält, sodass Sie den Befehl in einfache Anführungszeichen setzen müssen:

[E-Mail geschützt]: ~ $ bolzenbefehl run ‘echo $ HOME’ –knoten 35.185.68.71,35.231.9.135
Begonnen am 35.185.68.71…
Begonnen am 35.231.9.135…
Beendet am 35.231.9.135:
STDOUT:
/ home / sajid
Beendet am 35.185.68.71:
STDOUT:
/ home / sajid
Erfolgreich auf 2 Knoten: 35.185.68.71,35.231.9.135
Lief in 6,11 Sekunden auf 2 Knoten

Ausführen von Skripten

Wir haben alle eine Reihe von Skripten, die wir regelmäßig verwenden.

Mit Bolt ist es einfach, diese Skripte ohne Änderungen wiederzuverwenden und auf noch mehr Knoten gleichzeitig auszuführen. Sie müssen lediglich den Namen und den Pfad des Skripts angeben, das Sie ausführen möchten.

Bolt Script Run – Knoten
Bolzenskript run /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135

Sie sollten die Ausgabe ähnlich sehen:

[E-Mail geschützt]: / $ Bolt Script run /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135
Begonnen am 35.185.68.71…
Begonnen am 35.231.9.135…
Beendet am 35.231.9.135:
STDOUT:
Hallo Welt
Beendet am 35.185.68.71:
STDOUT:
Hallo Welt
Erfolgreich auf 2 Knoten: 35.185.68.71,35.231.9.135
Lief auf 2 Knoten in 15,18 Sekunden

Sie können Skripte in jeder Sprache ausführen, solange der entsprechende Interpreter auf dem Remote-System installiert ist.

Automatisierung mit Aufgabe

Die Aufgabe besteht aus einer Reihe von Aktionen, die Sie auf Remotecomputern ausführen möchten.

Aufgaben können in jeder Sprache geschrieben werden, die auf einem Remote-Knoten ausgeführt wird. Aufgaben erleichtern die Wiederverwendung und Freigabe von Skripten und helfen Ihnen bei der Automatisierung. Sie können einige vorhandene Aufgaben von Puppet Forge herunterladen und Ihre Aufgaben dort nach Bedarf hochladen.

Wenn Sie beispielsweise den Status des vim-Pakets überprüfen möchten, können Sie den folgenden Befehl verwenden.

Bolzen Task Paket ausführen Aktion = Statusname = vim – Knoten 35.185.68.71,35.231.9.135

Sie sehen die Ausgabe ähnlich wie folgt:

[E-Mail geschützt]: ~ $ Bolt Task Paket ausführen Aktion = Statusname = vim – Knoten 35.185.68.71,35.231.9.135
Begonnen am 35.185.68.71…
Begonnen am 35.231.9.135…
Beendet am 35.185.68.71:
{
"Status":: "install ok installiert",
"Ausführung":: "2: 7.4.1689-3ubuntu1.3"
}}
Beendet am 35.231.9.135:
{
"Status":: "install ok installiert",
"Ausführung":: "2: 7.4.1689-3ubuntu1.3"
}}
Erfolgreich auf 2 Knoten: 35.185.68.71,35.231.9.135
Lief auf 2 Knoten in 19,15 Sekunden

Wenn Sie das installierte vim-Paket nicht finden, können Sie es mit dem folgenden Befehl installieren.

Bolt Task Run Package Action = Install Name = VIM – Knoten 35.185.68.71,35.231.9.135

Sie können plan ausführen, um nodejs einzurichten und mit Ihrem Load Balancer zu verbinden. Sie können dies tun, indem Sie Puppet Bolt mit einem Zielknoten kombinieren, auf dem der Bolt bereits installiert ist.

Bolzenplan run nodejs :: myplan load_balancer = lb.myorg.com

Sie können Puppet Bolt verwenden, um Dateien auf Remote-Knoten zu kopieren. Sie können die Datei oder das Verzeichnis einfach mit dem Befehl “Bolt File Upload” auf den Remote-Knoten hochladen. Sie müssen lediglich den Pfad der Datei auf dem lokalen Computer und das Ziel auf dem Remote-Knoten angeben.

Bolt File Upload –Knoten

Sie können eine Datei auf mehrere Remote-Knoten gleichzeitig hochladen:

Bolt-Datei hochladen sample_file.txt /tmp/remotesample_file.txt –nodes 35.185.68.71,35.231.9.135

Viele Möglichkeiten, wie Sie sehen können.

Erstellen einer Inventardatei

Mit Bolt können Sie eine Inventardatei erstellen, in der Informationen zu Ihren Knoten, Aufgaben und Konfigurationen gespeichert werden. Sie können verschiedene Knoten in einer Gruppe angeben und die Inventardatei standardmäßig in der Datei inventar.yaml im Projektverzeichnis speichern. Hier ist ein Beispiel für die Erstellung einer Inventardatei.


# Beispiel einer Inventardatei
Gruppen:
– Name: Gruppe von Knoten
Knoten:
– Knoten1
– Knoten2
– Knoten3
config:
ssh:
Host-Key-Check: false
ssl: falsch

Sie können diese Knoten1, Knoten2, Knoten3 durch Ihren tatsächlichen Knotendomänennamen oder die IP-Adresse Ihrer Knoten ersetzen. Sie können diese Inventardatei jetzt zu den Bolzenbefehlen hinzufügen, um Aufgaben auf den angegebenen Knoten auszuführen.

Bolzenbefehl run –inventoryfile ./inventory.yaml

Fazit

Ich hoffe, Sie haben jetzt eine Vorstellung davon, was Bolt ist und wie es Ihnen bei der Automatisierung helfen kann. Sie könnten auch daran interessiert sein, etwas darüber zu lernen Marionette.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map