Reading Time: 3 minutes

Kubernetes si è affermato come la piattaforma di riferimento per il deployment e la gestione delle applicazioni cloud-native.
Per molti versi, è come un sistema operativo (OS) per il cloud:

  • Si installa un sistema operativo tradizionale (Linux o Windows) su un server, che astrae le risorse del server e gestisce i processi delle applicazioni;

  • Si installa Kubernetes su un cloud, che astrae le risorse del cloud e gestisce i microservizi delle applicazioni.

Allo stesso modo in cui Linux astrae le differenze hardware tra le varie piattaforme server, Kubernetes astrae le differenze tra i diversi cloud pubblici e privati.
Risultato finale… finché stai utilizzando Kubernetes, non importa se l’infrastruttura sottostante si trova nei tuoi data center locali, su dispositivi edge o in un cloud pubblico.

Kubernetes rappresenta un passo fondamentale verso un vero cloud ibrido, consentendo di spostare e bilanciare i carichi di lavoro in modo fluido tra infrastrutture cloud pubbliche e private differenti.

Si potrebbe anche migrare da un cloud all’altro, il che significa si può scegliere un provider oggi senza doversi legare a quella scelta per sempre.

Scalabilità nel Cloud

In generale, le applicazioni cloud-native basate su microservizi rendono i problemi di scalabilità e complessità del passato quasi semplici. Google gestisce miliardi di container ogni settimana.

Fantastico, ma la maggior parte di noi non è Google. Come funziona per le “persone normali”?

Beh, in linea di massima, se le tue applicazioni legacy usano centinaia di macchine virtuali, è probabile che le tue applicazioni cloud-native containerizzate usino migliaia di container.

Con questo scenario, ti servirà aiuto per gestirli. Ed è qui che entra in gioco Kubernetes.

Viviamo in un mondo tecnologico e aziendale sempre più frammentato e in costante stato di cambiamento.

Abbiamo un bisogno disperato di un framework e di una piattaforma ampiamente accettati, che nascondano la complessità. Ancora una volta: benvenuto Kubernetes.

Scheduling delle Applicazioni

Un tipico computer è un insieme di CPU, memoria, storage e rete. Ma i sistemi operativi moderni hanno fatto un ottimo lavoro nell’astrarre tutto ciò.

Ad esempio, quanti sviluppatori si preoccupano di sapere quale core CPU o quale indirizzo di memoria esatto usa la loro applicazione? Pochi, perché lasciamo che se ne occupi il sistema operativo. E questa è una cosa positiva, perché rende lo sviluppo molto più semplice.

Kubernetes fa qualcosa di simile con le risorse del cloud e dei datacenter. A un livello alto, un cloud o datacenter è un insieme di risorse di calcolo, rete e storage.

Kubernetes le astrae, così da non dover codificare a mano su quale nodo o volume di storage devono girare le applicazioni, né preoccuparsi su quale cloud vengano eseguite.
Kubernetes si occupa di tutto questo.

Sono finiti i tempi in cui si dava un nome a ogni server, si mappavano i volumi in un foglio Excel e si trattava l’infrastruttura come se fosse un animale domestico. Le moderne applicazioni cloud-native semplicemente non si curano di questi dettagli.

Nel mondo cloud-native (per semplificare) diciamo solo:
“Ehi Kubernetes, ecco un’app. Per favore, distribuiscila e assicurati che continui a funzionare…”

Una Rapida Analogia

Pensa al processo di spedizione di un pacco tramite un corriere. Tu impacchetti il contenuto usando il formato standard del corriere, ci applichi un’etichetta e lo consegni.
Il corriere si occupa di tutto il resto: tutta la logistica complessa su quali aerei e camion usare, quali autostrade percorrere, chi saranno gli autisti, ecc. Forniscono anche servizi per tracciare il pacco e modificarne la consegna.

Il punto è che l’unica cosa che devi fare è impacchettare e etichettare il contenuto.
Tutto il resto lo fa il corriere
.

Lo stesso vale per le app su Kubernetes: impacchetti l’app in un container, gli fornisci un manifest di Kubernetes, e lasci che Kubernetes si occupi del deployment e della gestione.

Hai anche a disposizione un ricco set di strumenti e API per osservarla, monitorarla ed esaminarla costantemente.

error: Content is protected !!

La maggior parte dei contenuti del blog ComputerSec vengono pubblicati a beneficio di tutti e in modo completamente gratuito.
Tuttavia per supportare il blog, e per avere ulteriori vantaggi, puoi decidere di abbonarti e sfruttare al 100% tutti i contenuti!
Abbonati Ora!

Complimenti! Ti sei iscritto alla nostra Newsletter

C'è stato un errore durante l'invio della richiesta. Per favore riprova.

Computer Security will use the information you provide on this form to be in touch with you and to provide updates and marketing.