Monitore eventos do cluster, métricas de recursos e a integridade dos componentes com regras de alerta configuráveis baseadas em CRD.
Faturamento
O recurso de alerta utiliza dados do Log Service SLS, Managed Service for Prometheus e CloudMonitor. Notificações como SMS e chamadas telefônicas geram cobranças adicionais. Consulte o modelo padrão de regra de alerta para identificar as fontes de alerta e ativar os serviços necessários.
|
Fonte de dados do alerta |
Requisitos de configuração |
Detalhes de faturamento |
|
Log Service SLS |
Ative o monitoramento de eventos. O monitoramento de eventos é ativado por padrão ao habilitar o recurso de alerta. |
|
|
Managed Service for Prometheus |
Configure o Managed Service for Prometheus para o seu cluster. |
Gratuito |
|
CloudMonitor |
Ative o CloudMonitor para o seu cluster ACK. |
Ativar o gerenciamento de alertas
Configure alertas de métricas para recursos do cluster e receba notificações automáticas quando ocorrerem anomalias. Isso permite um gerenciamento mais eficiente do cluster e garante a operação estável do serviço. Consulte Modelo padrão de regra de alerta para obter detalhes sobre alertas de recursos.
ACK managed clusters
Ative a configuração de alerta para um cluster existente ou durante a criação de um novo cluster.
Cluster existente
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em .
Na página Alerts, siga as instruções na tela para instalar ou atualizar os componentes necessários.
-
Após a instalação ou atualização, acesse a página Alerts para configurar os alertas.
Aba
Descrição
Alert Rules
-
Status: Ativa ou desativa um conjunto de regras de alerta.
-
Edit Contact Group: Define o grupo de contatos para notificações de alerta.
As notificações são enviadas apenas para grupos de contatos. Crie contatos e grupos primeiro. Para notificar uma pessoa específica, crie um grupo dedicado para esse contato.
Alert History
Visualize até 100 registros de alerta das últimas 24 horas.
-
Clique em um link na coluna Alert Rule para visualizar as configurações da regra no sistema de monitoramento correspondente.
-
Clique em Details para acessar a página do recurso relacionado à anomalia.
-
Clique em Intelligent Analytics para análise e solução de problemas com inteligência artificial.
Alert Contacts
Crie, edite ou exclua contatos.
Métodos de contato:
-
Chamada telefônica/SMS: Defina um número de celular para que um contato receba alertas por telefone e SMS.
Apenas números de celular verificados podem receber notificações por chamada telefônica. Consulte Verificar um número de celular.
-
E-mail: Defina um endereço de e-mail para que um contato receba notificações de alerta.
-
Chatbots: chatbots do DingTalk, chatbots do WeCom e chatbots do Lark.
Para chatbots do DingTalk, adicione palavras-chave de segurança: alert, dispatch.
Verifique as notificações por e-mail e chatbot no console do CloudMonitor em antes de configurá-las.
Alert Contact Groups
Crie, edite ou exclua grupos de contatos.
Se não existir nenhum grupo de contatos, o console criará um grupo padrão a partir da sua conta Alibaba Cloud.
-
Novo cluster
Ao criar um cluster, na página Component Configurations, selecione Alerts e, em seguida, selecione Use Default Alert Rule Template. Escolha um Alert Notification Contact Group. Consulte Criar um cluster gerenciado pelo ACK.

