Ultimamente, si parla sempre più insistentemente di federazione dello storage.

La federazione dello storage non ha una definizione precisa e non è uno standard industriale, quindi, ogni produttore, ha presentato o presenterà un qualche prodotto in grado di essere “federato” ma, sicuramente, i risultati saranno diversi da prodotto a prodotto.

Cos’è 

L’obiettivo della “Federazione dello storage” è quello di poter accorpare in un pool unico diversi sistemi esterni di storage (array diversi) e di usarli come una sola entità. In pratica i diversi array possono agire all’unisono per ottenere più scalabilità (orizzontale) e una distribuzione del carico di lavoro ottimale.
Se dovessi fare un parallelo con quello che normalmente vediamo nel mondo della virtualizzazione, potrei indicare un cluster di server con Vmware come il pool risorse che menzionavo sopra e meccanismi come vMotion e DRS come gli strumenti per attuare l’operatività e l’automatismo necessario.

Perché

I motivi che stanno spingendo i produttori, e soprattutto i clienti, a valutare tecnologie di questo tipo sono molteplici. Alla base di tutto c’è da dire che, lo sanno anche i sassi, il grosso della spesa di una infrastruttura IT moderna (soprattutto se virtualizzata) risiede nello storage!
Quindi, da un lato c’è una necessità sempre più sentita di diminuire i costi legati allo storage (sia in termini di TCA ma anche, e soprattutto, dal punto di vista TCO), dall’altra parte si fa sempre più sentire il bisogno di avere ambienti sempre più elastici e che non impongano limitazioni sia in termini di scalabilità che di fruibilità. 
Soprattuto ora, che il cloud computing (privato o ibrido che sia) sta prendendo piede, è necessario dotarsi di strumenti che siano sempre più “cloud enabled” e che rispecchino quello che sta succedendo nel resto dello stack tecnologico.

Un grande sistema di storage, composto da diversi piccoli sottosistemi (magari distribuiti geograficamente), può offrire grandi vantaggi pratici, soprattutto se questo insieme viene gestito come un unico grande oggetto: la scalabilità (orizzontale) o l’evoluzione tecnologica non saranno più un problema come anche le migrazioni o la riallocazione di risorse.
Un’altro vantaggio della federazione si può incontrare nel fatto che sarà possibile acquistare solo lo storage necessario nel breve periodo per poi aggiungere altri sottosistemi mano a mano che nasceranno le esigenze limitando quindi gli investimenti e avendo sempre la possibilità di acquistare la tecnologia più attuale.

Come funziona

Come ho accennato in precedenza, non esiste uno standard ma ogni produttore sta operando nel modo che gli conviene di più. Al momento esistono due scuole di pensiero: l’appliance e la funzionalità software.

Nel caso di Appliance si tratta di un vero e proprio virtualizzatore che si inserisce fra gli host e lo storage. L’appliance permette quindi di aggiungere questa, e altre, funzionalità a sistemi di storage eterogenei ma, purtroppo, proprio per la diversità dei sottosistemi gestiti si perdono molte delle funzionalità avanzate che questi oggetti forniscono abitualmente (es. snapshot). Al momento, l’unico produttore che ha un appliance di questo tipo è EMC con il suo Vplex.
Dal mio personalissimo punto di vista questo non è il migliore degli approcci perché, come capita spesso di vedere in questi casi, l’aggiunta di una nuova funzionalità costringe a rinunciare ad altre. Inoltre, un grande problema di questo tipo di appliances è la necessità di aggiungere altra complessità e skills a strutture che, sicuramente, sono già complesse di loro.

Nel caso opposto, quello della funzionalità software, si parla di una caratteristica del sistema di storage e l’unico limite è dato dal fatto che non si possono federare sistemi di storage di produttori diversi (che, comunque, ammetto essere un  potenziale grande limite in utenti finali di grandi dimensioni con diversi fornitori di storage). I vantaggi di questo approccio sono molteplici e vanno dall’economicità alla semplicità d’uso, passando per il fatto che, se ben implementato, non vengono introdotte limitazioni rispetto ad altre funzionalità software. I produttori di storage che stanno andando in questa direzione sono diversi (ne cito alcuni: HP con 3Par e LefthandDell con CompellentNetApp) e molti altri si stanno aggiungendo: è solo una questione di tempo.

In ogni caso, lo scopo finale è quello di virtualizzare l’accesso a LUN/Volumi di dati per poter fare una serie di operazioni che risultino trasparenti agli host sovrastanti: sempre per tornare all’esempio di VMware, una LUN è equiparabile ad una VM che si sposta, seguendo determinate regole, da un host fisico all’altro in funzione delle necessità o perché viene richiesto dall’amministratore. 

Quando si usa

Gli esempi pratici più semplici ed eloquenti possono essere riassunti in bilanciamento di carico automatico/manuale, migrazioni di dati, upgrade di sistemi più sicuri e indolori sia in termini hardware che software, tiering fra diversi sistemi. Se ho due o più sistemi di storage federabili tra loro possono posso pensare di ottenere un uptime dell’intera infrastruttura sensibilmente più alto rispetto al singolo sistema, minimizzare i costi delle migrazioni e razionalizzare l’uso delle risorse disponibili per farle rendere al massimo.

La federazione dello storage quindi dovrebbe avere alcune caratteristiche imprescindibili quali: trasparenza, semplicità d’uso, un sistema di management efficace e meccanismi di automazione efficaci.

Nota finale

La federazione, come tante altre caratteristiche dei sottosistemi di storage, è una funzionalità e come tale deve essere trattata. Mi spiego meglio, il suo valore (in termini di TCO) è direttamente proporzionale alla complessità dell’ambiente di storage che si ha a disposizione ma, è certo, anche in ambienti di modeste dimensioni (magari quelli indirizzabili da piccoli array iSCSI come Lefthand P4000 o Dell Equallogic) può significare grandi risparmi in termini di tempo per la gestione e un miglior uptime… quindi di soldi!