Installation · 7 min read · Nov 15, 2025
Wie man Saltstack Master und Minion auf Debian 11 installiert

SaltStack ist eine kostenlose, Open-Source- und auf Python basierende Automatisierungs- und Konfigurationsmanagement-Software. Es ist ein Befehlszeilenwerkzeug, das Ihnen hilft, Ihre Infrastruktur von einem zentralen Ort aus zu verwalten. SaltStack besteht aus vier Komponenten. Eine kurze Erklärung jeder Komponente ist unten aufgeführt:
- Salt Master fungiert als Befehlszeilencontroller für seine Minions. Es wird verwendet, um eine Anzahl von Minions zu steuern und zu verwalten.
- Salt Minions sind Slave-Daemons, die Konfigurationen und Befehle vom Master empfangen.
- Formel sind Konfigurationsmanagement-Dateien.
- Ausführung ist eine Anzahl von Befehlen und Modulen, die auf den Minions ausgeführt werden.
In diesem Artikel zeige ich Ihnen, wie Sie SaltStack Master- und Minion-Systeme auf Debian 11 installieren.
Voraussetzungen
- Zwei Server, die Debian 11 ausführen.
- Ein Root-Passwort ist auf dem Server konfiguriert.
Saltstack Master installieren
Standardmäßig ist SaltStack nicht im Standard-Repository von Debian 11 enthalten. Daher müssen Sie das SaltStack-Repository zu APT hinzufügen. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpgecho "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/latest bullseye main" | tee /etc/apt/sources.list.d/salt.listSobald das Repository hinzugefügt wurde, aktualisieren Sie den Repository-Cache mit dem folgenden Befehl:
apt-get update -yAls nächstes installieren Sie die erforderlichen Abhängigkeiten mit dem folgenden Befehl:
apt-get install python3 salt-common -yAls nächstes installieren Sie den SaltStack-Master mit dem folgenden Befehl:
apt-get install salt-master -yNach der erfolgreichen Installation können Sie mit dem nächsten Schritt fortfahren.
Saltstack Master konfigurieren
Als nächstes müssen Sie die Bind-Schnittstelle in der SaltStack-Konfigurationsdatei definieren.
nano /etc/salt/masterÄndern Sie die folgende Zeile:
interface: 0.0.0.0Speichern Sie die Datei und schließen Sie sie, und starten Sie dann den SaltStack-Master mit dem folgenden Befehl neu:
systemctl restart salt-masterSie können jetzt den Status von SaltStack mit dem folgenden Befehl überprüfen:
systemctl status salt-masterSie erhalten die folgende Ausgabe:
? salt-master.service - Der Salt Master Server
Loaded: loaded (/lib/systemd/system/salt-master.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-02-12 07:39:48 UTC; 9s ago
Docs: man:salt-master(1)
file:///usr/share/doc/salt/html/contents.html
https://docs.saltproject.io/en/latest/contents.html
Main PID: 19403 (salt-master)
Tasks: 32 (limit: 2341)
Memory: 201.5M
CPU: 6.109s
CGroup: /system.slice/salt-master.service
??19403 /usr/bin/python3 /usr/bin/salt-master
??19407 /usr/bin/python3 /usr/bin/salt-master
??19431 /usr/bin/python3 /usr/bin/salt-master
??19434 /usr/bin/python3 /usr/bin/salt-master
??19435 /usr/bin/python3 /usr/bin/salt-master
??19436 /usr/bin/python3 /usr/bin/salt-master
??19437 /usr/bin/python3 /usr/bin/salt-master
??19444 /usr/bin/python3 /usr/bin/salt-master
??19445 /usr/bin/python3 /usr/bin/salt-master
??19446 /usr/bin/python3 /usr/bin/salt-master
??19448 /usr/bin/python3 /usr/bin/salt-master
??19451 /usr/bin/python3 /usr/bin/salt-master
??19454 /usr/bin/python3 /usr/bin/salt-master
Feb 12 07:39:48 debian11 systemd[1]: Starting Der Salt Master Server...
Feb 12 07:39:48 debian11 systemd[1]: Started Der Salt Master Server.Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Saltstack Minion installieren und konfigurieren
An diesem Punkt ist SaltStack Master installiert und konfiguriert. Melden Sie sich nun an einem anderen Computer an und fügen Sie das SaltStack Minion-Repository mit dem folgenden Befehl hinzu:
curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpgecho "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/latest bullseye main" | tee /etc/apt/sources.list.d/salt.listSobald das Repository hinzugefügt wurde, aktualisieren Sie den Repository-Cache mit dem folgenden Befehl:
apt-get update -yAls nächstes installieren Sie das SaltStack Minion mit dem folgenden Befehl:
apt-get install salt-minion -yNach der erfolgreichen Installation bearbeiten Sie die SaltStack Minion-Konfigurationsdatei und definieren die IP-Adresse des Masters.
nano /etc/salt/minionÄndern Sie die folgende Zeile:
master: salt-master-ipSpeichern Sie die Datei und schließen Sie sie, wenn Sie fertig sind.
Als nächstes müssen Sie die Minions mit dem öffentlichen Fingerabdruck des Masters authentifizieren.
Auf der Salt Master-Maschine listen Sie alle Fingerabdrücke mit dem folgenden Befehl auf:
salt-key --finger-allSie erhalten die folgende Ausgabe:
Local Keys:
master.pem: b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78
master.pub: 5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1Jetzt kopieren Sie die master.pub-Fingerabdruckzeile und fügen Sie sie in die Minion-Konfigurationsdatei ein.
Auf der Minion-Maschine bearbeiten Sie die Konfigurationsdatei:
nano /etc/salt/minionFügen Sie den Master-Fingerabdruck wie unten gezeigt hinzu:
master_finger: '5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1'Sie müssen auch den Namen des Minions definieren:
id: Minion1Speichern Sie die Datei und schließen Sie sie, und starten Sie dann das SaltStack Minion mit dem folgenden Befehl neu:
systemctl restart salt-minionSie können auch den Status des SaltStack Minion mit dem folgenden Befehl überprüfen:
systemctl status salt-minionSie erhalten die folgende Ausgabe:
? salt-minion.service - Der Salt Minion
Loaded: loaded (/lib/systemd/system/salt-minion.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-02-12 07:46:04 UTC; 7s ago
Docs: man:salt-minion(1)
file:///usr/share/doc/salt/html/contents.html
https://docs.saltproject.io/en/latest/contents.html
Main PID: 2324 (salt-minion)
Tasks: 8 (limit: 2341)
Memory: 59.9M
CPU: 1.185s
CGroup: /system.slice/salt-minion.service
??2324 /usr/bin/python3 /usr/bin/salt-minion
??2326 /usr/bin/python3 /usr/bin/salt-minion
??2328 /usr/bin/python3 /usr/bin/salt-minion
Feb 12 07:46:04 debian11 systemd[1]: Starting Der Salt Minion...
Feb 12 07:46:04 debian11 systemd[1]: Started Der Salt Minion.Sie können auch den Minion-Fingerabdruck mit dem folgenden Befehl überprüfen:
salt-call key.finger --localSie erhalten die folgende Ausgabe:
local:
14:12:ef:33:d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da:23:69:3f:62:1b:6b:4b:2f:27Auf der SaltStack Master-Maschine vergleichen Sie den Fingerabdruck mit dem folgenden Befehl:
salt-key --finger-allSie erhalten die folgende Ausgabe:
Local Keys:
master.pem: b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78
master.pub: 5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1
Unaccepted Keys:
Minion1: 14:12:ef:33:d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da:23:69:3f:62:1b:6b:4b:2f:27Auf dem SaltStack Master akzeptieren Sie den Minion mit dem folgenden Befehl:
salt-key -a Minion1Sie erhalten die folgende Ausgabe:
Die folgenden Schlüssel werden akzeptiert:
Unaccepted Keys:
Minion1
Proceed? [n/Y] Y
Key für Minion Minion1 akzeptiert.Überprüfen Sie nun die Verbindung zwischen Master und Minion mit dem folgenden Befehl:
salt Minion1 test.pingSie erhalten die folgende Ausgabe:
Minion1:
TrueSobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Minions vom Master aus steuern
Nach der erfolgreichen Verbindung zwischen Master und Minion. Lassen Sie uns einige Befehle auf den Minions ausführen.
Führen Sie den folgenden Befehl aus, um den verfügbaren Speicherplatz auf dem Minion aufzulisten:
salt '*' disk.usageSie erhalten die folgende Ausgabe:
Minion1:
----------
/:
----------
1K-blocks:
51538400
available:
47658628
capacity:
4%
filesystem:
/dev/sda1
used:
1661604
/dev:
----------
1K-blocks:
998936
available:
998936
capacity:
0%
filesystem:
udev
used:
0
/dev/shm:
----------
1K-blocks:
1015232
available:
1015152
capacity:
1%
filesystem:
tmpfs
used:
80Um das Apache-Paket auf dem Minion zu installieren, führen Sie den folgenden Befehl aus:
salt Minion1 pkg.install apache2Sie erhalten die folgende Ausgabe:
Minion1:
----------
apache2:
----------
new:
2.4.52-1~deb11u2
old:
apache2-bin:
----------
new:
2.4.52-1~deb11u2
old:
apache2-data:
----------
new:
2.4.52-1~deb11u2
old:
apache2-utils:
----------
new:
2.4.52-1~deb11u2
old:
libapr1:
----------
new:
1.7.0-6+deb11u1
old:
libaprutil1:
----------
new:
1.6.1-5
old:
libaprutil1-dbd-sqlite3:
----------
new:
1.6.1-5
old:
libaprutil1-ldap:
----------
new:
1.6.1-5
old:Um den freien Speicher auf dem Minion zu überprüfen, führen Sie den folgenden Befehl aus:
salt '*' cmd.run 'free -m'Sie erhalten die folgende Ausgabe:
Minion1:
total used free shared buff/cache available
Mem: 1982 140 1392 2 450 1691
Swap: 0 0 0Verwenden Sie die Salt-Zustandsdatei zur Verwaltung von Minions
Zustandsdateien sind auch als Konfigurationsmanagement-Dateien bekannt, die verwendet werden, um Minions zu konfigurieren und zu verwalten.
Um eine Zustandsdatei zu erstellen, müssen Sie die Basisumgebung für SaltStack erstellen.
mkdir /src/saltErstellen Sie als nächstes eine Zustandsdatei mit dem folgenden Befehl:
nano /src/salt/setup.slsFügen Sie den folgenden Code hinzu, um PHP, UNZIP und das Apache-Paket auf den Minions zu installieren:
network_utilities:
pkg.installed:
- pkgs:
- php
- unzip
apache2_pkg:
pkg.installed:
- name: apache2
apache2_service:
service.running:
- name: apache2
- enable: True
- require:
- pkg: apache2_pkgSpeichern Sie die Datei und schließen Sie sie, und wenden Sie dann die Konfiguration auf alle Minions mit dem folgenden Befehl an:
salt '*' state.apply setupSie erhalten die folgende Ausgabe:
Minion1:
----------
ID: network_utilities
Function: pkg.installed
Result: True
Comment: Die folgenden Pakete wurden installiert/aktualisiert: php, unzip
Started: 07:51:22.424504
Duration: 17349.907 ms
Changes:
----------
libapache2-mod-php7.4:
----------
new:
7.4.25-1+deb11u1
old:
php:
----------
new:
2:7.4+76
old:
php-common:
----------
new:
2:76
old:
php7.4:
----------
new:
7.4.25-1+deb11u1
old:
php7.4-cli:
----------
new:
7.4.25-1+deb11u1
old:
php7.4-common:
----------
new:
7.4.25-1+deb11u1
old:
php7.4-json:
----------
new:
7.4.25-1+deb11u1
old:
php7.4-opcache:
----------
new:
7.4.25-1+deb11u1
old:
php7.4-readline:
----------
new:
7.4.25-1+deb11u1
old:
psmisc:
----------
new:
23.4-2
old:
unzip:
----------
new:
6.0-26
old:
----------
ID: apache2_pkg
Function: pkg.installed
Name: apache2
Result: True
Comment: Alle angegebenen Pakete sind bereits installiert
Started: 07:51:39.780956
Duration: 1029.457 ms
Changes:
----------
ID: apache2_service
Function: service.running
Name: apache2
Result: True
Comment: Der Dienst apache2 läuft bereits
Started: 07:51:40.812210
Duration: 35.61 ms
Changes:
Zusammenfassung für Minion1
------------
Succeeded: 3 (changed=1)
Failed: 0
------------
Total states run: 3
Total run time: 18.415 sFazit
Herzlichen Glückwunsch! Sie haben erfolgreich SaltStack Master und Minion auf dem Debian 11-Server installiert und konfiguriert. Wir haben auch erklärt, wie man Minions mit Zustandsdateien und der Befehlszeile verwaltet. Ich hoffe, dies hilft Ihnen, Ihre Infrastruktur von einem zentralen Ort aus zu automatisieren und zu verwalten. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.