Depois que a configuração de alerta for ativada, as regras padrão entrarão em vigor e o grupo de contatos padrão receberá as notificações. Você pode modificar os contatos de alerta ou grupos de contatos.
ACK dedicated clusters
Para um cluster dedicado ACK, conceda permissões à função RAM Worker antes de ativar as regras de alerta padrão.
Conceder permissões à função RAM Worker
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Cluster Information.
-
Na página Cluster Information, na seção Cluster Resources, copie o nome ao lado de Worker RAM Role e clique no link para abrir o console RAM.
-
Crie a seguinte política personalizada. Consulte Criar uma política personalizada.
{ "Action": [ "log:*", "arms:*", "cms:*", "cs:UpdateContactGroup" ], "Resource": [ "*" ], "Effect": "Allow" } -
Na página Role, localize a função RAM Worker e anexe a política personalizada. Consulte Gerenciar permissões de uma função RAM.
Nota: Este exemplo usa permissões amplas para simplificação. Em produção, siga o princípio do menor privilégio.
-
-
Verifique se as permissões de alerta estão configuradas.
No painel de navegação à esquerda da página de gerenciamento do cluster, es/span>.
Selecione
kube-systemna lista suspensa Namespace e clique no nome dealicloud-monitor-controllerna coluna Name.Clique na aba Logs para visualizar os logs do pod que indicam autorização bem-sucedida.
Ativar regras de alerta padrão
No painel de navegação à esquerda da página do cluster, escolha Operations > Alerts.
-
Na página Alerts, configure as definições de alerta.
Aba
Descrição
Alert Rules
-
Status: Ativa ou desativa um conjunto de regras de alerta.
-
Edit Contact Group: Define o grupo de contatos para notificações de alerta.
As notificações são enviadas apenas para grupos de contatos. Crie contatos e grupos primeiro. Para notificar uma pessoa específica, crie um grupo dedicado para esse contato.
Alert History
Visualize até 100 registros de alerta das últimas 24 horas.
-
Clique em um link na coluna Alert Rule para visualizar as configurações da regra no sistema de monitoramento correspondente.
-
Clique em Details para acessar a página do recurso relacionado à anomalia.
-
Clique em Intelligent Analytics para análise e solução de problemas com inteligência artificial.
Alert Contacts
Crie, edite ou exclua contatos.
Métodos de contato:
-
Chamada telefônica/SMS: Defina um número de celular para que um contato receba alertas por telefone e SMS.
Apenas números de celular verificados podem receber notificações por chamada telefônica. Consulte Verificar um número de celular.
-
E-mail: Defina um endereço de e-mail para que um contato receba notificações de alerta.
-
Chatbots: chatbots do DingTalk, chatbots do WeCom e chatbots do Lark.
Para chatbots do DingTalk, adicione palavras-chave de segurança: alert, dispatch.
Verifique as notificações por e-mail e chatbot no console do CloudMons antes de configurá-las.
Alert Contact Groups
Crie, edite ou exclua grupos de contatos.
Se não existir nenhum grupo de contatos, o console criará um grupo padrão a partir da sua conta Alibaba Cloud.
-
Configurar regras de alerta
Ativar a configuração de alerta cria um recurso CRD AckAlertRule chamado default no namespace kube-system com um modelo de regra de alerta padrão. Modifique este CRD para personalizar as regras de alerta.
Console
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em .
Na aba Alert Rules, clique em Configure Alert Rule no canto superior direito. Em seguida, na coluna Actions da regra desejada, clique em YAML para visualizar a configuração do recurso CRD
AckAlertRule.-
Modifique o arquivo YAML. Consulte Modelo padrão de regra de alerta para obter detalhes sobre os parâmetros.
O exemplo a seguir mostra a configuração YAML de uma regra de alerta:
Use
rules.thresholdspara personalizar os limiares de alerta. Por exemplo, a configuração anterior aciona um alerta quando a utilização da CPU de um nó excede 85% por três vezes consecutivas e mais de 900 segundos se passaram desde o último alerta.Parâmetro
Obrigatório
Descrição
Padrão
CMS_ESCALATIONS_CRITICAL_ThresholdSim
O limiar da regra de alerta. Se este parâmetro for omitido, a sincronização da regra falhará e a regra será desativada.
-
unit: A unidade do limiar. Valores válidos: percent, count e qps. -
value: O valor do limiar.
Varia conforme o modelo padrão de regra de alerta.
CMS_ESCALATIONS_CRITICAL_TimesOpcional
O número de vezes consecutivas que a condição deve ser atendida antes que o CloudMonitor acione um alerta. Se este parâmetro for omitido, o valor padrão será usado.
3
CMS_RULE_SILENCE_SECOpcional
O período de silêncio em segundos após o relatório de um alerta inicial para uma regra do CloudMonitor que dispara continuamente. Isso evita a fadiga de alertas. Se este parâmetro for omitido, o valor padrão será usado.
900
-
CLI
-
Edite o arquivo YAML da regra de alerta:
kubectl edit ackalertrules default -n kube-system -
Modifique o arquivo YAML, salve e saia. Consulte Modelo padrão de regra de alerta para obter detalhes sobre os parâmetros.
Use
rules.thresholdspara personalizar os limiares de alerta. Por exemplo, a configuração anterior aciona um alerta quando a utilização da CPU de um nó excede 85% por três vezes consecutivas e mais de 900 segundos se passaram desde o último alerta.Parâmetro
Obrigatório
Descrição
Padrão
CMS_ESCALATIONS_CRITICAL_ThresholdSim
O limiar da regra de alerta. Se este parâmetro for omitido, a sincronização da regra falhará e a regra será desativada.
-
unit: A unidade do limiar. Valores válidos: percent, count e qps. -
value: O valor do limiar.
Varia conforme o modelo padrão de regra de alerta.
CMS_ESCALATIONS_CRITICAL_TimesOpcional
O número de vezes consecutivas que a condição deve ser atendida antes que o CloudMonitor acione um alerta. Se este parâmetro for omitido, o valor padrão será usado.
3
CMS_RULE_SILENCE_SECOpcional
O período de silêncio em segundos após o relatório de um alerta inicial para uma regra do CloudMonitor que dispara continuamente. Isso evita a fadiga de alertas. Se este parâmetro for omitido, o valor padrão será usado.
900
-
Modelo padrão de regra de alerta
Os alertas a seguir são sincronizados do Log Service, Prometheus Service e CloudMonitor. Na página Alerts, na coluna Alerts, clique em Advanced Settings para visualizar as configurações das regras.
Solucionar problemas de alertas
Evicção de Pod devido a pressão de disco
Mensagem de alerta
(combined from similar events): Failed to garbage collect required amount of images. Attempted to free XXXX bytes, but only found 0 bytes eligible to free
Sintomas
O status do Pod é Evicted. O nó está sofrendo pressão de disco (The node had condition: [DiskPressure].).
Causa
Quando o uso de disco de um nó atinge o limiar de evicção (85% por padrão), o kubelet inicia a evicção baseada em pressão, executando a coleta de lixo de imagens e potencialmente despejando Pods. Faça login no nó alvo e execute df -h para verificar o uso do disco.
Resolução
-
Faça login no nó alvo (runtime containerd) e execute o seguinte comando para remover imagens não utilizadas:
crictl rmi --prune -
Limpe logs ou expanda a capacidade de disco do nó.
Crie um snapshot do disco do nó e, em seguida, exclua arquivos desnecessários. Consulte Resolver problemas de disco cheio em instâncias Linux.
Expanda o disco do sistema ou disco de dados de um nó online para aumentar a capacidade de armazenamento.
-
Ajuste os limiares relevantes.
Ajuste o limiar de coleta de lixo de imagens do kubelet para reduzir as evicções de Pod. Consulte Personalizar configurações do kubelet para um pool de nós.
O limiar de alerta padrão é 85%. Modifique a regra de alerta
node_disk_util_highconfigurando as regras de alerta.
Recomendações e prevenção
Se um nó acionar este alerta frequentemente, avalie os requisitos de armazenamento da sua aplicação e planeje a capacidade de disco do nó adequadamente.
Monitore regularmente o uso de armazenamento através do Painel de monitoramento de armazenamento de nós.
OOMKilling de Pod
Mensagem de alerta
pod was OOM killed. node:xxx pod:xxx namespace:xxx uuid:xxx
Sintomas
O status do Pod está anormal e os detalhes do evento contêm PodOOMKilling.
Resolução
Um evento de falta de memória (OOM) pode ser acionado no nível do nó ou no nível do cgroup do contêiner.
-
Causa:
OOM no nível de cgroup do contêiner: o uso de memória do Pod excede os limites configurados, fazendo com que o Kubernetes o encerre.
OOM no nível do nó: geralmente ocorre quando muitos Pods sem limites de recursos são executados no nó ou quando processos fora do Kubernetes consomem memória excessiva.
Diagnóstico: execute
dmesg -T | grep -i "memory"no nó de destino. Se a saída contiverout_of_memory, ocorreu um evento OOM. Caso também incluaMemory cgroup, o OOM está no nível de cgroup do contêiner; caso contrário, está no nível do nó.-
Ações recomendadas:
-
Para OOM no nível de cgroup do contêiner:
Aumente os limites de memória do Pod. Mantenha o uso real abaixo de 80% dos limites. Consulte Gerenciar Pods e Dimensionar recursos do nó.
Ative o perfilamento de recursos para obter recomendações de configurações de solicitação e limite do contêiner.
-
Para OOM no nível do nó:
Aumente a memória do nó ou distribua as cargas de trabalho em mais nós. Consulte Dimensionar recursos do nó e Agendar aplicações em nós específicos.
Identifique os Pods com alto consumo de memória no nó e defina limites de memória adequados.
-
Pod em CrashLoopBackOff
Quando um processo dentro de um Pod é encerrado inesperadamente, o ACK o reinicia. Se o Pod falhar repetidamente em se estabilizar, ele entra no estado CrashLoopBackOff. Siga os passos abaixo para solucionar o problema:
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em .
Localize o Pod afetado e clique em Details na coluna Actions.
Na aba Events, revise os detalhes de quaisquer eventos anormais.
-
Verifique a aba Logs para identificar a causa da falha.
NotaSe o Pod foi reiniciado, selecione Show the log of the last container exit.
O console exibe apenas as 500 entradas mais recentes. Para logs mais antigos, configure a persistência de logs .