Automatizzare le operazioni di Microsoft Azure Pack con Automazione gestione dei servizi

Importante

Questa versione di Service Management Automation (SMA) ha raggiunto la fine del supporto. È consigliabile eseguire l'aggiornamento a SMA 2022.

È possibile usare i runbook di Service Management Automation (SMA) per automatizzare le operazioni di routine nell'ambiente Microsoft Azure Pack per Windows Server. Esistono due tipi distinti di runbook SMA:

Tipo Descrizione
Flusso di lavoro PowerShell Runbook di testo basato su flusso di lavoro Windows PowerShell.
PowerShell Runbook di testo basato su script di Windows PowerShell.

Runbook del flusso di lavoro di PowerShell

I runbook del flusso di lavoro di PowerShell si basano sul flusso di lavoro Windows PowerShell. È possibile modificare direttamente il codice del runbook usando l'editor nel portale di gestione. È anche possibile usare qualsiasi editor di testo offline e importare il runbook in SMA.

Vantaggi

  • Implementare tutta la logica complessa con il codice del flusso di lavoro di PowerShell.
  • Uso dei checkpoint per riprendere il runbook in caso di errore.
  • Uso dell' elaborazione parallela per eseguire più operazioni in parallelo.
  • Includere altri runbook del flusso di lavoro di PowerShell come runbook figlio per creare flussi di lavoro di alto livello.

Limitazioni

  • Necessità che l'autore abbia familiarità con il flusso di lavoro PowerShell.
  • Il runbook deve gestire la complessità aggiuntiva del flusso di lavoro di PowerShell, ad esempio oggetti deserializzati.
  • Tempi di avvio maggiori rispetto ai runbook di PowerShell perché è necessaria la compilazione prima dell'esecuzione.
  • I runbook di PowerShell possono essere inclusi solo come runbook figlio usando il cmdlet Start-SMARunbook, che crea un nuovo processo.

Runbook di PowerShell

I runbook di PowerShell sono basati su Windows PowerShell. È possibile modificare direttamente il codice del runbook usando l'editor nel portale di gestione. È anche possibile usare qualsiasi editor di testo offline e importare il runbook in SMA.

Vantaggi

  • Implementare tutta la logica complessa con il codice di PowerShell senza le complessità aggiuntive del flusso di lavoro di PowerShell.
  • Avvio del runbook più rapido rispetto ai runbook del flusso di lavoro PowerShell poiché non è necessaria la compilazione prima dell'esecuzione.

Limitazioni

  • Necessità di familiarità con lo scripting di PowerShell.
  • Non è possibile usare l'elaborazione parallela per eseguire più azioni in parallelo.
  • Non è possibile usare checkpoint per riprendere i runbook quando si verifica un errore.
  • I runbook del flusso di lavoro di PowerShell possono essere inclusi solo come runbook figlio usando il cmdlet Start-SMARunbook, che crea un nuovo processo.

Come SMA esegue runbook

Le richieste di avvio di un runbook vengono eseguite dal servizio Web SMA usando il portale di gestione dei servizi o il cmdlet Start-SmaRunbook Windows PowerShell. Il servizio Web scrive questa richiesta nel database di Automazione in cui viene recuperato da uno dei server di lavoro di Automazione.

Se la proprietà RunbookWorker del runbook viene popolata, tale server di lavoro funzionerà il processo. Se il server di lavoro non è disponibile, il processo ha esito negativo con un errore. Se la proprietà RunbookWorker del runbook non è popolata, SMA seleziona in modo casuale un server di lavoro disponibile per il servizio della richiesta.

Il server Di lavoro crea un processo in esecuzione nel server Di lavoro con cui viene eseguita la richiesta e accede in remoto a tutti i computer o ad altre risorse che funzioneranno. Questa operazione richiede che i cmdlet nel Runbook siano in grado di accedere in remoto a tali risorse. In alternativa, il Runbook può includere un comando InlineScript in modo da poter usare il servizio remoto PowerShell per eseguire i comandi in locale in un computer di destinazione. Questo concetto è illustrato nella figura seguente.

Diagramma di esecuzione del runbook.

Se un processo viene sospeso o interrotto, può essere ripreso in un altro server Worker. A causa di questo, è consigliabile prestare attenzione all'uso delle risorse locali che non sono accessibili a tutti i server di lavoro, ad esempio un file in un computer locale. È consigliabile usare asset globali come variabili il più possibile per la condivisione di informazioni tra checkpoint.

Autorizzazioni

Per eseguire le azioni richieste, un Runbook deve disporre delle autorizzazioni per accedere alle risorse che dovrà usare. I runbook in SMA vengono sempre eseguiti nel contesto dell'account del servizio del servizio Runbook di Automazione. Se questo account non dispone delle autorizzazioni necessarie, è possibile usare una risorsa globale credenziali o connessione nel runbook per eseguire i comandi necessari usando le credenziali con le autorizzazioni necessarie. Queste credenziali possono essere usate con un cmdlet che accetta le credenziali tramite un parametro o con InlineScript per eseguire un blocco di codice usando credenziali alternative.

Passaggi successivi