Il primo runbook graficoMy first graphical runbook

Questa esercitazione illustra la creazione di un runbook grafico in Automazione di Azure.This tutorial walks you through the creation of a graphical runbook in Azure Automation. Si inizia con un runbook semplice che esegue test e pubblicazioni, quindi viene illustrato come tenere traccia dello stato del processo del runbook.You start with a simple runbook that tests and publishes while learning how to track the status of the runbook job. Si modifica quindi il runbook per gestire effettivamente le risorse di Azure, avviando in questo caso una macchina virtuale di Azure.Then you modify the runbook to actually manage Azure resources, in this case starting an Azure virtual machine. Si completerà quindi l'esercitazione rendendo il runbook più affidabile con l'aggiunta di parametri e collegamenti condizionali.Then you complete the tutorial by making the runbook more robust by adding runbook parameters and conditional links.

prerequisitiPrerequisites

Per completare l'esercitazione, sono necessari gli elementi seguenti:To complete this tutorial, you need the following:

  • Sottoscrizione di Azure.Azure subscription. Se non si ha ancora una sottoscrizione, è possibile attivare i vantaggi dell'abbonamento MSDN oppure iscriversi per ottenere un account gratuito.If you don't have one yet, you can activate your MSDN subscriber benefits or sign up for a free account.
  • Account di Automazione che conterrà il runbook ed eseguirà l'autenticazione con le risorse di Azure.Automation account to hold the runbook and authenticate to Azure resources. Questo account deve avere l'autorizzazione per avviare e arrestare la macchina virtuale.This account must have permission to start and stop the virtual machine.
  • Macchina virtuale di Azure.An Azure virtual machine. La macchina virtuale viene arrestata e avviata, quindi non deve essere una macchina virtuale di produzione.You stop and start this machine so it should not be a production VM.

Creare un runbookCreate runbook

Iniziare creando un runbook semplice che restituisce il testo Hello World.Start by creating a simple runbook that outputs the text Hello World.

  1. Nel portale di Azure aprire l'account di automazione.In the Azure portal, open your Automation account.

    La pagina dell'account di automazione offre una visualizzazione rapida delle risorse di questo account.The Automation account page gives you a quick view of the resources in this account. Dovrebbero essere già disponibili alcuni asset.You should already have some Assets. Per la maggior parte sono i moduli inclusi automaticamente in un nuovo account di Automazione.Most of those assets are the modules that are automatically included in a new Automation account. Dovrebbe essere disponibile anche l'asset credenziali citato nei prerequisiti.You should also have the Credential asset that's mentioned in the prerequisites.

  2. Selezionare Runbook in GESTIONE PROCESSI per aprire l'elenco dei runbook.Select Runbooks under PROCESS MANAGEMENT to open the list of runbooks.

  3. Creare un nuovo runbook facendo clic sul pulsante + Aggiungi runbook, quindi su Crea un nuovo runbook.Create a new runbook by selecting + Add a runbook, then click Create a new runbook.
  4. Denominare il runbook MyFirstRunbook-Graphical.Give the runbook the name MyFirstRunbook-Graphical.
  5. In questo caso verrà creato un runbook grafico, quindi selezionare Grafico in Tipo di runbook.In this case, you're going to create a graphical runbook so select Graphical for Runbook type.
    Nuovo runbookNew runbook
  6. Fare clic su Crea per creare il runbook e aprire l'editor grafico.Click Create to create the runbook and open the graphical editor.

Aggiungere attivitàAdd activities

