Pianificazione di un runbook in Automazione di AzureScheduling a runbook in Azure Automation

Per pianificare un runbook in Automazione di Azure per l'avvio a un'ora specifica, è necessario collegarlo a una o più pianificazioni.To schedule a runbook in Azure Automation to start at a specified time, you link it to one or more schedules. È possibile configurare una pianificazione in modo che i runbook vengano eseguiti una sola volta oppure con cadenza oraria o giornaliera nel portale di Azure.A schedule can be configured to either run once or on a reoccurring hourly or daily schedule for runbooks in the Azure portal. È inoltre possibile pianificare un'esecuzione settimanale, mensile o in giorni specifici della settimana o del mese oppure in un determinato giorno del mese.You can also schedule them for weekly, monthly, specific days of the week or days of the month, or a particular day of the month. Un runbook può essere collegato a più pianificazioni e a una pianificazione possono essere collegati più runbook.A runbook can be linked to multiple schedules, and a schedule can have multiple runbooks linked to it.

Nota

Le pianificazioni attualmente non supportano le configurazioni DSC di automazione di Azure.Schedules do not currently support Azure Automation DSC configurations.

Cmdlet di Windows PowerShellWindows PowerShell Cmdlets

I cmdlet della tabella seguente vengono usati per creare e gestire pianificazioni con Windows PowerShell in Automazione di Azure.The cmdlets in the following table are used to create and manage schedules with Windows PowerShell in Azure Automation. Vengono forniti nel modulo Azure PowerShell.They ship as part of the Azure PowerShell module.

CmdletsCmdlets DESCRIZIONEDescription
Get-AzureRmAutomationScheduleGet-AzureRmAutomationSchedule Recupera una pianificazione.Retrieves a schedule.
New-AzureRmAutomationScheduleNew-AzureRmAutomationSchedule Crea una nuova pianificazione.Creates a new schedule.
Remove-AzureRmAutomationScheduleRemove-AzureRmAutomationSchedule Rimuove una pianificazione.Removes a schedule.
Set-AzureRmAutomationScheduleSet-AzureRmAutomationSchedule Imposta le proprietà di una pianificazione esistente.Sets the properties for an existing schedule.
Get-AzureRmAutomationScheduledRunbookGet-AzureRmAutomationScheduledRunbook Recupera i runbook pianificati.Retrieves scheduled runbooks.
Register-AzureRmAutomationScheduledRunbookRegister-AzureRmAutomationScheduledRunbook Associa un runbook a una pianificazione.Associates a runbook with a schedule.
Unregister-AzureRmAutomationScheduledRunbookUnregister-AzureRmAutomationScheduledRunbook Annulla l'associazione di un runbook a una pianificazione.Dissociates a runbook from a schedule.

Creazione di una pianificazioneCreating a schedule

È possibile creare una nuova pianificazione per i runbook nel portale di Azure o con Windows PowerShell.You can create a new schedule for runbooks in the Azure portal or with Windows PowerShell.

Nota

Quando viene eseguito un nuovo processo pianificato, Automazione di Azure usa i moduli più recenti nell'account di automazione.Azure Automation uses the latest modules in your Automation account when a new scheduled job is run. Per evitare conseguenze per i runbook e i processi che vengono automatizzati, è necessario innanzitutto testare tutti i runbook che dispongono di pianificazioni collegate con un account di automazione dedicato ai test.To avoid impacting your runbooks and the processes they automate, you should first test any runbooks that have linked schedules with an Automation account dedicated for testing. In questo modo vengono convalidati i runbook pianificati, che continuano a funzionare correttamente; in caso contrario è possibile risolvere i problemi e applicare eventuali modifiche necessarie prima della migrazione della versione aggiornata del runbook all'ambiente di produzione.This validates your scheduled runbooks continue to work correctly and if not, you can further troubleshoot and apply any changes required before migrating the updated runbook version to production. L'account di automazione non riceve automaticamente nuove versioni dei moduli a meno che tali versioni non siano state aggiornate manualmente selezionando l'opzione Aggiorna moduli di Azure nel riquadro Moduli.Your Automation account does not automatically get any new versions of modules unless you have updated them manually by selecting the Update Azure Modules option from the Modules.

