Il lungo viaggio dell’infrastruttura IT verso l’invisibilità

Con il fiorire del cloud computing e del mondo dei container a compartimenti stagni, come dovremmo monitorare il percorso della nostra infrastruttura IT verso un livello confortevole di invisibilità?

infrastruttura IT

L’obiettivo finale da raggiungere per qualsiasi tecnologia di vero successo è uno stato di invisibilità. Questo è il punto che viene riassunto in sistemi, piattaforme, servizi o dispositivi come componente integrale, in modo che gli utenti (e altre macchine) possano semplicemente presumere che esista e quindi andare avanti con i loro compiti.

Nessuno si ferma più a mettere in dubbio la velocità del microprocessore della propria macchina, pochi di noi hanno problemi di archiviazione e anche i sistemi operativi stessi hanno ora in gran parte la capacità di aggiornarsi automaticamente. Il cloud computing è stato da sempre concepito per fornire un livello di onnipresente potenza e, per essere onesti, riesce a fare ciò in molte aree, ma la moderna litania di casi d’uso e il mercato sfrenato dei servizi di virtualizzazione interconnessi concorrenti non ha sempre reso tutto più facile. Nessuno, ad esempio, parla davvero di cloud plug-and-play.

Implementazione, potenziamento e defenestrazione del cloud

Ma a parte gli ostacoli, il cloud potrebbe diventare più un’utility (come il gas o l’elettricità) piuttosto che una sorta di capacità di elaborazione finemente sintonizzata che necessita di implementazione, potenziamento e “defenestrazione” occasionale. La domanda da porsi è la seguente: nel suo viaggio verso l’invisibilità, come può il cloud computing utilizzare il suo DNA componibile e flessibile per diventare una parte più invisibile delle nostre infrastrutture IT?

adv
Cloud Communication Business

Nell’era digitale il centralino va in Cloud

La telefonia di nuova generazione è in software-as-a-service: non richiede di installare centralini hardware, gestisce fisso e mobile, e consente di attivare nuove linee o filiali con un clic, abilitando Smart Working e Unified Communication. SCOPRI DI PIÙ >>

In generale, agli sviluppatori di software piace utilizzare i servizi cloud perché possono aiutare a fare le cose più velocemente e non devono pensare tanto all’infrastruttura prima dell’inizio di un progetto. Secondo gli analisti Gartner la spesa per prodotti e servizi di infrastruttura applicativa crescerà del 26,6% all’anno fino a oltre 68,9 miliardi di dollari entro il 2022.

Quindi l’infrastruttura IT potrebbe non essere mai veramente attraente, ma forse sta guadagnando più rispetto e considerazione. Ma come per tutte le cose, ci sono compromessi, insidie e costi del cloud. Sebbene alcune task vengano eseguite più velocemente, si verificano ancora gli stessi vecchi problemi relativi alla pianificazione della capacità. Non è infatti difficile sbagliare la decisione di pianificazione di un’istanza cloud, almeno per un utilizzo a lungo termine, se non anche a breve termine.

Questo punto di vista è offerto da Patrick McFadin nel suo ruolo di vicepresidente delle relazioni con gli sviluppatori presso la società cloud DataBase-as-a-Service (DBaaS) DataStax. McFadin sostiene che alcuni servizi cloud creano “giardini recintati” che possono mantenere un’organizzazione circondata da un unico fornitore.

“In quanto tecnologia, il cloud ha un ottimo scopo di fondo, ma i fornitori di servizi cloud (CSP) hanno un incentivo per incoraggiarvi a utilizzare più servizi e risorse. Più usate, più pagate. Sebbene gli sviluppatori e i team IT aziendali siano a proprio agio nel legarsi a servizi che soddisfano le loro esigenze, dovrebbero anche essere pienamente consapevoli dei costi e dei rischi che esistono quando non hanno una via di fuga”, sostiene McFadin.

Gran parte dell’attuale “speranza” in questo settore della tecnologia è riposta sui container, ovvero un ambiente di elaborazione logico in cui il codice software è costruito per consentire l’esecuzione di un’applicazione guest laddove viene estratto dalle risorse dell’infrastruttura hardware e software del sistema host sottostante.

vmware cloud

Poiché i container possono aiutare gli sviluppatori di software e le loro controparti operative a separare i componenti delle applicazioni l’uno dall’altro, questi team tecnici possono iniziare a pensare all’infrastruttura cloud in termini più invisibili. Alla base, questo significa che il software può essere costruito da una prospettiva API (Application Programming Interface) di livello superiore con connettività e funzionalità in primo piano, piuttosto che dover essere costruito con un apprezzamento più sensibile per l’infrastruttura.