Il controllo Libreria sul lato sinistro dell'editor consente di selezionare le attività da aggiungere al runbook.The Library control on the left side of the editor allows you to select activities to add to your runbook. Si aggiungerà un cmdlet Write-Output per l'output del testo dal runbook.You're going to add a Write-Output cmdlet to output text from the runbook.

  1. Nel controllo Libreria fare clic nella casella di testo di ricerca e digitare Write-Output.In the Library control, click in the search textbox and type Write-Output. I risultati della ricerca sono indicati nell'immagine seguente:The search results are shown in the following image:
    Microsoft.PowerShell.UtilityMicrosoft.PowerShell.Utility
  2. Scorrere fino alla fine dell'elenco.Scroll down to the bottom of the list. È possibile fare clic con il pulsante destro del mouse su Write-Output e scegliere Aggiungi ad area di disegno o fare clic sui puntini di sospensione accanto al cmdlet e quindi selezionare Aggiungi ad area di disegno.You can either right-click Write-Output and select Add to canvas, or click the ellipses next to the cmdlet and then select Add to canvas.
  3. Fare clic sull'attività Write-Output nell'area di disegno.Click the Write-Output activity on the canvas. Si aprirà la pagina Controllo configurazione che consente di configurare l'attività.This action opens the Configuration control page, which allows you to configure the activity.
  4. In Etichetta è impostato il nome predefinito del cmdlet, ma è possibile modificarlo specificando un nome più descrittivo.The Label defaults to the name of the cmdlet, but you can change it to something more friendly. Cambiarlo in Scrivere Hello World nell'output.Change it to Write Hello World to output.
  5. Fare clic su Parametri per specificare i valori per i parametri del cmdlet.Click Parameters to provide values for the cmdlet's parameters.

    Alcuni cmdlet hanno più set di parametri ed è necessario selezionarne uno da usare.Some cmdlets have multiple parameter sets, and you need to select which you one to use. In questo caso, Write-Output ha un solo set di parametri, quindi non è necessario selezionarne uno.In this case, Write-Output has only one parameter set, so you don't need to select one.

  6. Selezionare il parametro InputObject .Select the InputObject parameter. Si tratta del parametro in cui si specificherà il testo da inviare al flusso di output.This is the parameter where you specify the text to send to the output stream.

  7. Nell'elenco a discesa Origine dati selezionare Espressione PowerShell.In the Data source dropdown, select PowerShell expression. L'elenco a discesa Origine dati include diverse origini che è possibile usare per popolare il valore di un parametro.The Data source dropdown provides different sources that you use to populate a parameter value.

    È possibile usare l'output da tali origini, ad esempio un'altra attività, un asset di automazione o un'espressione di PowerShell.You can use output from such sources such as another activity, an Automation asset, or a PowerShell expression. In questo caso, l'output è semplicemente Hello World.In this case, the output is just Hello World. È possibile usare un'espressione di PowerShell e specificare una stringa.You can use a PowerShell expression and specify a string.

  8. Nella casella Espressione digitare "Hello World" e quindi fare clic su OK due volte per tornare all'area di disegno.In the Expression box, type "Hello World" and then click OK twice to return to the canvas.

  9. Salvare il runbook facendo clic su Salva.Save the runbook by clicking Save.

Testare il runbookTest the runbook

Prima di pubblicare il runbook per renderlo disponibile nell'ambiente di produzione, occorre testarlo per verificare che funzioni correttamente.Before you publish the runbook to make it available in production, you want to test it to make sure that it works properly. Quando si testa un runbook, è necessario eseguire la versione Bozza e visualizzarne l'output in modo interattivo.When you test a runbook, you run its Draft version and view its output interactively.

  1. Fare clic su Riquadro di test per aprire la pagina Test.Select Test pane to open the Test page.
  2. Fare clic su Avvia per avviare il test.Click Start to start the test. Questa deve essere l'unica opzione abilitata.This should be the only enabled option.
  3. Viene creato un processo del runbook e il relativo stato viene visualizzato nel riquadro.A runbook job is created and its status displayed in the pane.

    Lo stato iniziale del processo è In coda per indicare che è in attesa della disponibilità di un ruolo di lavoro per runbook nel cloud.The job status starts as Queued indicating that it is waiting for a runbook worker in the cloud to become available. Lo stato passa quindi ad Avvio in corso quando un ruolo di lavoro richiede il processo e quindi a In esecuzione quando l'esecuzione del runbook viene effettivamente avviata.It then moves to Starting when a worker claims the job, and then Running when the runbook actually starts running.

  4. Al termine del processo del runbook, viene visualizzato l'output.When the runbook job completes, its output is displayed. In questo caso viene visualizzato Hello World.In this case, you see Hello World.
    Hello WorldHello World

  5. Chiudere la pagina Test per tornare al pannello Canvas.Close the Test page to return to the canvas.

Pubblicare e avviare il runbookPublish and start the runbook

