Zum Einrichten und Überprüfen Ihrer SaltStack Config Cloud-Instanz installieren Sie Salt und das Master-Plug-In auf Ihrem Salt-Master, generieren ein API-Token in der Cloud Services-Konsole und verbinden dann Ihren Salt-Master mit SaltStack Config Cloud. Sie können Salt-Master verbinden, die lokal oder in der Cloud vorhanden sind.

Voraussetzungen

Bevor Sie SaltStack Config Cloud einrichten, müssen Sie die folgenden Voraussetzungen erfüllen:
  • Vergewissern Sie sich, dass Sie über die folgenden Rollen in VMware Cloud Services verfügen:
    • Organisationsrolle: Organisationsbesitzer oder Organisationsadministrator
    • Dienstrolle: Salt-Master
  • Stellen Sie als Standardorganisation die Organisation mit Zugriff auf den SaltStack Config Cloud-Dienst ein.

Übersicht über die Einrichtung

Das Einrichten von SaltStack Config Cloud umfasst die folgenden Aufgaben.

  1. Installieren Sie Salt auf Ihrem Salt-Master und den Knoten, die Sie mit SaltStack Config Cloud verwalten möchten. Weitere Informationen hierzu finden Sie unter Schritt 1: Installieren von Salt.
  2. Installieren Sie das Master-Plug-In oder führen Sie ein Upgrade auf den Salt-Mastern durch, die mit SaltStack Config Cloud kommunizieren müssen. Weitere Informationen hierzu finden Sie unter Schritt 2: Installieren und Konfigurieren des Master-Plug-Ins.
  3. Generieren Sie ein API-Token, damit Ihre Salt-Master eine Verbindung mit SaltStack Config Cloud herstellen können. Weitere Informationen hierzu finden Sie unter Schritt 3: Generieren eines API-Tokens.
  4. Verbinden Sie Ihre Salt-Master mit SaltStack Config Cloud. Weitere Informationen hierzu finden Sie unter Schritt 4: Verbinden Ihrer Salt-Master mit SaltStack Config Cloud.
  5. Akzeptieren Sie die Salt-Master-Schlüssel in der SaltStack Config Cloud-Benutzeroberfläche. Weitere Informationen hierzu finden Sie unter Schritt 5: Akzeptieren von Salt-Master-Schlüsseln.

Schritt 1: Installieren von Salt

Sie müssen den Salt-Master-Dienst und den Salt-Minion-Dienst vor der Verwendung auf dem Salt-Master-Knoten installieren.

Stellen Sie vor der Installation von Salt sicher, dass Sie die erforderlichen Salt-Abhängigkeiten installiert haben. Weitere Informationen finden Sie unter Install dependencies im Salt-Installationshandbuch.

Hinweis: Für Installationen von Offline- oder sicheren Umgebungen müssen Sie einen Netzwerk-Proxy konfigurieren, um die folgenden für die Installation von Salt erforderlichen URLs zuzulassen:
  • https://repo.saltproject.io
  • https://pypi.org
  • https://python.org

Bestätigen Sie die Netzwerkaktivität über Ihren Netzwerk-Proxy, bevor Sie mit der Installation fortfahren.

Mit den folgenden Anweisungen wird die neueste Salt-Version auf RHEL 8 installiert. Informationen zum Installieren von Salt auf anderen Betriebssystemen finden Sie im Salt-Installationshandbuch.

  1. Führen Sie im Salt-Master-Terminal die folgenden Befehle aus, um das Salt-Projekt-Repository und den Schlüssel zu installieren:
    sudo rpm --import https://repo.saltproject.io/py3/redhat/8/x86_64/latest/SALTSTACK-GPG-KEY.pub
    curl -fsSL https://repo.saltproject.io/py3/redhat/8/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
  2. Führen Sie sudo yum clean expire-cache aus.
  3. Installieren Sie den Salt-Minion- und den Salt-Master-Dienst auf Ihrem Salt-Master:
    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 Salt-Minion-Dienst:
    sudo systemctl enable salt-master && sudo systemctl start salt-master
    sudo systemctl enable salt-minion && sudo systemctl start salt-minion
  6. Legen Sie bei Verwendung eines Netzwerk-Proxys die Variablen HTTP_PROXY und HTTPS_PROXY entsprechend der Netzwerkeinstellungen fest.
    1. Wenn Sie systemd zum Verwalten des Salt-Master-Diensts verwenden, fügen Sie die Umgebungsvariablen HTTP_PROXY und HTTPS_PROXY zur Datei salt-master.service hinzu.
    2. Führen Sie systemctl daemon-reload aus.
    3. Führen Sie den Befehl systemctl restart salt-master aus, um den Salt-Master-Dienst neu zu starten.

