Condividi tramite


Tolleranza di errore ed efficienza di archiviazione nei cluster Azure Stack HCI e server Windows

Si applica a: Azure Stack HCI, versioni 22H2 e 21H2; Windows Server 2022, Windows Server 2019

Questo articolo illustra le opzioni di resilienza disponibili e descrive i requisiti di scalabilità, l'efficienza di archiviazione e i vantaggi generali e i compromessi di ognuno di essi.

Panoramica

Spazi di archiviazione diretta fornisce tolleranza di errore, spesso denominata "resilienza" per i dati. La sua implementazione è simile a RAID, tranne distribuita tra server e implementata nel software.

Come per RAID, esistono diversi modi Spazi di archiviazione possibile eseguire questa operazione, che rendono compromessi diversi tra tolleranza di errore, efficienza di archiviazione e complessità di calcolo. Questi rientrano in genere in due categorie: "mirroring" e "parità", quest'ultimo talvolta denominato "codifica di cancellazione".

Mirroring

Il mirroring garantisce la tolleranza di errore mantenendo più copie di tutti i dati. Questo è molto simile a RAID-1. Il modo in cui i dati vengono s stripati e inseriti non è semplice (vedere questo blog per altre informazioni), ma è assolutamente vero dire che tutti i dati archiviati usando il mirroring vengono scritti, nel suo complesso, più volte. Ogni copia viene scritta in hardware fisico diverso (unità diverse in server diversi) che si presuppone che non riescano in modo indipendente.

È possibile scegliere tra due tipi di mirroring: "bidirezionale" e "a tre vie".

Mirror bidirezionale

Il mirroring bidirezionale scrive due copie di tutto. L'efficienza di archiviazione è del 50%: per scrivere 1 TB di dati, sono necessari almeno 2 TB di capacità di archiviazione fisica. Analogamente, sono necessari almeno due domini di errore hardware, con Spazi di archiviazione diretta, ovvero due server.

mirror bidirezionale

Avviso

Se sono presenti più di due server, è consigliabile usare invece il mirroring a tre vie.

Mirror a tre vie

Il mirroring a tre vie scrive tre copie di tutto. L'efficienza di archiviazione è del 33,3% : per scrivere 1 TB di dati, sono necessari almeno 3 TB di capacità di archiviazione fisica. Analogamente, sono necessari almeno tre domini di errore hardware, con Spazi di archiviazione diretta, ovvero tre server.

Il mirroring a tre vie può tollerare in modo sicuro almeno due problemi hardware (unità o server) alla volta. Ad esempio, se si riavvia un server quando improvvisamente un'altra unità o un altro server ha esito negativo, tutti i dati rimangono sicuri e continuamente accessibili.

mirror a tre vie

Parità

La codifica della parità, spesso denominata "codifica di cancellazione", fornisce la tolleranza di errore usando l'aritmetica bit per bit, che può diventare notevolmente complicata. Il modo in cui funziona è meno ovvio del mirroring e ci sono molte grandi risorse online (ad esempio, questa guida di terze parti Dummies alla codifica di cancellazione) che può aiutare a ottenere l'idea. Basta dire che offre una migliore efficienza di archiviazione senza compromettere la tolleranza di errore.

Spazi di archiviazione offre due sapori di parità: parità "singola" e parità "doppia", quest'ultima impiega una tecnica avanzata denominata "codici di ricostruzione locali" su larga scala.

Importante

È consigliabile usare il mirroring per la maggior parte dei carichi di lavoro sensibili alle prestazioni. Per altre informazioni su come bilanciare le prestazioni e la capacità a seconda del carico di lavoro, vedere Pianificare i volumi.

Parità singola

La parità singola mantiene un solo simbolo di parità bit per bit, che fornisce la tolleranza di errore contro un solo errore alla volta. È molto simile a RAID-5. Per usare la parità singola, sono necessari almeno tre domini di errore hardware, con Spazi di archiviazione diretta, ovvero tre server. Poiché il mirroring a tre vie offre maggiore tolleranza di errore alla stessa scala, è consigliabile usare la parità singola. Ma, se si insiste sull'uso, è completamente supportato.