Il runbook creato è ancora in modalità bozza.The runbook that you created is still in Draft mode. È necessario pubblicarlo prima di poterlo eseguire in produzione.It needs to be published before you can run it in production. Quando si pubblica un runbook, è possibile sovrascrivere la versione pubblicata esistente con la versione bozza.When you publish a runbook, you overwrite the existing Published version with the Draft version. In questo caso, non esiste ancora una versione pubblicata perché il runbook è appena stato creato.In this case, you don't have a Published version yet because you just created the runbook.

  1. Selezionare Pubblica per pubblicare il runbook, quindi quando richiesto.Select Publish to publish the runbook and then Yes when prompted.
  2. Se si scorre verso sinistra per visualizzare il runbook nella pagina Runbook, come Stato di creazione viene visualizzato Pubblicato.If you scroll left to view the runbook in the Runbooks page, it shows an Authoring Status of Published.
  3. Scorrere verso destra per visualizzare la pagina MyFirstRunbook-Graphical (MyFirstRunbook-Grafico).Scroll back to the right to view the page for MyFirstRunbook-Graphical.

    Le opzioni nella parte superiore consentono di avviare il runbook, pianificarlo per avviarlo in qualsiasi momento in futuro o creare un webhook per poterlo avviare con una chiamata HTTP.The options across the top allow us to start the runbook, schedule it to start at some time in the future, or create a webhook so it can be started through an HTTP call.

  4. Selezionare Avvia e poi quando richiesto per avviare il runbook.Select Start and then Yes when prompted to start the runbook.

  5. Viene aperta una pagina per il processo del runbook creato.A job page is opened for the runbook job that was created. Verificare che Stato processo indichi Completato.Verify that the Job status shows Completed.
  6. Quando lo stato del runbook risulta Completatofare clic su Output.Once the runbook status shows Completed, click Output. Si aprirà la pagina Output con il testo Hello World visualizzato nel riquadro.The Output page is opened, and you can see the Hello World in the pane.
  7. Chiudere la pagina Output.Close the Output page.
  8. Fare clic su Tutti i log per aprire la pagina Flussi relativa al processo del runbook.Click All Logs to open the Streams page for the runbook job. Nel flusso di output dovrebbe essere visibile solo Hello World, ma potrebbero essere visualizzati altri flussi per un processo del runbook, ad esempio Verbose ed Error se il runbook scrive in questi flussi.You should only see Hello World in the output stream, but this can show other streams for a runbook job such as Verbose and Error if the runbook writes to them.
  9. Chiudere la pagina All Logs (Tutti i log) e la pagina Processo per tornare alla pagina MyFirstRunbook-Graphical (MyFirstRunbook-Grafico).Close the All Logs page and the Job page to return to the MyFirstRunbook-Graphical page.
  10. Per visualizzare tutti i processi per il runbook, chiudere la pagina Processo e selezionare Processi in RISORSE.To view all the jobs for the runbook close the Job page and select Jobs under RESOURCES. Sono elencati tutti i processi creati da questo runbook.This lists all the jobs created by this runbook. Dovrebbe essere elencato un solo processo, perché il processo è stato eseguito una sola volta.You should only see one job listed since you only ran the job once.
  11. È possibile fare clic su questo processo per aprire lo stesso pannello visualizzato quando è stato avviato il runbook.You can click this job to open the same Job pane that you viewed when you started the runbook. In questo modo è possibile tornare indietro nel tempo e visualizzare i dettagli di tutti i processi creati per un runbook particolare.This allows you to go back in time and view the details of any job that was created for a particular runbook.

Creare asset di variabileCreate variable assets

Il runbook è stato testato e pubblicato, ma finora non esegue alcuna attività utile.You've tested and published your runbook, but so far it doesn't do anything useful. Si vuole fare in modo che gestisca le risorse di Azure.You want to have it manage Azure resources. Prima di configurare il runbook per l'autenticazione verrà creata una variabile che conterrà l'ID sottoscrizione e alla quale si farà riferimento dopo aver configurato l'attività per l'autenticazione più avanti nel passaggio 6.Before you configure the runbook to authenticate, you create a variable to hold the subscription ID and reference it after you set up the activity to authenticate in step 6 below. L'inserimento di un riferimento al contesto della sottoscrizione consente di usare facilmente più sottoscrizioni contemporaneamente.Including a reference to the subscription context allows you to easily work between multiple subscriptions. Prima di procedere, copiare l'ID sottoscrizione dall'opzione Sottoscrizioni del riquadro di spostamento.Before proceeding, copy your subscription ID from the Subscriptions option off the Navigation pane.

  1. Nella pagina Account di automazione, selezionare Variabili in RISORSE CONDIVISE.In the Automation Accounts page, select Variables under SHARED RESOURCES.
  2. Selezionare Aggiungi variabile.Select Add a variable.
  3. Nella casella Nome della pagina Nuova variabile immettere AzureSubscriptionId e nella casella Valore immettere l'ID sottoscrizione.In the New variable page, in the Name box, enter AzureSubscriptionId and in the Value box enter your Subscription ID. Lasciare Stringa in Tipo e il valore predefinito in Crittografia.Keep string for the Type and the default value for Encryption.
  4. Fare clic su Crea per creare la variabile.Click Create to create the variable.

