Creare runbook di Service Management Automation

Importante

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

I runbook in Service Management Automation e Microsoft Automazione di Azure sono Windows PowerShell flussi di lavoro o script di PowerShell. Consentono di automatizzare i processi amministrativi per la gestione e la distribuzione dei server cloud o qualsiasi altra funzione eseguibile con uno script di Windows PowerShell.

Non esiste alcuna differenza nei runbook tra i due sistemi e lo stesso runbook può essere eseguito con funzionalità identiche. Quando il termine Automazione viene usato in questo articolo, si riferisce sia a Service Management Automation che a Microsoft Automazione di Azure.

I servizi aggiuntivi forniti da Automazione per l'utilizzo con i flussi di lavoro di Windows PowerShell includono quanto segue:

  • Archiviazione e gestione centralizzate dei runbook.

  • Architettura scalabile per la pianificazione e l'esecuzione dei runbook.

  • Risorse globali gestite in maniera centralizzata e disponibili per tutti i Runbook.

  • Interfaccia utente per la creazione e la verifica dei Runbook.

  • Set di cmdlet per la gestione e l'esecuzione dei Runbook.

Creare o importare un runbook

È possibile aggiungere un runbook a Service Management Automation creandolo nel portale di gestione o importandolo da un file.

Creare un runbook nel portale di gestione

  1. Nel portale di gestione selezionare Nuovo, Servizi app, Automazione, Runbook, Creazione rapida.

  2. Immettere le informazioni necessarie e selezionare Crea. Il nome del runbook deve iniziare con una lettera e può includere lettere, numeri, caratteri di sottolineatura e trattini.

  3. Se si vuole modificare il runbook ora, selezionare Modifica runbook. In caso contrario, selezionare OK.

  4. Il nuovo runbook verrà visualizzato nella scheda Runbook.

Importare un runbook da un file

  1. Nel portale di gestione selezionare Automazione , quindi scegliere un account di automazione.

  2. Selezionare Importa.

  3. Selezionare Cerca file e individuare il file di script da importare.

  4. Se si vuole modificare il runbook ora, selezionare Modifica runbook. In caso contrario, selezionare OK.

  5. Il nuovo runbook verrà visualizzato nella scheda Runbook per l'account di automazione.

Importare un runbook da un file di script con Windows PowerShell

È possibile usare il cmdlet Import-SmaRunbook per creare un nuovo Runbook da un file script contenente un flusso di lavoro.

I comandi di esempio seguenti illustrano come importare un file di script in un Runbook esistente e quindi come pubblicarlo.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Import-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Path $scriptPath
Publish-SMARunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Modificare un runbook

Ogni runbook in Service Management Automation ha due versioni: Draft e Published. Modificare la versione bozza del flusso di lavoro e quindi pubblicarla in modo che possa essere eseguita. Non è possibile modificare la versione pubblicata.

Modificare un runbook con il portale di gestione

Il portale di gestione include un editor che può essere usato per visualizzare e modificare i Runbook. Oltre a fornire funzionalità di modifica del testo di base, l'editor offre la possibilità di inserire automaticamente codice per runbook, asset globali e attività.

  1. Nel portale di gestione selezionare Automazione.

  2. Selezionare la scheda Runbook.

  3. Selezionare il nome del runbook da modificare.

  4. Selezionare la scheda Autore.

  5. Selezionare Bozza nella parte superiore della schermata o il pulsante Modifica nella parte inferiore della schermata.

  6. Apportare le modifiche necessarie.

  7. Selezionare Salva al termine delle modifiche.

  8. Selezionare Pubblica se si vuole pubblicare la versione bozza più recente del runbook.

Selezionare la scheda necessaria per i passaggi per inserire il codice per runbook, asset globali e attività:

