I termini virtualizzazione storage si riferiscono a un tipo di programmazione dello storage che, attraverso un’astrazione logica, viene softwarizzato.
I vantaggi della virtualizzazione storage
Un sistema di archiviazione, grazie alla virtualizzazione storage, può essere gestito da un’unica console centrale. Il che consente una versatilità e una velocità di gestione estrema. Per esempio, più dischi fisici possono essere presentati come un singolo disco anziché come un insieme di dischi più piccoli.
I 5 approcci
Al momento esistono un certo numero di tecnologie per la virtualizzazione dello storage. Il denominatore comune è che ognuna di esse usa un diverso livello di astrazione rispetto all’archiviazione fisica tradizionale. Ecco una lista dei 5 approcci più comuni.
1) Virtualizzazione dello storage basata su host
La virtualizzazione dello storage basata su host è quella per cui un host di virtualizzazione offre lo storage necessario alla gestione di un sistema operativo.
Un esempio di virtualizzazione basata su host è quella in cui si ha un disco rigido virtuale che si espande in maniera dinamica. Infatti, è piuttosto raro per una macchina virtuale assumere la proprietà di un disco rigido fisico (HDD). Normalmente, una virtual machine sfrutta un disco rigido virtuale che è rappresentato da un unico file, ma l’host alla virtual machine (VM) lo propone in tutto e per tutto come fosse un disco rigido.
Una espansione dinamica del disco rigido virtuale richiede inizialmente uno spazio ridotto al disco fisico, per poi aumentare non appena vengono aggiunti dei dati al file dalla macchina virtuale. La macchina virtuale non può vedere il file sottostante o la sua espansione dinamica, ma vede solo quello che pensa esso sia, ovvero un disco rigido.
2) Storage virtualization basata su array
La virtualizzazione dello storage basata su array sfrutta il cosiddetto storage tiering. Ovvero la memorizzazione dei dati su più livelli dell’hardware, sfruttando la potenza della memoria flash. (Con memoria flash, anche flash memory si intende una tipologia di memoria a stato solido e non volatile che può essere usata come memoria a lettura-scrittura).
Vantaggi e ostacoli
Questo evita di sostenere il costo delle memorie fisiche di un array. La memoria flash, infatti, tende ad essere molto più veloce rispetti agli hard disk basati su piatti rotanti. La latenza della rete e dei dischi, infatti, possono influire negativamente sulle prestazioni di un sistema di storage a supporto della Virtual Desktop Infrastructure, e la memoria flash è un approccio che offre prestazioni elevate.
Il problema, rispetto ai sistemi di storage tradizionali, è che anche il suo costo è elevato. A fare la differenza rispetto alle prestazioni superiori di un dispositivo flash è la tecnologia allo stato solido, che non ha parti in movimento. Invece di accedere ai dati utilizzando le testine di lettura/scrittura, infatti, le unità a stato solido (SSD) leggono i dati della memoria flash più o meno allo stesso modo in cui la RAM fornisce i dati. La latenza associata alla rotazione dei dischi e allo spostamento delle testine di lettura/scrittura è dunque totalmente assente nei dispositivi flash, che risultano più veloci. Il problema è che le unità a stato solido (SSD) hanno tradizionalmente una capacità molto più bassa e una costo più alto per gigabyte rispetto agli hard disk tradizionali, anche se, ultimamente, questo trend sta cambiando.
Archiviazione su più livelli
La virtualizzazione dello storage basata su array permette di gestire l’archiviazione su più livelli. Per esempio, gli SSD vengono inseriti su di un livello ad alta velocità mentre gli HDD su un livello a velocità standard. Quando un amministratore crea un archiviazione LUN (Logical Unit Number), significa che genera un identificatore logico univoco per impostare un gruppo o un dispositivo di archiviazione che va ad eseguire operazioni di input e output per la raccolta dei dati fisica o virtuale. Un’architettura LUN può quindi includere sia i dischi impostati sul livello ad alta velocità sia quelli inseriti su un livello a velocità standard.
In questo tipo di approccio, il livello ad alta velocità, funge da cache di lettura e scrittura. All’inizio i dati vengono automaticamente scritti ad alta velocità e poi spostati al livello più standard.
In sintesi, i dati a cui si accede di frequente vengono gestiti sul livello ad alta velocità. Invece i dati a cui si accede meno frequentemente posso essere lasciati sul livello standard. Questo tiering automatico dei dati migliora le prestazioni generali. L’intero processo viene gestito a livello di array e non viene mai governato dal sistema operativo.
3) Virtualizzazione dello storage a livello di sistema operativo
Chi gestisce i data center sa molto bene come alcuni sistemi operativi siano in grado di fornire le stesse funzionalità di base delle tecnologia di virtualizzazione storage basate su array, ma a livello software integrate e offerte del sistema operativo.
4) Virtualizzazione del file system
La virtualizzazione del file system si riferisce a una tecnologia chiamata Distributed File System (DFS), che fornisce una gestione consolidata dei dati presenti nei file di un’azienda. Gli utenti hanno l’illusione che tutti i dati siano presenti in un unico file server, quando in realtà possono essere condivisi su più file server.
C’è da dire che questo tipo di approccio sta diventando sempre meno comune in seguito allo sviluppo tecnologico legato a una maggiore capacità di archiviazione dei file server. Alcune forme di virtualizzazione dei file system consentono di fare molto più di una semplice condivisione di file server.
5) Virtualizzazione dello storage Fibre Channel
La virtualizzazione dello storage FC indica tutte le tipologie di virtualizzazione dello storage basati sull’uso di Fibre Channel. Alcuni fornitori si riferiscono a una SAN (Storage Area Network) Fibre Channel, intendendo una forma di virtualizzazione dello storage basata su un particolare uso della rete.
In pratica, uno switch Fibre Channel consente di virtualizzare e reindirizzare le richieste di I/O dello storage fisico senza utilizzare lo storage presente sul server. E senza che questo sia a conoscenza delle architetture di storage installate.
Fibre Channel virtuale
Il termine virtualizzazione dello storage Fibre Channel può anche riferirsi a una Fibre Channel virtuale, una forma di virtualizzazione dello storage basata su host che rende possibile a macchina virtuale di connettersi direttamente a un array Fibre Channel o a una SAN Fibre Channel, sfruttando lo stack di virtualizzazione sottostante.
Il vantaggio principale? Che un server può connettersi direttamente a dei dispositivi di storage Fibre Channel virtualizzati. È anche possibile utilizzare Fibre Channel virtuale per la creazione di un cluster ospite che utilizza Fibre Channel basati su volumi condivisi rispetto al cluster. Gli esperti sottolineano come le limitazioni e le capacità di Fibre Channel virtuali variano da uno hypervisor all’altro.