Aggiungere l'autenticazioneAdd authentication

Dopo avere creato una variabile che contiene l'ID sottoscrizione, è possibile configurare il runbook per l'autenticazione con le credenziali Esegui come a cui si fa riferimento nei prerequisiti.Now that you have a variable to hold the subscription ID, you can configure the runbook to authenticate with the Run As credentials that are referred to in the prerequisites. Questa operazione viene eseguita aggiungendo l'asset di connessione RunAs di Azure e il cmdlet Connect-AzureRmAccount al canvas.You do that by adding the Azure Run As connection Asset and Connect-AzureRmAccount cmdlet to the canvas.

  1. Tornare al runbook e selezionare Modifica nella pagina MyFirstRunbook-Graphical (MyFirstRunbook-Grafico).Navigate back to your runbook and select Edit on the MyFirstRunbook-Graphical page.
  2. Scrivere Hello World nell'output non è più necessario, quindi fare clic sui puntini di sospensione e selezionare Elimina.You don't need the Write Hello World to output anymore, so click the ellipses (...) and select Delete.
  3. Nel controllo Libreria espandere ASSET, Connessioni e aggiungere AzureRunAsConnection all'area di disegno selezionando Aggiungi ad area di disegno.In the Library control, expand ASSETS, Connections, and add AzureRunAsConnection to the canvas by selecting Add to canvas.
  4. Nel controllo Libreria digitare Connect-AzureRmAccount nella casella di testo di ricerca.In the Library control, type Connect-AzureRmAccount in the search textbox.

    Importante

    Add-AzureRmAccount è ora un alias per Connect-AzureRMAccount. Quando si esegue la ricerca tra gli elementi della libreria, se Connect-AzureRMAccount non viene visualizzato, è possibile usare Add-AzureRmAccount oppure aggiornare i moduli nell'account di Automazione.

  5. Aggiungere Connect-AzureRmAccount al canvas.Add Connect-AzureRmAccount to the canvas.

  6. Passare il puntatore su Get Run As Connection finché non viene visualizzato un cerchio nella parte inferiore della forma.Hover over Get Run As Connection until a circle appears on the bottom of the shape. Fare clic sul cerchio e trascinare la freccia su Connect-AzureRmAccount.Click the circle and drag the arrow to Connect-AzureRmAccount. La freccia creata è un collegamento.The arrow that you created is a link. Il runbook verrà avviato con Get Run As Connection (Ottieni connessione RunAs) e quindi eseguirà Connect-AzureRmAccount.The runbook starts with Get Run As Connection and then run Connect-AzureRmAccount.
    Creare un collegamento tra le attivitàCreate link between activities
  7. Nel canvas selezionare Connect-AzureRmAccount e nel riquadro di controllo Configurazione digitare Login to Azure (Accedi ad Azure) nella casella di testo Etichetta.On the canvas, select Connect-AzureRmAccount and in the Configuration control pane type Login to Azure in the Label textbox.
  8. Fare clic su Parametri per visualizzare la pagina Configurazione parametro attività.Click Parameters and the Activity Parameter Configuration page appears.
  9. Connect-AzureRmAccount include più set di parametri, quindi è necessario selezionarne uno prima di poterne indicare i valori.Connect-AzureRmAccount has multiple parameter sets, so you need to select one before you can provide parameter values. Fare clic su Set di parametri e quindi selezionare il set di parametri ServicePrincipalCertificate.Click Parameter Set and then select the ServicePrincipalCertificate parameter set.
  10. Dopo aver selezionato il set di parametri, nella pagina Configurazione parametro attività vengono visualizzati i parametri.Once you select the parameter set, the parameters are displayed in the Activity Parameter Configuration page. Fare clic su APPLICATIONID.Click APPLICATIONID.
    Aggiungere parametri all'account Azure RMAdd Azure RM account parameters
  11. Nella pagina Valore parametro selezionare Output attività per Origine dati e quindi selezionare Get Run As Connection dall'elenco, nella casella di testo Percorso campo digitare ApplicationId e quindi fare clic su OK.In the Parameter Value page, select Activity output for the Data source and select Get Run As Connection from the list, in the Field path textbox type ApplicationId, and then click OK. Viene specificato il nome della proprietà per il percorso del campo perché l'attività restituisce un oggetto con più proprietà.You are specifying the name of the property for the Field path because the activity outputs an object with multiple properties.
  12. Fare clic su CERTIFICATETHUMBPRINT e nella pagina Valore parametro selezionare Output attività per Origine dati.Click CERTIFICATETHUMBPRINT, and in the Parameter Value page, select Activity output for the Data source. Selezionare Get Run As Connection dall'elenco, digitare CertificateThumbprint nella casella di testo Percorso campo e quindi fare clic su OK.Select Get Run As Connection from the list, in the Field path textbox type CertificateThumbprint, and then click OK.
  13. Fare clic su SERVICEPRINCIPAL e nella pagina Valore parametro selezionare ConstantValue per Origine dati, fare clic sull'opzione True e quindi fare clic su OK.Click SERVICEPRINCIPAL, and in the Parameter Value page, select ConstantValue for the Data source, click the option True, and then click OK.
  14. Fare clic su TENANTID e nella pagina Valore parametro selezionare Output attività per Origine dati.Click TENANTID, and in the Parameter Value page, select Activity output for the Data source. Selezionare Get Run As Connection dall'elenco, digitare TenantId nella casella di testo Percorso campo e quindi fare clic su OK due volte.Select Get Run As Connection from the list, in the Field path textbox type TenantId, and then click OK twice.
  15. Nel controllo Libreria digitare Set-AzureRmContext nella casella di testo di ricerca.In the Library control, type Set-AzureRmContext in the search textbox.
  16. Aggiungere Set-AzureRmContext all'area di disegno.Add Set-AzureRmContext to the canvas.
  17. Nell'area di disegno selezionare Set-AzureRmContext e nel riquadro del controllo Configurazione digitare Specify Subscription Id nella casella di testo Etichetta.On the canvas, select Set-AzureRmContext and in the Configuration control pane type Specify Subscription Id in the Label textbox.
  18. Fare clic su Parametri per visualizzare la pagina Configurazione parametro attività.Click Parameters and the Activity Parameter Configuration page appears.
  19. Set-AzureRmContext include più set di parametri, quindi è necessario selezionarne uno prima di poterne indicare i valori.Set-AzureRmContext has multiple parameter sets, so you need to select one before you can provide parameter values. Fare clic su Set di parametri e quindi selezionare il set di parametri SubscriptionId.Click Parameter Set and then select the SubscriptionId parameter set.
  20. Dopo aver selezionato il set di parametri, nella pagina Configurazione parametro attività vengono visualizzati i parametri.Once you select the parameter set, the parameters are displayed in the Activity Parameter Configuration page. Fare clic su SubscriptionIDClick SubscriptionID
  21. Nella pagina Valore parametro selezionare Asset variabile per Origine dati, selezionare AzureSubscriptionId dall'elenco e quindi fare clic su OK due volte.In the Parameter Value page, select Variable Asset for the Data source and select AzureSubscriptionId from the list and then click OK twice.
  22. Passare il puntatore su Login to Azure finché non viene visualizzato un cerchio nella parte inferiore della forma.Hover over Login to Azure until a circle appears on the bottom of the shape. Fare clic sul cerchio e trascinare la freccia su Specify Subscription Id.Click the circle and drag the arrow to Specify Subscription Id.

