Dela via


Snabbstart: Prenumerera på Azure Kubernetes Service-händelser (AKS) med Azure Event Grid

Azure Event Grid är en fullständigt hanterad händelseroutningstjänst som ger enhetlig händelseförbrukning med hjälp av en publiceringsprenumereringsmodell.

I den här snabbstarten skapar du ett AKS-kluster och prenumererar på AKS-händelser.

Förutsättningar

Kommentar

Om det finns problem specifikt med EventGrid-meddelanden, som du kan se här serviceavbrott, observera att AKS-åtgärder inte påverkas och att de är oberoende av Avbrott i Event Grid.

Skapa ett AKS-kluster

Skapa ett AKS-kluster med kommandot az aks create . I följande exempel skapas en resursgrupp MyResourceGroup och ett kluster med namnet MyAKS med en nod i resursgruppen MyResourceGroup :

az group create --name MyResourceGroup --location eastus
az aks create --resource-group yResourceGroup --name MyAKS --location eastus  --node-count 1 --generate-ssh-keys

Prenumerera på AKS-händelser

Skapa ett namnområde och en händelsehubb med az eventhubs namespace create och az eventhubs eventhub create. I följande exempel skapas ett namnområde MyNamespace och en händelsehubb MyEventGridHub i MyNamespace, båda i resursgruppen MyResourceGroup .

az eventhubs namespace create --location eastus --name MyNamespace --resource-group MyResourceGroup
az eventhubs eventhub create --name MyEventGridHub --namespace-name MyNamespace --resource-group MyResourceGroup

Kommentar

Namnet på namnområdet måste vara unikt.

Prenumerera på AKS-händelserna med az eventgrid event-subscription create:

SOURCE_RESOURCE_ID=$(az aks show --resource-group MyResourceGroup --name MyAKS --query id --output tsv)
ENDPOINT=$(az eventhubs eventhub show --resource-group MyResourceGroup --name MyEventGridHub --namespace-name MyNamespace --query id --output tsv)
az eventgrid event-subscription create --name MyEventGridSubscription \
--source-resource-id $SOURCE_RESOURCE_ID \
--endpoint-type eventhub \
--endpoint $ENDPOINT

Verifiera din prenumeration på AKS-händelser med hjälp av az eventgrid event-subscription list:

az eventgrid event-subscription list --source-resource-id $SOURCE_RESOURCE_ID

Följande exempelutdata visar att du prenumererar på händelser från MyAKS-klustret och att dessa händelser levereras till MyEventGridHub-händelsehubben :

[
  {
    "deadLetterDestination": null,
    "deadLetterWithResourceIdentity": null,
    "deliveryWithResourceIdentity": null,
    "destination": {
      "deliveryAttributeMappings": null,
      "endpointType": "EventHub",
      "resourceId": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/MyResourceGroup/providers/Microsoft.EventHub/namespaces/MyNamespace/eventhubs/MyEventGridHub"
    },
    "eventDeliverySchema": "EventGridSchema",
    "expirationTimeUtc": null,
    "filter": {
      "advancedFilters": null,
      "enableAdvancedFilteringOnArrays": null,
      "includedEventTypes": [
        "Microsoft.ContainerService.NewKubernetesVersionAvailable","Microsoft.ContainerService.ClusterSupportEnded","Microsoft.ContainerService.ClusterSupportEnding","Microsoft.ContainerService.NodePoolRollingFailed","Microsoft.ContainerService.NodePoolRollingStarted","Microsoft.ContainerService.NodePoolRollingSucceeded"
      ],
      "isSubjectCaseSensitive": null,
      "subjectBeginsWith": "",
      "subjectEndsWith": ""
    },
    "id": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/MyResourceGroup/providers/Microsoft.ContainerService/managedClusters/MyAKS/providers/Microsoft.EventGrid/eventSubscriptions/MyEventGridSubscription",
    "labels": null,
    "name": "MyEventGridSubscription",
    "provisioningState": "Succeeded",
    "resourceGroup": "MyResourceGroup",
    "retryPolicy": {
      "eventTimeToLiveInMinutes": 1440,
      "maxDeliveryAttempts": 30
    },
    "systemData": null,
    "topic": "/subscriptions/SUBSCRIPTION_ID/resourceGroups/MyResourceGroup/providers/microsoft.containerservice/managedclusters/MyAKS",
    "type": "Microsoft.EventGrid/eventSubscriptions"
  }
]

När AKS-händelser inträffar visas dessa händelser i händelsehubben. När till exempel listan över tillgängliga Kubernetes-versioner för dina kluster ändras visas en Microsoft.ContainerService.NewKubernetesVersionAvailable händelse. Det finns även nya händelser tillgängliga nu för uppgraderingar och kluster inom supporten. Mer information om de händelser som AKS genererar finns i Azure Kubernetes Service (AKS) som en Event Grid-källa.

Ta bort klustret och prenumerationerna

Använd kommandot az group delete för att ta bort resursgruppen, AKS-klustret, namnområdet och händelsehubben och alla relaterade resurser.

az group delete --name MyResourceGroup --yes --no-wait

Kommentar

När du tar bort klustret tas inte microsoft Entra-tjänstens huvudnamn som används av AKS-klustret bort. Stegvisa instruktioner om hur du tar bort tjänstens huvudnamn finns i dokumentationen om viktiga överväganden och borttagning av AKS-tjänsten.

Om du använde en hanterad identitet hanteras identiteten av plattformen och kräver inte borttagning.

Nästa steg

I den här snabbstarten distribuerade du ett Kubernetes-kluster och prenumererade sedan på AKS-händelser i Azure Event Hubs.

Om du vill lära dig mer om AKS, och gå igenom ett exempel med fullständig distributionskod, fortsätter du till självstudiekursen om Kubernetes-kluster.