A következőkre vonatkozik: ✔️ Windows rendszerű virtuális gépek ✔️ Linux rendszerű virtuális gépek ✔️ helyszíni környezet ✔️ Azure Arc-kompatibilis kiszolgálók ✔️ Azure-beli virtuális gépek.
Az elő- és utóesemények lehetővé teszik a felhasználó által meghatározott műveletek végrehajtását az ütemezett karbantartási konfiguráció előtt és után. További információkért tekintse át az elő- és közzétételi események működését az Azure Update Managerben.
Ez a cikk bemutatja, hogyan hozhat létre elő- és közzétételi eseményeket az Azure Update Managerben.
Event Grid az ütemezési karbantartási konfigurációkban
Az Azure frissítéskezelő az Event Gridet használja elő- és utóesemények létrehozására és kezelésére. További információkért tekintse át az Event Grid áttekintését. Egy eseménynek az ütemezési karbantartási időszak előtt vagy után történő aktiválásához a következőkre van szükség:
-
Ütemezési karbantartási konfiguráció – Elő- és utóeseményeket hozhat létre egy ütemezési karbantartási konfigurációhoz az Azure frissítéskezelőben. További információért lásd a Frissítések ütemezése karbantartási konfigurációkkal témakört.
-
Az elő- vagy utóeseményben végrehajtandó művelet – Az Event Grid által támogatott eseménykezelők (végpontok) segítségével műveleteket vagy feladatokat határozhat meg. Itt példákat talál arra, hogyan hozhat létre Azure Automation-runbookokat webhookok és az Azure Functions használatával. Ezeken az eseménykezelőkön/végpontokon belül meg kell határoznia azokat a műveleteket, amelyeket az elő- és utóesemények részeként végre kell hajtani.
-
Webhook - Hozzon létre egy PowerShell 7.2-runbookot, és csatolja a Runbookot egy webhookhoz.
-
Azure-függvény - – Azure-függvény létrehozása.
-
Elő- és utóesemény – A következő szakaszban ismertetett lépéseket követve elő- és utóeseményt hozhat létre az ütemezési karbantartási konfigurációhoz. Az Event Grid Alapok lapján használt kifejezésekről további információt az Event Grid kifejezések alatt talál.
Létrehoz egy elő- és utóeseményt
Elő- és utóesemények létrehozása új ütemezési karbantartási konfiguráció létrehozása során
Jelentkezzen be az Azure portálra, és lépjen az Azure frissítéskezelőbe.
A Kezelés csoportban válassza a Gépek lehetőséget.
Válassza a frissítések ütemezése lehetőséget a menüszalag tetején.
A Karbantartási konfiguráció létrehozása lapon válassza az Események lapot.
Válassza az +Esemény-előfizetés lehetőséget az esemény előtti/utáni esemény létrehozásához.
Az Esemény-előfizetés hozzáadása lapon adja meg a következő adatokat: Az Esemény-előfizetés részletei szakaszban adja meg a megfelelő nevet.
- Tartsa a sémát Event Grid-sémaként.
- Adja meg az ebben a karbantartási konfigurációban létrehozott első esemény rendszertémakör-nevét . A rendszer automatikusan kitölti ugyanazt a rendszertémakör-nevet a következményes eseményekhez.
- Az Eseménytípusok szakaszban válassza ki azokat az eseménytípusokat, amelyeket le szeretne küldeni a végpontra vagy a célhelyre. Választhatja a karbantartás előtti vagya karbantartási esemény utáni eseményt , vagy mindkettőt. A karbantartási konfigurációk ütemezéséhez kapcsolódó eseménytípusokról az Azure-eseménytípusok című témakörben olvashat bővebben.
-
A Végpont részletei szakaszban válassza ki azt a végpontot, ahonnan a választ meg szeretné kapni.
A Hozzáadás gombra kattintva létrehozhatja az ütemezéshez tartozó elő- és közzétételi eseményeket a létrehozáskor.
Feljegyzés
A fenti folyamat során a Webhook és az Azure Functions a két eseménykezelő/végpont, amelyek közül választhat. Amikor a Hozzáadás lehetőséget választja, az esemény-előfizetés nem jön létre, hanem hozzáadódik a karbantartási konfigurációhoz. Az esemény-előfizetés az ütemezési karbantartási konfigurációval együtt jön létre.
Hozzon létre egy karbantartási konfigurációt az itt felsorolt lépések végrehajtásával.
-
# 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
Hozzon létre egy karbantartási konfigurációt az itt felsorolt lépések végrehajtásával.
-
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
Hozzon létre egy karbantartási konfigurációt az itt felsorolt lépések végrehajtásával.
# Rendszertémakör létrehozása További információ
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>?api-version=2022-06-15
Kérés szövegtörzse:
{
"properties": {
"source": "/subscriptions/<subscription Id>/resourceGroups/<resource group>/providers/Microsoft.Maintenance/maintenanceConfigurations/<maintenance configuration name> ",
"topicType": "Microsoft.Maintenance.MaintenanceConfigurations"
},
"location": "<location>"
}
# Esemény-előfizetés létrehozása További információ
Engedélyezett eseménytípusok – 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
Kérés szövegtörzse:
{
"properties": {
"destination": {
"endpointType": "WebHook",
"properties": {
"endpointUrl": "<Webhook URL>"
}
},
"filter": {
"includedEventTypes": [
"Microsoft.Maintenance.PreMaintenanceEvent"
]
}
}
}
Azure-függvény
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
Kérelem tartalma
{
"properties": {
"destination": {
"endpointType": "AzureFunction",
"properties": {
"resourceId": "<Azure Function Resource Id>"
}
}
},
"filter": {
"includedEventTypes": [
"Microsoft.Maintenance.PostMaintenanceEvent"
]
}
}
Elő- és utórendezvények létrehozása meglévő ütemezési karbantartási konfigurációban
Jelentkezzen be az Azure portálra, és lépjen az Azure frissítéskezelőbe.
A Kezelés csoportban válassza a Gépek és karbantartási konfigurációk lehetőséget.
A Karbantartási konfiguráció lapon válassza ki azt a karbantartási konfigurációt, amelyhez elő- és utóeseményt szeretne hozzáadni.
A kiválasztott Karbantartási konfiguráció lap Beállítások területén válassza az Események lehetőséget. Másik lehetőségként az Áttekintés területen válassza a Karbantartási esemény létrehozása kártyát.
Válassza a +Esemény-előfizetés lehetőséget a karbantartás előtti/utáni esemény létrehozásához.
Az Esemény-előfizetés létrehozása lapon adja meg a következő adatokat:
Az Esemény-előfizetés részletei szakaszban adja meg a megfelelő nevet.
Tartsa a sémát Event Grid-sémaként.
A Témakör részletei szakaszban adjon meg egy megfelelő nevet a rendszertémakör nevének.
Az Eseménytípusok szakaszban válassza ki azokat az eseménytípusokat, amelyeket le szeretne küldeni a végpontra vagy a célhelyre. Választhat a karbantartás előtti esemény és a karbantartás utáni esemény között. A karbantartási konfigurációk ütemezéséhez kapcsolódó eseménytípusokról az Azure-eseménytípusok című témakörben olvashat bővebben.
A Végpont részletei szakaszban válassza ki azt a végpontot, ahonnan a választ meg szeretné kapni.
Válassza a Létrehozás lehetőséget az elő- és utóesemények konfigurálásához egy meglévő ütemezésben.
$MaintenanceConfigurationResourceId = "/subscriptions/<subId>/resourceGroups/<Resource group>/providers/Microsoft.Maintenance/maintenanceConfigurations/<Maintenance configuration Name>"
$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
SystemTopicName="<System topic name>
ResourceGroupName="<Resource Group for System Topic>"
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
# Rendszertémakör létrehozása További információ
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>?api-version=2022-06-15
Kérés szövegtörzse:
{
"properties": {
"source": "/subscriptions/<subscription Id>/resourceGroups/<resource group>/providers/Microsoft.Maintenance/maintenanceConfigurations/<maintenance configuration name> ",
"topicType": "Microsoft.Maintenance.MaintenanceConfigurations"
},
"location": "<location>"
}
# Esemény-előfizetés létrehozása További információ
Engedélyezett eseménytípusok – 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
Kérés szövegtörzse:
{
"properties": {
"destination": {
"endpointType": "WebHook",
"properties": {
"endpointUrl": "<Webhook URL>"
}
},
"filter": {
"includedEventTypes": [
"Microsoft.Maintenance.PreMaintenanceEvent"
]
}
}
}
Azure-függvény
PUT /subscriptions/<subscription Id>/resourceGroups/<resource group name>/providers/Microsoft.EventGrid/systemTopics/<system topic name>/eventSubscriptions/<Event Subscription name>?api-version=2022-06-15
Kérelem tartalma
{
"properties": {
"destination": {
"endpointType": "AzureFunction",
"properties": {
"resourceId": "<Azure Function Resource Id>"
}
}
},
"filter": {
"includedEventTypes": [
"Microsoft.Maintenance.PostMaintenanceEvent"
]
}
}
Következő lépések
- Az Azure Update Manager előzetes és közzétételi eseményeinek áttekintését itt tekintheti meg.
- Az elő- és utórendezvények kezelésével vagy az ütemezési futtatás megszakításával kapcsolatos információkért tekintse meg a karbantartás előtti és utáni konfigurációs eseményeket.
- Ha tudni szeretné, hogyan kapcsolhatja be és kapcsolhatja ki a virtuális gépeket webhookok használatával, tekintse meg az esemény előtti és utáni eseményeket.
- Ha szeretné megtudni, hogyan kapcsolhatja be és ki a virtuális gépeket az Azure Functions használatával az elő- és utóesemények segítségével, tekintse meg itt.