Creare pianificazioni degli aggiornamentiCreate update schedules

È possibile gestire le pianificazioni degli aggiornamenti usando il portale di Azure o i nuovi moduli dei cmdlet di PowerShell.You can manage update schedules by using the Azure portal or the new PowerShell cmdlet modules.

Per creare una pianificazione degli aggiornamenti tramite la portale di Azure, vedere pianificare una distribuzione degli aggiornamenti.To create an update schedule via the Azure portal, see Schedule an update deployment.

Il Az.Automation modulo supporta ora la configurazione della gestione degli aggiornamenti tramite Azure PowerShell.The Az.Automation module now supports configuring update management by using Azure PowerShell. La versione 1.7.0 del modulo aggiunge il supporto per il cmdlet New-AzAutomationUpdateManagementAzureQuery .Version 1.7.0 of the module adds support for the New-AzAutomationUpdateManagementAzureQuery cmdlet. Questo cmdlet consente di usare tag, percorso e ricerche salvate per configurare le pianificazioni degli aggiornamenti per un gruppo di computer flessibile.This cmdlet lets you use tags, location, and saved searches to configure update schedules for a flexible group of machines.

Script di esempioExample script

Lo script di esempio in questa sezione illustra l'uso di tag e query per creare gruppi dinamici di computer a cui è possibile applicare le pianificazioni degli aggiornamenti.The example script in this section illustrates the use of tagging and querying to create dynamic groups of machines that you can apply update schedules to. Esegue le azioni seguenti.It performs the following actions. Quando si creano script personalizzati, è possibile fare riferimento alle implementazioni delle azioni specifiche.You can refer to the implementations of the specific actions when you create your own scripts.

  • Crea una pianificazione di aggiornamento di automazione di Azure che viene eseguita ogni sabato alle 8:00 AM.Creates an Azure Automation update schedule that runs every Saturday at 8:00 AM.
  • Crea una query per tutti i computer che soddisfano i criteri seguenti:Creates a query for any machines that match these criteria:
    • Distribuito nella westus località di eastus Azure, o eastus2 .Deployed in the westus, eastus, or eastus2 Azure location.
    • Viene Owner applicato un tag con un valore impostato su JaneSmith .Has an Owner tag applied with a value set to JaneSmith.
    • Viene Production applicato un tag con un valore impostato su true .Has a Production tag applied with a value set to true.
  • Applica la pianificazione dell'aggiornamento ai computer sottoposti a query e imposta una finestra di aggiornamento di due ore.Applies the update schedule to the queried machines and sets a two-hour update window.

Prima di eseguire lo script di esempio, è necessario accedere usando il cmdlet Connect-AzAccount .Before you run the example script, you'll need to sign in by using the Connect-AzAccount cmdlet. Quando si avvia lo script, fornire le seguenti informazioni:When you start the script, provide the following information:

  • ID sottoscrizione di destinazioneThe target subscription ID
  • Gruppo di risorse di destinazioneThe target resource group
  • Nome dell'area di lavoro Log AnalyticsYour Log Analytics workspace name
  • Nome dell'account di automazione di AzureYour Azure Automation account name

    <#
        .SYNOPSIS
            This script orchestrates the deployment of the solutions and the agents.
        .Parameter SubscriptionName
        .Parameter WorkspaceName
        .Parameter AutomationAccountName
        .Parameter ResourceGroupName

    #>

    param (
        [Parameter(Mandatory=$true)]
        [string] $SubscriptionId,

        [Parameter(Mandatory=$true)]
        [string] $ResourceGroupName,

        [Parameter(Mandatory=$true)]
        [string] $WorkspaceName,

        [Parameter(Mandatory=$true)]
        [string] $AutomationAccountName,

        [Parameter(Mandatory=$false)]
        [string] $scheduleName = "SaturdayCriticalSecurity"
    )

    Import-Module Az.Automation

    $startTime = ([DateTime]::Now).AddMinutes(10)
    $schedule = New-AzAutomationSchedule -ResourceGroupName $ResourceGroupName `
        -AutomationAccountName $AutomationAccountName `
        -StartTime $startTime `
        -Name $scheduleName `
        -Description "Saturday patches" `
        -DaysOfWeek Saturday `
        -WeekInterval 1 `
        -ForUpdateConfiguration

    # Using AzAutomationUpdateManagementAzureQuery to create dynamic groups.

    $queryScope = @("/subscriptions/$SubscriptionID/resourceGroups/")

    $query1Location =@("westus", "eastus", "eastus2")
    $query1FilterOperator = "Any"
    $ownerTag = @{ "Owner"= @("JaneSmith") }
    $ownerTag.Add("Production", "true")

    $DGQuery = New-AzAutomationUpdateManagementAzureQuery -ResourceGroupName $ResourceGroupName `
        -AutomationAccountName $AutomationAccountName `
        -Scope $queryScope `
        -Tag $ownerTag

    $AzureQueries = @($DGQuery)

    $UpdateConfig = New-AzAutomationSoftwareUpdateConfiguration -ResourceGroupName $ResourceGroupName `
        -AutomationAccountName $AutomationAccountName `
        -Schedule $schedule `
        -Windows `
        -Duration (New-TimeSpan -Hours 2) `
        -AzureQuery $AzureQueries `
        -IncludedUpdateClassification Security,Critical

Passaggi successiviNext steps

Vedere esempi di come implementare criteri comuni in Azure che consentono di gestire i server.See examples of how to implement common policies in Azure that can help manage your servers.