Quickstart: Abonneren op AKS-gebeurtenissen (Azure Kubernetes Service) met Azure Event Grid
Azure Event Grid is een volledig beheerde service voor gebeurtenisroutering die uniform gebeurtenisverbruik biedt met behulp van een model voor publiceren/abonneren.
In deze quickstart maakt u een AKS-cluster en abonneert u zich op AKS-gebeurtenissen.
Vereisten
- Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u een gratis account maken.
- Azure CLI of Azure PowerShell geïnstalleerd.
Notitie
Als er specifiek problemen zijn met EventGrid-meldingen, zoals hier te zien is, is er sprake van serviceonderbrekingen. Houd er rekening mee dat AKS-bewerkingen niet worden beïnvloed en dat deze onafhankelijk zijn van Event Grid-storingen.
Een AKS-cluster maken
Maak een AKS-cluster met behulp van de opdracht az aks create . In het volgende voorbeeld wordt een resourcegroep MyResourceGroup en een cluster met de naam MyAKS gemaakt met één knooppunt in de MyResourceGroup-resourcegroep :
az group create --name MyResourceGroup --location eastus
az aks create --resource-group yResourceGroup --name MyAKS --location eastus --node-count 1 --generate-ssh-keys
Abonneren op AKS-gebeurtenissen
Maak een naamruimte en event hub met behulp van az eventhubs namespace create en az eventhubs eventhub create. In het volgende voorbeeld wordt een naamruimte MyNamespace en een Event Hub MyEventGridHub gemaakt in MyNamespace, beide in de resourcegroep MyResourceGroup .
az eventhubs namespace create --location eastus --name MyNamespace --resource-group MyResourceGroup
az eventhubs eventhub create --name MyEventGridHub --namespace-name MyNamespace --resource-group MyResourceGroup
Notitie
De naam van uw naamruimte moet uniek zijn.
Abonneer u op de AKS-gebeurtenissen met 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
Controleer uw abonnement op AKS-gebeurtenissen met behulp van az eventgrid event-subscription list
:
az eventgrid event-subscription list --source-resource-id $SOURCE_RESOURCE_ID
In de volgende voorbeelduitvoer ziet u dat u bent geabonneerd op gebeurtenissen van het MyAKS-cluster en dat deze gebeurtenissen worden geleverd aan de MyEventGridHub-event hub:
[
{
"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"
}
]
Wanneer AKS-gebeurtenissen plaatsvinden, ziet u dat deze gebeurtenissen worden weergegeven in uw Event Hub. Wanneer bijvoorbeeld de lijst met beschikbare Kubernetes-versies voor uw clusters wordt gewijzigd, ziet u een Microsoft.ContainerService.NewKubernetesVersionAvailable
gebeurtenis. Er zijn nu ook nieuwe gebeurtenissen beschikbaar voor upgrades en clusters binnen ondersteuning. Zie Azure Kubernetes Service (AKS) als een Event Grid-bron voor meer informatie over de gebeurtenissen die AKS verzendt.
Het cluster en de abonnementen verwijderen
Gebruik de opdracht az group delete om de resourcegroep, het AKS-cluster, de naamruimte en de Event Hub en alle gerelateerde resources te verwijderen.
az group delete --name MyResourceGroup --yes --no-wait
Notitie
Wanneer u het cluster verwijdert, wordt de Microsoft Entra-service-principal die door het AKS-cluster wordt gebruikt, niet verwijderd. Zie Overwegingen voor en verwijdering van AKS service-principal voor stappen voor het verwijderen van de service-principal.
Als u een beheerde identiteit hebt gebruikt, wordt de identiteit beheerd door het platform en hoeft deze niet te worden verwijderd.
Volgende stappen
In deze quickstart hebt u een Kubernetes-cluster geïmplementeerd en vervolgens geabonneerd op AKS-gebeurtenissen in Azure Event Hubs.
Voor meer informatie over AKS en een volledig stapsgewijs voorbeeld van code tot implementatie gaat u naar de zelfstudie over Kubernetes-clusters.
Azure Kubernetes Service