Per creare una nuova pianificazione nel portale di AzureTo create a new schedule in the Azure portal

  1. Dall'account di automazione nel portale di Azure, selezionare Pianificazioni nella sezione Risorse condivise a sinistra.In the Azure portal, from your automation account, select Schedules under the section Shared Resources on the left.
  2. Fare clic su Aggiungi pianificazione nella parte superiore della pagina.Click Add a schedule at the top of the page.
  3. Nel riquadro Nuova pianificazione digitare un Nome e facoltativamente una Descrizione per la nuova pianificazione.On the New schedule pane, type a Name and optionally a Description for the new schedule.
  4. Specificare se la pianificazione verrà eseguita una volta o in modo ricorrente, selezionando Una sola volta o Ricorrenza.Select whether the schedule runs one time, or on a reoccurring schedule by selecting Once or Recurrence. Se si seleziona Una sola volta specificare un'Ora di inizio e quindi fare clic su Crea.If you select Once specify a Start time, and then click Create. Se si seleziona Ricorrenza, specificare un'Ora di inizio e la frequenza desiderata per la ripetizione del runbook, ad esempio ora, giorno, settimana o mese.If you select Recurrence, specify a Start time and the frequency for how often you want the runbook to repeat - by hour, day, week, or by month. Se si seleziona settimana o mese dall'elenco a discesa, l'opzione Ricorrenza verrà visualizzata nel riquadro e al momento della selezione verrà visualizzato il riquadro Opzioni di ricorrenza, in cui sarà possibile selezionare il giorno della settimana, se è stata selezionata l'opzione settimana.If you select week or month from the drop-down list, the Recurrence option appears in the pane and upon selection, the Recurrence option pane is presented and you can select the day of week if you selected week. Se è stata selezionata l'opzione mese, è possibile scegliere Giorni della settimana o indicare i giorni specifici del mese nel calendario e infine specificare se si vuole eseguire la pianificazione l'ultimo giorno del mese, quindi fare clic su OK.If you selected month, you can choose by weekdays or specific days of the month on the calendar and finally, do you want to run it on the last day of the month or not and then click OK.

Per creare una nuova pianificazione con Windows PowerShellTo create a new schedule with Windows PowerShell

Usare il cmdlet New-AzureRmAutomationSchedule per creare le pianificazioni.You use the New-AzureRmAutomationSchedule cmdlet to create schedules. Specificare l'ora di inizio per la pianificazione e la frequenza di esecuzione.You specify the start time for the schedule and the frequency it should run.

I comandi di esempio seguenti illustrano come creare una pianificazione per i giorni 15 e 30 di ogni mese usando un cmdlet di Azure Resource Manager.The following sample commands show how to create a schedule for the 15th and 30th of every month using an Azure Resource Manager cmdlet.

$automationAccountName = "MyAutomationAccount"
$scheduleName = "Sample-MonthlyDaysOfMonthSchedule"
New-AzureRMAutomationSchedule –AutomationAccountName $automationAccountName –Name `
$scheduleName -StartTime "7/01/2016 15:30:00" -MonthInterval 1 `
-DaysOfMonth Fifteenth,Thirtieth -ResourceGroupName "ResourceGroup01"

Collegamento di una pianificazione a un runbookLinking a schedule to a runbook

Un runbook può essere collegato a più pianificazioni e a una pianificazione possono essere collegati più runbook.A runbook can be linked to multiple schedules, and a schedule can have multiple runbooks linked to it. Se un runbook dispone di parametri, è possibile fornire valori per tali parametri.If a runbook has parameters, then you can provide values for them. È necessario specificare i valori per tutti i parametri obbligatori, mentre è possibile scegliere se specificare o meno i valori per i parametri facoltativi.You must provide values for any mandatory parameters and may provide values for any optional parameters. Questi valori vengono usati ogni volta che il runbook viene avviato dalla pianificazione.These values are used each time the runbook is started by this schedule. È possibile collegare lo stesso runbook a un'altra pianificazione e specificare valori diversi per i parametri.You can attach the same runbook to another schedule and specify different parameter values.

  1. Dall'account di automazione nel portale di Azure, selezionare Runbook nella sezione Automazione processi a sinistra.In the Azure portal, from your automation account, select Runbooks under the section Process Automation on the left.
  2. Fare clic sul nome del runbook da pianificare.Click on the name of the runbook to schedule.
  3. Se il runbook non è attualmente collegato a una pianificazione, è possibile creare una nuova pianificazione o collegarsi a una pianificazione esistente.If the runbook is not currently linked to a schedule, then you are offered the option to create a new schedule or link to an existing schedule.
  4. Se il runbook include parametri, è possibile selezionare l'opzione Modifica le impostazioni di esecuzione (impostazione predefinita: Azure). Verrà visualizzato il riquadro Parametri, in cui è possibile immettere le informazioni in base alla esigenze.If the runbook has parameters, you can select the option Modify run settings (Default:Azure) and the Parameters pane is presented where you can enter the information accordingly.