Chiarezza e complessità di Kubernetes

Kubernetes fa chiaramente parte di questo ecosistema. Inizialmente sviluppato e poi reso open source da Google, Kubernetes separa i carichi di lavoro dall’infrastruttura e gestisce l’orchestrazione dei container in esecuzione su tale infrastruttura. Il CEO di Shipa.io Bruno Andrade afferma che con i Kubernetes c’è un vantaggio immediato in termini di individuazione dei problemi delle applicazioni. Quando i carichi di lavoro e l’infrastruttura sono separati, è molto più facile individuare le cause alla radice degli errori delle applicazioni, delle mancate corrispondenze dei dati e così via.

Non mancano però le sfide da superare. “In quanto piattaforma generica, Kubernetes standardizza i metodi per la creazione di pacchetti, l’esecuzione e il monitoraggio dei carichi di lavoro, riducendo i problemi in questi processi. Tuttavia, la complessità di Kubernetes introduce una propria serie di punti deboli, inclusa una mancanza di visibilità che nasconde i rischi per la sicurezza e rende la manutenzione e la risoluzione dei problemi molto più difficili”.

Sia McFadin che Andrade concordano sul fatto che la combinazione di cloud, container e Kubernetes insieme può alleviare il potenziale problema che gli sviluppatori hanno per quanto riguarda il vincolo di uno specifico provider di cloud. Ora possiamo almeno essere contenti del fatto che le applicazioni in esecuzione in container come parte delle implementazioni di Kubernetes possano essere gestite come un set discreto, permettendoci di creare data center virtuali completamente portabili. Richiede solo elaborazione, rete e archiviazione da fornitori di cloud.

È questo il sogno dell’invisibilità delle infrastrutture che prende finalmente vita? La risposta è molto probabilmente: forse… con qualche eccezione. Ma a prescindere da ciò, il peso maggiore dello slancio del settore è ancora concentrato sulla creazione di quanta più invisibilità possibile del livello di servizio per fornire un substrato sottostante super funzionale su cui tutti possiamo sviluppare.

Lo stato dei dati

Ci sono però altre sfide all’orizzonte. Anche se queste tecnologie rendono il lato applicativo dell’equazione molto più facile da gestire nel cloud, non è l’unico elemento di questo processo. “Da un punto di vista pratico, abbiamo ancora bisogno di un mezzo per esaminare il modo in cui le applicazioni creano e gestiscono i dati”, spiega McFadin. Il suo riferimento è alla differenza tra carichi di lavoro di dati stateful che hanno identità relativa al loro stato nel tempo e nello spazio e carichi di lavoro di informazioni stateless, che quindi possono essere usati separatamente da altri sistemi.

“Ad esempio, quando parliamo di archiviazione dei dati all’interno di un database nel cloud, stiamo davvero parlando di creare un carico di lavoro stateful che richiede un qualche tipo di archiviazione e utilizza un modello di database per organizzare quei dati”, ha detto McFadin. Peccato che, nel mondo del cloud, stateful faccia rima con… dolori. I dati devono essere archiviati nel tempo, può essere difficile spostarli per motivi di conformità e il costo aumenta man mano che vengono creati più dati. Kubernetes non è stato originariamente progettato per carichi di lavoro stateful e ciò ha aggiunto più complessità.

Possiamo trarre conforto dal fatto che il cloud offre livelli crescenti di invisibilità ogni giorno. Quante volte l’utente medio ha attivato un traduttore per smartphone, un calcolatore di valuta o un’applicazione di banking online e si è fermato a pensare a tutto ciò che sta effettivamente accadendo nel back-end?

Mentre quell’utente non pensa a nulla di tecnologico quando i servizi funzionano in modo efficace, inizia naturalmente a maledire questi strumenti quando non funzionano. Ciò di cui dobbiamo preoccuparci nei circoli tecnologici è mantenere i carichi di lavoro stateless basati su container orchestrati in modo intelligente per dare alle applicazioni il loro invisibile mantello del “funziona e basta”.

Se questo articolo ti è stato utile, e se vuoi mantenerti sempre aggiornato su cosa succede nell’industria ICT e ai suoi protagonisti, iscriviti alle nostre newsletter:

CWI: notizie e approfondimenti per chi acquista, gestisce e utilizza la tecnologia in azienda
CIO:
approfondimenti e tendenze per chi guida la strategia e il personale IT
Channelworld: notizie e numeri per distributori, rivenditori, system integrator, software house e service provider

Iscriviti ora!