Seguire questa procedura per inserire codice in un runbook:

  1. Aprire il Runbook nell'editor del portale di gestione.

  2. Nella parte inferiore della schermata selezionare Inserisci e quindi selezionare Runbook.

  3. Selezionare il runbook da inserire nella colonna centrale e selezionare la freccia destra.

  4. Se il runbook dispone di parametri, questi verranno elencati come riferimento.

  5. Selezionare il pulsante di controllo.

  6. Il codice per eseguire il runbook selezionato verrà inserito nel runbook corrente.

  7. Se il runbook richiede parametri, specificare un valore appropriato al posto del tipo di dati racchiuso tra parentesi graffe <>.

Modificare un runbook di Automazione con PowerShell

Per modificare un Runbook con Windows PowerShell, è possibile modificare il flusso di lavoro usando l'editor scelto e salvarlo in un file PS1. È possibile usare il cmdlet Get-SMARunbookDefinition per recuperare il contenuto del Runbook e quindi il cmdlet Edit-SMARunbook per sostituire il flusso di lavoro in versione bozza esistente con quello modificato.

Per recuperare il contenuto di un runbook tramite Windows PowerShell

I comandi di esempio seguenti mostrano come recuperare lo script per un runbook e salvarlo in un file di script. In questo esempio viene recuperata la versione bozza. È possibile anche recuperare la versione pubblicata del runbook, sebbene questa versione non possa essere modificata.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

Per modificare il contenuto di un runbook usando Windows PowerShell

I comandi di esempio seguenti mostrano come sostituire il contenuto esistente di un Runbook con il contenuto di un file di script che include un flusso di lavoro.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath

Modificare un runbook di Automazione con PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) è un'applicazione che consente di eseguire comandi e scrivere, testare ed eseguire il debug di script. Il componente aggiuntivo SMA PowerShell ISE consente di usare questo strumento per scrivere e testare i runbook di Automazione.

  1. Aprire Windows PowerShell ISE.

  2. Se il componente aggiuntivo SMA ISE non viene visualizzato sul lato destro dell'ISE, aprire il menu Componenti aggiuntivi e abilitare il componente aggiuntivo SMA ISE.

  3. Accedere a SMA nella scheda Configurazione .

  4. Selezionare la scheda Runbook . Verrà visualizzato un elenco di runbook SMA.

  5. Selezionare il runbook da modificare e selezionare Scarica. Viene scaricata una copia locale del runbook da SMA.

  6. Selezionare Open (Apri). Verrà creata una nuova scheda con il runbook.

  7. Apportare le modifiche necessarie al runbook.

  8. Selezionare Carica bozza per inviare il runbook a SMA. Verrà sovrascritto la versione bozza esistente del runbook.

  9. Selezionare Pubblica bozza se si vuole pubblicare la versione della bozza più recente del runbook.

Pubblicare il runbook

Dopo aver creato il runbook, è necessario pubblicarlo in modo che il ruolo di lavoro del runbook possa eseguirlo. Ogni runbook in Service Management Automation include una versione bozza e pubblicata. È possibile eseguire solo la versione pubblicata, mentre è possibile modificare solo la versione bozza. La versione pubblicata non è interessata dalle modifiche apportate alla versione bozza. Quando si è pronti a rendere disponibile la versione Bozza, viene pubblicata, che sovrascrive la versione pubblicata con la versione Bozza.

Pubblicare un runbook usando il portale di gestione

  1. Selezionare l'area di lavoro Automazione.

  2. Nella parte superiore della schermata fare clic su Runbook.

  3. Individuare il Runbook da modificare e fare clic sul relativo nome.

  4. Nella parte superiore della schermata selezionare Autore.

  5. Selezionare Bozza.

  6. Nella parte inferiore della schermata selezionare Pubblica.

  7. Selezionare nel messaggio di verifica.

Pubblicare un runbook con PowerShell

Per pubblicare un Runbook con Windows PowerShell è possibile usare il cmdlet Publish-SmaRunbook. I comandi di esempio seguenti mostrano come pubblicare un Runbook.

