Solução básica de problemas de conexão de cluster com o servidor de API

Este artigo discute problemas de conexão com um cluster do AKS (Serviço de Kubernetes do Azure) quando você não consegue acessar o servidor de API do cluster por meio da ferramenta de linha de comando do cluster do Kubernetes (kubectl) ou qualquer outra ferramenta, como usar a API REST por meio de uma linguagem de programação.

Pré-requisitos

Causa raiz e soluções

Problemas de conexão com o servidor de API podem ocorrer por muitos motivos, mas a causa-raiz geralmente está relacionada a um erro com um destes itens:

  • Rede
  • Autenticação
  • Autorização

Você pode executar estas etapas comuns de solução de problemas para verificar a conectividade com o servidor de API do cluster do AKS:

  1. Insira o seguinte comando az aks show na CLI do Azure. Esse comando obtém o FQDN (nome de domínio totalmente qualificado) do cluster do AKS.

    az aks show --resource-group <cluster-resource-group> --name <cluster-name> --query fqdn
    
  2. Com o FQDN, verifique se o servidor de API pode ser acessado a partir do computador cliente usando a pesquisa do servidor de nomes (nslookup), a URL do cliente (curl) e os comandos telnet:

    # Check if the DNS Resolution is working:
    $ nslookup <cluster-fqdn>  
    
    # Then check if the API Server is reachable:
    $ curl -Iv https://<cluster-fqdn>
    $ telnet <cluster-fqdn> 443
    
  3. Se o cluster do AKS for privado, certifique-se de executar o comando de uma VM (máquina virtual) que possa acessar a Rede Virtual do Azure do cluster do AKS. Consulte Opções para se conectar ao cluster privado.

  4. Se necessário, siga as etapas no artigo de solução de problemas O endereço IP do cliente não pode acessar o servidor de API, portanto, o servidor de API adiciona o endereço IP do cliente aos intervalos de IP autorizados.

  5. Verifique se a versão do kubectl em seu computador cliente não está duas ou mais versões secundárias por trás da versão do cluster do AKS dessa ferramenta. Para instalar a versão mais recente do kubectl, execute o comando az aks install-cli na CLI do Azure. Em seguida, você pode executar o comando kubectl version para verificar o número da versão da nova instalação.

    Por exemplo, no Linux, você executaria estes comandos:

    sudo az aks install-cli
    kubectl version --client
    

    Para outros sistemas operacionais cliente, use estas instruções de instalação do kubectl.

  6. Se necessário, siga as etapas no artigo de solução de problemas O arquivo de configuração não está disponível ao se conectar, portanto, o arquivo de configuração do Kubernetes (config) é válido e pode ser encontrado no momento da conexão.

  7. Se necessário, siga as etapas no artigo de solução de problemas O usuário não pode obter recursos de cluster, portanto, você pode listar os detalhes dos nós de cluster.

  8. Se você estiver usando um firewall para controlar o tráfego de saída dos nós de trabalho do AKS, verifique se o firewall permite as regras de saída mínimas necessárias para o AKS.

  9. Verifique se o grupo de segurança de rede associado aos nós do AKS permite a comunicação na porta TCP 10250 dentro dos nós do AKS.

Para outras etapas comuns de solução de problemas, consulte Tempos limite de TCP quando o kubectl ou outras ferramentas de terceiros se conectam ao servidor de API.

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.