Solución de problemas básicos de conexión de clúster con el servidor de API

En este artículo se describen los problemas de conexión con un clúster de Azure Kubernetes Service (AKS) cuando no se puede acceder al servidor de API del clúster a través de la herramienta de línea de comandos del clúster de Kubernetes (kubectl) o cualquier otra herramienta, como el uso de la API REST a través de un lenguaje de programación.

Requisitos previos

Causa principal y soluciones

Los problemas de conexión con el servidor de API pueden producirse por muchas razones, pero la causa principal suele estar relacionada con un error con uno de estos elementos:

  • Red
  • Autenticación
  • Autorización

Puede realizar estos pasos comunes de solución de problemas para comprobar la conectividad con el servidor de API del clúster de AKS:

  1. Escriba el siguiente comando az aks show en la CLI de Azure. Este comando obtiene el nombre de dominio completo (FQDN) del clúster de AKS.

    az aks show --resource-group <cluster-resource-group> --name <cluster-name> --query fqdn
    
  2. Con el FQDN, compruebe si el servidor de API es accesible desde el equipo cliente mediante los comandos name server lookup (nslookup), client URL (curl) y 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. Si el clúster de AKS es privado, asegúrese de ejecutar el comando desde una máquina virtual (VM) que pueda acceder al Virtual Network de Azure del clúster de AKS. Consulte Opciones para conectarse al clúster privado.

  4. Si es necesario, siga los pasos del artículo de solución de problemas Dirección IP de cliente no puede acceder al servidor de API, por lo que el servidor de API agrega la dirección IP del cliente a los intervalos IP que autoriza.

  5. Asegúrese de que la versión de kubectl en la máquina cliente no sea dos o más versiones secundarias detrás de la versión del clúster de AKS de esa herramienta. Para instalar la versión más reciente de kubectl, ejecute el comando az aks install-cli en la CLI de Azure. Después, puede ejecutar el comando kubectl version para comprobar el número de versión de la nueva instalación.

    Por ejemplo, en Linux, ejecutaría estos comandos:

    sudo az aks install-cli
    kubectl version --client
    

    Para otros sistemas operativos cliente, use estas instrucciones de instalación de kubectl.

  6. Si es necesario, siga los pasos del artículo de solución de problemas El archivo de configuración no está disponible al conectarse, por lo que el archivo de configuración de Kubernetes (configuración) es válido y se puede encontrar en el momento de la conexión.

  7. Si es necesario, siga los pasos del artículo de solución de problemas El usuario no puede obtener recursos de clúster, por lo que puede enumerar los detalles de los nodos del clúster.

  8. Si usa un firewall para controlar el tráfico de salida desde los nodos de trabajo de AKS, asegúrese de que el firewall permite las reglas de salida mínimas necesarias para AKS.

  9. Asegúrese de que el grupo de seguridad de red asociado a los nodos de AKS permite la comunicación en el puerto TCP 10250 dentro de los nodos de AKS.

Para ver otros pasos comunes de solución de problemas, consulte I'm receiving TCP timeouts when using kubectl u otras herramientas de terceros que se conectan al servidor de API.

Ponte en contacto con nosotros para obtener ayuda

Si tiene preguntas o necesita ayuda, cree una solicitud de soporte o busque consejo en la comunidad de Azure. También puede enviar comentarios sobre el producto con los comentarios de la comunidad de Azure.