Guia de início rápido: assinar eventos do Serviço Kubernetes do Azure (AKS) com a Grade de Eventos do Azure
A Grade de Eventos do Azure é um serviço de roteamento de eventos totalmente gerenciado que fornece consumo uniforme de eventos usando um modelo de publicação-assinatura.
Neste início rápido, você cria um cluster AKS e se inscreve em eventos AKS.
Pré-requisitos
- Uma subscrição do Azure. Se não tiver uma subscrição do Azure, pode criar uma conta gratuita.
- CLI do Azure ou Azure PowerShell instalado.
Nota
Caso haja problemas especificamente com as notificações do EventGrid, como pode ser visto aqui Interrupções de serviço, observe que as operações do AKS não serão afetadas e são independentes das interrupções da grade de eventos.
Criar um cluster do AKS
Crie um cluster AKS usando o comando az aks create . O exemplo a seguir cria um grupo de recursos MyResourceGroup e um cluster chamado MyAKS com um nó no grupo de recursos MyResourceGroup :
az group create --name MyResourceGroup --location eastus
az aks create --resource-group yResourceGroup --name MyAKS --location eastus --node-count 1 --generate-ssh-keys
Subscrever eventos AKS
Crie um namespace e um hub de eventos usando az eventhubs namespace create e az eventhubs eventhub create. O exemplo a seguir cria um namespace MyNamespace e um hub de eventos MyEventGridHub em MyNamespace, ambos no grupo de recursos MyResourceGroup .
az eventhubs namespace create --location eastus --name MyNamespace --resource-group MyResourceGroup
az eventhubs eventhub create --name MyEventGridHub --namespace-name MyNamespace --resource-group MyResourceGroup
Nota
O nome do seu namespace deve ser exclusivo.
Inscreva-se nos eventos do AKS usando 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
Verifique a sua subscrição de eventos AKS utilizando az eventgrid event-subscription list
:
az eventgrid event-subscription list --source-resource-id $SOURCE_RESOURCE_ID
O exemplo de saída a seguir mostra que você está inscrito em eventos do cluster MyAKS e esses eventos são entregues ao hub de eventos MyEventGridHub :
[
{
"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"
}
]
Quando ocorrem eventos AKS, esses eventos aparecem no seu hub de eventos. Por exemplo, quando a lista de versões disponíveis do Kubernetes para seus clusters é alterada, você vê um Microsoft.ContainerService.NewKubernetesVersionAvailable
evento. Há também novos eventos disponíveis agora para atualizações e cluster dentro do suporte. Para obter mais informações sobre os eventos que o AKS emite, consulte Serviço Kubernetes do Azure (AKS) como uma fonte de Grade de Eventos.
Excluir o cluster e as assinaturas
Use o comando az group delete para remover o grupo de recursos, o cluster AKS, o namespace e o hub de eventos e todos os recursos relacionados.
az group delete --name MyResourceGroup --yes --no-wait
Nota
Quando você exclui o cluster, a entidade de serviço do Microsoft Entra usada pelo cluster AKS não é removida. Para obter passos sobre como remover o principal de serviço, consulte Considerações sobre e eliminação do principal de serviço AKS.
Se você usou uma identidade gerenciada, a identidade é gerenciada pela plataforma e não requer remoção.
Próximos passos
Neste início rápido, você implantou um cluster Kubernetes e, em seguida, inscreveu-se em eventos AKS nos Hubs de Eventos do Azure.
Para saber mais sobre o AKS e ver um exemplo completo de código para implementação, avance para o tutorial dos clusters de Kubernetes.
Azure Kubernetes Service