A questo punto l'aspetto del runbook sarà simile al seguente: Your runbook should look like the following at this point:
Configurazione dell'autenticazione runbook

Aggiungere un'attività per avviare una macchina virtualeAdd activity to start a VM

Qui viene aggiunta un'attività Start-AzureRmVM per avviare una macchina virtuale.Here you add a Start-AzureRmVM activity to start a virtual machine. È possibile selezionare una macchina virtuale qualsiasi nella sottoscrizione di Azure. Per ora il nome sarà hardcoded nel cmdlet.You can pick any virtual machine in your Azure subscription, and for now you hardcode that name into the cmdlet.

  1. Nel controllo Libreria digitare Start-AzureRm nella casella di testo di ricerca.In the Library control, type Start-AzureRm in the search textbox.
  2. Aggiungere Start-AzureRmVM all'area di disegno e quindi trascinarla sotto Specify Subscription Id.Add Start-AzureRmVM to the canvas and then click and drag it underneath Specify Subscription Id.
  3. Passare il puntatore su Specify Subscription Id finché non viene visualizzato un cerchio nella parte inferiore della forma.Hover over Specify Subscription Id until a circle appears on the bottom of the shape. Fare clic sul cerchio e trascinare la freccia su Start-AzureRmVM.Click the circle and drag the arrow to Start-AzureRmVM.
  4. Selezionare Start-AzureRmVM.Select Start-AzureRmVM. Fare clic su Parametri e quindi su Set di parametri per visualizzare i set per Start-AzureRmVM.Click Parameters and then Parameter Set to view the sets for Start-AzureRmVM. Selezionare il set di parametri ResourceGroupNameParameterSetName .Select the ResourceGroupNameParameterSetName parameter set. Accanto a ResourceGroupName e Name sono presenti punti esclamativi.ResourceGroupName and Name have exclamation points next them. Indicano che si tratta di parametri obbligatori.This indicates that they are required parameters. Si noti anche che i valori previsti per entrambi sono stringhe.Also note both expect string values.
  5. Selezionare Name.Select Name. Selezionare Espressione PowerShell in Origine dati e digitare il nome della macchina virtuale, racchiuso tra virgolette doppie, che viene avviata con questo runbook.Select PowerShell expression for the Data source and type in the name of the virtual machine surrounded with double quotes that you start with this runbook. Fare clic su OK.Click OK.
  6. Selezionare ResourceGroupName.Select ResourceGroupName. Usare Espressione PowerShell in Origine dati e digitare il nome del gruppo di risorse racchiuso tra virgolette doppie.Use PowerShell expression for the Data source and type in the name of the resource group surrounded with double quotes. Fare clic su OK.Click OK.
  7. Fare clic sul riquadro Test in modo da testare il runbook.Click Test pane so that you can test the runbook.
  8. Fare clic su Avvia per avviare il test.Click Start to start the test. Dopo aver completato l'attività, controllare che la macchina virtuale sia stata avviata.Once it completes, check that the virtual machine was started.

