Sie müssen Salt in Ihrer Infrastruktur installieren, die aus der Installation der Salt-Master- und Salt-Minion-Dienste besteht.

Salt und seine Abhängigkeiten müssen zumindest auf den Knoten installiert werden, die in ein Standard-Automation Config-Installationsszenario involviert sind.

Es wird dringend empfohlen, Salt im Voraus in jeder Infrastruktur zu installieren, die Sie mit Automation Config verwalten möchten. Die Installation von Salt vereinfacht und optimiert den Vorgang der Aktualisierung auf zukünftige Versionen von Salt. Bevor Sie mit der Installation von Automation Config beginnen, sollten Sie Salt in Ihrer Infrastruktur installieren und es dann für einen bestimmten Zeitraum überwachen, um sicherzustellen, dass es stabil und erwartungsgemäß ausgeführt wird.

Lesen Sie sich diese Handbücher durch, um sicherzustellen, dass Ihre Umgebung den Best Practices bei der Implementierung von Salt in Ihre Infrastruktur folgt:

Um Ihre Maschinen auf eine Standardinstallation von Automation Config vorzubereiten, müssen Sie Salt und Python installieren oder aktualisieren. Salt und Python müssen auf allen Knoten, die an der Installation beteiligt sind, vorhanden und aktualisiert sein. Die Installation schlägt fehl, wenn Salt und die Abhängigkeiten des Installationsprogramms nicht auf Ihren Knoten installiert sind.

Ab Salt Version 3006 verwendet das Salt-Projekt das Paketerstellungssystem onedir. Onedir steht für „one directory“ (ein Verzeichnis), da es alle ausführbaren Dateien enthält, die Salt benötigt, einschließlich Python- und anderer Salt-Abhängigkeiten. Mit onedir können Sie Salt sofort verwenden.
Achtung: Das Salt-Projekt empfiehlt dringend, ein Upgrade auf onedir durchzuführen, um weiterhin Salt-Versionsaktualisierungen zu erhalten. Ab Salt Version 3006 sind nur onedir-Pakete für Upgrades verfügbar. Weitere Informationen zu Salt-Versionen und onedir finden Sie unter KB 89728.
Hinweis: Die Verwendung des Salt Crystal-Installationspakets wurde eingestellt. Für zukünftige Installationen wird empfohlen, das onedir-Installationspaket zu verwenden.

Erforderlich: Für Brownfield-/Upgrade-Bereitstellungen ist der Salt-Master ab Salt 3006 so konfiguriert, dass er als Benutzer „salt“ anstelle des herkömmlichen Root-Benutzers ausgeführt wird. Dies kann zu Berechtigungsfehlern bei RaaS-bezogenen Workflows führen, wie z. B. Minion-Bereitstellung und Upgrades des RaaS-Master-Plug-Ins.

Um dieses Problem zu beheben, ändern Sie die Datei /etc/salt/master.d/raas.conf und ändern Sie den Benutzer in „root“: user: root.

Installieren von Salt auf dem/den Salt-Master(n)

Bei einer Standardinstallation müssen Sie sowohl den Salt-Master- als auch den Minion-Dienst auf dem Salt-Master-Host installieren.

Mit diesen Anweisungen wird die neueste Salt-Version auf Redhat/Centos 7 PY3 installiert. Wenn auf Ihrer Maschine ein anderes Betriebssystem oder eine andere Version von Python ausgeführt wird, funktioniert das Skript nicht. Informationen zum Installieren von Salt auf anderen Betriebssystemen oder Python-Versionen finden Sie im Salt-Installationshandbuch.
Hinweis: Centos 7 blockiert standardmäßig Verbindungen zum Salt-Master. Sie müssen Firewallregeln erstellen, um Konnektivität zuzulassen:
  • firewall-cmd --permanent --zone=public --add-port=4505-4506/tcp
  • firewall-cmd --reload
Weitere Informationen finden Sie unter Opening the Firewall up for Salt.
  1. Installieren Sie das Salt-Projekt-Repository und den entsprechenden Schlüssel:
    sudo yum install https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el7.noarch.rpm
  2. Leeren Sie den Zwischenspeicher:
    sudo yum clean expire-cache
  3. Installieren Sie den Salt-Master- und den Minion-Dienst auf dem Salt-Master-Knoten:
    sudo yum install salt-master
    sudo yum install salt-minion
  4. Erstellen Sie eine master.conf-Datei im Verzeichnis /etc/salt/minion.d. Legen Sie in dieser Datei die IP-Adresse des Salt-Masters so fest, dass sie auf sich selbst verweist:
    master: localhost
  5. Starten Sie den Salt-Master- und den Minion-Dienst:
    sudo systemctl start salt-master
    sudo systemctl enable salt-minion
    sudo systemctl start salt-minion

    Starten Sie die Minions bei Bedarf mit service salt-minion restart neu.

