Creare runbook di Service Management Automation
I runbook in Service Management Automation e Microsoft Automazione di Azure sono flussi di lavoro di Windows PowerShell 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
Nel portale di gestione selezionare Nuovo, servizio app, Automazione, Runbook, Creazione rapida.
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.
Se si vuole modificare il runbook ora, selezionare Modifica runbook. In caso contrario, selezionare OK.
Il nuovo runbook verrà visualizzato nella scheda Runbook .
Importare un runbook da un file
Nel portale di gestione selezionare Automazione , quindi scegliere un account di automazione.
Selezionare Importa.
Selezionare Sfoglia per File e individuare il file di script da importare.
Se si vuole modificare il runbook ora, selezionare Modifica runbook. In caso contrario, selezionare OK.
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. La versione pubblicata non può essere modificata.
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à.
Nel portale di gestione selezionare Automazione.
Fare clic sulla scheda Runbook .
Selezionare il nome del runbook da modificare.
Selezionare la scheda Autore .
Selezionare Bozza nella parte superiore della schermata o il pulsante Modifica nella parte inferiore della schermata.
Apportare le modifiche necessarie.
Selezionare Salva al termine delle modifiche.
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à:
- Inserire codice in un runbook
- Inserire un asset globale in un runbook
- Inserire un'attività in un runbook
Seguire questa procedura per inserire il codice in un runbook:
Aprire il Runbook nell'editor del portale di gestione.
Nella parte inferiore della schermata selezionare Inserisci e quindi runbook.
Selezionare il runbook da inserire nella colonna centrale e selezionare la freccia destra.
Se il runbook dispone di parametri, questi verranno elencati come riferimento.
Selezionare il pulsante di controllo.
Il codice per eseguire il runbook selezionato verrà inserito nel runbook corrente.
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 con 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 con 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 runbook di Automazione.
Aprire Windows PowerShell ISE.
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.
Accedere a SMA nella scheda Configurazione .
Selezionare la scheda Runbook . Verrà visualizzato un elenco di runbook SMA.
Selezionare il runbook da modificare e selezionare Scarica. Verrà scaricata una copia locale del runbook da SMA.
Selezionare Apri. Verrà creata una nuova scheda con il runbook.
Apportare le modifiche necessarie al runbook.
Selezionare Carica bozza per inviare il runbook a SMA. Questa operazione sovrascriverà la versione bozza esistente del runbook.
Selezionare Pubblica bozza se si vuole pubblicare la versione bozza più recente del runbook.
Pubblicare il runbook
Dopo aver creato il runbook, è necessario pubblicarlo in modo che il ruolo di lavoro runbook possa eseguirlo. Ogni runbook in Service Management Automation ha una bozza e una versione 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, la si pubblica, che sovrascrive la versione pubblicata con la versione bozza.
Pubblicare un runbook usando il portale di gestione
Selezionare l'area di lavoro Automazione .
Nella parte superiore della schermata fare clic su Runbook.
Individuare il Runbook da modificare e fare clic sul relativo nome.
Nella parte superiore della schermata selezionare Autore.
Selezionare Bozza.
Nella parte inferiore della schermata selezionare Pubblica.
Selezionare Sì per il 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 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 runbook di Automazione.
Aprire Windows PowerShell ISE.
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.
Accedere a SMA nella scheda Configurazione .
Selezionare la scheda Runbook . Verrà visualizzato un elenco di runbook SMA.
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 Service Management Automation 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 output e avviso e errore vengono visualizzati nel riquadro Output test. I messaggi al flusso dettagliato vengono visualizzati nel riquadro di output solo se la variabile $VerbosePreference è impostata su Continua.
Quando si testa un runbook, il flusso di lavoro viene comunque eseguito normalmente ed esegue qualsiasi azione sulle risorse nell'ambiente. Per questo motivo, è consigliabile testare solo i Runbook su risorse non in ambiente di produzione.
Testare un runbook in Service Management Automation
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 durante il test 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 con 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 esattamente come qualsiasi altro script.
Gli asset globali e i relativi valori vengono scaricati dal gruppo di automazione da usare per i test locali. È possibile esaminare o modificare questi valori nella scheda Asset . I valori crittografati vengono visualizzati in arancione e i relativi valori non vengono scaricati. Se si vogliono usare questi asset nei test locali, è necessario impostarne 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 l'uso nell'estensione 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 Service Management Automation 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 Service Management Automation 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 | Viene illustrato 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 anche essere integrato 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 Service Management Automation per l'uso delle attività |
Sample-Using-Checkpoints | Illustra la possibilità di usare checkpoint in Service Management Automation. |
Sample-Using-Connections | Illustra la funzionalità di Service Management Automation per usare le connessioni per connettersi ai sistemi remoti. |
Sample-Using-Credentials | Illustra la funzionalità di Service Management Automation per l'uso delle credenziali e restituisce l'utente con cui viene eseguito il runbook di Service Management Automation. 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. Ciò può essere utile se è necessario un passaggio manuale prima che un runbook continui, ad esempio la ricezione dell'approvazione di disconnesso da una persona specifica. Una volta completato il passaggio manuale, occorrerà riprendere manualmente il Runbook sospeso. |
Sample-Using-Variables | Illustra la funzionalità di Service Management Automation 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
- Informazioni su come chiamare un runbook da un altro runbook.
- Leggere le informazioni su come usare i moduli di integrazione.