Das Ziel dieses Anwendungsbeispiels besteht darin, den Salt-Minion-Dienst programmgesteuert auf einem Minion zu installieren, indem eine Linux-VM mit Ihrer SaltStack Config-Umgebung verbunden wird.

Voraussetzungen

Vor dem Bereitstellen eines Minions mithilfe der API in einer Linux-Umgebung müssen Sie über Folgendes verfügen:
  • eine SaltStack Config-Umgebung mit bereitgestelltem RaaS
  • einen installierten Salt-Master und einen installierten Salt-Minion
  • eine bereitgestellte Linux-VM

Prozedur

  1. Stellen Sie sicher, dass der Ordner etc/salt/cloud.deploy.d auf dem Salt-Master diese Dateien enthält.
    Liste der erforderlichen Dateien im Verzeichnis cloud.deploy.d auf einem Salt-Master

    Wenn die Dateien nicht angezeigt werden, wenden Sie sich an den Support.

    Hinweis: „xxxx“ im Dateinamen, wie z. B. „salt-xxxx-redhat-8-x86_64-amd64.tar.gz“, sollte mit der Version des Salt-Masters übereinstimmen. Überprüfen Sie die Version des Salt-Masters und führen Sie den Befehl salt-master -V auf dem Salt-Master aus.
  2. Führen Sie im Falle einer Air-Gap-Umgebung die folgenden Schritte aus:
    1. Öffnen Sie die RaaS-Konfigurationsdatei in /etc/raas/raas.
    2. Fügen Sie der Konfigurationsdatei folgende Zeilen hinzu:
      minion_deployment:
        airgap_install: true
    3. Führen Sie mit dem Befehl service raas restart einen Neustart des RaaS-Dienstes durch.
  3. Führen Sie zum Identifizieren des FQDN des Salt-Masters den Befehl salt saltmaster grains.get fqdn im Salt-Master-Terminal aus.
  4. Stellen Sie sicher, dass der FQDN für den Salt-Master konfiguriert ist, indem Sie den Befehl ping [FQDN] ausführen.
  5. Führen Sie den Befehl python3 aus, um Python zu öffnen.
  6. Führen Sie diesen API-Aufruf mithilfe eines SSEAPI-Clients mit den korrekten Anmeldedaten für Ihre Umgebung durch:
    from sseapiclient import APIClient
    
    client = APIClient('https://<master-ip>', '<ssc-username>', '<sscpassword>', ssl_validate_cert=False)
    
    
    client.api.minions.deploy_minion(
    
     master_id = '<master-id>',
    
     host_name_ip = '<prospective minion’s ip>',
    
     os = ‘<prospective minion’s os>’,
    
     minion_id = '<desired-minion-name-for-prospective-minion>',
    
     username = '<ssh-username-for-prospective-minion>', 
    
     password = '<ssh-password-for-prospective-minion>',
    
    )

    Die Funktion deploy.minion wird in Ihrer SaltStack Config-Umgebung ausgeführt. Sie können überprüfen, ob der Auftrag auf der Registerkarte Aktivität in der SaltStack Config-Benutzeroberfläche ausgeführt wird.

Ergebnisse

Der Minion wurde erfolgreich aus Ihrer Linux-Umgebung und ihrem API-Aufruf bereitgestellt und konfiguriert.

Nächste Maßnahme

Stellen Sie sicher, dass das Minion erfolgreich bereitgestellt wurde, indem Sie einen Befehl vom Typ test.ping für das Minion im Fenster Befehl ausführen oder die Befehle \* test.ping und \* test.versions im Salt-Master-Befehlsfenster ausführen.