Criar agendas de atualização
Pode gerir agendas de atualização com o portal do Azure ou os novos módulos de cmdlets do PowerShell.
Para criar uma agenda de atualização através do portal do Azure, consulte Agendar uma implementação de atualização.
O Az.Automation
módulo suporta agora a configuração da Gestão de Atualizações com Azure PowerShell. O New-AzAutomationUpdateManagementAzureQuery
cmdlet permite-lhe utilizar etiquetas, localização e pesquisas guardadas para configurar agendas de atualização para um grupo flexível de máquinas.
Script de exemplo
O script de exemplo nesta secção ilustra a utilização de etiquetas e consultas para criar grupos dinâmicos de computadores aos quais pode aplicar agendas de atualização. Executa as seguintes ações. Pode consultar as implementações das ações específicas quando cria os seus próprios scripts.
- Cria uma Automatização do Azure agenda de atualização que é executada todos os sábados às 8:00.
- Cria uma consulta para qualquer máquina que corresponda a estes critérios:
- Implementado na localização do ,
eastus
oueastus2
dowestus
Azure. - Tem uma
Owner
etiqueta aplicada com um valor definido comoJaneSmith
. - Tem uma
Production
etiqueta aplicada com um valor definido comotrue
.
- Implementado na localização do ,
- Aplica a agenda de atualização às máquinas consultadas e define uma janela de atualização de duas horas.
Antes de executar o script de exemplo, terá de iniciar sessão com o Connect-AzAccount
cmdlet. Quando iniciar o script, forneça as seguintes informações:
- O ID da subscrição de destino
- O grupo de recursos de destino
- O nome da área de trabalho do Log Analytics
- O nome da sua conta Automatização do 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
Passos seguintes
Veja exemplos de como implementar políticas comuns no Azure que podem ajudar a gerir os seus servidores.