Dieses Beispiel enthält ein weiteres Beispiel für die Anwendung von Statusdateien zur schnellen Bereitstellung und Verwaltung von Konfigurationseinstellungen mithilfe von SaltStack Config. Dieses Beispiel weist eine etwas komplexere Statusdatei auf, mit der drei verschiedene Aufgaben verarbeitet werden (Installieren eines Diensts, Starten eines Diensts und Bereitstellen einer Datei auf dem Knoten, auf dem der Dienst ausgeführt wird).

Warnung:

Dieses Praxisbeispiel hat Änderungen an Ihrer Umgebung zur Folge. Aus diesem Grund ist bei der Durchführung Vorsicht geboten. Verwenden Sie dieses Beispiel nur mit Knoten in einer Test- oder Entwicklungsumgebung und keinesfalls mit Knoten in einer Produktionsumgebung.

Konfigurieren eines Apache-Webservers auf einem CentOS-Knoten (Linux)

So erstellen Sie eine Statusdatei, die einen Apache-Webserver konfiguriert und bereitstellt:

  1. Erstellen Sie eine neue Datei auf dem SaltStack Config-Dateiserver.
    1. Klicken Sie auf der SaltStack Config-Benutzeroberfläche im seitlichen Menü auf Konfiguration > Dateiserver.
    2. Wenn Sie den Arbeitsbereich „Dateiserver“ erstmalig öffnen, werden das Dateiverzeichnis und eine leere neue Datei angezeigt. Verwenden Sie diese leere Datei, um eine neue Datei zu erstellen.
  2. Verwenden Sie die leere neue Datei, um eine neue Statusdatei (SLS) zu erstellen.
    1. Klicken Sie auf das Menü Saltenv und wählen Sie base aus.
    2. Geben Sie neben dem nicht beschrifteten Menü den Dateipfad und den Dateinamen ein. Verwenden Sie /apache/centos.sls.
    3. Kopieren Sie im Dateitext den folgenden Code der Statusdatei (der die YAML-Syntax verwendet) und fügen Sie ihn ein:
      install_apache:
        pkg.installed:
          - name: httpd
          
      ensure_service_running:
        service.running:
          - name: httpd
          - watch:
            - pkg: install_apache
            
      default_html_page:
        file.managed:
          - name: /var/www/html/index.html
          - source: salt://apache/index.html
      
      Hinweis:
      Diese Statusdatei enthält drei Schritte zum Ausführen der drei verschiedenen Salt-Ausführungsmodule. Wenn diese Statusdatei auf einen Minion angewendet wird, führt SaltStack Config folgende Aufgaben durch:
      • Installieren von Apache (httpd) auf dem Minion.
      • Starten des Apache-Diensts.
      • Bereitstellen eines Beispiels einer HTML-Indexseite, die auf dem Minion gehostet wird.
    4. Speichern Sie die Statusdatei.
    5. Bestätigen Sie, dass die neue Datei im Dateiserververzeichnis unter base > apache > centos.sls angezeigt wird.
  3. Fügen Sie dem Dateiserver ein Beispiel einer HTML-Indexseite hinzu.
    1. Klicken Sie im Arbeitsbereich „Dateiserver“ auf die Schaltfläche Erstellen, um eine neue Datei hinzuzufügen.
    2. Klicken Sie auf das unbenannte Menü und wählen Sie base aus.
    3. Geben Sie neben dem nicht beschrifteten Menü den Dateipfad und den Dateinamen für diese Datei ein. Verwenden Sie /apache/index.html.
    4. Kopieren Sie im Dateitext den folgenden HTML-Code und fügen Sie ihn ein:
      <html>
      <head><title>SaltStack Config Example></title></head>
      <body>
      <h1>SaltStack Config Example</h1>
      
      Hello, world!
      
      </body>
      
    5. Speichern Sie die HTML-Datei.
    6. Bestätigen Sie, dass die neue Datei im Dateiserververzeichnis unter base > apache > index.html angezeigt wird.
  4. Erstellen Sie einen neuen Auftrag.
    1. Öffnen Sie den Arbeitsbereich „Aufträge“, indem Sie im seitlichen Menü auf Konfiguration > Aufträge klicken.
    2. Klicken Sie auf die Schaltfläche Auftrag erstellen.
      Hinweis:

      Wenn die Schaltfläche „Auftrag erstellen“ nicht angezeigt wird, verfügen Sie nicht über die Berechtigung zum Erstellen neuer Aufträge. Wenden Sie sich an Ihren vRealize Automation-Administrator, um Zugriff zu erhalten oder diesen Auftrag zum Abschließen des Lernprogramms in Ihrem Namen zu erstellen.

  5. Geben Sie auf dem Bildschirm „Neuer Auftrag“ die Details für den neuen Auftrag ein und speichern Sie den Auftrag.
    Feld Beispielwert

    Name

    Versehen Sie diesen Auftrag mit einem aussagekräftigen Namen, wie z. B. „Apache-Webserver konfigurieren“.

    Beschreibung

    Fügen Sie eine Beschreibung hinzu, um andere Benutzer über den Zweck dieses Auftrags zu informieren, wie z. B. „Konfiguriert und stellt einen Apache-Webserver auf einem avisierten CentOS-Knoten mit einem Beispiel einer HTML-Indexseite bereit“.

    Befehl

    Wählen Sie salt aus.

    Der Befehl salt wird für Aufträge verwendet, die für Minions ausgeführt werden.

    Ziele

    Wählen Sie keine Optionen in diesem Menü aus. Wenn Sie dieses Feld leer lassen, können Sie das Ziel zum Zeitpunkt der Auftragsausführung auswählen.

    Funktion

    Klicken Sie auf dieses Feld und beginnen Sie mit der Eingabe von state.apply, bis Sie dieses Modul auswählen können.

    In diesem Feld wählen Sie das Salt-Modul aus, das bei Auftragsausführung angewendet wird.

    Umgebungen

    Wählen Sie base im Menü aus.

    Status

    Wählen Sie die neu erstellte Statusdatei im Menü aus: apache.centos.

    Argumente

    Da dieses Modul keine Argumente akzeptiert, lassen Sie es leer.

  6. Nachdem Sie einen Auftrag erstellt haben, führen Sie ihn aus, indem Sie die Auftragsziele auswählen.
    1. Klicken Sie im seitlichen Menü auf Minions, um den Arbeitsbereich „Minions“ zu öffnen und Ihre Ziele anzuzeigen.
    2. Suchen Sie in der Tabelle Alle Minions nach dem CentOS-Minion, der für diesen Auftrag als Ziel verwendet werden soll. Aktivieren Sie das Kontrollkästchen neben diesem Minion und klicken Sie auf die Schaltfläche Auftrag ausführen.
    3. Klicken Sie im Dialogfeld „Auftrag ausführen“ auf das Menü Auftrag und wählen Sie den in den vorherigen Schritten erstellten Auftrag mit der Bezeichnung „Apache-Webserver konfigurieren“ aus. Sie können den Namen des Auftrags eingeben, um die Aufträge bei Bedarf zu filtern.
    4. Klicken Sie auf Jetzt ausführen.

      Wenn Sie den Auftrag erfolgreich ausgeführt haben, wird eine Benachrichtigung mit dem Hinweis angezeigt, dass der Auftrag erfolgreich gestartet wurde.

  7. Überprüfen Sie, ob der Auftrag abgeschlossen wurde, indem Sie im seitlichen Menü auf Aktivität > Abgeschlossen klicken.

    Wird Ihr Auftrag in dieser Tabelle nicht angezeigt, wird er möglicherweise noch ausgeführt. Sie können nach aktuell ausgeführten Aufträgen suchen, indem Sie auf Aktivität > In Bearbeitung klicken. Aktualisieren Sie Aktivität > Abgeschlossen so lange, bis Ihr Auftrag in der Tabelle angezeigt wird.

  8. Wenn Ihr Auftrag abgeschlossen ist, überprüfen Sie, ob die Indexseite auf Ihrem neu konfigurierten Webserver gehostet wird.
    1. Navigieren Sie im Webbrowser zur IP-Adresse des CentOS-Minions, den Sie im Auftrag als Ziel verwendet haben. Zum Auffinden der IP-Adresse Ihres Minions in SaltStack Config suchen Sie im Arbeitsbereich „Minions“ in der Spalte „IP-Adresse“ nach diesem Minion.
    2. Wenn Sie diese IP-Adresse eingeben, sollte Ihr Beispiel der HTML-Indexseite angezeigt werden.

Zusammenfassung der Ergebnisse und wichtige Informationen

Berücksichtigen Sie beim Überprüfen der Auftragsergebnisse und Indexseite Folgendes:

  • Statusdateien eignen sich zum schnellen Festlegen und Aktualisieren der Systemkonfiguration in beliebigem Umfang sowie zum Verhindern von Konfigurationsabweichungen in einem Infrastruktur-als-Code-Ansatz.
  • Mit SaltStack Config können Sie Statusdateien erstellen, die komplexe Elemente wie Variablen enthalten können. Hierbei handelt es sich um Werte, die sich je nach Bedingungen oder Informationen ändern können, die zum Zeitpunkt der Anwendung auf Ihr System an die Statusdatei übergeben werden.
  • Sie können auch Statusdateien erstellen, die Kennwörter aus einer privaten Bank abrufen können (die in SaltStack Config als „Pfeiler“ bezeichnet werden), um Anmeldedaten zu schützen und autorisierte Teammitglieder zu befähigen, Aufträge für Ressourcen auszuführen, auf die seitens der Teammitglieder Zugriff besteht.