Condividi tramite


Risolvere gli errori node not ready seguiti dai ripristini

Questo articolo fornisce una guida alla risoluzione e alla risoluzione dei problemi relativi ai nodi non pronti" nei cluster servizio Azure Kubernetes (servizio Azure Kubernetes). Quando un nodo entra in uno stato "NotReady", può interrompere la funzionalità dell'applicazione e impedirne la risposta. In genere, il nodo viene ripristinato automaticamente dopo un breve periodo. Tuttavia, per evitare problemi ricorrenti e mantenere un ambiente stabile, è importante comprendere le cause sottostanti per poter implementare soluzioni efficaci.

Causa

Esistono diversi scenari che potrebbero causare l'esecuzione di uno stato "NotReady":

  • Mancata disponibilità del server API. In questo modo il probe di idoneità non riesce. Ciò impedisce che il pod venga collegato al servizio in modo che il traffico non venga più inoltrato all'istanza del pod.

  • Errori dell'host della macchina virtuale (VM). Per determinare se si sono verificati errori dell'host della macchina virtuale, controllare le origini informazioni seguenti:

Risoluzione

Per risolvere il problema, seguire la procedura seguente:

  1. Eseguire kubectl describe node <node-name> per esaminare informazioni dettagliate sullo stato del nodo. Cercare eventuali messaggi di errore o avvisi che potrebbero indicare la causa radice del problema.
  2. Controllare la disponibilità del server API eseguendo il kubectl get apiservices comando . Assicurarsi che il probe di idoneità sia configurato correttamente nel file YAML di distribuzione.
  3. Verificare la configurazione di rete del nodo per assicurarsi che non siano presenti problemi di connettività.
  4. Controllare l'utilizzo delle risorse del nodo, ad esempio CPU, memoria e disco, per identificare i potenziali vincoli. Per altre informazioni, vedere Monitorare le prestazioni del cluster Kubernetes con Informazioni dettagliate sui contenitori

Per altri passaggi, vedere Risoluzione dei problemi di base degli errori node non pronti.

Prevenzione

Per evitare che questo problema si verifichi in futuro, eseguire una o più delle azioni seguenti:

  • Assicurarsi che il livello di servizio sia completamente pagato.
  • Ridurre il numero di watch richieste e get al server API.