Schritt 2: Installieren und Konfigurieren des Master-Plug-Ins

Nachdem Sie Salt in Ihrer Infrastruktur installiert haben, müssen Sie das Master-Plug-In installieren und konfigurieren. Es ermöglicht Ihren Salt-Mastern die Kommunikation mit SaltStack Config Cloud.

Wenn Sie bereits über einen vorhandenen Salt-Master verfügen, führen Sie ein Upgrade des Master-Plug-Ins auf die aktuelle verfügbare Version durch, bevor Sie den Salt-Master mit SaltStack Config Cloud verbinden. Weitere Informationen finden Sie unter Verwenden des Arbeitsbereichs „Master-Plug-Ins“.

So installieren und konfigurieren Sie das Master-Plug-In:

  1. Melden Sie sich bei Ihrem Salt-Master an.
  2. Installieren Sie mit den folgenden Befehlen die PyJWT-Bibliothek und die Pika Python-Bibliothek auf Ihrem Salt-Master:
    salt-call --local pip.install pika==1.2.0
    salt-call --local pip.install pyjwt==2.3.0
  3. Laden Sie die aktuelle Version des Master-Plug-Ins aus dem Arbeitsbereich Master-Plug-Ins herunter.
    Wichtig:

    Die Version des Master-Plug-Ins muss mit der Version von SaltStack Config Cloud übereinstimmen. Die Version von SaltStack Config Cloud befindet sich im Arbeitsbereich Master-Plug-Ins.

  4. Installieren Sie das Master-Plug-In, indem Sie das Python-Wheel manuell installieren. Verwenden Sie den Beispielbefehl und ersetzen Sie dabei den genauen Namen der Wheel-Datei:
    salt-call --local pip.install SSEAPE-file-name.whl
  5. Generieren Sie die Master-Konfigurationseinstellungen.
    1. Stellen Sie sicher, dass das /etc/salt/master.d-Verzeichnis vorhanden ist, oder erstellen Sie es.
    2. Führen Sie den folgenden Befehl aus, um die Master-Konfigurationsdatei zu generieren.
      sudo sseapi-config --all > /etc/salt/master.d/raas.conf

      Wenn die Ausführung dieses Befehls einen Fehler verursacht, finden Sie weitere Informationen unter Fehlerbehebung von SaltStack Config Cloud.

  6. Starten Sie den Salt-Master-Dienst neu.
    sudo systemctl restart salt-master

Schritt 3: Generieren eines API-Tokens

Bevor Sie Ihren Salt-Master mit SaltStack Config Cloud verbinden können, müssen Sie ein API-Token mithilfe der Cloud Services-Konsole generieren. Dieses Token wird zum Authentifizieren Ihres Salt-Masters mit VMware Cloud Services verwendet.

