Kubernetes: cos’è e tutto quello che non puoi non sapere a riguardo

Perché scegliere Kubernetes

In questo articolo parliamo di Kubernetes, la piattaforma opensource che permette a tutti coloro che la utilizzano di gestire i carichi di lavoro e i servizi containerizzati.

Il suo nome deriva dal greco e significa “pilota” o “timoniere”: questo ci fa capire quanto questo strumento sia utile per gestire i carichi di lavoro e la gestione automatica dei container. Le sue caratteristiche principali quali la vasta gamma di funzionalità e la portabilità tra i diversi cloud provider, hanno contribuito alla sua diffusione e al suo utilizzo da parte degli sviluppatori di tutto il mondo.

La sua creazione si deve a un team di sviluppatori di Google che per primi hanno contribuito a sviluppare la tecnologia di container Linux. Il loro lavoro si è concretizzato nella creazione di un software composto da diverse componenti disposte secondo uno specifico pattern: il pattern orchestrator.

Kubernetes: che cos’è e da quali elementi è composto

Vediamo più in dettaglio come si compone questo pattern e quali sono i suoi elementi principali:

Master: possiamo definire il master come il cervello di Kubernetes. Si tratta, infatti, del centro che controlla “tutti i nodi del sistema” e che è in grado di automatizzare la distribuzione dei container.

Nodi: sono i centri singoli che eseguono le attività richieste dagli sviluppatori. La loro azione è, come detto in precedenza, controllata dal master.

Kubelet: si tratta del software che, ricevendo ed eseguendo gli ordini ricevuti dal master, fa in modo che questi vengano avviati ed eseguiti.Pod: sono un gruppo di container che hanno la stessa risorsa di calcolo e la stessa rete. I Pod appartenenti allo stesso gruppo condividono lo stesso indirizzo IP, IPC, il nome dell’host e altre risorse.

Kubernetes: che cos’è e i suoi vantaggi

Se nella prima parte del nostro articolo vi abbiamo spiegato quali sono gli elementi principali di cui si compone Kubernetes e che sottendono al suo funzionamento, nella seconda parte di questo articolo vediamo, invece, maggiormente in dettaglio a cosa serve la piattaforma e quali sono i suoi principali vantaggi.

Thanks to Kubernetes, it is possible to optimise application development for the Cloud, which allows the developer to Grazie a Kubernetes è possibile ottimizzare lo sviluppo applicativo per il cloud, cosa che permette allo sviluppatore di utilizzare una piattaforma per programmare ed eseguire i container su cluster sia di macchine fisiche sia virtuali.

Poichè il suo funzionamento è basato sull’automazione delle attività operative, Kubernetes consente inoltre di:

Orchestrare i container su host multipli;

Sfruttare meglio l’hardware per massimizzare le risorse necessarie al fine di gestire i tuoi applicativi aziendali;

Controllare e automatizzare i deployment e gli aggiornamenti delle applicazioni;

Montare e aggiungere storage per eseguire app stateful;

Gestire rapidamente la scalabilità delle applicazioni containerizzate e delle loro risorse.

Gestire in maniera aperta i servizi, garantendo il deployment delle applicazioni secondo le modalità di deployment da te stabilite.

Controllare lo stato di integrità delle applicazioni e gestire le correzioni con posizionamento, riavvio, replica e scalabilità automatiche.

In conclusione

In questo articolo abbiamo cercato di spiegarvi nella maniera più chiara possibile le caratteristiche principali di Kubernetes;  se avete altre curiosità, continuate a leggere quanto abbiamo scritto per voi nei prossimi articoli del nostro blog!

Share: Facebook Twitter Linkedin

Comments