Creare pianificazioni degli aggiornamenti
È possibile gestire le pianificazioni degli aggiornamenti usando il portale di Azure o i nuovi moduli cmdlet di PowerShell.
Per creare una pianificazione degli aggiornamenti tramite il portale di Azure, vedere Pianificare gli aggiornamenti ricorrenti in una singola macchina virtuale.
Il modulo Az.Automation
supporta ora la configurazione di Gestione aggiornamenti tramite Azure PowerShell. Il cmdlet New-AzAutomationUpdateManagementAzureQuery
consente di usare tag, posizione e ricerche salvate per configurare le pianificazioni degli aggiornamenti per un gruppo flessibile di computer.
Script di esempio
Lo script di esempio in questa sezione illustra l'uso dell'assegnazione di tag e l'esecuzione di query per creare gruppi dinamici di computer a cui è possibile applicare pianificazioni degli aggiornamenti. Esegue le azioni seguenti. È possibile fare riferimento alle implementazioni delle azioni specifiche quando si creano script personalizzati.
- Crea una pianificazione degli aggiornamenti di Automazione di Azure che viene eseguita ogni sabato alle 8:00.
- Crea una query per tutti i computer che soddisfano questi criteri:
- Distribuito nella località di Azure
westus
,eastus
oeastus2
. - Ha un tag
Owner
applicato con un valore impostato suJaneSmith
. - Ha applicato un tag
Production
con un valore impostato sutrue
.
- Distribuito nella località di Azure
- Applica il programma di aggiornamento alle macchine interrogate e imposta una finestra di aggiornamento di due ore.
Prima di eseguire lo script di esempio, è necessario accedere usando il cmdlet Connect-AzAccount
. Quando si avvia lo script, specificare le informazioni seguenti:
- L'ID della sottoscrizione destinataria
- Gruppo di risorse di destinazione
- Nome dell'area di lavoro Log Analytics
- Nome dell'account di Automazione di Azure
<#
.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 successivi
Vedi esempi su come implementare criteri comuni in Azure che possono aiutare a gestire i tuoi server.