L'area di lavoro Highstate viene utilizzata per gestire e monitorare la configurazione del sistema. È possibile visualizzare una visualizzazione cronologica delle esecuzioni dell'highstate nell'infrastruttura per visualizzare approfondimenti e tendenze relative allo scostamento della configurazione in tutti i minion.

Gli amministratori di sistema sono consapevoli dell'importanza di mantenere la conformità della configurazione del sistema, identificare eventuali sistemi con errori o modifiche e riportare di nuovo in conformità i sistemi il più rapidamente possibile. L'area di lavoro Highstate fornisce approfondimenti preziosi sulla configurazione del sistema e include strumenti che possono contribuire a gestire lo scostamento della configurazione.

Che cos'è l'highstate?

Anziché configurare manualmente ogni minion e ogni applicazione uno alla volta, è possibile utilizzare il sistema di gestione dello stato Automation Config per creare file di stato che è possibile applicare a molti minion contemporaneamente. Questi file di stato possono includere una serie di istruzioni che indicano a Automation Config quali operazioni eseguire nel minion e in quale ordine. Il sistema di gestione dello stato garantisce inoltre che ogni minion sia configurato correttamente e nel modo più efficiente possibile.

Tuttavia, se sono presenti centinaia di file di stato e migliaia di minion, l'esecuzione di ogni file di stato richiede tempo. Un modo più rapido e intuitivo per applicare i file di stato ai minion consiste nell'eseguire l'highstate. Quando si esegue l'highstate, viene richiamata la funzione state.highstate. La funzione state.highstate applica tutti gli stati di Salt descritti in un file top.sls creato nel Salt Master.

L'esecuzione dell'highstate può essere utile negli casi seguenti:
  • Si sta configurando l'infrastruttura per la prima volta e occorre standardizzare le configurazioni nell'ambiente.
  • Si dispone di sistemi critici che devono rimanere conformi. L'area di lavoro Pianificazioni in Automation Config può essere utilizzata per pianificare un processo highstate che viene eseguito una volta alla settimana per garantire che le macchine siano configurate correttamente.

Il file top.sls mappa gli stati di Salt a un gruppo di destinazioni ed è composto dall'ambiente Salt, dai criteri di destinazione e dai file di stato da eseguire. I minion scaricano il file top.sls e tentano di trovare le espressioni corrispondenti. Se un minion corrisponde all'espressione, esegue i file di stato specificati. Ad esempio, è possibile organizzare il file top.sls per applicare determinati file di stato a tutti i minion, alcuni ai minion CentOS e altri ai minion i cui ID contengono la stringa web.

base: 
  '*':
    - vim
    - scripts
  'os:CentOS': 
    - match: grain 
    - centos-config 
  '*web*':
    - apache
    - django

Quando si esegue un highstate, se una configurazione ha subito uno scostamento, Automation Config può riportare i minion e le applicazioni al proprio stato di configurazione conforme. Se è necessario modificare una configurazione, Automation Config distribuisce rapidamente tali modifiche ai minion interessati. È quindi possibile utilizzare l'area di lavoro Highstate per visualizzare le modifiche apportate durante l'ultima esecuzione dell'highstate. Anche i grafici e i report nell'area di lavoro consentono di visualizzare le modifiche nell'infrastruttura.

È consigliabile testare le modifiche in un ambiente di sviluppo o in un ambiente di staging. Se gli stati di vengono applicati correttamente, è possibile applicarli nell'ambiente di produzione.

È inoltre possibile eseguire highstate in modalità test controllato. Se si esegue highstate in modalità test controllato, Automation Config genera la restituzione di un processo che mostra le modifiche da apportare a ogni minion se gli stati sono stati applicati. Per ulteriori informazioni sulla modalità test controllato, vedere Come creare processi.