Installieren von Salt auf den Salt-Minions

Nach der Installation von Salt auf dem Salt-Master, wie im vorherigen Abschnitt beschrieben, besteht der nächste Schritt in der Installation des Minion-Dienstes (nicht des Master-Dienstes) auf den drei Knoten, die zum RaaS, zur Redis-Datenbank und zur PostgreSQL-Datenbank werden.

Anschließend müssen Sie die Minions für die Kommunikation mit dem Salt-Master konfigurieren. Weitere Informationen zum Installieren des Minion-Dienstes finden Sie unter Minion-Konfiguration in der Salt-Dokumentation.

So installieren Sie den Minion-Dienst:

  1. Installieren Sie nur den Minion-Dienst. Führen Sie dazu den folgenden Befehl aus:
    sudo yum install salt-minion
  2. Beantworten Sie alle Eingabeaufforderungen mit y, um alle Änderungen anzunehmen.
  3. Konfigurieren Sie jeden Minion für die Kommunikation mit dem Salt-Master durch die entsprechende Erstellung einer master.conf-Datei im Verzeichnis /etc/salt/minion.d. Geben Sie in dieser Datei die IP-Adresse des Salt-Masters an. Beispiel:
    master: 192.0.2.1
  4. Starten Sie den Minion-Dienst:
    sudo systemctl enable salt-minion
    sudo systemctl start salt-minion

    Starten Sie die Minions bei Bedarf mit service salt-minion restart neu.

  5. Wiederholen Sie die vorherigen Schritte für alle verbleibenden Knoten.

Alternative: Sie können Salt-Minions auch mit VMware Tools aktivieren. Weitere Informationen finden Sie unter Aktivieren von Salt Minon mit VMware Tools.

Akzeptieren Sie die Minion-Schlüssel auf dem/den Master(n)

Zu diesem Zeitpunkt haben Sie den Salt-Master- und den Minion-Dienst installiert und Ihre Minions mit der IP-Adresse des Salt-Masters bereitgestellt. Damit der Salt-Master nun Befehle an die Minions senden kann, müssen Sie im nächsten Schritt die Minion-Schlüssel auf dem Salt-Master akzeptieren.

Bevor Sie fortfahren:

  • Stellen Sie sicher, dass der Salt-Master-Dienst aktiviert und gestartet ist.
  • Stellen Sie sicher, dass der Minion auf allen Knoten aktiviert und gestartet ist.

So werden die Schlüssel akzeptiert:

  1. Führen Sie auf dem Salt-Master-Terminal alle Schlüssel auf, die sich auf dem Salt-Master befinden:
    salt-key -L
  2. Stellen Sie sicher, dass alle Minion-IDs in Unacceptedkeys aufgeführt sind.

    Wenn die Minion-IDs in Acceptedkeys angezeigt werden, sind keine weiteren Aktionen erforderlich, da dies das Endziel ist.

  3. Akzeptieren Sie jede Minion-ID mithilfe des folgenden Befehls und ersetzen Sie „<your-minion-id>“ durch die ID aus Ihrem Netzwerk:
    salt-key -a <your-minion-ID>

    Durch Ausführen von salt-key -A werden alle Schlüssel akzeptiert.

  4. Beantworten Sie alle Eingabeaufforderungen mit y.
  5. Führen Sie den salt-key -L Befehl ein zweites Mal aus, um zu bestätigen, dass alle Minions in Acceptedkeys angezeigt werden.

Installieren von Salt in einem Air-Gap-System

Die fehlende Möglichkeit einer regelmäßigen Aktualisierung von Salt über das Internet kann für Ihr Netzwerk problematisch werden, es sei denn, es handelt sich bei Ihrem Netzwerk um ein Air-Gap-Netzwerk. Aus diesem Grund wird nachdrücklich empfohlen, Salt im Voraus mithilfe des onedir-Pakets zu installieren.

Beachten Sie, dass bei der Installation von Salt in Ihrer Infrastruktur auf einem Air-Gap-System Kompromisse eingegangen werden müssen.