Passa al contenuto principale

In questo articolo fornirò alcuni consigli su come configurare il vostro arraydi storage ftScalable™ (di seguito abbreviato in ftScalable) per ottimizzarne le prestazioni. Comprendendo il carico di lavoro e i modelli di I/O e seguendo alcune semplici linee guida, potrete configurare il vostro ftScalable in modo da soddisfare i vostri requisiti di disponibilità e prestazioni.

Terminologia

Il termine «disco logico» si riferisce a un disco logico VOS, costituito da uno o più dischi membri. VOS distribuisce i dati in modo striping su tutti i dischi membri. Prima dell’introduzione di ftScalable, ogni disco membro era costituito da una coppia di unità disco fisiche. Con l'avvento di ftScalable, ogni disco membro è ora associato a un singolo LUN. Un LUN, o "unità logica", è una suddivisione di un disco virtuale ("VDISK") su ftScalable.

Un VDISK è un insieme di una o più unità disco fisiche, organizzate in un disco virtuale utilizzando uno specifico tipo di RAID.

Per «modalità ridotta» si intende il funzionamento del VDISK dopo che una delle sue unità disco fisiche ha smesso di funzionare, ma prima che abbia inizio l'operazione di ripristino.

Per «modalità di ripristino» si intende il funzionamento del VDISK durante la ricostruzione a seguito di un guasto dell'unità.

Tipi di RAID

Sebbene ftScalable supporti numerosi tipi di RAID, in questa sede mi limiterò a descrivere solo quelli più comunemente utilizzati.

RAID-0: Un VDISK RAID-0 distribuisce i dati su tutte le unità disco fisiche del set. Garantisce le massime prestazioni di I/O, ma NON offre alcuna tolleranza ai guasti. La perdita di una qualsiasi unità disco fisica comporterà la perdita totale dei dati. Inoltre, ftScalable non è in grado di mettere automaticamente fuori servizio le unità fisiche marginali e di ricostruire in modo proattivo i dati utilizzando un'unità di riserva. Questo tipo di RAID non dovrebbe mai essere utilizzato in ambienti mission-critical.

RAID-1: Un VDISK RAID-1 è costituito da una semplice coppia di unità disco fisiche in mirroring. Offre buone prestazioni in lettura e scrittura ed è in grado di resistere alla perdita di una singola unità. Le operazioni di lettura possono essere gestite da entrambe le unità fisiche, mentre quelle di scrittura devono essere eseguite su entrambe le unità. Il ripristino in seguito al guasto di un'unità è semplice e richiede solo un nuovo mirroring dall'unità rimasta funzionante. In genere, l'impatto sulle prestazioni è minimo quando si opera in modalità degradata o di ripristino.

RAID-10: un VDISK RAID-10 è costituito da più gruppi di dischi RAID-1, consentendo la distribuzione dei dati su tutte le coppie RAID-1. Un VDISK RAID-10 offre prestazioni elevate e la possibilità di resistere potenzialmente a guasti multipli delle unità fisiche senza perdita di dati. L'impatto sulle prestazioni durante il funzionamento in modalità degradata o di ripristino è simile a quello di un VDISK RAID-1.

RAID-5/RAID-6: Questi tipi di RAID utilizzano algoritmi basati sulla parità e lo striping per offrire un'elevata disponibilità a un costo ridotto rispetto al mirroring. Un VDISK RAID-5 utilizza una capacità equivalente a quella di un disco fisico per la parità, mentre un RAID-6 ne utilizza una equivalente a due dischi. Un VDISK RAID-5 può sopravvivere al guasto di un singolo disco senza perdita di dati, mentre un VDISK RAID-6 può sopravvivere al guasto di due dischi.  Entrambi i tipi offrono eccellenti prestazioni di lettura, ma le prestazioni di scrittura sono influenzate dalla necessità di scrivere non solo il blocco di dati, ma anche le operazioni di lettura / modifica / riscrittura necessarie per i blocchi di parità. Il guasto di un'unità (modalità degradata) ha un impatto medio sulla velocità effettiva, mentre la modalità di ripristino ha un impatto elevato sulla velocità effettiva.

Scegliere un tipo di RAID

Ogni tipo di RAID presenta vantaggi e svantaggi specifici. Comprendendoli, potrai scegliere il tipo di RAID più adatto al tuo ambiente.

Per i dati e le applicazioni in cui la velocità di scrittura non è fondamentale, o in cui non è importante raggiungere la massima velocità di accesso, il RAID-5 rappresenta una buona scelta. Accettando prestazioni di throughput in scrittura inferiori e una latenza maggiore, è possibile utilizzare un numero inferiore di dischi per una data capacità, ottenendo comunque un elevato grado di tolleranza ai guasti. Tuttavia, è necessario considerare anche l'impatto che l'esecuzione con un set RAID degradato (ovvero un disco guasto) ha sull'applicazione. Le prestazioni di I/O e la latenza nei tipi di RAID basati sulla parità risentiranno maggiormente durante la modalità degradata e la modalità di ripristino rispetto ai tipi di RAID basati su mirroring.