È inoltre possibile eseguire highstate in modalità test controllato. Se si esegue highstate in modalità test controllato, Automation Config genera la restituzione di un processo che mostra le modifiche da apportare a ogni minion se gli stati sono stati applicati. Per ulteriori informazioni sulla modalità test controllato, vedere Come creare processi.

Importante:

È necessario creare e configurare il file top.sls nel Salt Master prima di eseguire l'highstate per la prima volta. Per ulteriori informazioni sugli stati di Salt e sul file top.sls, vedere Organizzazione degli stati nella guida per l’utente di Salt.

Esecuzione dell'highstate

Dopo aver configurato il file top.sls, è possibile eseguire il primo highstate.

Per eseguire l'highstate:

  1. Fare clic sulla scheda Stati nell'area di lavoro Highstate.
  2. Fare clic su Esegui highstate.
  3. Nella finestra di dialogo, selezionare la destinazione in cui eseguire l'highstate.
  4. Fare clic su Esegui highstate.

Al termine dell'esecuzione dell'highstate, è possibile visualizzare i risultati dell'esecuzione del primo highstate a diversi livelli:

  • Livello globale: visualizzazione dei risultati dell'highstate nell'ambiente
  • Livello di destinazione: visualizzazione dei risultati dell'highstate in base al gruppo di destinazione
  • Livello dei minion: visualizzazione dei risultati dell'highstate in base al minion

Livello globale

È possibile visualizzare la conformità dell'highstate nell'ambiente dalla scheda Stati e dalle schede Minion. Questo livello globale consente di valutare lo stato generale della configurazione del sistema dalla più recente esecuzione dell'highstate.

Area di lavoro Highstate nell'interfaccia utente del SaltStack Config dopo un'esecuzione di highstate recente

In tutti i livelli, i dati dell'highstate più recenti vengono recuperati da ogni minion, sia che i dati provengano da una recente esecuzione dell'highstate o da molte esecuzioni dell'highstate. È possibile utilizzare il menu a discesa Limite per nella scheda Stati per assicurarsi che nell'area di lavoro Highstate vengano visualizzati solo i dati più recenti.

Il livello globale include le informazioni seguenti per tutti gli stati:

Termine Descrizione
Stato Dichiarazione dell'ID per lo stato, ad esempio common-centos-packages.
File SLS File che contiene la dichiarazione di stato, ad esempio centos-config.sls.
Minion Numero di minion che hanno eseguito lo stato.
Errori Indica se l'esecuzione dello stato non è riuscita. Lo stato non riesce per molti motivi. Ad esempio:
  • Un file richiesto non esiste o non è accessibile a causa delle autorizzazioni del file system.
  • Una risorsa o un servizio di rete non è disponibile.
  • Esiste un conflitto di dipendenze del pacchetto, quindi non è possibile applicare lo stato.

La colonna Commenti include ulteriori dettagli sulla causa dell'errore dello stato.

Completato Indica la percentuale complessiva di stati che hanno avuto esito positivo.
Modificato Indica la percentuale complessiva di minion che ha segnalato modifiche per ogni stato.
Modifiche Indica se l'esecuzione dell'highstate più recente ha restituito modifiche.

La colonna Commenti fornisce ulteriori dettagli sulle modifiche apportate.

Durata media Durata media dell'esecuzione dello stato in millisecondi (ms).
Ambienti Ambiente Salt che contiene il file di stato, ad esempio base o dev.
JID Numero di identificazione del processo per l'esecuzione state.highstate.

Se si fa clic su uno stato nella scheda Stati, è possibile visualizzare l'esecuzione dell'highstate più recente in ciascuno dei minion Salt.

Tutte le esecuzioni dell'highstate precedenti per lo stato della pagina HTML predefinito in SaltStack Config

Per ogni stato vengono fornite le informazioni seguenti:

Termine Descrizione
ID minion ID del minion che ha eseguito lo stato.
Stato Indica se l'esecuzione dello stato è riuscita o meno.
Modifiche Indica se l'esecuzione dell'highstate più recente ha restituito modifiche.