A questo punto l'aspetto del runbook sarà simile al seguente: Your runbook should look like the following at this point:
Configurazione dell'autenticazione runbook

Aggiungere altri parametri di inputAdd additional input parameters

Il runbook avvia attualmente la macchina virtuale nel gruppo di risorse specificato nel cmdlet Start-AzureRmVM.Our runbook currently starts the virtual machine in the resource group that you specified in the Start-AzureRmVM cmdlet. Il runbook sarebbe più utile se si potesse specificarli entrambi quando viene avviato.The runbook would be more useful if we could specify both when the runbook is started. Per fornire questa funzionalità, si aggiungeranno ora dei parametri di input al runbook.You now add input parameters to the runbook to provide that functionality.

  1. Aprire l'editor grafico facendo clic su Modifica nel riquadro MyFirstRunbook-Graphical (MyFirstRunbook-Grafico).Open the graphical editor by clicking Edit on the MyFirstRunbook-Graphical pane.
  2. Selezionare Input e output e quindi Aggiungi input per aprire il riquadro Parametro di input del runbook.Select Input and output and then Add input to open the Runbook Input Parameter pane.
  3. Specificare VMName per Nome.Specify VMName for the Name. Mantenere stringa come Tipo, ma cambiare Obbligatorio in .Keep string for the Type, but change Mandatory to Yes. Fare clic su OK.Click OK.
  4. Creare un secondo parametro di input obbligatorio denominato ResourceGroupName e quindi fare clic su OKper chiudere il riquadro Input e output.Create a second mandatory input parameter called ResourceGroupName and then click OK to close the Input and Output pane.
    Parametri di input del runbookRunbook Input Parameters
  5. Selezionare l'attività Start-AzureRmVM e quindi fare clic su Parametri.Select the Start-AzureRmVM activity and then click Parameters.
  6. Cambiare Origine dati per Nome in Input runbook e quindi selezionare VMName.Change the Data source for Name to Runbook input and then select VMName.
  7. Cambiare Origine dati per ResourceGroupName in Input runbook e quindi selezionare ResourceGroupName.Change the Data source for ResourceGroupName to Runbook input and then select ResourceGroupName.
    Parametri Start-AzureVMStart-AzureVM Parameters
  8. Salvare il runbook e aprire il riquadro Test.Save the runbook and open the Test pane. Ora è possibile fornire i valori per le due variabili di input che verranno usate nel test.You can now provide values for the two input variables that you use in the test.
  9. Chiudere il riquadro Test.Close the Test pane.
  10. Fare clic su Pubblica per pubblicare la nuova versione del runbook.Click Publish to publish the new version of the runbook.
  11. Arrestare la macchina virtuale avviata nel passaggio precedente.Stop the virtual machine that you started in the previous step.
  12. Fare clic su Avvia per avviare il runbook.Click Start to start the runbook. Digitare VMName e ResourceGroupName per la macchina virtuale da avviare.Type in the VMName and ResourceGroupName for the virtual machine that you're going to start.
  13. Quando il runbook viene completato, controllare che la macchina virtuale sia stata avviata.When the runbook completes, check that the virtual machine was started.