$webServer = 'https://MyServer'
$port = 9090
$runbookPath = 'c:\runbooks\Sample-TestRunbook.ps1'
$runbookName = 'Test-Runbook'

Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Pubblicare un runbook usando PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) è un'applicazione che consente di eseguire comandi e scrivere, testare e eseguire script di debug. Il componente aggiuntivo SMA PowerShell ISE consente di usare questo strumento per scrivere e testare i runbook di Automazione.

  1. Aprire Windows PowerShell ISE.

  2. Se il componente aggiuntivo SMA ISE non viene visualizzato sul lato destro dell'ISE, aprire il menu Componenti aggiuntivi e abilitare il componente aggiuntivo SMA ISE.

  3. Accedere a SMA nella scheda Configurazione .

  4. Selezionare la scheda Runbook . Verrà visualizzato un elenco di runbook SMA.

  5. Selezionare il runbook e selezionare Pubblica bozza per pubblicare la versione bozza più recente del runbook.

Testare il runbook

È possibile testare la versione bozza di un runbook in Automazione gestione servizi lasciando invariata la versione pubblicata del runbook. In questo modo è possibile verificare che il Runbook funzioni correttamente prima di sostituire la versione pubblicata.

Quando si testa un Runbook, viene eseguito il Runbook in versione bozza e le azioni eseguite vengono completate. Non viene creata alcuna cronologia dei processi, ma i flussi di outpute avviso e errore vengono visualizzati nel riquadro Output test. I messaggi al Stream dettagliato vengono visualizzati nel riquadro di output solo se la variabile di $VerbosePreference è impostata su Continua.

Quando si testa un runbook, viene comunque eseguito il flusso di lavoro normalmente ed esegue eventuali azioni rispetto alle risorse nell'ambiente. Per questo motivo, è consigliabile testare solo i Runbook su risorse non in ambiente di produzione.

Testare un runbook in Automazione gestione servizi

Per testare un Runbook, aprire la versione Bozza del Runbook nel portale di gestione. Selezionare il pulsante Test nella parte inferiore della schermata per avviare il test.

È possibile arrestare o sospendere il runbook mentre viene testato con i pulsanti sotto il riquadro di output. Quando si sospende il runbook, esso completa l'attività corrente prima di essere sospeso. Una volta che il runbook viene sospeso, è possibile arrestarlo o riavviarlo.

Testare un runbook usando PowerShell ISE

Il componente aggiuntivo PowerShell ISE fornisce cmdlet che emulano le attività standard, ad esempio Get-SMACredential e Set-SMAVariable, in modo da poter testare il runbook nel computer locale come si farebbe con qualsiasi altro script.

Gli asset globali e i relativi valori vengono scaricati dal gruppo di automazione da usare per i test locali. È possibile controllare o modificare questi valori nella scheda Asset . I valori crittografati vengono visualizzati in arancione e i relativi valori non vengono scaricati. Se si desidera usare questi asset nei test locali, è necessario impostare il valore in locale.

Per testare il runbook in SMA, selezionare Test Draft in SMA. Verrà aperta una nuova finestra. Selezionare Avvia nuovo processo per avviare il test. L'output verrà visualizzato nella finestra.

Esempi di runbook di automazione

I runbook seguenti vengono forniti con Service Management Automation come runbook di esempio per illustrare tecniche e procedure consigliate. Sono disponibili per essere usati nell'estensione di Automazione in Microsoft Azure Pack per Windows Server.