So generieren Sie ein API-Token:

  1. Klicken Sie auf der Symbolleiste der Cloud Services-Konsole auf Ihren Benutzernamen und wählen Sie Mein Konto > API-Token aus.
  2. Klicken Sie auf Token generieren.

    Seite „API-Token“ in CSP

  3. Füllen Sie das Formular aus.

    Formular zum Generieren von Token in CSP

    1. Geben Sie einen Namen für das Token ein.
    2. Wählen Sie die Time to Live (TTL) des Tokens aus. Die Standarddauer beträgt sechs Monate.
      Hinweis: Ein nicht ablaufendes Token kann ein Sicherheitsrisiko darstellen, wenn es manipuliert wird. Ist dies der Fall, müssen Sie das Token widerrufen.
    3. Definieren Sie Geltungsbereiche für das Token.
      Geltungsbereich Beschreibung
      Organisationsrollen

      Organisationsrollen bestimmen den Zugriff eines Benutzers auf die Ressourcen der Organisation.

      Um auf den SaltStack Config Cloud-Cloud-Dienst zugreifen zu können, müssen Sie die Rolle Organisationsadministrator oder Organisationsbesitzer auswählen.

      Die Rolle „Organisationsadministrator“, ausgewählt auf der Seite „Neues API-Token generieren“
      Dienstrollen

      Dienstrollen sind integrierte, vordefinierte Berechtigungssätze, die Zugriff auf VMware Cloud Services gewähren.

      Um auf den SaltStack Config Cloud Cloud-Dienst zuzugreifen, suchen Sie den SaltStack Config Cloud-Dienst und wählen Sie die Salt-Master-Dienstrolle aus.

      Die für den SaltStack Config-Dienst ausgewählte Salt-Master-Dienstrolle
    4. (Optional) Legen Sie eine E-Mail-Einstellung fest, um eine Erinnerung zu erhalten, wenn Ihr Token in Kürze abläuft.
    5. Klicken Sie auf Generieren.

      Das neu generierte API-Token wird im Fenster Generiertes Token angezeigt.

  4. Speichern Sie die Token-Anmeldedaten an einem sicheren Ort.

    Nachdem Sie das Token generiert haben, können Sie nur den Namen des Tokens auf der Seite API-Token sehen, aber nicht die Anmeldedaten. Um das Token erneut zu generieren, klicken Sie auf Neu generieren.

  5. Klicken Sie auf Weiter.

Schritt 4: Verbinden Ihrer Salt-Master mit SaltStack Config Cloud

Nachdem Sie ein API-Token generiert haben, können Sie es verwenden, um Ihren Salt-Master mit SaltStack Config Cloud zu verbinden.

So verbinden Sie Ihren Salt-Master:

  1. Speichern Sie im Salt-Master-Terminal Ihr API-Token als Umgebungsvariable.
    export CSP_API_TOKEN=<api token value>
  2. Führen Sie den Befehl sseapi-config join aus, um Ihren Salt-Master mit SaltStack Config Cloud zu verbinden.
    1. Wenn Sie Ihren Salt-Master zum ersten Mal mit SaltStack Config Cloud verbinden, führen Sie den folgenden Befehl aus und ersetzen Sie die Werte ssc-url und csp-url durch Ihre regionsspezifischen URLs.
      sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
    2. Wenn Sie sudo verwenden, führen Sie den folgenden Befehl aus:
      sudo CSP_API_TOKEN=<api token value> sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
    3. Wenn Sie den Verbindungsvorgang wiederholen müssen, führen Sie den Befehl sseapi-config join erneut aus und übergeben Sie das Flag --override-oauth-app.
      sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL> --override-oauth-app

      Das Flag --override-oauth-app löscht die OAuth-App, die zum Abrufen eines Zugriffstokens verwendet wird, und erstellt sie neu.

    Tabelle 1. Regionale URLs für SaltStack Config Cloud
    Region SSC-URL CSP-URL
    US (USA) https://ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    Deutschland https://de.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    Indien https://in.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    Kanada https://ca.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    Das folgende Codebeispiel veranschaulicht eine erfolgreiche Antwort in der Region „US“ (USA).
    2022-08-16 21:28:26 [INFO] SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12
    2022-08-16 21:28:26 [INFO] Retrieving CSP auth token.
    2022-08-16 21:28:27 [INFO] Creating new oauth app.
    2022-08-16 21:28:27 [INFO] Finished with oauth app [Salt Master App for master id:my-salt-master] in org [6bh70973-b1g2-716c-6i21-i9974a6gdc85].
    2022-08-16 21:28:29 [INFO] Added service role [saltstack:master] for oauth app [Salt Master App for master id:my-salt-master].
    2022-08-16 21:28:29 [INFO] Created pillar [CSP_AUTH_TOKEN].
    2022-08-16 21:28:29 [INFO] Updated master config. Please restart master for config changes to take effect.
    2022-08-16 21:28:29 [INFO] Updated master cloud.conf.
    2022-08-16 21:28:29 [INFO] Validating connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com]
    2022-08-16 21:28:29 [INFO] Successfully validated connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com]. Response: {'version': 'v8.9.0.5', 'vipVersion': '8.9.0'}
    2022-08-16 21:28:29 [INFO] Finished SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12
    

    Wenn die Ausführung dieses Befehls einen Fehler verursacht, finden Sie weitere Informationen unter Fehlerbehebung von SaltStack Config Cloud.

  3. Starten Sie den Salt-Master-Dienst neu.
    systemctl restart salt-master
  4. Wiederholen Sie diesen Vorgang für jeden Salt-Master.
    Hinweis: Nachdem Sie jeden Salt-Master mit SaltStack Config Cloud verbunden haben, können Sie das API-Token löschen. Es wird nur für die Verbindung Ihres Salt-Masters mit SaltStack Config Cloud benötigt.

