Solución de problemas del código de error K8SAPIServerDNSLookupFailVMExtensionError (52)
En este artículo se describe cómo identificar y resolver el K8SAPIServerDNSLookupFailVMExtensionError
error (también conocido como código de error ERR_K8S_API_SERVER_DNS_LOOKUP_FAIL, número de error 52) que se produce al intentar iniciar o crear e implementar un clúster de Microsoft Azure Kubernetes Service (AKS).
Requisitos previos
La herramienta de búsqueda dns nslookup para nodos de Windows o la herramienta de excavación para nodos de Linux.
CLI de Azure, versión 2.0.59 o posterior. Si la CLI de Azure ya está instalada, puede encontrar el número de versión ejecutando
az --version
.
Síntomas
Al intentar iniciar o crear un un clúster de AKS, recibirá el mensaje de error siguiente:
Los agentes no pueden resolver el nombre del servidor de la API de Kubernetes. Es probable que el servidor DNS personalizado no esté configurado correctamente, consulte https://aka.ms/aks/private-cluster#hub-and-spoke-with-custom-dns para obtener más información.
Detalles: Code="VMExtensionProvisioningError"
Message="VM ha notificado un error al procesar la extensión "vmssCSE".
Mensaje de error: "Error al habilitar: error al ejecutar el comando: comando finalizado con exit status=52\n[stdout]\n{
"ExitCode": "52",
"Salida": "Fri Oct 15 10:06:00 UTC 2021,aks- nodepool1-36696444-vmss000000\nConnection to mcr.microsoft.com 443 port [tcp/https]
Causa
Los nodos del clúster no pueden resolver el nombre de dominio completo (FQDN) del clúster en Azure DNS. Ejecute el siguiente comando de búsqueda DNS en el nodo de clúster con errores para buscar resoluciones DNS válidas.
Sistema operativo del nodo | Comando |
---|---|
Linux | dig <cluster-fqdn> |
Windows | nslookup <cluster-fqdn> |
Solución
En los servidores DNS y el firewall, asegúrese de que nada bloquee la resolución al FQDN del clúster. Es posible que el servidor DNS personalizado esté configurado incorrectamente si algo está bloqueando incluso después de ejecutar el nslookup
comando o dig
y aplicar las correcciones necesarias. Para obtener ayuda para configurar el servidor DNS personalizado, revise los artículos siguientes:
- Creación de un clúster privado de AKS
- Servicio privado de Azure Kubernetes con servidor DNS personalizado
- ¿Qué es la dirección IP 168.63.129.16?
Cuando se usa un clúster privado que tiene un DNS personalizado, se crea una zona DNS. La zona DNS debe estar vinculada a la red virtual. Esto ocurre después de crear el clúster. Se produce un error al crear un clúster privado que tenga un DNS personalizado durante la creación. Sin embargo, puede restaurar el proceso de creación a un estado "correcto" mediante la conciliación del clúster. Para ello, ejecute el comando az resource update en la CLI de Azure, como se indica a continuación:
az resource update --resource-group <resource-group-name> \
--name <cluster-name> \
--namespace Microsoft.ContainerService \
--resource-type ManagedClusters
Compruebe también que el servidor DNS está configurado correctamente para el clúster privado, como se ha descrito anteriormente.
Nota:
El reenvío condicional no admite subdominios.
Más información
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.