Risolvere i problemi relativi al codice di errore K8SAPIServerDNSLookupFailVMExtensionError (52)
Questo articolo illustra come identificare e risolvere l'errore K8SAPIServerDNSLookupFailVMExtensionError
(noto anche come codice di errore ERR_K8S_API_SERVER_DNS_LOOKUP_FAIL, numero di errore 52) che si verifica quando si tenta di avviare o creare e distribuire un cluster microsoft servizio Azure Kubernetes (servizio Azure Kubernetes).
Prerequisiti
Lo strumento di ricerca DNS nslookup per i nodi Windows o lo strumento di ricerca per i nodi Linux.
Interfaccia della riga di comando di Azure, versione 2.0.59 o successiva. Se l'interfaccia della riga di comando di Azure è già installata, è possibile trovare il numero di versione eseguendo
az --version
.
Sintomi
Quando si tenta di avviare o creare un cluster del servizio Azure Kubernetes, viene visualizzato il messaggio di errore seguente:
Gli agenti non sono in grado di risolvere il nome del server API Kubernetes. È probabile che il server DNS personalizzato non sia configurato correttamente. Per altre informazioni, vedere https://aka.ms/aks/private-cluster#hub-and-spoke-with-custom-dns .
Dettagli: Code="VMExtensionProvisioningError"
Message="La macchina virtuale ha segnalato un errore durante l'elaborazione dell'estensione 'vmssCSE'.
Messaggio di errore: "Enable failed: failed to execute command: command terminated with exit status=52\n[stdout]\n{
"ExitCode": "52",
"Output": "Ven Oct 15 Oct 10:06:00 UTC 2021,aks- nodepool1-36696444-vmss0000000\nConnection to mcr.microsoft.com 443 port [tcp/https]
Causa
I nodi del cluster non possono risolvere il nome di dominio completo (FQDN) del cluster in DNS di Azure. Eseguire il comando di ricerca DNS seguente nel nodo del cluster non riuscito per trovare le risoluzioni DNS valide.
Sistema operativo del nodo | Comando |
---|---|
Linux | dig <cluster-fqdn> |
Windows | nslookup <cluster-fqdn> |
Soluzione
Nei server DNS e nel firewall assicurarsi che nulla blocchi la risoluzione al nome di dominio completo del cluster. Il server DNS personalizzato potrebbe essere configurato in modo non corretto se si verifica un blocco anche dopo l'esecuzione del comando o dig
e l'applicazione nslookup
delle correzioni necessarie. Per informazioni sulla configurazione del server DNS personalizzato, vedere gli articoli seguenti:
- Creare un cluster del servizio Azure Kubernetes privato
- Servizio Azure Kubernetes privato con server DNS personalizzato
- Che cos'è l'indirizzo IP 168.63.129.16?
Quando si usa un cluster privato con un DNS personalizzato, viene creata una zona DNS. La zona DNS deve essere collegata alla rete virtuale. Ciò si verifica dopo la creazione del cluster. La creazione di un cluster privato con un DNS personalizzato non riesce durante la creazione. Tuttavia, è possibile ripristinare il processo di creazione a uno stato di "esito positivo" riconciliando il cluster. A tale scopo, eseguire il comando az resource update nell'interfaccia della riga di comando di Azure, come indicato di seguito:
az resource update --resource-group <resource-group-name> \
--name <cluster-name> \
--namespace Microsoft.ContainerService \
--resource-type ManagedClusters
Verificare anche che il server DNS sia configurato correttamente per il cluster privato, come descritto in precedenza.
Nota
L'inoltro condizionale non supporta i sottodomini.
Ulteriori informazioni
Contattaci per ricevere assistenza
In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.