Umberto Galtarossa, Partner Technical Manager di Pure Storage, ci spiega come lo storage-as-code consente di accelerare i progetti di trasformazione digitale.
Trasformazione digitale. Due parole che dicono molto. Se grattiamo sotto la superficie del termine lo scopriremo carico di complessità e significati, con molteplici implicazioni pratiche tanto per il business quanto per l’IT. Per il business, la trasformazione digitale è la promessa di livelli di agilità finora inimmaginabili nella capacità di rispondere alle nuove richieste della clientela.
E questo riguarda sia l’innovazione che la scalabilità, due elementi che impongono un’estrema rapidità per soddisfare le mutate condizioni di mercato. Quando diciamo “agilità”, ci riferiamo soprattutto a questo. La velocità di sviluppo e deployment delle applicazioni deve essere integrata in una piattaforma indipendentemente da dove essa risieda, persino nel cloud. Oggi le aziende basano sempre più spesso la propria trasformazione sulla massimizzazione del valore dei dati, e in quest’ambito lo storage rappresenta un fattore critico. Per questo ci soffermeremo ora su quanto viene richiesto allo storage nell’ottica della trasformazione digitale, e come lo storage si è evoluto in direzione di servizi prontamente disponibili e facilmente consumati dagli sviluppatori, completi delle relative caratteristiche di prestazioni e protezione, e accessibili attraverso codice o interfaccia utente.
Quel che serve alle aziende per la trasformazione digitale
La trasformazione digitale si basa sulla capacità di rispondere a nuove situazioni. L’implicazione principale per l’infrastruttura IT è la necessità di integrare funzionalità self-service on-demand per consentire un rapido sviluppo e/o la scalabilità delle applicazioni affinché possano rispondere alle esigenze del business in un contesto di serrata competizione. Tali esigenze possono riguardare un prodotto completamente nuovo piuttosto che la gestione di un picco di richieste improvviso. In qualsiasi caso, per potervi rispondere gli sviluppatori devono disporre di accesso rapido allo storage.
Gli sviluppatori tuttavia non hanno voglia di pensare allo storage, né tantomeno configurarne impostazioni complesse. Ciò che vogliono è un semplice menu di servizi facilmente comprensibili e integrabili all’interno del codice via API, istruzioni CLI o cliccando su un’interfaccia grafica. Ciò che vogliono è poter specificare solamente quel che occorre da un insieme conciso di profili di prestazioni, capacità, conformità e protezione dei dati. Gli sviluppatori non vogliono doversi occupare dell’infrastruttura sottostante, spesso neanche vogliono sapere se la capacità risiede nel proprio datacenter piuttosto che in cloud.
La realtà effettiva è spesso molto diversa da questa situazione ideale, con complesse infrastrutture SAN e NAS legacy che richiedono lunghi processi di configurazione manuale e competenze specializzate. In casi estremi, il provisioning dello storage può richiedere giorni o settimane passando attraverso molteplici interazioni per chiarire i requisiti e configurare i sistemi. Inoltre, lo storage legacy può mancare di un’efficace integrazione con il cloud storage: ciò può essere un vero impedimento per le aziende impegnate nella trasformazione digitale dal momento che la possibilità di implementare flessibilmente le applicazioni in questi ambienti è importante per ottenere vantaggi in termini di calcolo e localizzazione dei dati.
La vision: lo storage-as-code
Lo storage on-demand, erogato tramite codice o interfaccia grafica dallo sviluppatore o dal proprietario dell’applicazione, è essenziale per la trasformazione delle aziende. L’infrastruttura sottostante dovrebbe risultare invisibile a coloro che devono concentrarsi sulla propria applicazione, con specifiche self-service integrate nel codice e consumate mediante API, comandi CLI o interfaccia grafica.
Nel contempo, dietro le quinte, l’infrastruttura storage dovrebbe essere in grado di effettuare il provisioning automatico per rispondere alle necessità degli sviluppatori in termini di prestazioni, capacità e protezione dei dati, informando quindi lo sviluppatore o il proprietario dell’applicazione che la richiesta è stata soddisfatta. In altre parole, lo storage dovrebbe essere disponibile on-demand allo stesso modo di come lo sarebbe nel cloud.
L’infrastruttura stessa deve essere scalabile per rispondere alle richieste degli utenti, saper ribilanciare i workload tra le diverse istanze e gestire intelligentemente le analisi di utilizzo identificando potenziali problematiche prestazionali ed evidenziando le necessità di futuri aggiornamenti. La maggior parte dei workload on-premises viene oggi gestita array per array, approccio inefficiente rispetto alla gestione a livello di flotta attraverso molteplici regioni e zone di disponibilità.
Cosa cercare nello storage enterprise per la trasformazione digitale
A livello più alto, l’infrastruttura storage deve rispondere alle esigenze del business in termini di affidabilità e disponibilità, essere in grado di scalare per reagire alle necessità di un mondo imprevedibile, ed essere gestita senza dover ricorrere a un esercito di tecnici esperti. Allo stesso tempo dovrebbe implementare anche capacità di provisioning istantaneo self-service dello storage per andare incontro alle richieste degli utenti.
Tutto ciò si traduce in un’esperienza simile a quella del cloud, con un focus sull’esperienza di sviluppatori e proprietari delle applicazioni, facilmente integrabile nei tool per la gestione infrastrutturale come Ansible e Terraform. Questo dovrebbe essere garantito tanto nel datacenter del cliente, quanto in co-location piuttosto che nel cloud pubblico.
Riassumendo, le aziende hanno bisogno di un’infrastruttura storage in grado di fornire una gamma di servizi facilmente fruibili da sviluppatori e proprietari di applicazioni per poter velocizzare i cambiamenti e la trasformazione del business.