Avviso

È consigliabile usare una parità singola perché può tollerare in modo sicuro un errore hardware alla volta: se si riavvia un server quando improvvisamente un'altra unità o un altro server ha esito negativo, si verifica un tempo di inattività. Se sono presenti solo tre server, è consigliabile usare il mirroring a tre vie. Se sono presenti quattro o più, vedere la sezione successiva.

Doppia parità

La doppia parità implementa codici di correzione degli errori Reed-Solomon per mantenere due simboli di parità bit per bit, fornendo così la stessa tolleranza di errore del mirroring a tre vie (ovvero fino a due errori contemporaneamente), ma con una migliore efficienza di archiviazione. È molto simile a RAID-6. Per usare la parità doppia, sono necessari almeno quattro domini di errore hardware, con Spazi di archiviazione diretta, ovvero quattro server. A tale livello, l'efficienza di archiviazione è del 50%: per archiviare 2 TB di dati, sono necessari 4 TB di capacità di archiviazione fisica.

doppia parità

L'efficienza di archiviazione della doppia parità aumenta il numero di domini di errore hardware disponibili, dal 50% all'80%. Ad esempio, a sette (con Spazi di archiviazione diretta, ovvero sette server), l'efficienza passa al 66,7% per archiviare 4 TB di dati, è necessaria solo 6 TB di capacità di archiviazione fisica.

dual-parity-wide

Vedere la sezione Riepilogo per l'efficienza dei codici di ricostruzione dual party e locali su ogni scala.

Codici di ricostruzione locali

Spazi di archiviazione introduce una tecnica avanzata sviluppata da Microsoft Research denominata "codici di ricostruzione locali" o LRC. Su larga scala, la doppia parità usa LRC per suddividere la codifica/decodifica in alcuni gruppi più piccoli, per ridurre il sovraccarico necessario per eseguire operazioni di scrittura o ripristino da errori.

Con le unità disco rigido (HDD) le dimensioni del gruppo sono quattro simboli; con unità SSD (Solid State Drive), le dimensioni del gruppo sono sei simboli. Ad esempio, ecco l'aspetto del layout con le unità disco rigido e 12 domini di errore hardware (ovvero 12 server): esistono due gruppi di quattro simboli di dati. Ottiene un'efficienza di archiviazione del 72,7%.

codici di ricostruzione locale

È consigliabile seguire questa procedura dettagliata e leggibile in modo approfondito del modo in cui i codici di ricostruzione locali gestiscono vari scenari di errore e perché sono accattivanti, di Claus Joergensen.

Parità accelerata con mirror

Un volume Spazi di archiviazione diretta può far parte del mirroring e della parità di parte. Scrive prima il terreno nella parte con mirroring e viene gradualmente spostato nella parte di parità in un secondo momento. In effetti, questo usa il mirroring per accelerare la codifica di cancellazione.

Per combinare mirroring a tre vie e doppia parità, sono necessari almeno quattro domini di errore, ovvero quattro server.

L'efficienza di archiviazione della parità accelerata con mirroring è tra ciò che si ottiene usando tutto il mirror o tutta la parità e dipende dalle proporzioni scelte.

Importante

È consigliabile usare il mirroring per la maggior parte dei carichi di lavoro sensibili alle prestazioni. Per altre informazioni su come bilanciare le prestazioni e la capacità a seconda del carico di lavoro, vedere Pianificare i volumi.

Riepilogo

Questa sezione riepiloga i tipi di resilienza disponibili in Spazi di archiviazione diretta, i requisiti minimi di scalabilità per l'uso di ogni tipo, il numero di errori che ogni tipo può tollerare e l'efficienza di archiviazione corrispondente.

Tipi di resilienza

Resilienza Tolleranza di errore Efficienza di archiviazione
Mirror bidirezionale 1 50.0%
Mirror a tre vie 2 33.3%
Doppia parità 2 50.0% - 80.0%
Mista 2 33.3% - 80.0%

Requisiti minimi di scalabilità