Ora si modificherà il runbook in modo che provi ad avviare la macchina virtuale solo se non è già avviata.You now modify the runbook so that it only attempts to start the virtual machine if it is not already started. Per eseguire questa operazione, aggiungere al runbook un cmdlet Get-AzureRmVM che otterrà lo stato della macchina virtuale a livello di istanza.You do this by adding a Get-AzureRmVM cmdlet to the runbook that gets the instance level status of the virtual machine. Verrà quindi aggiunto un modulo Codice del flusso di lavoro PowerShell denominato Get Status con un frammento di codice PowerShell per determinare se lo stato della macchina virtuale è in esecuzione o arrestato.Then you add a PowerShell Workflow code module called Get Status with a snippet of PowerShell code to determine if the virtual machine state is running or stopped. Un collegamento condizionale dal modulo Get Status eseguirà Start-AzureRmVM solo se lo stato di esecuzione corrente è arrestato.A conditional link from the Get Status module only runs Start-AzureRmVM if the current running state is stopped. Infine si genererà un messaggio per informare se la VM è stata avviata correttamente o meno usando il cmdlet Write-Output di PowerShell.Finally, You output a message to inform you if the VM was successfully started or not using the PowerShell Write-Output cmdlet.

  1. Aprire MyFirstRunbook-Graphical (MyFirstRunbook-Grafico) nell'editor grafico.Open MyFirstRunbook-Graphical in the graphical editor.
  2. Rimuovere il collegamento tra Specify Subscription Id e Start-AzureRmVM facendo clic su di esso e quindi premendo CANC.Remove the link between Specify Subscription Id and Start-AzureRmVM by clicking on it and then pressing the Delete key.
  3. Nel controllo Libreria digitare Get-AzureRm nella casella di testo di ricerca.In the Library control, type Get-AzureRm in the search textbox.
  4. Aggiungere Get-AzureRmVM all'area di disegno.Add Get-AzureRmVM to the canvas.
  5. Selezionare Get-AzureRmVM e quindi Set di parametri per visualizzare i set per Get-AzureRmVM.Select Get-AzureRmVM and then Parameter Set to view the sets for Get-AzureRmVM. Selezionare il set di parametri GetVirtualMachineInResourceGroupNameParamSet .Select the GetVirtualMachineInResourceGroupNameParamSet parameter set. Accanto a ResourceGroupName e Name sono presenti punti esclamativi.ResourceGroupName and Name have exclamation points next them. Indicano che si tratta di parametri obbligatori.This indicates that they are required parameters. Si noti anche che i valori previsti per entrambi sono stringhe.Also note both expect string values.
  6. In Origine dati per Nome selezionare Input runbook e quindi selezionare VMName.Under Data source for Name, select Runbook input and then select VMName. Fare clic su OK.Click OK.
  7. In Origine dati per ResourceGroupName selezionare Input runbook e quindi selezionare ResourceGroupName.Under Data source for ResourceGroupName, select Runbook input and then select ResourceGroupName. Fare clic su OK.Click OK.
  8. In Origine dati per Stato selezionare Valore costante e quindi fare clic su True.Under Data source for Status, select Constant value and then click True. Fare clic su OK.Click OK.
  9. Creare un collegamento da Specify Subscription Id a Get-AzureRmVM.Create a link from Specify Subscription Id to Get-AzureRmVM.
  10. Nel controllo Libreria espandere Controllo Runbook e aggiungere Codice all'area di disegno.In the library control, expand Runbook Control and add Code to the canvas.
  11. Creare un collegamento da Get-AzureRmVM a Codice.Create a link from Get-AzureRmVM to Code.
  12. Fare clic su Codice e nel riquadro Configurazione impostare l'etichetta su Get Status.Click Code and in the Configuration pane, change label to Get Status.
  13. Selezionare il parametro Codice per visualizzare la pagina Editor di codice.Select Code parameter, and the Code Editor page appears.
  14. Nell'editor di codice incollare il frammento di codice seguente:In the code editor, paste the following snippet of code:

     $StatusesJson = $ActivityOutput['Get-AzureRmVM'].StatusesText
     $Statuses = ConvertFrom-Json $StatusesJson
     $StatusOut =""
     foreach ($Status in $Statuses){
     if($Status.Code -eq "Powerstate/running"){$StatusOut = "running"}
     elseif ($Status.Code -eq "Powerstate/deallocated") {$StatusOut = "stopped"}
     }
     $StatusOut
    
  15. Creare un collegamento da Get Status a Start-AzureRmVM.Create a link from Get Status to Start-AzureRmVM.
    Runbook con il modulo CodeRunbook with Code Module

  16. Selezionare il collegamento e nel riquadro Configurazione impostare Applica condizione su .Select the link and in the Configuration pane, change Apply condition to Yes. Si noti che il collegamento si trasforma in una linea tratteggiata per indicare che l'attività di destinazione verrà eseguita solo se la condizione restituisce true.Note the link turns to a dashed line indicating that the target activity only runs if the condition resolves to true.
  17. Per Espressione condizionedigitare $ActivityOutput['Get Status'] -eq "Stopped".For the Condition expression, type $ActivityOutput['Get Status'] -eq "Stopped". Start-AzureRmVM verrà ora eseguito solo se la macchina virtuale è arrestata.Start-AzureRmVM now only runs if the virtual machine is stopped.
  18. Nel controllo Libreria, espandere Cmdlets e quindi Microsoft.PowerShell.Utility.In the Library control, expand Cmdlets and then Microsoft.PowerShell.Utility.
  19. Aggiungere Write-Output all'area di disegno due volte.Add Write-Output to the canvas twice.
  20. Nel primo controllo Write-Output fare clic su Parametri e cambiare il valore di Etichetta in Notify VM Started.On the first Write-Output control, click Parameters and change the Label value to Notify VM Started.
  21. Per InputObject cambiare Origine dati in Espressione PowerShell e digitare l'espressione "$VMName successfully started."For InputObject, change Data source to PowerShell expression and type in the expression "$VMName successfully started.".
  22. Nel secondo controllo Write-Output fare clic su Parametri e cambiare il valore di Etichetta in Notify VM Start FailedOn the second Write-Output control, click Parameters and change the Label value to Notify VM Start Failed
  23. Per InputObject cambiare Origine dati in Espressione PowerShell e digitare l'espressione "$VMName could not start."For InputObject, change Data source to PowerShell expression and type in the expression "$VMName could not start.".
  24. Creare un collegamento da Start-AzureRmVM a Notify VM Started e Notify VM Start Failed.Create a link from Start-AzureRmVM to Notify VM Started and Notify VM Start Failed.
  25. Selezionare il collegamento a Notify VM Started e impostare Applica condizione su True.Select the link to Notify VM Started and change Apply condition to True.
  26. Per Espressione condizionedigitare $ActivityOutput['Start-AzureRmVM'].IsSuccessStatusCode -eq $true.For the Condition expression, type $ActivityOutput['Start-AzureRmVM'].IsSuccessStatusCode -eq $true. Questo controllo Write-Output verrà ora eseguito solo se la macchina virtuale viene avviata correttamente.This Write-Output control now only runs if the virtual machine is successfully started.
  27. Selezionare il collegamento a Notify VM Start Failed e impostare Applica condizione su True.Select the link to Notify VM Start Failed and change Apply condition to True.
  28. Per Espressione condizionedigitare $ActivityOutput['Start-AzureRmVM'].IsSuccessStatusCode -ne $true.For the Condition expression, type $ActivityOutput['Start-AzureRmVM'].IsSuccessStatusCode -ne $true. Questo controllo Write-Output verrà ora eseguito solo se la macchina virtuale non viene avviata correttamente.This Write-Output control now only runs if the virtual machine is not successfully started. L'aspetto del runbook sarà simile all'immagine seguente:Your runbook should look like the following image:
    Runbook con Write-OutputRunbook with Write-Output
  29. Salvare il runbook e aprire il riquadro Test.Save the runbook and open the Test pane.
  30. Avviare il runbook con la macchina virtuale arrestata, che dovrebbe essere avviata.Start the runbook with the virtual machine stopped, and it should start.

Passaggi successiviNext steps