Graham Berry, EMEA sales lead OpenShift di Red Hat, mette a fuoco l’importanza di Kubernetes per l’automazione dei container e dei processi aziendali.
Ogni tanto viene sviluppata una nuova tecnologia che sembra essere la soluzione semplice per un problema complicato. Prendiamo Kubernetes: una piattaforma open source che automatizza le operazioni dei container Linux, eliminando molti dei processi manuali coinvolti nel deploy e nello scaling delle applicazioni containerizzate. Ma da solo, Kubernetes può risolvere la sfida legata all’esecuzione di carichi di lavoro mission-critical su larga scala?
L’uso dei container continua ad aumentare. Una recente indagine Red Hat ha rilevato che il 62% delle organizzazioni oggi utilizza in maniera minima (meno del 10%) i container, ma solo il 20% dichiara che sarà ancora così tra 24 mesi. Al tempo stesso, si prevede che la percentuale di aziende che avrà oltre la metà dei workload containerizzati triplicherà – raggiungendo circa il 28% – nello stesso periodo.
Sono finiti i tempi in cui i container erano visti solo come un nuovo modo di pacchettizzare le applicazioni da parte degli infrastructure architect che dovevano trovare modi migliori per eseguire le applicazioni e ridurre i costi delle macchine virtuali. Oggi, le piattaforme container sono riconosciute in primis come abilitatrici dell’innovazione e solo in seconda battuta delle infrastrutture. Ciò significa che disporre di una piattaforma container e di orchestrarla al meglio rappresenta una priorità per ogni CIO.
Che cos’è Kubernetes
Solo pochi anni fa si è aperta una battaglia tecnologica tra diverse piattaforme di orchestrazione di container. Poi è arrivato Kubernetes che è diventato uno dei progetti open source in più rapida crescita del mercato. Quasi 8.000 sviluppatori hanno partecipato al Kubecon a Barcellona nel 2019, rendendolo una delle più grandi conferenze open source in Europa. Si può dire con certezza che Kubernetes ha conquistato lo spazio di orchestrazione dei container e il settore vi ha fatto convergere la tecnologia tanto che oggi sono più di 90 le offerte certificate Kubernetes sul mercato .
Ma cosa offre Kubernetes che lo rende così importante per le piattaforme container? Come strumento di gestione di cluster e container vendor-agnostic, Kubernetes fornisce una piattaforma per automatizzare la distribuzione, scaling e gestione dei container applicativi su cluster di host. In un’era in cui l’ibrido è la strategia cloud predominante , i cluster Kubernetes possono abbracciare nuvole pubbliche, private o ibride. Per questo motivo, Kubernetes è la piattaforma ideale per ospitare applicazioni cloud native che devono scalare rapidamente come nel caso dello streaming di dati in tempo reale.
Tuttavia, Kubernetes si affida ad altri progetti open source per realizzare appieno il suo potenziale.
Ciò che Kubernetes non è
Una piattaforma di container di classe enterprise dovrebbe consistere di diversi strumenti al di là dell’orchestrazione di Kubernetes tra cui registro, networking, archiviazione, telemetria, automazione e servizi. E poi metrica, registrazione, monitoraggio, accesso, autenticazione e autorizzazione, linguaggi, framework, middleware e database. E, non ultimo, la sicurezza. Un’azienda deve pensare alla sicurezza a tutti i livelli dello stack prima di implementare e gestire un container, e affrontare la sicurezza di Kubernetes in modo integrato e continuo, tenendo presente dove finisce la sicurezza di Kubernetes e dove è quindi necessario che l’azienda intervenga.
Quindi, mentre l’installazione di Kubernetes è fattibile per molti, impostarlo come piattaforma centrale per l’esecuzione di applicazioni business critical richiede molto di più. Chiunque realizzi la propria piattaforma di container dovrà esaminare, testare e rafforzare le singole tecnologie dello stack, tenere il passo con ogni singolo componente per l’intero ciclo di vita e assicurarsi che operino di concerto. Se si verifica un problema, poiché Kubernetes è un progetto open source non dispone di una struttura di supporto, quindi starà a voi risolverlo.
Il Kubernetes di Frankenstein
Molte organizzazioni iniziano con una piccola installazione Kubernetes e, quando vogliono scalare e iniziare a gestire carichi di lavoro mission-critical, scoprono di aver sottovalutato la complessità e l’overhead di attività quali integrazione, test, aggiornamento e gestione dei vari componenti nativi del cloud. Questo è il momento in cui il mantra “non esiste un Vanilla Kubernetes” può diventare fin troppo evidente, perché un pezzo alla volta si finisce per assemblare un mostro di Frankenstein. E mantenere e gestire questa creazione man mano che cresce può diventare sempre più costoso.
Canalizzare l’nnovazione
In un mondo in cui l’innovazione e il time to market costituiscono una priorità assoluta, gli sviluppatori Day One devono essere in grado di effettuare il provisioning dell’infrastruttura in modo efficiente e iniziare a scrivere codice. L’utilizzo di una piattaforma gestita che fornisce accesso a tutto ciò che serve per far funzionare container e Kubernetes in modo coerente in un ambiente ibrido (incluso il supporto e la sicurezza) significa che i team applicativi e di sviluppo possono dedicare più tempo a risolvere i problemi di business.
Molte organizzazioni vorranno che il loro ambiente ibrido includa più nuvole pubbliche. Ciò significa che devono essere consapevoli di quanta flessibilità e libertà avranno bisogno per utilizzare le tecnologie di loro scelta – incluse innovazioni emergenti come Quarkus, che consente di realizzare applicazioni native cloud, o Operators, per confezionare le applicazioni native Kubernetes e semplificarne la gestione. In definitiva questo significa comprendere la differenza tra una piattaforma aperta e una piattaforma proprietaria.
Contenere l’entusiasmo
Quando si inizia il passaggio ai container vale la pena di prendere in considerazione come verranno gestiti in produzione nel corso del tempo. In definitiva, su che cosa volete che si concentrino i vostri team? Se la risposta è realizzare servizi di classe enterprise per i clienti e farli arrivare sul mercato più velocemente che mai, allora ricordate: Kubernetes è un’arma potente, ma ci vuole più di un proiettile d’argento per uccidere il lupo mannaro.