Nachdem Sie den Befehl sseapi-config ausgeführt haben, wird für jeden Salt-Master eine OAuth-App in Ihrer Organisation erstellt. Salt-Master verwenden die OAuth-App, um ein Zugriffstoken zu erhalten, das an jede Anforderung an SaltStack Config Cloud angehängt wird. Sie können die Details der OAuth-App anzeigen, indem Sie Organisation > OAuth-Apps auswählen.

Mit dem Befehl werden auch Pfeilerdaten erstellt, die auf dem Salt-Master als CSP_AUTH_TOKEN bezeichnet werden. Pfeiler sind Strukturen von Daten, die auf dem Salt-Master gespeichert und an ein oder mehrere Minions weitergegeben werden, die für den Zugriff auf diese Daten berechtigt sind. Die Pfeilerdaten werden in /srv/pillar/csp.sls gespeichert und enthalten die Client-ID, den geheimen Schlüssel, Ihre Organisations-ID und die CSP-URL. Wenn Sie Ihren geheimen Schlüssel rotieren müssen, können Sie den Befehl sseapi-config join erneut ausführen.

Beispiel für Pfeilerdaten:

CSP_AUTH_TOKEN:
   csp_client_id: kH8wIvNxMJEGGmk7uCx4MBfPswEw7PpLaDh
   csp_client_secret: ebH9iuXnZqUOkuWKwfHXPjyYc5Umpa00mI9Wx3dpEMlrUWNy95
   csp_org_id: 6bh70973-b1g2-716c-6i21-i9974a6gdc85
   csp_url: https://console.cloud.vmware.com

Schritt 5: Akzeptieren von Salt-Master-Schlüsseln

Nachdem Sie Ihren Salt-Master mit SaltStack Config Cloud verbunden haben, müssen Sie den Salt-Master-Schlüssel in der Benutzeroberfläche von SaltStack Config Cloud akzeptieren.

Sie müssen über die Rolle Superuser in SaltStack Config Cloud verfügen, um den Salt-Master-Schlüssel zu akzeptieren. Weitere Informationen finden Sie unter Vorgehensweise zum Definieren von Benutzerrollen.

So akzeptieren Sie den Salt-Master-Schlüssel:

  1. Melden Sie sich bei der SaltStack Config Cloud-Benutzeroberfläche an.
  2. Klicken Sie in der oberen linken Navigationsleiste auf das Menü Menüsymbol und wählen Sie dann Verwaltung aus, um auf den Arbeitsbereich Verwaltung zuzugreifen. Klicken Sie auf die Registerkarte Master-Schlüssel.

    Wenn der Masterschlüssel nicht angezeigt wird, finden Sie weitere Informationen unter Fehlerbehandlung von SaltStack Config Cloud.

  3. Aktivieren Sie das Kontrollkästchen neben dem Master-Schlüssel, um ihn auszuwählen. Klicken Sie dann auf Schlüssel akzeptieren.
  4. Wenn Sie Ihre Salt-Minions bereits mit Ihrem Salt-Master verbunden haben, wird eine Warnung mit dem Hinweis angezeigt, dass Sie über Minion-Schlüssel verfügen, deren Akzeptierung aussteht. Um diese Minion-Schlüssel zu akzeptieren, wechseln Sie zu Minion-Schlüssel > Ausstehend.
    1. Aktivieren Sie die Kontrollkästchen neben Ihren Minions, um sie auszuwählen. Klicken Sie dann auf Schlüssel akzeptieren.

    Der Schlüssel ist jetzt akzeptiert. Nach einigen Sekunden wird der Minion auf der Registerkarte Akzeptiert und im Arbeitsbereich Ziele angezeigt.

Sie können sicherstellen, dass Ihr Salt-Master und Ihre Salt-Minions kommunizieren, indem Sie einen test.ping-Befehl in der SaltStack Config Cloud-Benutzeroberfläche ausführen. Weitere Informationen finden Sie unter Ausführen eines Ad-hoc-Auftrags über den Arbeitsbereich „Ziele“.