Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O gerenciador de comunicações do AKS (Serviço de Kubernetes do Azure) simplifica as notificações para todas as tarefas de manutenção do AKS usando as Notificações de Recursos do Azure e as estruturas do Azure Resource Graph. O gerenciador de comunicações fornece alertas oportunos sobre gatilhos e resultados de eventos, para que você possa monitorar de perto suas atualizações.
Se a manutenção falhar, o gerenciador de comunicações notificará você com os motivos da falha. Essas informações reduzem os problemas operacionais relacionados à observabilidade e acompanhamentos.
Seguindo as etapas neste artigo, você pode configurar notificações para todos os tipos de atualizações automáticas que usam janelas de manutenção.
Pré-requisitos
Configure seu cluster para o canal de atualização automática ou o canal de atualização automática para nós.
Crie uma janela de manutenção planejada para a configuração de atualizações automáticas.
Configurar o gerenciador de comunicações
No portal do Azure, vá para o recurso.
Selecione Regrasde> de> e, em seguida, selecione Criar.
Na guia Condição, para nome do sinal, selecione Pesquisa de log personalizada.
Na caixa de consulta Pesquisar , cole uma das seguintes consultas personalizadas. Atualize o caminho
where id containspara referenciar seus recursos para a ID de assinatura, nome do grupo de recursos e nome do cluster.A consulta a seguir é para notificações de atualizações automáticas para clusters:
arg("").containerserviceeventresources | where type == "microsoft.containerservice/managedclusters/scheduledevents" | where id contains "/subscriptions/<subid>/resourcegroups/<rgname>/providers/Microsoft.ContainerService/managedClusters/<clustername>" | where properties has "eventStatus" | extend status = substring(properties, indexof(properties, "eventStatus") + strlen("eventStatus") + 3, 50) | extend status = substring(status, 0, indexof(status, ",") - 1) | where status != "" | where properties has "eventDetails" | extend upgradeType = case( properties has "K8sVersionUpgrade", "K8sVersionUpgrade", properties has "NodeOSUpgrade", "NodeOSUpgrade", "" ) | extend details = parse_json(tostring(properties.eventDetails)) | where properties has "lastUpdateTime" | extend eventTime = substring(properties, indexof(properties, "lastUpdateTime") + strlen("lastUpdateTime") + 3, 50) | extend eventTime = substring(eventTime, 0, indexof(eventTime, ",") - 1) | extend eventTime = todatetime(tostring(eventTime)) | where eventTime >= ago(30m) // Ensure this matches aggregation granularity & frequency | where upgradeType == "K8sVersionUpgrade" | project eventTime, upgradeType, status, properties, name, details | order by eventTime ascA consulta a seguir é para notificações de atualizações automáticas para o NodeOS:
arg("").containerserviceeventresources | where type == "microsoft.containerservice/managedclusters/scheduledevents" | where id contains "/subscriptions/<subid>/resourcegroups/<rgname>/providers/Microsoft.ContainerService/managedClusters/<clustername>" | where properties has "eventStatus" | extend status = substring(properties, indexof(properties, "eventStatus") + strlen("eventStatus") + 3, 50) | extend status = substring(status, 0, indexof(status, ",") - 1) | where status != "" | where properties has "eventDetails" | extend upgradeType = case( properties has "K8sVersionUpgrade", "K8sVersionUpgrade", properties has "NodeOSUpgrade", "NodeOSUpgrade", "" ) | extend details = parse_json(tostring(properties.eventDetails)) | where properties has "lastUpdateTime" | extend eventTime = substring(properties, indexof(properties, "lastUpdateTime") + strlen("lastUpdateTime") + 3, 50) | extend eventTime = substring(eventTime, 0, indexof(eventTime, ",") - 1) | extend eventTime = todatetime(tostring(eventTime)) | where eventTime >= ago(30m) // Ensure this matches aggregation granularity & frequency | where upgradeType == "NodeOSUpgrade" | project eventTime, upgradeType, status, properties, name, details | order by eventTime ascVá para a guia Condição . Defina as condições de alerta com as seguintes configurações:
- Medida: Selecionar linhas de tabela.
- Tipo de agregação: Selecione Contagem.
- Granularidade de agregação: selecione 30 minutos.
- Valor de limite: manter em 0.
- Dividir por dimensões: para o nome da dimensão, selecione o status. Em seguida, selecione a caixa de seleção Incluir todos os valores futuros .
Na área Dividir por dimensões , para valores de dimensão, selecione um valor. Como você selecionou o status para o nome da dimensão, os valores disponíveis são Agendados, Iniciados, Concluídos, Cancelados e Com Falha.
Observação
Esses valores de status só aparecerão se o cluster executou operações de atualização automática anteriormente. Para novos clusters ou clusters que ainda não passaram por atualizações automáticas, a lista suspensa pode parecer vazia ou sem dimensões disponíveis. Depois que o cluster executar sua primeira atualização automática, esses valores de status ficarão disponíveis para seleção.
Vá para a guia Ações . Verifique se existe um grupo de ações com o endereço de email correto para que você possa receber as notificações:
Selecione Usar grupos> de açõesCriar um grupo de ações.
Para o tipo de notificação, selecione Email/SMS_message/Push/Voz.
Marque a caixa de seleção Email e insira o endereço de email na caixa Email .
Vá para a guia Detalhes . Atribua uma identidade gerenciada para que você possa conceder acesso aos recursos necessários. Na área Identidade , selecione a identidade gerenciada atribuída pelo sistema.
Vá para a guia Examinar + criar e, em seguida, selecione Criar.
Agora que você criou a regra de alerta, você pode atribuir as funções apropriadas para a identidade gerenciada:
- Na regra de alerta, vá para Configurações>Identidade>Identidade gerenciada atribuída pelo sistema>Atribuições de função do Azure.
- Selecione Adicionar atribuição de função, selecione a função Leitor e atribua-a ao grupo de recursos.
- Selecione Adicionar atribuição de função novamente, selecione a função Leitor e atribua-a à assinatura.
Dica
Se você não vir a opção Identidade , verifique se criou sua regra de alerta e se tem as permissões necessárias.
Depois de configurar o gerenciador de comunicações, ele envia avisos prévios uma semana antes do início da manutenção e um dia antes do início da manutenção. Ele também envia alertas oportunos durante a operação de manutenção.
Verificar a configuração
Para atualizar o cluster, aguarde o atualizador automático iniciar. Em seguida, verifique se você recebe avisos no endereço de email configurado para receber avisos.
Verifique o banco de dados do Azure Resource Graph para obter o registro de notificação agendada. Cada notificação de evento agendada deve ser listada como um registro na ContainerServiceEventResources tabela.