Resilienza Domini di errore minimi obbligatori
Mirroring a 2 vie 2
Mirroring a 3 vie 3
Doppia parità 4
Mista 4

Suggerimento

A meno che non si usi la tolleranza di errore dello chassis o del rack, il numero di domini di errore fa riferimento al numero di server. Il numero di unità in ogni server non influisce sui tipi di resilienza che è possibile usare, purché siano soddisfatti i requisiti minimi per Spazi di archiviazione diretta.

Efficienza della parità doppia per le distribuzioni ibride

Questa tabella illustra l'efficienza di archiviazione dei codici di doppia parità e ricostruzione locale su ogni scala per le distribuzioni ibride, che contengono sia unità disco rigido (HDD) che unità SSD (Solid State Drive).

Domini di errore Layout Efficienza
2
3
4 RS 2+2 50.0%
5 RS 2+2 50.0%
6 RS 2+2 50.0%
7 RS 4+2 66,7%
8 RS 4+2 66,7%
9 RS 4+2 66,7%
10 RS 4+2 66,7%
11 RS 4+2 66,7%
12 LRC (8, 2, 1) 72.7%
13 LRC (8, 2, 1) 72.7%
14 LRC (8, 2, 1) 72.7%
15 LRC (8, 2, 1) 72.7%
16 LRC (8, 2, 1) 72.7%

Efficienza della doppia parità per le distribuzioni all-flash

Questa tabella mostra l'efficienza di archiviazione dei codici di doppia parità e ricostruzione locale su ogni scala per le distribuzioni all-flash, che contengono solo unità SSD .This table shows the storage efficiency of dual parity and local reconstruction codes at each scale for all-flash deployments, which contain only solid-state drive (SSD). Il layout di parità può usare dimensioni di gruppo maggiori e ottenere una migliore efficienza di archiviazione in una configurazione all-flash.

Domini di errore Layout Efficienza
2
3
4 RS 2+2 50.0%
5 RS 2+2 50.0%
6 RS 2+2 50.0%
7 RS 4+2 66,7%
8 RS 4+2 66,7%
9 RS 6+2 75.0%
10 RS 6+2 75.0%
11 RS 6+2 75.0%
12 RS 6+2 75.0%
13 RS 6+2 75.0%
14 RS 6+2 75.0%
15 RS 6+2 75.0%
16 LRC (12, 2, 1) 80.0%

Esempi

A meno che non siano presenti solo due server, è consigliabile usare il mirroring a tre vie e/o la doppia parità, perché offrono una migliore tolleranza di errore. In particolare, assicurano che tutti i dati rimangano sicuri e costantemente accessibili anche quando due domini di errore, con Spazi di archiviazione diretta, significa che due server sono interessati da errori simultanei.

Esempi in cui tutto rimane online

Questi sei esempi mostrano cosa può tollerare il mirroring a tre vie e/o la parità doppia.

  • 1. Un'unità persa (include unità cache)
  • 2. Un server perso

fault-tolerance-examples-1-and-2

  • 3. Un server e un'unità persa
  • 4. Due unità perse in server diversi

fault-tolerance-examples-3-and-4

  • 5. Più di due unità perse, a condizione che al massimo due server siano interessati
  • 6. Due server persi

fault-tolerance-examples-5-and-6

... in ogni caso, tutti i volumi rimangono online. Assicurarsi che il cluster mantenga il quorum.

Esempi in cui tutto passa offline

Nel corso della sua durata, Spazi di archiviazione può tollerare un numero qualsiasi di errori, perché ripristina la resilienza completa dopo ogni errore, dato un tempo sufficiente. Tuttavia, al massimo due domini di errore possono essere interessati da errori in qualsiasi momento. Di seguito sono riportati esempi di ciò che il mirroring a tre vie e/o la doppia parità non possono tollerare.

  • 7. Unità perse in tre o più server contemporaneamente
  • 8. Tre o più server persi contemporaneamente

fault-tolerance-examples-7-and-8

Utilizzo

Vedere Creare volumi.

Passaggi successivi

Per altre informazioni sugli argomenti menzionati in questo articolo, vedere quanto segue: