Compartilhar via


Solucionar problemas de falhas de nó não pronto que são seguidas por recuperações

Este artigo fornece um guia para solucionar problemas de "Nó Não Pronto" em clusters do AKS (Serviço de Kubernetes do Azure). Quando um nó entra em um estado "NotReady", ele pode interromper a funcionalidade do aplicativo e fazer com que ele pare de responder. Normalmente, o nó se recupera automaticamente após um curto período. No entanto, para evitar problemas recorrentes e manter um ambiente estável, é importante entender as causas subjacentes para poder implementar resoluções eficazes.

Motivo

Há vários cenários que podem causar a ocorrência de um estado "NotReady":

  • A indisponibilidade do servidor de API. Isso faz com que a investigação de prontidão falhe. Isso impede que o pod seja anexado ao serviço para que o tráfego não seja mais encaminhado para a instância do pod.

  • Falhas de host da máquina virtual (VM). Para determinar se ocorreram falhas no host da VM, verifique as seguintes fontes de informações:

Solução

Para resolver esse problema, siga estas etapas:

  1. Executar kubectl describe node <node-name> para revisar informações detalhadas sobre o status do nó. Procure mensagens de erro ou avisos que possam indicar a causa raiz do problema.
  2. Verifique a disponibilidade do servidor de API executando o kubectl get apiservices comando. Verifique se a investigação de preparação está configurada corretamente no arquivo YAML de implantação.
  3. Verifique a configuração de rede do nó para garantir que não haja problemas de conectividade.
  4. Verifique o uso de recursos do nó, como CPU, memória e disco, para identificar possíveis restrições. Para obter mais informações, consulte Monitorar o desempenho do cluster do Kubernetes com insights de contêiner

Para obter mais etapas, consulte Solução de problemas básicos de falhas de nó não pronto.

Prevenção

Para evitar que esse problema ocorra no futuro, execute uma ou mais das seguintes ações:

  • Verifique se a camada de serviço está totalmente paga.
  • Reduza o número de solicitações e get solicitações para o servidor de watch API.