Einer der Hauptgründe für die Verwendung von SaltStack Config besteht in der Verbesserung der Konfigurationsverwaltung des Systems. In SaltStack Config können Sie mithilfe von Aufträgen häufige Aufgaben und Verfahren, die Sie oder Ihr Team regelmäßig durchführen, vereinfachen und automatisieren. Die Verwendung von Aufträgen für die Konfigurationsverwaltung senkt den Zeitaufwand Ihres Teams für die manuelle Installation, Konfiguration, Überwachung und Wartung der Knoten im System. Dadurch wird auch sichergestellt, dass sich Ihr System durchgehend im gewünschten Zustand befindet.
Das Erstellen und Ausführen von Aufträgen ist ein mehrstufiger Prozess, der die Verwendung verschiedener Tools und Arbeitsbereiche in SaltStack Config erfordert. Das folgende Diagramm enthält einen Überblick über den gesamten Auftragsworkflow:
Jeder Schritt wird in den folgenden Abschnitten beschrieben:
Erstellen von Zielen
Bevor Sie mit der Ausführung von Aufträgen beginnen können, müssen Sie Ziele erstellen und definieren. Ein Ziel ist die Gruppe von Minions auf mindestens einem Salt-Controller, auf den der Salt-Befehl eines Auftrags angewendet wird. Ein Salt-Controller kann auch wie ein Minion verwaltet werden und als Ziel fungieren, wenn er den Minion-Dienst ausgeführt. Ein Ziel legt also fest, auf welchen Knoten der Auftrag jeweils ausgeführt wird. Sie können Ziele mit einer einfachen Liste von Minions erstellen, oder Sie können komplexere Ziele basierend auf den grundlegenden Eigenschaften Ihrer Minions erstellen, z. B. deren Betriebssystem oder Servertyp.
Ziele erstellen Sie im Arbeitsbereich „Minions“. Weitere Informationen finden Sie unter Minions.
Erstellen von Aufträgen
Um einen Auftrag ausführen zu können, müssen Sie ihn zunächst erstellen. Aufträge werden verwendet, um Remoteausführungsaufgaben auszuführen, Zustände anzuwenden und Salt-Runner zu starten. Mit anderen Worten, der Auftrag entscheidet darüber, welche Aufgaben, Prozesse oder Zustandsdateien auf die jeweiligen Zielknoten anzuwenden sind.
Wenn Sie eine bestimmte Aufgabe ausführen müssen, können Sie zwar jederzeit Befehle für Ihre Minions ausführen, aber es ist besser, einen Auftrag zu erstellen, um die genauen Prozesse oder Zustände zu erfassen, die auf Ihre Minions anzuwenden sind. Mit Aufträgen stellen Sie sicher, dass Sie die Verfahren einheitlich anwenden und für die spätere Wiederverwendung speichern.
Wenn Sie einen Auftrag erstellen, können Sie das Ziel undefiniert lassen. Sie können das Ziel dann später anwenden, wenn der Auftrag ausgeführt wird.
Aufträge erstellen Sie im Arbeitsbereich „Aufträge“. Weitere Informationen finden Sie unter Aufträge.
Definieren von Rollen
Um die Sicherheit des Systems aufrechtzuerhalten, sollte Ihr Team nur Zugriff auf die spezifischen Knoten oder Aufträge erhalten, für die es eine Zugriffsberechtigung besitzt. Dieser Ansatz wird im Allgemeinen als rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) bezeichnet. RBAC bedeutet, dass der Zugriff auf Ressourcen basierend auf der jeweiligen Rolle in Ihrem Team beschränkt werden sollte. Teammitgliedern sollte nur der Zugriff auf die Ressourcen ermöglicht werden, die sie zur Erledigung ihrer Aufgaben auch wirklich benötigen.
Sie können Rollen und Berechtigungen nativ in SaltStack Config definieren. Oder Sie können den Zugriff auf Ziele und Aufträge dem RBAC-System Ihrer Organisation zuordnen, z. B. LDAP-basierten Systemen wie Active Directory oder SAML-basierten Systemen wie Google.
Weitere Informationen finden Sie unter:
Ausführen von Aufträgen
Bevor Sie Aufträge ausführen können, müssen Sie die folgenden Details für den jeweiligen Auftrag definieren:
- Ziel
- Funktion (der auszuführende Befehl oder der anzuwendende Status)
- Berechtigungen (wer den Auftrag für das Ziel ausführen darf)
Nachdem Sie diese Einstellungen festgelegt haben, können Sie Aufträge nach einem regelmäßigen Zeitplan oder nur nach Bedarf ausführen. In der Regel werden Aufträge, die nur bei Bedarf ausgeführt werden, als Ad-hoc-Aufträge bezeichnet.
Erstellen eines Zeitplans
Sie können Aufträge so planen, dass sie zu einem bestimmten Zeitpunkt (z. B. in einem geplanten Wartungsfenster) oder in regelmäßig wiederholten Intervallen ausgeführt werden.
Zeitpläne erstellen Sie im Arbeitsbereich „Zeitpläne“. Weitere Informationen finden Sie unter Zeitpläne.
Ausführen von Ad-hoc-Aufträgen
Sie können Ad-hoc-Aufträge entweder über den Arbeitsbereich „Minions“ oder den Arbeitsbereich „Aufträge“ ausführen.
Weitere Informationen finden Sie unter:
Überprüfen von Auftragsstatus und -ergebnis
Während der Ausführung der Aufgabe oder nachdem diese abgeschlossen wurde, können Sie den Auftragsstatus und das detaillierte Ergebnis im Arbeitsbereich „Aktivität“ überprüfen. Weitere Informationen finden Sie unter Aktivität.