La colonna Commenti fornisce ulteriori dettagli sulle modifiche apportate.

Ambiente Ambiente Salt che contiene il file di stato, ad esempio base o dev.
Cluster/Master Salt Master associato al minion.
Durata Durata dell'esecuzione dello stato in millisecondi (ms).
Commento Messaggio che fornisce ulteriori dettagli sull'esito positivo o negativo dell'esecuzione dello stato.
JID Numero di identificazione del processo per l'esecuzione state.highstate.

È inoltre possibile eseguire un processo highstate ad hoc a livello globale:

  1. In Automation Config, aprire l'area di lavoro Highstate.
  2. Fare clic su Esegui highstate.
  3. Nella finestra di dialogo, selezionare la destinazione in cui eseguire l'highstate.
  4. Fare clic su Esegui highstate.

È possibile monitorare l'avanzamento del processo nella scheda Attività dell'area di lavoro Highstate. Una volta completato il processo, è possibile visualizzare i report aggiornati e i dettagli dell'esecuzione dell'highstate a livello globale, di destinazione o di minion.

Livello di destinazione

Per visualizzare i risultati dell'highstate a livello di destinazione, è possibile aprire l'area di lavoro Destinazioni. Se si fa clic su una destinazione, è possibile visualizzare tutte le esecuzioni dello stato precedenti per tutti i minion nel gruppo di destinazione.

Esecuzioni dell'highstate precedenti per un gruppo di destinazione CentOS in SaltStack Config

Il livello di destinazione fornisce le seguenti informazioni su ogni minion nel gruppo di destinazione:

Termine Descrizione
ID minion ID del minion.
Esecuzioni stato Numero di esecuzioni dello stato per un minion.
Errori Indica se l'esecuzione dello stato non è riuscita. Lo stato potrebbe non riuscire per molti motivi. Ad esempio:
  • Un file richiesto non esiste o non è accessibile a causa delle autorizzazioni del file system.
  • Una risorsa o un servizio di rete non è disponibile.
  • Esiste un conflitto di dipendenze del pacchetto, quindi non è possibile applicare lo stato.

La colonna Commenti include ulteriori dettagli sulla causa dell'errore dello stato.

Completato Indica la percentuale complessiva di stati che hanno avuto esito positivo.
Modificato Indica la percentuale complessiva di stati con modifiche.
Modifiche Indica se l'esecuzione dell'highstate più recente ha restituito modifiche.

La colonna Commenti fornisce ulteriori dettagli sulle modifiche apportate.

Durata Durata dell'esecuzione dello stato in millisecondi (ms).
Ambienti Ambiente Salt che contiene il file di stato, ad esempio base o dev.
JID Numero di identificazione del processo per l'esecuzione state.highstate.

Per eseguire un processo highstate ad hoc a livello di destinazione:

  1. In Automation Config, aprire l'area di lavoro Destinazioni.
  2. Selezionare il gruppo di destinazione in cui si desidera eseguire l'highstate.
  3. Fare clic sulla scheda Highstate.
  4. Fare clic su Esegui highstate.
  5. Nella finestra di dialogo, confermare il gruppo di destinazione in cui eseguire l'highstate.
  6. Fare clic su Esegui highstate.

Livello dei minion

Per visualizzare i risultati dell'highstate a livello di minion, è possibile aprire la scheda Minion l'area di lavoro Highstate.

Risultati dell'highstate per tutti i minion in un ambiente SaltStack Config

Il livello dei minion fornisce le informazioni seguenti per tutti i minion:

Termine Descrizione
ID minion ID del minion.
Esecuzioni stato Numero di esecuzioni dello stato per un minion.
Errori Indica se l'esecuzione dello stato non è riuscita. Lo stato potrebbe non riuscire per diversi motivi:
  • Un file richiesto non esiste o non è accessibile a causa delle autorizzazioni del file system.
  • Una risorsa o un servizio di rete non è disponibile.
  • Esiste un conflitto di dipendenze del pacchetto, quindi non è possibile applicare lo stato.

