Un nodo di Ku­ber­ne­tes è un singolo nodo di lavoro di un cluster Ku­ber­ne­tes co­sti­tui­to da com­po­nen­ti dell’in­fra­strut­tu­ra su cui eseguire i carichi di lavoro dei container (pod). I nodi for­ni­sco­no le risorse ne­ces­sa­rie, come la potenza di calcolo e lo spazio di ar­chi­via­zio­ne.

Nodo di Ku­ber­ne­tes: de­fi­ni­zio­ne

I nodi sono elementi co­sti­tu­ti­vi fon­da­men­ta­li di un cluster Ku­ber­ne­tes. Ciascun nodo rap­pre­sen­ta una macchina fisica o virtuale e fornisce risorse come CPU, memoria RAM e spazio di ar­chi­via­zio­ne. Questi nodi col­la­bo­ra­no per sostenere e gestire i carichi di lavoro dei container. Inoltre, ge­sti­sco­no attività come l’avvio, il mo­ni­to­rag­gio e il ri­di­men­sio­na­men­to dei con­te­ni­to­ri per garantire il corretto fun­zio­na­men­to delle ap­pli­ca­zio­ni.

I nodi di Ku­ber­ne­tes sono scalabili e fles­si­bi­li in quanto possono essere aggiunti o rimossi a seconda delle necessità. Essi fa­vo­ri­sco­no un impiego ef­fi­cien­te delle risorse e si adattano di­na­mi­ca­men­te ai requisiti delle ap­pli­ca­zio­ni in ese­cu­zio­ne. Inoltre, la di­stri­bu­zio­ne dei nodi su diversi server aumenta la sicurezza in caso di anomalie del cluster. Grazie al coor­di­na­men­to in­tel­li­gen­te per mezzo dei Re­pli­ca­Set e dei DaemonSet di Ku­ber­ne­tes, è possibile gestire le ap­pli­ca­zio­ni container in modo semplice e sicuro.

Immagine: Grafico di un cluster con nodi di Kubernetes
Grafico di un cluster Ku­ber­ne­tes

Stato del nodo

Lo stato del nodo fornisce in­for­ma­zio­ni sulle con­di­zio­ni di un nodo di lavoro in un cluster Ku­ber­ne­tes. Esso mostra se il nodo funziona cor­ret­ta­men­te e se è in grado di ospitare i pod.

  • Addresses: gli indirizzi di un nodo for­ni­sco­no in­for­ma­zio­ni sulla sua ac­ces­si­bi­li­tà in rete. Essi possono essere indirizzi IP, nomi host e porte. Un nodo può avere più indirizzi, che sono fon­da­men­ta­li per la co­mu­ni­ca­zio­ne all’interno del cluster.
  • Con­di­tions: le con­di­zio­ni ri­flet­to­no l’attuale stato di integrità del nodo di Ku­ber­ne­tes. Con­di­zio­ni tipiche sono Ready (pronto), OutOfDisk (mancanza di spazio), Me­mo­ry­Pres­su­re (utilizzo elevato della memoria RAM) e Di­sk­Pres­su­re (utilizzo elevato del disco fisso). Questi messaggi indicano se i nodi sono operativi o se sono presenti de­ter­mi­na­te carenze di risorse.
  • Capacity: la capacità di un nodo si riferisce alle risorse di­spo­ni­bi­li come CPU, memoria RAM e spazio su disco fisso. Queste in­for­ma­zio­ni sono im­por­tan­ti per conoscere il carico di lavoro che un nodo può gestire. Ku­ber­ne­tes utilizza questi dati per decidere dove po­si­zio­na­re i container in base ai requisiti di risorse.
  • Info: la sezione relativa alle in­for­ma­zio­ni può contenere dettagli ag­giun­ti­vi sul nodo, come il sistema operativo, la versione del kernel o di kubelet e altri metadati.
Consiglio