Nome Runbook Descrizione
Sample-Deleting-VMCloud-Subscription Descrive uno scenario per l'attivazione di un Runbook, utile nel caso in cui un utente elimini una sottoscrizione a VM Clouds.
Sample-Managing-Azure Illustra come connettersi a una sottoscrizione di Microsoft Azure ed eseguire operazioni di base usando il modulo Microsoft Azure PowerShell.
Sample-Managing-ConfigurationManager Illustra la funzionalità di Automazione gestione servizi per connettersi a Configuration Manager.
Sample-Managing-DataProtectionManager Spiega come connettersi a un server Data Protection Manager (DPM) e visualizzare informazioni sui dischi trovati nel server DPM.
Sample-Managing-MySQLServers Spiega come recuperare un token di protezione utile per recuperare un elenco di server host.
Sample-Managing-OperationsManager Illustra la funzionalità di Automazione gestione servizi per connettersi a System Center Operations Manager.
Sample-Managing-Orchestrator Illustra come connettersi a System Center Orchestrator e avviare un runbook di Orchestrator per usare l'infrastruttura esistente.
Sample-Managing-Plans Spiega come creare un nuovo piano e aggiungere il servizio SQL Server con una quota definita per il nuovo piano.
Sample-Managing-ServiceBusClouds Spiega come connettersi a un server Service Bus Cloud e visualizzare le informazioni sugli spazi dei nomi creati.
Sample-Managing-SQLServers Spiega come creare un nuovo gruppo di server e aggiungere un server di hosting SQL.
Sample-Managing-UserAccounts Illustra come creare un utente in Microsoft Azure Pack per Windows Server, che verrà creato in Microsoft Azure Pack e visualizzato nel portale di gestione per gli amministratori Estensione Utenti. Tuttavia, questo utente deve essere integrato anche nel provider di autenticazione (ad esempio AuthSite) per accedere al portale di gestione per i tenant, che non è incluso in questo esempio.
Sample-Managing-VirtualMachineManager Spiega come connettersi a un server Virtual Machine Manager (VMM) e visualizzare le informazioni sulla licenza del server di VMM.
Sample-Managing-VMClouds Spiega come accedere alle informazioni sulla connessione del database del server di Service Provider Foundation e alle informazioni sugli oggetti server di VMM gestiti da Service Provider Foundation.
Sample-Managing-WebSiteCloud Spiega come connettersi al server controller di Web Site Clouds e visualizzare informazioni sui server distribuiti di Web Site Clouds.
Sample-Modify-VMCloud-Subscription Descrive uno scenario per l'attivazione di un Runbook quando un tenant o un amministratore sospende o attiva una sottoscrizione a VM Clouds.
Sample-Using-Activities Illustra la funzionalità di Automazione gestione servizi per l'uso delle attività
Sample-Using-Checkpoints Illustra la funzionalità di uso dei checkpoint in Automazione gestione servizi.
Sample-Using-Connections Illustra la funzionalità di Automazione gestione servizi per usare le connessioni per connettersi ai sistemi remoti.
Sample-Using-Credentials Illustra la funzionalità di Automazione gestione servizi per l'uso delle credenziali e restituisce all'utente che il runbook di Automazione gestione servizi è in esecuzione come. Quindi, si connette al server "ServerName" e visualizza l'utente specificato da "SampleCredential" che sta accedendo al server.
Sample-Using-Modules Descrive l'importazione dei moduli nei Runbook e visualizza il numero di moduli già importati nel server "ServerName". Quindi, importa il modulo specificato da "ModulePath" e visualizza il nuovo numero dei moduli e le informazioni corrispondenti nel modulo appena importato.
Sample-Using-RunbookParameters Spiega come utilizzare i parametri di input per i Runbook, specifica se i parametri sono necessari, fornisce i valori dei parametri predefiniti e utilizza i valori dei parametri nel seguito del flusso di lavoro.
Sample-Using-Runbooks Spiega come richiamare un Runbook all'interno di un altro.
Sample-Using-SuspendWorkflow Spiega come forzare la sospensione di un Runbook. Questo potrebbe essere utile se è necessario un passaggio manuale prima che un runbook continui, ad esempio la ricezione dell'approvazione di disconnessa da una persona specifica. Una volta completato il passaggio manuale, occorrerà riprendere manualmente il Runbook sospeso.
Sample-Using-Variables Illustra la funzionalità di Automazione gestione servizi per l'uso delle variabili.
Sample-Using-VMCloud-Automation Descrive uno scenario per l'attivazione di un Runbook all'inizio di un evento di Service Provider Foundation.

Passaggi successivi