La dirección IP del cliente no puede tener acceso al servidor api
En este artículo se describe cómo solucionar los problemas que se producen cuando no se puede conectar a un clúster de servicio de Kubernetes de Azure (AKS), ya que la dirección IP del cliente no puede tener acceso al servidor de la API de AKS.
Requisitos previos
- CLI de Azure.
- La herramienta url de cliente (rizo).
Síntomas
Es posible que vea errores como:
Unable to connect to the server: dial tcp <API-SERVER-IP>:443: i/o timeout
Unable to connect to the server: dial tcp <API-SERVER-IP>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period, or established connection failed because connected host has failed to respond.
Causa
Es posible que los intervalos IP autorizados por el servidor de API se hayan habilitado en el servidor api del clúster, pero la dirección IP del cliente no se incluyó en los intervalos IP. Para comprobar si esta característica se ha habilitado, vea si el siguiente comando az aks show en la CLI de Azure genera una lista de intervalos IP:
az aks show --resource-group <cluster-resource-group> \
--name <cluster-name> \
--query apiServerAccessProfile.authorizedIpRanges
Solución
Vea los intervalos autorizados por el servidor api del clúster y agregue la dirección IP del cliente dentro de ese intervalo siguiendo los pasos siguientes:
Nota
¿Tiene acceso al servidor api desde una red corporativa donde el tráfico se enruta a través de un servidor proxy o firewall? A continuación, pregúntele al administrador de red antes de agregar la dirección IP del cliente a la lista de intervalos autorizados para el servidor api.
Pida también al administrador del clúster antes de agregar la dirección IP del cliente, ya que puede haber problemas de seguridad al agregar una dirección IP temporal a la lista de intervalos autorizados.
Para obtener la dirección IP del cliente, ejecute este comando de bucle :
$ curl --silent checkip.dyndns.org <html><head><title>Current IP Check</title></head><body>Current IP Address: 0.255.127.63</body></html>Actualice el intervalo autorizado por el servidor api con el comando az aks update en la CLI de Azure, con la dirección IP del cliente:
az aks update --resource-group <cluster-resource-group> \ --name <cluster-name> \ --api-server-authorized-ip-ranges <ip-ranges-that-include-your-client-ip-address>