O console do ACK inclui um recurso de diagnóstico de Ingress que verifica problemas comuns de configuração e apresenta orientações práticas para correção. Esta página lista todos os itens de diagnóstico, o que cada um verifica e como resolver os problemas identificados.
Ao executar o diagnóstico, o ACK implanta um programa de coleta de dados em cada nó do cluster. Esse programa coleta a versão do sistema, o status de carga, o status do docker e do kubelet, além de mensagens de erro essenciais dos logs do sistema. O programa não coleta dados de negócio nem informações sensíveis.
Os itens de diagnóstico variam conforme a configuração do cluster. Os itens exibidos na página de diagnóstico refletem as verificações disponíveis para o seu cluster.
Como funciona o diagnóstico de Ingress
O diagnóstico é executado sequencialmente em três camadas:
Ingress — valida as definições e anotações do recurso Ingress.
Add-on — verifica os parâmetros de inicialização do controlador de Ingress, o Service associado e a integridade dos pods.
slb — inspeciona a instância do Server Load Balancer (slb) utilizada pelo controlador de Ingress.
Comece pela camada Ingress e avance para as demais. A maioria dos problemas é detectada nas duas primeiras camadas. As verificações de slb aplicam-se quando o tráfego não chega ao cluster.
Itens de diagnóstico
Ingress
|
Item de diagnóstico |
O que é verificado |
Como corrigir |
|
Verificação de Ingress |
Se o Ingress especificado existe. |
Verifique se existe uma regra de Ingress para a url. Confira se o caminho utiliza expressão regular e se a anotação |
|
Verificação de |
Presença da anotação obsoleta |
Consulte a versão do seu controlador de Ingress. Remova a anotação ou substitua-a por uma alternativa suportada. |
|
Verificação de |
Existência da anotação obsoleta |
Valide a versão do controlador de Ingress. Exclua a anotação ou adote uma alternativa compatível. |
|
Verificação de |
Uso da anotação obsoleta |
Analise a versão do controlador de Ingress. Elimine a anotação ou troque por uma opção suportada. |
|
Verificação de |
Detecção da anotação obsoleta |
Cheque a versão do controlador de Ingress. Remova a anotação ou utilize uma alternativa válida. |
|
Verificação de |
Identificação da anotação obsoleta |
Revise a versão do controlador de Ingress. Exclua a anotação ou substitua por uma alternativa suportada. |
|
Verificação de |
Se o Ingress usa anotações iniciadas com |
Migre para anotações suportadas pelo controlador NGINX Ingress open source. Consulte Gerenciamento de NGINX Ingress ou a Documentação do NGINX Ingress Controller. |
|
Status canary |
Se a anotação |
Adicione a anotação ao Ingress: |
Add-on
|
Item de diagnóstico |
O que é verificado |
Como corrigir |
|
Percentual de prontidão dos pods de Ingress |
A proporção de pods de Ingress no estado Ready em relação às réplicas definidas no Deployment. Um valor abaixo de 100% indica falha na inicialização ou no health check de alguns pods. |
Analise os logs de erro dos pods para identificar as falhas e corrija a causa raiz. Consulte Solução de problemas do controlador NGINX Ingress. |
|
Verificação de endereço IP do Ingress |
Se o controlador de Ingress atribuiu um endereço IP ao Ingress. |
Caso nenhum endereço IP tenha sido atribuído, confirme se a IngressClass correta está referenciada e se o controlador de Ingress opera normalmente. |
|
Verificação de pod líder |
Se um pod líder foi eleito. A ausência de um pod líder impede o processamento das regras de Ingress pelo controlador. Isso pode ocorrer se o tempo de inicialização do pod for muito curto ou se as permissões do controlador estiverem mal configuradas. |
Examine os logs de erro dos pods de Ingress e corrija quaisquer falhas apresentadas. Veja Solução de problemas do controlador NGINX Ingress. |
|
Anotações do NGINX Ingress |
Uso de anotações iniciadas com |
Substitua as anotações |
|
Grupos de captura e |
Utilização de |
Atualize o Ingress para incluir grupos de captura com |
|
Contagem de Services canary |
Se |
Reduza para dois o número de Services em |
|
Nome do Ingress |
Os nomes das regras de Ingress correspondentes. |
Apenas informativo. Nenhuma ação necessária. |
|
Logs de erro de pods |
Geração de logs de erro pelos pods do controlador de Ingress. Logs de erro indicam possível falha no processamento correto das regras pelo controlador. |
Identifique a causa do erro nos logs e aplique a correção. Veja Solução de problemas do controlador NGINX Ingress. |
|
Grupos de captura de caminho em |
Se os caminhos que utilizam |
Inclua grupos de captura nos caminhos afetados. Consulte Configurar regras de roteamento para redirecionar tráfego de URLs específicas. |
|
Múltiplos alvos em |
Especificação de mais de dois Services em |
Configure exatamente dois Services em |
|
Verificação de Service do Ingress |
Existência do Service referenciado nos parâmetros de inicialização do controlador de Ingress. A ausência do Service impede a inicialização do controlador. |
Localize o nome do Service excluído nos parâmetros de inicialização do Deployment e restaure-o. Consulte Operações de alto risco relacionadas a redes e instâncias slb. |
|
Verificação de endpoint do Service de Ingress |
Se o Service associado ao Ingress possui pelo menos um endpoint. Sem endpoints, a instância slb não consegue rotear tráfego para o controlador de Ingress. |
Confirme se o seletor de rótulos do Service corresponde aos rótulos dos pods do controlador de Ingress. |
|
Eventos do Service de Ingress |
Presença de eventos Warning ou Error no Service associado ao Ingress. Tais eventos geralmente indicam erros de configuração do slb. |
Analise os eventos do Service para determinar a causa raiz e corrija o problema. Veja Erros e soluções de Service. |
|
Política de tráfego externo do Service de Ingress |
A política de tráfego externo do Service de Ingress. O padrão é |
Mantenha a política como |
|
Endereço IP externo do Service de Ingress |
Se o cloud controller manager atribuiu um endereço IP externo ao Service de Ingress. Sem um endereço IP, o Ingress fica inacessível pela internet. |
Verifique o status do Service, o status do cloud controller manager e as cotas de slb. A maioria dos problemas aparece como eventos do Service. |
|
Tipo de Service de Ingress |
Se o Service referenciado nos parâmetros de inicialização do controlador de Ingress é do tipo |
Altere o tipo de Service para |
|
Verificação de |
Uso do parâmetro de inicialização obsoleto |
Valide a versão do controlador de Ingress e remova o parâmetro de inicialização do Deployment. |
|
Verificação de |
Utilização do parâmetro de inicialização obsoleto |
Consulte a versão do controlador de Ingress e elimine o parâmetro de inicialização do Deployment. |
slb
|
Item de diagnóstico |
O que é verificado |
Como corrigir |
|
Instância slb |
Existência da instância slb utilizada pelo controlador de Ingress. |
Verifique se há eventos de anomalia no Service do controlador de Ingress e se a instância slb aparece no console slb. Se a instância foi excluída acidentalmente, recrie o Service. Consulte O que fazer se eu excluir acidentalmente uma instância slb? |
|
Integridade dos servidores backend do slb |
Se todos os servidores backend da instância slb estão íntegros. |
Caso haja servidores backend não íntegros, verifique eventos de anomalia no Service do controlador de Ingress e confirme se os pods do controlador não estão sobrecarregados. Veja Solução de problemas do controlador NGINX Ingress. |
|
ID do slb |
O ID da instância slb. |
Apenas informativo. Nenhuma ação necessária. |
|
Contagem de conexões do slb |
Se o número de conexões ativas na instância slb ultrapassou 80% do limite nos últimos três dias. Atingir o limite bloqueia novas conexões de clientes. |
Faça upgrade da instância slb para uma especificação superior. Consulte Usar uma instância slb existente. |
|
Taxa de novas conexões do slb |
Se a taxa de novas conexões na instância slb excedeu 80% do limite nos últimos três dias. Atingir esse limite impede temporariamente que clientes estabeleçam novas conexões. |
Realize upgrade da instância slb para uma especificação maior. Veja Usar uma instância slb existente. |
|
QPS do slb |
Se as consultas por segundo (QPS) na instância slb superaram 80% do limite nos últimos três dias. Atingir o limite de QPS bloqueia conexões de clientes. |
Promova upgrade da instância slb para uma especificação mais alta. Consulte Usar uma instância slb existente. |
|
Host tls e SecretName |
Se os campos |
Defina tanto |
|
Status de health check do slb |
Ocorrência de falhas de health check na instância slb nos últimos três dias. Falhas indicam possível sobrecarga dos pods do controlador ou erros na configuração do slb. |
Verifique eventos de anomalia no Service do controlador de Ingress e confirme que os pods não estão sobrecarregados. Consulte Solução de problemas do controlador NGINX Ingress. |