Der Highstate-Arbeitsbereich wird verwendet, um die Konfiguration Ihres Systems zu verwalten und zu überwachen. Sie können eine historische Ansicht der Highstate-Ausführungen in Ihrer Infrastruktur anzeigen, um Einblicke und Trends im Zusammenhang mit Konfigurationsabweichungen über alle Minions hinweg zu erhalten.
Als Systemadministrator wissen Sie, wie wichtig es ist, die Konfiguration Ihres Systems konform zu halten, alle Systeme mit Fehlern oder Änderungen zu identifizieren und diese Systeme so schnell wie möglich wieder konform zu machen. Der Highstate-Arbeitsbereich bietet wertvolle Einblicke in die Konfiguration Ihres Systems und enthält Tools, die Ihnen bei der Verwaltung von Konfigurationsabweichungen helfen können.
Was ist Highstate?
Statt jeden Minion oder jede Anwendung einzeln manuell zu konfigurieren, können Sie mithilfe des Statusverwaltungssystems von Automation Config Statusdateien erstellen, die auf viele Minions gleichzeitig angewendet werden können. Diese Statusdateien können eine Reihe von Anweisungen enthalten, die Automation Config darüber informieren, welche Vorgänge auf dem Minion in welcher Reihenfolge ausgeführt werden sollen. Darüber hinaus stellt das Statusverwaltungssystem sicher, dass jeder Minion ordnungsgemäß und möglichst effizient konfiguriert wird.
Wenn Sie jedoch über Hunderte von Statusdateien und Tausende von Minions verfügen, nimmt die Ausführung jeder einzelnen Statusdatei Zeit in Anspruch. Eine schnellere, intuitivere Möglichkeit, Statusdateien auf Ihre Minions anzuwenden, ist die Ausführung von Highstate. Wenn Sie Highstate ausführen, wird die state.highstate
-Funktion aufgerufen. Die state.highstate
-Funktion wendet alle Salt-Zustände an, die in einer top.sls
-Datei beschrieben sind, die Sie auf Ihrem Salt-Master erstellen.
- Sie richten Ihre Infrastruktur zum ersten Mal ein und müssen Konfigurationen in Ihrer Umgebung standardisieren.
- Sie verfügen über kritische Systeme, die den Vorschriften entsprechen müssen. Der Arbeitsbereich Zeitpläne kann in Automation Config verwendet werden, um einen Highstate-Auftrag zu planen, der einmal pro Woche ausgeführt wird, und sicherzustellen, dass Ihre Maschinen ordnungsgemäß konfiguriert sind.
Die top.sls
-Datei ordnet Salt-Zustände einer Gruppe von Zielen zu und besteht aus der auszuführenden Salt-Umgebung, den Zielkriterien und den Statusdateien. Die Minions laden die top.sls
-Datei herunter und versuchen, die darin enthaltenen Ausdrücke anzupassen. Wenn ein Minion mit dem Ausdruck übereinstimmt, werden die angegebenen Statusdateien ausgeführt. Beispielsweise können Sie Ihre top.sls
-Datei so organisieren, dass bestimmte Statusdateien auf alle Minions, einige auf CentOS-Minions und andere auf Minions angewendet werden, deren IDs die Zeichenfolge web
enthalten.
base: '*': - vim - scripts 'os:CentOS': - match: grain - centos-config '*web*': - apache - django
Wenn eine Konfiguration während der Ausführung von Highstate abgewichen ist, versetzt Automation Config die Minions und Anwendungen wieder in den konformen Konfigurationsstatus. Wenn eine Konfiguration geändert werden muss, kann Automation Config diese Änderungen schnell auf den betroffenen Minions bereitstellen. Sie können dann den Highstate-Arbeitsbereich verwenden, um zu sehen, welche Änderungen während der letzten Highstate-Ausführung vorgenommen wurden. Diagramme und Berichte im Arbeitsbereich helfen auch, die Änderungen in Ihrer Infrastruktur zu visualisieren.
Testen Sie Ihre Änderungen in einer Entwicklungs- oder Staging-Umgebung. Wenn Ihre Zustände erfolgreich sind, können Sie sie in Ihrer Produktionsumgebung anwenden.
Sie können Highstate auch im Testlaufmodus ausführen. Wenn Sie Highstate im Testlaufmodus ausführen, generiert Automation Config einen Auftragsrücklauf, der anzeigt, welche Änderungen an jedem Minion vorgenommen werden würden, wenn die Statusangaben angewendet würden. Weitere Informationen zum Testlaufmodus finden Sie unter Vorgehensweise zum Erstellen von Aufträgen.
Sie können Highstate auch im Testlaufmodus ausführen. Wenn Sie Highstate im Testlaufmodus ausführen, generiert Automation Config einen Auftragsrücklauf, der anzeigt, welche Änderungen an jedem Minion vorgenommen werden würden, wenn die Statusangaben angewendet würden. Weitere Informationen zum Testlaufmodus finden Sie unter Vorgehensweise zum Erstellen von Aufträgen.
Sie müssen die top.sls
-Datei auf Ihrem Salt-Master erstellen und konfigurieren, bevor Sie Highstate zum ersten Mal ausführen. Im Salt-Benutzerhandbuch unter Organisieren von Zuständen finden Sie weitere Informationen zu Salt-Zuständen und der Datei top.sls
.
Highstate ausführen
Nachdem Sie die top.sls
-Datei konfiguriert haben, können Sie Ihren ersten Highstate ausführen.
So führen Sie Highstate aus:
- Klicken Sie im Highstate-Arbeitsbereich auf die Registerkarte Zustände.
- Klicken Sie auf Highstate ausführen.
- Wählen Sie im Dialogfeld ein Ziel aus, auf dem Highstate ausgeführt werden soll.
- Klicken Sie auf Highstate ausführen.
Nach Abschluss der Highstate-Ausführung können Sie die Ergebnisse Ihrer ersten Highstate-Ausführung auf mehreren Ebenen anzeigen:
- Globale Ebene: Highstate-Rückgaben in Ihrer Umgebung anzeigen
- Zielebene: Highstate-Rückgaben nach Zielgruppe anzeigen
- Minion-Ebene: Highstate-Rückgaben nach Minion
Globale Ebene
Sie können die Highstate-Übereinstimmung in Ihrer Umgebung über die Registerkarten Status und Minions anzeigen. Diese globale Ebene hilft Ihnen, den Gesamtstatus der Konfiguration Ihres Systems seit der letzten Highstate-Ausführung zu bewerten.
Auf allen Ebenen werden die neuesten Highstate-Daten von jedem Minion abgerufen, unabhängig davon, ob die Daten aus einer aktuellen Highstate-Ausführung oder aus vielen Highstate-Ausführungen stammen. Sie können das Dropdown-Menü Grenzwert nach auf der Registerkarte Zustände verwenden, um sicherzustellen, dass im Arbeitsbereich Highstate nur die neuesten Daten angezeigt werden.
Die globale Ebene enthält die folgenden Informationen für alle Zustände:
Begriff | Beschreibung |
---|---|
Status | Die ID-Deklaration für den Status, z. B. common-centos-packages . |
SLS-Datei | Die Datei, die die Statusdeklaration enthält, z. B. centos-config.sls . |
Minions | Die Anzahl der Minions, die den Status ausgeführt haben. |
Fehler | Gibt an, ob die Statusausführung fehlgeschlagen ist. Der Status schlägt aus vielen Gründen fehl. Beispiel:
Die Spalte Kommentare enthält weitere Details zur Ursache des Statusfehlers. |
Erfolgreich | Gibt den Gesamtprozentsatz der Statusangaben an, die erfolgreich ausgeführt wurden. |
Geändert | Gibt den Gesamtprozentsatz der Minions an, die Änderungen für jeden Status gemeldet haben. |
Änderungen | Gibt an, ob die letzte Highstate-Ausführung zu Änderungen geführt hat. Die Spalte Kommentare enthält weitere Details zu den vorgenommenen Änderungen. |
Durchschnittl. Dauer | Durchschnittliche Dauer der Statusausführung in Millisekunden (ms). |
Umgebungen | Die Salt-Umgebung, die die Statusdatei enthält, z. B. base oder dev . |
JID | Die Auftragsidentifikationsnummer für die Ausführung von state.highstate . |
Wenn Sie auf der Registerkarte Status auf einen Status klicken, können Sie die neueste Highstate-Ausführung auf jedem Ihrer Salt-Minions anzeigen.
Die folgenden Informationen werden für jeden Status bereitgestellt:
Begriff | Beschreibung |
---|---|
Minion-ID | Die ID für den Minion, der den Status ausgeführt hat. |
Status | Gibt an, ob die Statusausführung erfolgreich war oder fehlgeschlagen ist. |
Änderungen | Gibt an, ob die letzte Highstate-Ausführung zu Änderungen geführt hat. Die Spalte Kommentare enthält weitere Details zu den vorgenommenen Änderungen. |
Umgebung | Die Salt-Umgebung, die die Statusdatei enthält, z. B. base oder dev . |
Cluster/Master | Der Salt-Master, der dem Minion zugeordnet ist. |
Dauer | Dauer der Statusausführung in Millisekunden (ms). |
Kommentar | Eine Meldung, die weitere Einzelheiten über den Erfolg oder Misserfolg der Statusausführung liefert. |
JID | Die Auftragsidentifikationsnummer für die Ausführung von state.highstate . |
Sie können auch einen Ad-hoc-Highstate-Auftrag auf globaler Ebene ausführen:
- Öffnen Sie in Automation Config den Arbeitsbereich Highstate.
- Klicken Sie auf Highstate ausführen.
- Wählen Sie im Dialogfeld ein Ziel aus, auf dem Highstate ausgeführt werden soll.
- Klicken Sie auf Highstate ausführen.
Sie können den Fortschritt des Auftrags auf der Registerkarte Aktivität des Highstate-Arbeitsbereichs überwachen. Nach Abschluss des Auftrags können Sie die aktualisierten Berichte und Details der Highstate-Ausführung auf globaler, Ziel- oder Minion-Ebene anzeigen.
Zielebene
Um Highstate-Rückgaben auf der Zielebene anzuzeigen, können Sie den Ziele-Arbeitsbereich öffnen. Wenn Sie auf ein Ziel klicken, werden alle vorherigen Statusausführungen für alle Minions in der Zielgruppe angezeigt.
Die Zielebene enthält die folgenden Informationen zu jedem Minion in der Zielgruppe:
Begriff | Beschreibung |
---|---|
Minion-ID | Die ID des Minions. |
Statusausführungen | Die Anzahl der Statusausführungen für einen Minion. |
Fehler | Gibt an, ob die Statusausführung fehlgeschlagen ist. Der Status kann aus vielen Gründen fehlschlagen. Beispiel:
Die Spalte Kommentare enthält weitere Details zur Ursache des Statusfehlers. |
Erfolgreich | Gibt den Gesamtprozentsatz der Statusangaben an, die erfolgreich ausgeführt wurden. |
Geändert | Gibt den Gesamtprozentsatz der Statusangaben an, bei denen es zu Änderungen kam. |
Änderungen | Gibt an, ob die letzte Highstate-Ausführung zu Änderungen geführt hat. Die Spalte Kommentare enthält weitere Details zu den vorgenommenen Änderungen. |
Dauer | Dauer der Statusausführung in Millisekunden (ms). |
Umgebungen | Die Salt-Umgebung, die die Statusdatei enthält, z. B. base oder dev . |
JID | Die Auftragsidentifikationsnummer für die Ausführung von state.highstate . |
So führen Sie einen Ad-hoc-Highstate-Auftrag auf globaler Ebene aus:
- Öffnen Sie in Automation Config den Arbeitsbereich Ziele.
- Wählen Sie die Zielgruppe aus, auf der Sie Highstate ausführen möchten.
- Klicken Sie auf die Registerkarte Highstate.
- Klicken Sie auf Highstate ausführen.
- Bestätigen Sie im Dialogfeld die Zielgruppe, für die Sie Highstate ausführen möchten.
- Klicken Sie auf Highstate ausführen.
Minion-Ebene
Um die Highstate-Rückgaben auf der Ebene der Minions anzuzeigen, können Sie die Registerkarte Minions im Highstate-Arbeitsbereich öffnen.
Die Minion-Ebene bietet die folgenden Informationen für alle Minions:
Begriff | Beschreibung |
---|---|
Minion-ID | Die ID des Minions. |
Statusausführungen | Die Anzahl der Statusausführungen für einen Minion. |
Fehler | Gibt an, ob die Statusausführung fehlgeschlagen ist. Der Status kann aus verschiedenen Gründen fehlschlagen:
Die Spalte Kommentare enthält weitere Details zur Ursache des Statusfehlers. |
Erfolgreich | Gibt den Gesamtprozentsatz der Statusangaben an, die erfolgreich ausgeführt wurden. |
Geändert | Gibt den Gesamtprozentsatz der Statusangaben an, bei denen es zu Änderungen für den Minion kam. |
Änderungen | Gibt an, ob die letzte Highstate-Ausführung zu Änderungen geführt hat. |
Wenn Sie auf eine Minion-ID klicken, können Sie alle vorherigen Statusausführungen für einen Minion anzeigen.
Die folgenden Informationen werden bereitgestellt:
Begriff | Beschreibung |
---|---|
Erfolgreich | Gibt an, ob die Statusausführung erfolgreich war oder fehlgeschlagen ist. |
Änderungen | Gibt an, ob die letzte Highstate-Ausführung zu Änderungen geführt hat. |
Umgebung | Die Salt-Umgebung, die die Statusdatei enthält, z. B. base oder dev . |
SLS-Datei | Die Datei, die die Statusdeklaration enthält, z. B. centos-config.sls . |
Status | Die ID-Deklaration für den Status, z. B. common-centos-packages . |
Dauer | Dauer der Statusausführung in Millisekunden (ms). |
Kommentar | Eine Meldung, die weitere Einzelheiten über den Erfolg oder Misserfolg der Statusausführung liefert. |
JID | Die Auftragsidentifikationsnummer für die Ausführung von state.highstate . |
So führen Sie einen Ad-hoc-Highstate-Auftrag auf Minion-Ebene aus:
- Öffnen Sie in Automation Config den Arbeitsbereich Highstate.
- Wählen Sie den Minion oder die Minions aus, auf der oder denen Sie Highstate ausführen möchten.
- Klicken Sie auf Highstate ausführen.
- Klicken Sie im Dialogfeld auf Highstate ausführen.
Highstate-Aktivität anzeigen
Die Registerkarte Aktivität im Highstate-Arbeitsbereich wird verwendet, um den Status der Highstate-Ausführungen zu überwachen. Auf der Registerkarte Aktivität werden viele Ereignisse und Aktivitäten angezeigt, z. B. geplante Aufträge oder Ad-hoc-Aufträge.
Das interaktive Diagramm auf der Registerkarte Aktivität enthält mehrere Berichte, die einen Überblick über vorherige Highstate-Ausführungen in Ihrer Automation Config-Umgebung bieten. Sie können die Ergebnisse der letzten 24 Stunden bis zu den letzten 30 Tagen für jeden Bericht anzeigen.
Bericht | Beschreibung |
---|---|
Minion: durchschnittliche Dauer | Zeigt die durchschnittliche Dauer für Statusausführungen für alle Minions über einen bestimmten Zeitraum hinweg an. |
Minions: Änderungen oder keine Änderungen | Zeigt die Anzahl der Minions an, die Änderungen gemeldet haben, im Vergleich zu Minions, die über einen bestimmten Zeitraum hinweg keine Änderungen gemeldet haben. |
Minions: erfolgreich oder fehlgeschlagen | Zeigt die Anzahl der Minions an, die erfolgreiche Statusausführungen gemeldet haben, im Vergleich zu Minions, die fehlgeschlagene Statusausführungen über einen bestimmten Zeitraum hinweg gemeldet haben. |
Satusangaben: Änderungen oder keine Änderungen | Zeigt über einen bestimmten Zeitraum hinweg die Anzahl der Statusangaben, die zu Änderungen geführt haben, im Vergleich zu den Statusangaben, die nicht zu Änderungen geführt haben, an. |
Satusangaben: erfolgreich oder fehlgeschlagen | Zeigt die Anzahl der erfolgreichen Statusangaben im Vergleich zu den fehlgeschlagenen Statusangaben an. |
Die Registerkarte Aktivität enthält drei Abschnitte, in denen die Aufträge nach Status sortiert sind:
- Abgeschlossen: Wird zur Überwachung des Status von abgeschlossenen Highstate-Aufträgen verwendet.
- In Bearbeitung: Wird zur Überwachung des Status von Highstate-Aufträgen verwendet, die derzeit ausgeführt werden.
- Bevorstehend: Wird zur Überwachung des Status von bevorstehenden Highstate-Aufträgen verwendet.
Die Tabelle auf der Registerkarte Aktivität enthält Informationen zu Status, Ursprung, Zeitplan (sofern verfügbar), Auftrag, Zielgruppe und zugehöriger Auftrags-ID (JID). Sie können die Spalten nach Bedarf filtern.