I cluster Kubernetes sono gli elementi costitutivi di Kubernetes e costituiscono la base architettonica della piattaforma. La modularità di questa struttura a blocchi consente accessibilità, scalabilità e facilità di distribuzione.
I workload odierni richiedono un'elevata disponibilità sia a livello di applicazione che infrastrutturale. Creando uno strato di astrazione tra le app e la loro infrastruttura sottostante, Kubernetes distribuisce il workload in modo efficiente tra le risorse disponibili. Kubernetes protegge dai guasti delle applicazioni tramite controlli costanti dello stato di salute dei nodi e dei container. Se un container si guasta, l'autoriparante e la replica risolvono l'errore. I bilanciatori di carico integrati distribuiscono il carico di lavoro su risorse aperte per ridurre l'impatto di picchi di traffico, picchi o interruzioni.
Questo stesso uso efficiente delle risorse ha un ruolo nella scalabilità. L'aggiunta e la rimozione di nuovi server è semplificata e consente un ridimensionamento orizzontale senza interruzioni. L'auto-scaling automatizzato aumenta i container in esecuzione in base a metriche specificate. I controlli di replica terminano i pod in eccesso se ce ne sono troppi in esecuzione o avviano i pod se ce ne sono troppo pochi.
Per un approfondimento sull'architettura di Kubernetes, guarda il seguente video: "Spiegazione di Kubernetes":
Guarda il video
La velocità è essenziale per gli sviluppatori. Kubernetes è progettato per consentire la rapida compilazione, il test e il rilascio del software. Nuove versioni o aggiornamenti vengono propagate tramite distribuzione automatica. Funziona bene anche con le release canary, consentendo alle distribuzioni di nuove versioni di funzionare parallelamente alle versioni precedenti, verificando l'affidabilità della nuova versione prima di avviarla alla produzione completa.