La colonna Commenti include ulteriori dettagli sulla causa dell'errore dello stato.

Completato Indica la percentuale complessiva di stati che hanno avuto esito positivo.
Modificato Indica la percentuale complessiva di stati con modifiche per il minion.
Modifiche Indica se l'esecuzione dell'highstate più recente ha restituito modifiche.

Se si fa clic su un ID minion, è possibile visualizzare tutte le esecuzioni dello stato precedenti per un minion.

Tutti gli stati vengono eseguiti per un minion Salt nell'area di lavoro Highstate

Vengono fornite le informazioni seguenti:

Termine Descrizione
Completato Indica se l'esecuzione dello stato è riuscita o meno.
Modifiche Indica se l'esecuzione dell'highstate più recente ha restituito modifiche.
Ambiente Ambiente Salt che contiene il file di stato, ad esempio base o dev.
File SLS File che contiene la dichiarazione di stato, ad esempio centos-config.sls.
Stato Dichiarazione dell'ID per lo stato, ad esempio common-centos-packages.
Durata Durata dell'esecuzione dello stato in millisecondi (ms).
Commento Messaggio che fornisce ulteriori dettagli sull'esito positivo o negativo dell'esecuzione dello stato.
JID Numero di identificazione del processo per l'esecuzione state.highstate.

Per eseguire un processo highstate ad hoc a livello di minion:

  1. In Automation Config, aprire l'area di lavoro Highstate.
  2. Selezionare il minion o i minion in cui si desidera eseguire l'highstate.
  3. Fare clic su Esegui highstate.
  4. Nella finestra di dialogo, fare clic su Esegui highstate.

Visualizzazioni delle attività dell'highstate

La scheda Attività nell'area di lavoro Highstate viene utilizzata per monitorare lo stato delle esecuzioni di highstate. La scheda Attività offre visibilità a molti tipi di eventi e attività, ad esempio processi pianificati o processi ad-hoc.

Un grafico interattivo nell'area di lavoro Highstate che mostra il numero di minion con e senza modifiche negli ultimi 30 giorni

Il grafico interattivo nella scheda Attività include diversi report per fornire una panoramica delle esecuzioni dell'highstate precedenti nell'ambiente Automation Config. È possibile visualizzare i risultati delle ultime 24 ore fino agli ultimi 30 giorni per ogni report.

Report Descrizione
Minion: durata media Mostra la durata media delle esecuzioni dello stato in tutti i minion nel tempo.
Minion: modifiche e senza modifiche Mostra il numero di minion che hanno segnalato modifiche rispetto ai minion che non hanno segnalato modifiche nel tempo.
Minion: esito positivo e negativo Mostra il numero di minion che hanno segnalato l'esito positivo delle esecuzioni dello stato rispetto ai minion che hanno segnalato l'esecuzione dello stato non riuscito nel tempo.
Stati: modifiche e senza modifiche Mostra il numero di stati che hanno segnalato modifiche rispetto agli stati che non hanno segnalato modifiche nel tempo.
Stati: esito positivo e negativo Mostra il numero di stati riusciti rispetto agli stati che non sono riusciti.

La scheda Attività include tre sezioni in cui i processi vengono ordinati in base allo stato:

  • Completati: consente di monitorare lo stato dei processi highstate completati.
  • In corso: consente di monitorare lo stato dei processi highstate attualmente in esecuzione.
  • Imminenti: consente di monitorare lo stato dei processi highstate immintenti.

La tabella nella scheda Attività include informazioni su stato, origine, pianificazione (se disponibile), processo, gruppo di destinazione e ID processo associato (JID). È possibile filtrare le colonne secondo necessità.