Per i dati e le applicazioni le cui prestazioni dipendono dall'ottimizzazione della velocità e della latenza delle operazioni di scrittura, o che eseguono più operazioni di scrittura rispetto a quelle di lettura, o che non devono subire un calo di prestazioni in caso di guasto di un'unità, i tipi di RAID basati sul mirroring (RAID-1 o RAID-10) offrono una soluzione migliore. Entrambi questi tipi di RAID eliminano la penalizzazione della lettura prima della scrittura tipica dei RAID-5 o RAID-6, rendendo la scrittura dei dati un'operazione semplice. Il RAID-10 è generalmente una scelta migliore rispetto al RAID-1 perché consente di distribuire i dati su più unità fisiche, il che può aumentare significativamente le prestazioni complessive di lettura e scrittura. (Si prega tuttavia di leggere la sezione intitolata“Dischi logici VOS multi-membro rispetto ai VDISK RAID-10 scalabili”, riportata di seguito).

Se non riesci a decidere se scegliere un tipo di RAID basato sulla parità o su mirroring, la scelta più sicura è quella di utilizzare uno dei tipi di RAID basati su mirroring.

Assegnazione dei LUN ai VDISK

Per ricapitolare, un VDISK è costituito da uno o più dischi fisici. Un VDISK può essere suddiviso in uno o più LUN. A ciascun LUN viene assegnato uno specifico disco membro del VOS. Uno o più dischi membri vengono combinati in un unico disco logico VOS.

Consiglio vivamente di assegnare un solo LUN a un VDISK. Sebbene ftScalable consenta di suddividere un VDISK in più LUN, l'utilizzo di questa opzione può comportare un calo significativo delle prestazioni che incide sia sulla velocità di trasmissione I/O che sulla latenza.

Ci sono diverse ragioni alla base di queste penalizzazioni, ma quella fondamentale è facile da comprendere. Ogni volta che ftScalable deve accedere a uno dei LUN in una configurazione con più LUN per VDISK, deve effettuare la ricerca delle testine del disco. Maggiore è il numero di LUN che compongono un VDISK, maggiore è il movimento delle testine. Maggiore è il movimento delle testine, maggiori sono le latenze. Ricordate, tutte le operazioni di I/O devono alla fine essere gestite dalle unità fisiche che compongono il VDISK; la memoria cache dell'array non può sostituire questo I/O fisico.

Stratus condotto dei test prestazionali che dimostrano come la velocità di trasmissione I/O complessiva di un VDISK a 4 LUN sia pari a circa la metà delle prestazioni dello stesso VDISK configurato come singolo LUN, mentre la latenza può essere oltre quattro volte superiore!

Assegnazione dei dischi logici VOS ai LUN

L'approccio più semplice consiste nell'assegnare un disco logico VOS a ciascun LUN. Se è necessario un disco logico VOS di dimensioni superiori a quelle di un singolo LUN, oppure se si desidera sfruttare i vantaggi in termini di prestazioni offerti dallo striping, è possibile creare un disco logico VOS a più membri, in cui ogni disco membro corrisponde a un singolo LUN.

Dischi logici VOS a più membri rispetto ai VDISK RAID-10 scalabili

È possibile implementare lo striping a livello di VOS (creando un disco logico VOS multi-membro), oppure a livello di ftScalable (creando un VDISK RAID-10), o anche una combinazione di entrambi i metodi (ad esempio, combinando più LUN, ciascuno dei quali è un VDISK RAID-5, in un unico disco logico VOS multi-membro). Se si desidera utilizzare lo striping, consiglio di utilizzare RAID-1 o RAID-5 per i VDISK, con 1 LUN per VDISK, e di combinare questi LUN in dischi logici VOS multi-membro. VOS utilizza una coda separata di richieste al disco per ogni LUN e quindi massimizzare il numero di LUN massimizza il throughput e riduce al minimo la latenza.

Assegnazione dei file ai dischi logici VOS

Se possibile, assegnare i file ad accesso casuale e quelli ad accesso sequenziale a dischi logici distinti. La combinazione dei due tipi di accesso ai file sullo stesso disco logico aumenta il tempo massimo necessario per accedere ai file ad accesso casuale e riduce la velocità massima possibile dei file sequenziali.

Sommario

Seguendo queste semplici linee guida è possibile ottenere un accesso al disco affidabile, ad alta velocità e a bassa latenza.

Se ritieni di avere validi motivi per utilizzare una configurazione diversa da quella che abbiamo consigliato in questa sede, ti invitiamo a contattare il tuo team di account. Siamo sempre disponibili a esaminare le configurazioni ftScalable esistenti e a fornire indicazioni su casi specifici dei clienti.

Spero che queste informazioni ti siano utili. Se hai domande o commenti, ti prego di rispondere a questo post.

Ringraziamenti

Joe Sanzio mi ha fornito un aiuto prezioso durante la stesura di questo post. Eventuali errori presenti sono da attribuire esclusivamente a me.