Con Managed Ku­ber­ne­tes di IONOS puoi or­che­stra­re fa­cil­men­te ap­pli­ca­zio­ni con­tai­ne­riz­za­te in ambienti di pro­du­zio­ne di­stri­bui­ti. Ap­pro­fit­ta dei vantaggi in termini di sicurezza, tra­spa­ren­za e controllo durante l’ese­cu­zio­ne delle ap­pli­ca­zio­ni, il tutto con un minimo impegno di gestione.

Heartbeat del nodo

Gli heartbeat inviano pe­rio­di­ca­men­te in­for­ma­zio­ni di stato al master Ku­ber­ne­tes. Questi ag­gior­na­men­ti di stato servono a informare il master che il nodo è ancora di­spo­ni­bi­le e pronto all’uso.

Nel contesto di Ku­ber­ne­tes esistono due forme di heartbeat per i nodi:

  • Ag­gior­na­men­ti dello .status di un nodo: si tratta di ag­gior­na­men­ti di stato che un nodo invia re­go­lar­men­te al master Ku­ber­ne­tes. Lo stato contiene in­for­ma­zio­ni sulla di­spo­ni­bi­li­tà e sulle con­di­zio­ni del nodo.
  • Oggetti lease nello spazio dei nomi kube-node-lease: ciascun nodo è collegato a un co­sid­det­to oggetto lease nello spazio dei nomi kube-node-lease. Un oggetto lease è es­sen­zial­men­te una sorta di contratto di noleggio che il nodo invia al master. Questo lease conferma che il nodo è ancora attivo e sta con­su­man­do risorse nel cluster.

Gestione del nodo di Ku­ber­ne­tes

I tre com­po­nen­ti prin­ci­pa­li che insieme co­sti­tui­sco­no la gestione dei nodi di un cluster Ku­ber­ne­tes sono il con­trol­ler del nodo, kubelet e lo strumento a riga di comando kubectl.

Con­trol­ler del nodo

Il con­trol­ler del nodo è un com­po­nen­te centrale di Ku­ber­ne­tes ed è re­spon­sa­bi­le della gestione dei nodi. Esso monitora gli heartbeat sotto forma di ag­gior­na­men­ti di stato e oggetti lease al fine di garantire che i nodi fun­zio­ni­no senza intoppi. Se il con­trol­ler del nodo rileva che un nodo non è più attivo e non viene ricevuto nessun heartbeat, può in­ter­ve­ni­re in modo ap­pro­pria­to, ad esempio ri­pro­gram­man­do i pod su altri nodi di­spo­ni­bi­li. Il con­trol­ler del nodo svolge quindi un ruolo fon­da­men­ta­le nel man­te­ni­men­to della di­spo­ni­bi­li­tà e dell’integrità del pool di nodi nel cluster Ku­ber­ne­tes.

Kubectl

Lo strumento a riga di comando kubectl permette agli utenti di in­te­ra­gi­re con un cluster Ku­ber­ne­tes. Con kubectl è possibile inviare comandi al master Ku­ber­ne­tes per creare, mo­ni­to­ra­re, ag­gior­na­re ed eliminare risorse nel cluster. Lo strumento è versatile e consente di gestire im­ple­men­ta­zio­ni, servizi, pod, ConfigMap e altri oggetti Ku­ber­ne­tes.

Kubelet

Kubelet è presente su ciascun nodo di Ku­ber­ne­tes del cluster ed è re­spon­sa­bi­le della co­mu­ni­ca­zio­ne tra nodo e master. La funzione prin­ci­pa­le di kubelet è con­trol­la­re che i pod container vengano avviati, mo­ni­to­ra­ti e terminati secondo le istru­zio­ni del master Ku­ber­ne­tes.

Nel tutorial di Ku­ber­ne­tes scoprirai come con­fi­gu­ra­re il tuo cluster Ku­ber­ne­tes per­so­na­liz­za­to.

Managed Ku­ber­ne­tes
Or­che­stra­zio­ne sicura dei carichi di lavoro dei container
  • Con­fi­gu­ra­zio­ne au­to­ma­ti­ca dei cluster Ku­ber­ne­tes
  • Ar­chi­via­zio­ne per­si­sten­te com­ple­ta­men­te integrata
  • As­si­sten­za clienti 24/7
Vai al menu prin­ci­pa­le