In diesem Artikel erfahren Sie, wie Sie Vor- und Nachbereitungsereignisse in Azure Update Manager erstellen.
Event Grid in Wartungszeitplankonfigurationen
Azure Update Manager nutzt Event Grid zum Erstellen und Verwalten von Vor- und Nachbereitungsereignissen. Weitere Informationen hierzu erfahren Sie in der Übersicht über Event Grid. Um ein Ereignis vor oder nach einem Wartungsfenster für einen Zeitplan auszulösen, benötigen Sie Folgendes:
Planen der Wartungskonfiguration: Sie können Vor- und Nachbereitungsereignisse für eine Wartungszeitplankonfiguration in Azure Update Manager erstellen. Weitere Informationen finden Sie unter Planen von Updates mithilfe von Wartungskonfigurationen.
Aktion, die als Vor- oder Nachbereitungsereignis ausgeführt werden soll: Sie können die Ereignishandler (Endpunkte) verwenden, die von Event Grid unterstützt werden, um Aktionen oder Tasks zu definieren. Hier finden Sie Beispiele zum Erstellen von Azure Automation Runbooks über Webhooks und Azure Functions. Innerhalb dieser Ereignishandler/Endpunkte müssen Sie die Aktionen definieren, die als Teil von Vor- und Nachbereitungsereignissen ausgeführt werden sollen.
Vor- und Nachbereitungsereignis: Sie können die im folgenden Abschnitt angegebenen Schritte ausführen, um ein Vor- und Nachbereitungsereignis für die Planung der Wartungskonfiguration zu erstellen. Weitere Informationen zu den Begriffen, die auf der Registerkarte „Allgemeine Informationen“ von Event Grid verwendet werden, finden Sie unter Event Grid-Begriffe.
Erstellen eines Vor- und Nachbereitungsereignisses
Erstellen von Vor- und Nachbereitungsereignissen beim Erstellen einer neuen Konfiguration für eine geplante Wartung
Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Azure Update Manager.
Wählen Sie unter Verwalten die Option Computer aus.
Wählen Sie oben im Menüband Updates planen aus.
Wählen Sie auf der Seite Wartungskonfiguration erstellen die Registerkarte Ereignisse (Events) aus.
Wählen Sie + Ereignisabonnement aus, um ein Vor- oder Nachbereitungsereignis zu erstellen.
Geben Sie auf der Seite Ereignisabonnement hinzufügen die folgenden Details ein: Geben Sie im Abschnitt Details zum Ereignisabonnement einen geeigneten Namen ein.
Behalten Sie für das Schema die Option Event Grid-Schema bei.
Geben Sie den Namen des Systemthemas für das erste Ereignis ein, das Sie in dieser Wartungskonfiguration erstellen. Derselbe Name des Systemthemas wird automatisch für die folgenden Ereignisse eingetragen.
Wählen Sie im Abschnitt Ereignistypen unter Nach Ereignistypen filtern die Ereignistypen aus, die an den Endpunkt oder an das Ziel gepusht werden sollen. Sie können entweder Ereignis vor der Wartung oder Ereignis nach der Wartung oder beides auswählen. Weitere Informationen zu Ereignistypen, die spezifisch für Konfigurationen von geplanten Wartungen sind, finden Sie unter Azure-Ereignistypen.
Wählen Sie im Abschnitt Endpunktdetails den Endpunkt aus, von dem Sie die Antwort empfangen möchten.
Wählen Sie Hinzufügen aus, um die Vor- und Nachbereitungsereignisse bei der Erstellung des Zeitplans zu erstellen.
Hinweis
Im obigen Flow sind Webhook und Azure Functions die beiden Ereignishandler/Endpunkte, aus denen Sie auswählen können. Wenn Sie Hinzufügen auswählen, wird das Ereignisabonnement nicht erstellt, sondern zur Wartungskonfiguration hinzugefügt. Das Ereignisabonnement wird zusammen mit der Konfiguration für die geplante Wartung erstellt.
Erstellen Sie eine Wartungskonfiguration, indem Sie die hier aufgeführten Schritte ausführen.
# 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>"
New-AzEventGridSystemTopicEventSubscription -ResourceGroupName $ResourceGroupForSystemTopic -SystemTopicName $SystemTopicName -EventSubscriptionName $EventSubscriptionName -Endpoint $PreEventWebhookEndpoint -IncludedEventType $IncludedEventTypes
# Azure Function
$dest = New-AzEventGridAzureFunctionEventSubscriptionDestinationObject -ResourceId "<Azure Function Resource Id>"
New-AzEventGridSystemTopicEventSubscription -ResourceGroupName $ResourceGroupForSystemTopic -SystemTopicName $SystemTopicName -EventSubscriptionName $EventSubscriptionName -Destination $dest -IncludedEventType $IncludedEventTypes
Erstellen Sie eine Wartungskonfiguration, indem Sie die hier aufgeführten Schritte ausführen.
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
Erstellen Sie eine Wartungskonfiguration, indem Sie die hier aufgeführten Schritte ausführen.
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic 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
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Azure Update Manager.
Wählen Sie unter Verwalten erst Computer und dann Wartungskonfigurationen aus.
Wählen Sie auf der Seite Wartungskonfiguration die Wartungskonfiguration aus, der Sie ein Vor- und Nachbereitungsereignis hinzufügen möchten.
Wählen Sie auf der ausgewählten Seite Wartungskonfiguration unter Einstellungen die Option Ereignisse (Events) aus. Wählen Sie alternativ unter Übersicht die Karte Wartungsereignis erstellen aus.
Wählen Sie + Ereignisabonnement aus, um ein Ereignis vor oder nach der Wartung zu erstellen.
Geben Sie auf der Seite Ereignisabonnement erstellen die folgenden Details ein:
Geben Sie im Abschnitt Details zum Ereignisabonnement einen geeigneten Namen an.
Behalten Sie für das Schema die Option Event Grid-Schema bei.
Geben Sie im Abschnitt Themendetails unter Name des Systemthemas einen geeigneten Namen an.
Wählen Sie im Abschnitt Ereignistypen unter Nach Ereignistypen filtern die Ereignistypen aus, die an den Endpunkt oder an das Ziel gepusht werden sollen. Sie können zwischen Ereignis vor der Wartung und Ereignis nach der Wartung wählen. Weitere Informationen zu Ereignistypen, die spezifisch für Konfigurationen von geplanten Wartungen sind, finden Sie unter Azure-Ereignistypen.
Wählen Sie im Abschnitt Details zum Endpunkt den Endpunkt aus, von dem Sie die Antwort empfangen möchten.
Wählen Sie Erstellen aus, um die Vor- oder Nachbereitungsereignisse für einen bereits vorhandenen Zeitplan zu konfigurieren.
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic 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
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15