Kubernetes è sicuramente uno dei progetti di maggior successo di Google. Questo sistema open source di orchestrazione e gestione di container rappresenta ormai uno standard del settore e praticamente tutte le aziende che si occupano di fornire servizi Cloud usano questo container orchestration system. Oggi però vogliamo portavi un'interessante analisi di Sean Michael Kerner, techjournalist e IT consultant, che definisce il successo di Kubernetes "noioso".
Per Kerner, Google ha ricevuto un messaggio ben preciso durante il 2018 su Kubernetes: è un progetto noioso. All'evento KubeCon + CloudNativeCon NA 2018, la co-presidente della conferenza di Google Janet Kuo ha fatto eco ai commenti fatti dalla sua collega Aparna Sinha, group product manager presso Big G, al keynote di Kubecon e CloudNativecon Europe 2018 a maggio, definendo in pratica Kubernetes come noioso ma molto utile.
Kuo ha dichiarato che nei primi mesi di sviluppo di Kubernetes l'attenzione era concentrata sulla costruzione rapida dei container e sull'integrazione di nuove funzionalità. Nel 2015 il team ha inoltre inserito come obbiettivo anche la semplificazione delle operazioni di creazione e distribuzione dei cluster/container per gli utenti e gli amministratori. Anche grazie a questi sforzi del team l'adozione di Kubernetes è orma diventata capillare.
"Kubernetes sta diventando così solido, così maturo e così bello, che è molto, molto noioso", ha detto Kuo durante il suo intervento. "Ma noioso significa anche che è buon prodotto, visto che molte aziende lo stanno già utilizzando e funziona alla perfezione." Kuo ha poi aggiunto che "essere noiosi significa che le organizzazioni possono concentrarsi solo sulla fornitura di valore invece dedicare tempo a rendere utilizzabile Kubernetes per i loro scopi."
API per Kubernetes
Esiste un certo numero di caratteristiche che rendono Kubernetes un ambiente stabile e produttivo. Al centro di Kubernetes c'è infatti un set di API integrate e standardizzate che fornisce un layer per l'infrastruttura hardware. Questo aspetto permette di sviluppare applicazioni e servizi senza preoccuparsi dell'integrazione con l'infrastruttura.
Inoltre tale livello di astrazione consente a Kubernetes di essere eseguito in ambienti che vanno dal bare metal alle distribuzioni cloud pubbliche / private ed edge. Kubernetes rispetta inoltre vari standard ufficiali come quelli della Cloud Native Computing Foundation (CNCF), fondazione che ha sviluppato un programma di test di conformità di Kubernetes, per assicurarsi che prodotti e servizi basati su Kubernetes funzionino in modo standardizzato.
L'obbiettivo degli sviluppatori è a questo punto molto semplice da intuire, l'azienda di Mountain View vuole che il carico di lavoro funzioni ovunque e possa essere implementato correttamente in un ogni contesto. Grazie al rispetto delle regole di conformità, non è necessario testare ogni ambiente Kubernetes, quindi quando è presente il logo di conformità Kubernetes è certo che tale servizio offra delle prestazioni in linea con gli standard.
Estensibilità per layer di infrastruttura e API
Un altro attributo chiave di Kubernetes, ed è uno dei motivi principali del suo successo, è il fatto che è estendibile sia per i vari layer di infrastruttura che per i layer di API. Kuo ha spiegato come l'estensibilità dell'infrastruttura consente alle organizzazioni di personalizzare il modo in cui Kubernetes consuma le risorse dell'infrastruttura sottostante. Kubernetes può essere quindi configurato per sfruttare diversi provider Cloud nel modo più efficiente, il tutto tramite API e plugin standardizzati.
Interfacce come la Container Networking Interface (CNI) e Container Storage Interface (CSI) eliminano le barriere all'ingresso per i nuovi fornitori di servizi e aiutano a costruire un ecosistema più sano e robusto. Kubernetes fornisce inoltre l'estensibilità dell'API.
A tal proposito Kuo ha affermato che anche se l'API di Kubernetes copre l'80% dei casi d'uso, la capacità di estensibilità dell'API consente alle organizzazioni di creare interfacce e controller personalizzati per automatizzare le operazioni e i servizi.
Gli standard aperti di Kubernetes e la sua estensibilità ne fanno una piattaforma onnipresente e praticamente perfetta per costruire la propria piattaforma Cloud-native e fornire un'astrazione standardizzata, con un comportamento coerente grazie alle regole di conformità.
Dunque si Kubernetes può essere considerato "noioso" perché si sa sempre cosa aspettarsi da esso, ma tale caratteristica è necessaria per offrire una piattaforma matura su cui costruire servizi aziendali.
Via Serverwatch