Este artigo descreve como criar pré e pós-eventos no Gerenciador de Atualizações do Azure.
Grade de Eventos em configurações de manutenção de agendamento
O Gerenciador de Atualizações do Azure tira proveito da Grade de Eventos para criar e gerenciar os eventos pré e pós. Para obter mais informações, confira a visão geral da Grade de Eventos. Para disparar um evento antes ou depois de uma janela de manutenção de agendamento, você precisará do seguinte:
Configuração de manutenção agendada - Você pode criar pré e pós-eventos para uma configuração de manutenção agendada no Gerenciador de Atualizações do Azure. Para obter mais informações, confira agendar atualizações usando as configurações de manutenção.
Ação a ser realizada antes e após eventos – Você pode usar os Manipuladores de eventos (pontos de extremidade) compatíveis com a Grade de Eventos para definir ações ou tarefas. Aqui estão exemplos de como criar Runbooks de Automação do Azure por meio de Webhooks e Azure Functions. Dentro desses Manipuladores de eventos/Pontos de extremidade, você deve definir as ações que devem ser executadas como parte de pré e pós-eventos.
Pré e pós-evento – Você pode seguir as etapas compartilhadas na seção a seguir para criar um pré e pós-evento para a configuração de manutenção de agendamento. Para saber mais sobre os termos usados na guia Básico da Grade de Eventos, consulte os termos da Grade de Eventos.
Criar um evento pré e pós
Criar pré e pós-eventos ao criar uma nova configuração de manutenção de agendamento
Entre no portal do Azure e vá para Azure Update Manager.
Em Gerenciar, selecione Computadores.
Selecione Agendar atualizações na faixa de opções na parte superior.
Na página Criar uma configuração de manutenção, selecione a guia Eventos.
Selecione +Assinatura de evento para criar pré/pós-evento.
Na página Adicionar assinatura de evento, insira os seguintes detalhes: na seção Detalhes da assinatura de evento, forneça um nome apropriado.
Mantenha o esquema como Esquema da Grade de Eventos.
Insira o Nome do tópico do sistema para o primeiro evento que você criar nesta configuração de manutenção. O mesmo nome do tópico do sistema será preenchido automaticamente para os eventos consequentes.
Na seção Tipos de eventos, Filtrar para tipos de eventos, selecione os tipos de eventos que você deseja enviar para o ponto de extremidade ou destino. Você pode selecionar Pré-evento de manutenção ou Pós-evento de manutenção ou ambos. Para saber mais sobre os tipos de eventos específicos para configurações de manutenção de agendamento, consulte Tipos de eventos do Azure.
Na seção Detalhes do ponto de extremidade, selecione o ponto de extremidade de onde você deseja receber a resposta.
Selecione Adicionar para criar pré e pós-eventos para o agendamento após sua criação.
Observação
No fluxo acima, o Webhook e o Azure Functions são os dois manipuladores/pontos de extremidade de eventos que você pode escolher. Quando você seleciona Adicionar, a assinatura do evento não é criada, mas adicionada à configuração de manutenção. A assinatura do evento é criada junto com a configuração de manutenção de agendamento.
Crie uma configuração de manutenção seguindo as etapas listadas aqui.
# Obtain the Maintenance Configuration ID from Step 1 and assign it to MaintenanceConfigurationResourceId variable
$MaintenanceConfigurationResourceId = "/subscriptions/<subId>/resourceGroups/<Resource group>/providers/Microsoft.Maintenance/maintenanceConfigurations/<Maintenance configuration Name>"
# Use the same Resource Group that you used to create maintenance configuration in Step 1
$ResourceGroupForSystemTopic = "<Resource Group for System Topic>"
$SystemTopicName = "<System topic name>"
$TopicType = "Microsoft.Maintenance.MaintenanceConfigurations"
$SystemTopicLocation = "<System topic location>"
# System topic creation
New-AzEventGridSystemTopic -ResourceGroupName $ResourceGroupForSystemTopic -Name $SystemTopicName -Source $MaintenanceConfigurationResourceId -TopicType $TopicType -Location $SystemTopicLocation
# Event subscription creation
$IncludedEventTypes = @("Microsoft.Maintenance.PreMaintenanceEvent")
# Webhook
$EventSubscriptionName = "PreEventWebhook"
$PreEventWebhookEndpoint = "<Webhook URL>"
$dest = New-AzEventGridWebHookEventSubscriptionDestinationObject -EndpointUrl $PreEventWebhookEndpoint
New-AzEventGridSystemTopicEventSubscription -ResourceGroupName $ResourceGroupForSystemTopic -SystemTopicName $SystemTopicName -EventSubscriptionName $EventSubscriptionName -Endpoint $PreEventWebhookEndpoint -IncludedEventType $IncludedEventTypes -Destination $dest
# Azure Function
$dest = New-AzEventGridAzureFunctionEventSubscriptionDestinationObject -ResourceId "<Azure Function Resource Id>"
New-AzEventGridSystemTopicEventSubscription -ResourceGroupName $ResourceGroupForSystemTopic -SystemTopicName $SystemTopicName -EventSubscriptionName $EventSubscriptionName -Destination $dest -IncludedEventType $IncludedEventTypes
Crie uma configuração de manutenção seguindo as etapas listadas aqui.
SystemTopicName="<System topic name>
# Use the same Resource Group that you used to create maintenance configuration in Step 1
ResourceGroupName="<Resource Group mentioned in Step 1>"
# Obtain the Maintenance Configuration ID from Step 1 and assign it to Source variable
Source="/subscriptions/<subId>/resourceGroups/<Resource group>/providers/Microsoft.Maintenance/maintenanceConfigurations/<Maintenance configuration Name>"
TopicType="Microsoft.Maintenance.MaintenanceConfigurations"
Location="<System topic location> "
# System topic creation
az eventgrid system-topic create --name $SystemTopicName --resource-group $ResourceGroupName --source $Source --topic-type $TopicType --location $Location
# Event subscription creation
IncludedEventTypes='("Microsoft.Maintenance.PreMaintenanceEvent")'
# Webhook
az eventgrid system-topic event-subscription create --name "<Event subscription name>" --resource-group $ResourceGroupName --system-topic-name $SystemTopicName --endpoint-type webhook --endpoint "<webhook URL>" --included-event-types IncludedEventTypes
# Azure Function
az eventgrid system-topic event-subscription create –name "<Event subscription name>" --resource-group $ResourceGroupName --system-topic-name $SystemTopicName --endpoint-type azurefunction --endpoint "<Azure Function ResourceId>" --included-event-types IncludedEventTypes
Crie uma configuração de manutenção seguindo as etapas listadas aqui.
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>?api-version=2022-06-15
Tipos de eventos permitidos – Microsoft.Maintenance.PreMaintenanceEvent, Microsoft.Maintenance.PostMaintenanceEvent
Webhook
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
Entre no portal do Azure e vá para Azure Update Manager.
Em Gerenciar, selecione Máquinas, Configurações de Manutenção.
Na página Configuração de manutenção, selecione a configuração de manutenção à qual você deseja adicionar um pré e pós-evento.
Na página Configuração de manutenção selecionada, em Configurações, selecione Eventos. Alternativamente, em Visão geral, selecione o cartão Criar um evento de manutenção.
Selecione +Assinatura de evento para criar um evento de pré/pós-manutenção.
Na página Criar assinatura de evento, insira os seguintes detalhes:
Na seção Detalhes da assinatura do evento, forneça um nome apropriado.
Mantenha o esquema como Esquema da Grade de Eventos.
Na seção Detalhes do tópico, forneça um nome apropriado para o Nome do tópico do sistema.
Na seção Tipos de eventos, Filtrar para tipos de eventos, selecione os tipos de eventos que você deseja enviar para o ponto de extremidade ou destino. Você pode selecionar entre Evento de Pré-Manutenção e Evento de Pós-Manutenção. Para saber mais sobre os tipos de eventos específicos para configurações de manutenção de agendamento, consulte Tipos de eventos do Azure.
Na seção Detalhes do ponto de extremidade, selecione o ponto de extremidade de onde você deseja receber a resposta.
Selecione Criar para configurar os eventos pré e pós em uma programação existente.
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>?api-version=2022-06-15
Tipos de eventos permitidos – Microsoft.Maintenance.PreMaintenanceEvent, Microsoft.Maintenance.PostMaintenanceEvent
Webhook
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15