Come correggere l'errore nodo Kubernetes NoTready

Come correggere l'errore nodo Kubernetes NoTready
Kubernetes è un ambiente che funziona con nodi, gruppi, baccelli, ecc. su una macchina fisica o virtuale a seconda della configurazione del cluster. Uno o più nodi che sono in genere gestiti dal piano di controllo Kubernetes costituiscono un cluster. Un nodo è un componente significativo di un cluster Kubernetes per eseguire i pod. PODS eseguiti su nodi o cluster per eseguire un comando o eseguire un'applicazione in Kubernetes. Se il nodo non è disponibile per eseguire un pod o un'applicazione in kubernetes, quel nodo è considerato in uno stato non ready. In questo articolo, esploreremo quando e come un nodo entra nello stato NoteReady e come riparare quello stato in modo che i pod possano eseguire su di esso.

Cos'è lo stato nodo nodo in kubernetes?

Un nodo nell'ambiente Kubernetes è una macchina virtuale che costituisce un cluster per eseguire i baccelli. I nodi devono funzionare correttamente perché svolgono attività importanti. Un cluster è costituito da più nodi e ogni nodo ha il suo stato. Un nodo entra nello stato noTready se si blocca o viene terminato. Lo stato del nodo non è uno stato del nodo quando un nodo non è in grado di eseguire i baccelli su di esso. Tutti i baccelli statali che sono già in esecuzione su un nodo e che il nodo entra nello stato non ready, tutti i baccelli diventano non disponibili.

Come discusso in precedenza, un cluster è composto da uno o più nodi e i nodi vengono utilizzati per eseguire i baccelli. Ogni volta che un pod è programmato per essere eseguito su un nodo, Kubernetes rivede le condizioni di salute del nodo per verificare se è in grado di eseguire o meno i pod. È possibile utilizzare il seguente comando per acquisire un elenco dei nodi che gestiscono un cluster:

> kubectl ottieni nodi

Questo ti dà tutti i nodi che sono attualmente in esecuzione in un cluster con le loro proprietà associate come nome, stato, ruoli, età, versione, ecc. Vedere il seguente output del comando:

Qui, puoi vedere i diversi stati dei nodi. Il "my-clsuter-m03" è nello stato del notheady mentre gli altri sono nello stato pronto. Potrebbero esserci diverse ragioni per cui questo nodo è in uno stato non ready. Possiamo scoprire questo motivo eseguendo il debug del nodo. È essenziale eseguire il debug di un nodo nonostante e conoscere il motivo in modo che il problema possa essere risolto e il nodo non rimane inutilizzato.

Perché un nodo entra nello stato del nodo?

Ci possono essere diverse ragioni per cui un nodo per inserire lo stato nodo noto. Alcuni di loro sono i seguenti:

  • La rete sul nodo non è configurata correttamente o non è in grado di connettersi a Internet.
  • Lo strumento di riga di comando Kubectl non sta rispondendo o ha alcuni problemi.
  • Mancanza di risorse o indisponibilità delle risorse essenziali per il nodo. Sono necessarie sufficienti memoria, spazio su disco e capacità di elaborazione affinché un nodo sia in grado di eseguire correttamente. Il nodo entra in uno stato chiamato "noTready" se una di queste risorse non è accessibile.
  • Un errore Kube-Proxy come un agente di rete sul nodo. Le regole di rete non vengono mantenute o Kube-Proxy si arresta o si arresta in modo anomalo.
  • Problemi con fornitori specifici che sono responsabili della gestione dei nodi.

Quei nodi che si trovano nello stato del notheady non sono utilizzati nel cluster e accumulano i costi senza partecipare alla gestione dei pod mentre influiscono negativamente sul carico di lavoro di produzione. Non appena sai che un nodo è in uno stato non ready, debug rapidamente in modo che non rimanga inattivo per così tanto tempo.

Come risolvere il problema nodo noro?

La soluzione più semplice e più rapida per risolvere l'errore nodo non è il debug o la risoluzione dei problemi. Di seguito sono riportati i passaggi che è possibile seguire per risolvere un nodo:

Passaggio 1: avvia il minikube

Il cluster di minikube deve essere in uno stato attivo in modo da poter eseguire le tue applicazioni o comandi in esso. Per assicurarsi che sia attivo e funzionante correttamente, utilizzare il comando seguente:

> Minikube Start

Passaggio 2: visualizzare tutti i nodi nel cluster

Per sapere quale nodo si trova nello stato NoTready, visualizza tutti i nodi disponibili nel cluster con l'aiuto del seguente comando:

> kubectl ottieni nodi

Ora, questo comando fornisce solo un riepilogo delle proprietà dei nodi disponibili nel cluster. Se hai bisogno di una descrizione dettagliata delle proprietà associate di un nodo, è possibile utilizzare il comando seguente:

> kubectl descrivi nodo minikube

Puoi vedere la differenza ora che hai una descrizione dettagliata delle proprietà dei nodi disponibili. Questo ti aiuta a sapere di più sullo stato di un nodo nel cluster. Puoi facilmente sapere che il motivo dietro il nodo si trova in uno stato non ready. Ti consente di risolvere il problema facilmente e in modo rapido.

Passaggio 3: controlla gli eventi

Gli eventi nell'ambiente Kubernetes si riferiscono a eventuali modifiche che si verificano con contenitori, nodi o pod. Questi eventi ti danno un quadro completo di ciò che sta accadendo nel cluster di Kubernetes. Quindi, quando controlli questi eventi, conosci il motivo dietro un nodo in uno stato non ready. Ora inserisci il seguente comando sul tuo terminale per ottenere tutti gli eventi che si verificano nel cluster Kubernetes:

> Kubectl Ottieni eventi -Am -Namespaces

Gli eventi nel regno di Kubernetes sono i pangrattato che forniscono preziose informazioni su come è in esecuzione il cluster Kubernetes. Forniscono anche un contesto dettagliato per i comportamenti preoccupanti. Controlliamo l'output fornito nella seguente istantanea:

Dall'output indicato, puoi vedere tutti i dettagli degli eventi o in parole semplici, tutto il lavoro che viene eseguito nel cluster finora. Ogni modifica è registrata sotto forma di un registro, dando un quadro completo di ogni cambiamento.

Conclusione

Questo documento riguarda ciò che è un nodo non sia lo stato di nodo e le ragioni per un nodo per inserire lo stato non ready. Kubernetes è un ambiente virtuale o fisico composto da cluster che eseguono uno o più nodi. Questi nodi hanno stati diversi come pronti, notheady, programmati a programmazione, ecc. e sono usati per eseguire i baccelli. Abbiamo esplorato come risolvere lo stato del nodo noTready usando il comando kubectl nel cluster minikube.