Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Sommario
Questo articolo illustra la procedura di risoluzione dei problemi per ripristinare i nodi del cluster del servizio Azure Kubernetes dopo un errore. Risolve in particolare i messaggi di errore più comuni visualizzati quando si verifica un errore Node Not Ready e spiega come ripristinare i nodi sia per i nodi Windows che Per Linux.
Operazioni preliminari
Leggere la guida ufficiale per la risoluzione dei problemi dei cluster Kubernetes. Leggere anche la guida del tecnico Microsoft per la risoluzione dei problemi di Kubernetes. Questa guida contiene i comandi per la risoluzione dei problemi relativi a pod, nodi, cluster e altre funzionalità.
Prerequisiti
-
Interfaccia della riga di comando di Azure, versione 2.31 o successiva. Se è già installata l'interfaccia della riga di comando di Azure, eseguire
az --versionper verificare la versione.
Risoluzione dei problemi di base
AKS monitora continuamente lo stato di integrità dei nodi di lavoro e ripara automaticamente i nodi se diventano non funzionanti. La piattaforma macchina virtuale di Azure gestisce le macchine virtuali che riscontrano problemi. Azure Kubernetes Service (AKS) e le macchine virtuali di Azure collaborano per ridurre le interruzioni del servizio per i cluster.
Per i nodi esistono due forme di heartbeat:
Aggiorna lo stato di un
Nodeoggetto .Oggetti Lease all'interno dello spazio dei nomi kube-node-lease. Ognuno
Nodeha un oggetto associatoLease.
Rispetto agli aggiornamenti allo stato di un Node, un Lease è una risorsa leggera. L'uso di oggetti Lease per gli heartbeats riduce l'impatto sulle prestazioni di questi aggiornamenti per cluster di grandi dimensioni.
Il kubelet è responsabile della creazione e dell'aggiornamento dello .status degli Node oggetti. È anche responsabile dell'aggiornamento degli Lease oggetti correlati agli Node oggetti.
- Kubelet aggiorna il nodo
.statusquando si verifica una modifica dello stato o se non è stato eseguito un aggiornamento per un intervallo configurato. L'intervallo predefinito per.statusgli aggiornamenti ai nodi è di cinque minuti, che è molto più lungo del timeout predefinito di 40 secondi per i nodi non raggiungibili. - Il kubelet crea e quindi aggiorna l'oggetto
Leaseogni 10 secondi (intervallo di aggiornamento predefinito).Leasegli aggiornamenti vengono eseguiti indipendentemente dagli aggiornamenti al nodo.status. Se l'aggiornamentoLeaseha esito negativo, il kubelet ritenta, usando un intervallo di attesa esponenziale che inizia a 200 millisecondi ed è limitato a sette secondi.
Non è possibile pianificare un pod in un nodo con stato NotReady o Unknown. È possibile pianificare un pod solo sui nodi nello stato Ready.
Se il nodo si trova nello stato MemoryPressure, DiskPressure o PIDPressure, è necessario gestire le risorse per pianificare pod aggiuntivi sul nodo. Se il nodo è in NetworkUnavailable modalità, è necessario configurare correttamente la rete nel nodo.
AKS gestisce il ciclo di vita e le operazioni dei nodi dell'agente per te. La modifica delle risorse IaaS associate ai nodi dell'agente non è supportata. Ad esempio, la personalizzazione di un nodo tramite connessioni SSH, l'aggiornamento dei pacchetti o la modifica della configurazione di rete in un nodo non è supportata. Per ulteriori informazioni, vedere Copertura del supporto AKS per i nodi dell'agente.
Assicurarsi che siano soddisfatte le condizioni seguenti:
Lo stato del cluster è Succeeded (Running). Per controllare lo stato del cluster nel portale di Azure, cercare e selezionare Servizio Kubernetes e selezionare il nome del tuo cluster AKS. Quindi, nella pagina Panoramica del cluster, cercare Elementi essenziali per trovare lo stato. In alternativa, immettere il comando az aks show nell'Azure CLI.
Il pool di nodi ha uno stato di provisioning completato e uno stato di alimentazione attivo. Per controllare lo stato del pool di nodi nel portale di Azure, tornare alla pagina del cluster Azure Kubernetes Service (AKS) e quindi selezionare Pool di nodi. In alternativa, immettere il comando az aks nodepool show in Azure CLI.
Le porte in uscita necessarie sono aperte nei gruppi di sicurezza di rete e nel firewall in modo che sia possibile raggiungere l'indirizzo IP del server API. Per altre informazioni, vedere Regole di rete in uscita e FQDN necessari per i cluster AKS.
I tuoi nodi hanno distribuito le ultime immagini dei nodi.
I nodi si trovano nello
Runningstato invece diStoppedoDeallocated.Il cluster esegue una versione di Kubernetes supportata da AKS.
Ulteriori informazioni
Per risolvere i problemi relativi allo Not Ready stato di un nodo, vedere Risolvere i problemi relativi a un cambio di stato di un nodo da Integro a Non Pronto.
Dichiarazione di non responsabilità di contatti di terze parti
Microsoft fornisce informazioni di contatto di terze parti per aiutarti a trovare ulteriori informazioni su questo argomento. Queste informazioni di contatto sono soggette a modifica senza preavviso. Microsoft non garantisce l'accuratezza delle informazioni di contatto di terze parti.