È possibile usare il cmdlet Register AzureRmAutomationScheduledRunbook per collegare una pianificazione.You can use the Register-AzureRmAutomationScheduledRunbook cmdlet to link a schedule. È possibile specificare i valori per i parametri del runbook con il parametro Parameters.You can specify values for the runbook’s parameters with the Parameters parameter. Per altre informazioni su come specificare i valori dei parametri, vedere Avvio di un runbook in Automazione di Azure.For more information on specifying parameter values, see Starting a Runbook in Azure Automation. I comandi di esempio seguenti mostrano come collegare una pianificazione a un runbook usando un cmdlet di Azure Resource Manager con parametri.The following sample commands show how to link a schedule to a runbook using an Azure Resource Manager cmdlet with parameters.

$automationAccountName = "MyAutomationAccount"
$runbookName = "Test-Runbook"
$scheduleName = "Sample-DailySchedule"
$params = @{"FirstName"="Joe";"LastName"="Smith";"RepeatCount"=2;"Show"=$true}
Register-AzureRmAutomationScheduledRunbook –AutomationAccountName $automationAccountName `
–Name $runbookName –ScheduleName $scheduleName –Parameters $params `
-ResourceGroupName "ResourceGroup01"

Pianificazione più frequente dei runbookScheduling runbooks more frequently

L'intervallo più frequente per il quale è possibile configurare una pianificazione in Automazione di Azure è un'ora.The most frequent interval a schedule in Azure Automation can be configured for is one hour. Se sono necessarie pianificazioni da eseguire più frequentemente rispetto a questa, sono disponibili due opzioni:If you require schedules to execute more frequently than that, there are two options:

  • Creare un webhook per il runbook e usare l'Utilità di pianificazione di Azure per chiamare il webhook.Create a webhook for the runbook and use Azure Scheduler to call the webhook. Utilità di pianificazione di Azure fornisce una granularità più precisa quando si definisce una pianificazione.Azure Scheduler provides more fine-grained granularity when defining a schedule.

  • Creare quattro pianificazioni, tutte in avvio entro 15 minuti una dall'altra, in esecuzione una volta ogni ora.Create four schedules all starting within 15 minutes of each other running once every hour. Questo scenario consente l'esecuzione del runbook ogni 15 minuti con pianificazioni diverse.This scenario allows the runbook to run every 15 minutes with the different schedules.

Disabilitazione di una pianificazioneDisabling a schedule

Quando si disabilita una pianificazione, i runbook a essa collegati non vengono più eseguiti in base a tale pianificazione.When you disable a schedule, any runbook linked to it no longer runs on that schedule. È possibile disabilitare manualmente una pianificazione o impostare un'ora di scadenza per le pianificazioni con una frequenza durante la fase di creazione.You can manually disable a schedule or set an expiration time for schedules with a frequency when you create them. Quando viene raggiunta l'ora di scadenza, la pianificazione viene disabilitata.When the expiration time is reached, the schedule is disabled.

Per disabilitare una pianificazione dal portale di AzureTo disable a schedule from the Azure portal

  1. Dall'account di automazione nel portale di Azure, selezionare Pianificazioni nella sezione Risorse condivise a sinistra.In the Azure portal, from your Automation account, select Schedules under the section Shared Resources on the left.
  2. Fare clic sul nome di una pianificazione per aprire il rispettivo riquadro dei dettagli.Click the name of a schedule to open the details pane.
  3. Impostare Abilitata su No.Change Enabled to No.

Per disabilitare una pianificazione con Windows PowerShellTo disable a schedule with Windows PowerShell

È possibile usare il cmdlet Set-AzureRmAutomationSchedule per modificare le proprietà di una pianificazione esistente.You can use the Set-AzureRmAutomationSchedule cmdlet to change the properties of an existing schedule. Per disabilitare la pianificazione, specificare false per il parametro IsEnabled.To disable the schedule, specify false for the IsEnabled parameter.

I comandi di esempio seguenti mostrano come disabilitare una pianificazione per un runbook usando un cmdlet di Azure Resource Manager.The following sample commands show how to disable a schedule for a runbook using an Azure Resource Manager cmdlet.

$automationAccountName = "MyAutomationAccount"
$scheduleName = "Sample-MonthlyDaysOfMonthSchedule"
Set-AzureRmAutomationSchedule –AutomationAccountName $automationAccountName `
–Name $scheduleName –IsEnabled $false -ResourceGroupName "ResourceGroup01"

Passaggi successiviNext steps