Sdílet prostřednictvím


Odolnost proti chybám a efektivita úložiště v clusterech Azure Local a Windows Server

Tento článek vysvětluje dostupné možnosti odolnosti a popisuje požadavky na škálování, efektivitu úložiště a obecné výhody a kompromisy každé z nich.

Overview

Prostory úložiště s přímým přístupem poskytují odolnost proti chybám, často označovanou jako odolnost vašich dat. Jeho implementace je podobná RAID, ale je distribuována napříč servery a provádí se softwarově.

Stejně jako u RAID existuje několik různých způsobů, jak to prostory úložiště můžou udělat, což může způsobovat různé kompromisy mezi odolností proti chybám, efektivitou úložiště a složitostí výpočetních prostředků. Tyto široce spadají do dvou kategorií: "zrcadlení" a "parita", druhá se někdy nazývá "mazací kódování".

Mirroring

Zrcadlení zajišťuje odolnost proti chybám tím, že uchovává více kopií všech dat. Nejvíce se podobá RAID-1. Jak jsou tato data prokládání a umístění non-triviální (viz tento blog dozvědět více), ale je naprosto pravda říci, že všechna data uložená pomocí zrcadlení jsou napsána v celé jeho celé době. Každá kopie se zapisuje na jiný fyzický hardware (různé jednotky na různých serverech), u nichž se předpokládá, že selžou nezávisle.

Můžete si vybrat mezi dvěma typy zrcadlení – "dvoucestné" a "třícestné".

Dvoucestné zrcadlo

Dvoucestné zrcadlení zapisuje dvě kopie všeho. Efektivita úložiště je 50 procent – k zápisu 1 TB dat potřebujete alespoň 2 TB fyzické kapacity úložiště. Podobně potřebujete alespoň dvě hardwarové domény selhání – s technologií Storage Spaces Direct, to znamená dva servery.

two-way-mirror

Warning

Pokud máte více než dva servery, doporučujeme místo toho použít trojcestné zrcadlení.

Třícestné zrcadlo

Trojité zrcadlení zapisuje tři kopie všeho. Efektivita úložiště je 33,3 % – k zápisu 1 TB dat potřebujete alespoň 3 TB fyzické kapacity úložiště. Také potřebujete alespoň tři domény z hlediska selhání hardwaru – s Storage Spaces Direct to znamená tři servery.

Třícestné zrcadlení může bezpečně tolerovat alespoň dva hardwarové problémy (jednotka nebo server) najednou. Pokud například restartujete jeden server, když náhle selže jiná jednotka nebo server, všechna data zůstanou bezpečná a nepřetržitě přístupná.

three-way-mirror

Parity

Paritní kódování, často označované jako kódování mazání, poskytuje odolnost proti chybám pomocí bitové aritmetické metody, která může být výrazně komplikovaná. Způsob, jak to funguje, je méně zřejmý než zrcadlení, a existuje mnoho skvělých online zdrojů (například tento průvodce třetí strany Průvodce pro hlupáky k mazacímu kódování), které vám mohou pomoct získat představu. Stačí říct, že poskytuje lepší efektivitu úložiště bez ohrožení odolnosti proti chybám.

Úložiště nabízí dvě varianty parity – "jednoduchou" paritu a "duální" paritu, přičemž druhá využívající pokročilou techniku nazvanou "kódy místního obnovení" ve větším měřítku.

Important

Pro většinu úloh citlivých na výkon doporučujeme používat zrcadlení. Další informace o vyvážení výkonu a kapacity v závislosti na úloze najdete v tématu Plánování svazků.

Jednoduchá parita

Jednoduchá parita uchovává pouze jeden bitový paritní symbol, který poskytuje odolnost proti chybám pouze proti jednomu selhání najednou. Nejvíce se podobá RAID-5. Pro použití jednoduché parity potřebujete alespoň tři hardwarové domény selhání – se Storage Spaces Direct to znamená tři servery. Vzhledem k tomu, že trojcestné zrcadlení poskytuje větší odolnost proti chybám ve stejném měřítku, nedoporučujeme používat jednu paritu. Je tam, pokud ale trváte na jeho používání, a je plně podporován.

Warning

Nedoporučujeme používat jedinou paritu, protože může bezpečně tolerovat pouze jedno selhání hardwaru najednou: pokud restartujete jeden server, když náhle selže jiná jednotka nebo server, dojde k výpadku. Pokud máte jenom tři servery, doporučujeme použít zrcadlení ve třech směrech. Pokud máte čtyři nebo více, přečtěte si další část.

Duální parita

Duální parita implementuje opravné kódy Reed-Solomon, aby udržovaly dva paritní symboly, což zajišťuje stejnou odolnost proti chybám jako trojitá zrcadlení (tj. až dvě selhání najednou), ale s lepší úložnou efektivitou. Nejvíce se podobá RAID-6. Pokud chcete použít duální paritu, potřebujete aspoň čtyři hardwarové domény selhání – s technologií Storage Spaces Direct to znamená čtyři servery. V takovém měřítku je efektivita úložiště 50% – k uložení 2 TB dat potřebujete 4 TB fyzické kapacity úložiště.

dual-parity

Efektivita úložiště s duální paritou se zvyšuje s počtem hardwarových domén selhání, které máte, od 50 % až po 80 %. Například u sedmi (se Storage Spaces Direct, což znamená sedm serverů) se efektivita zvýší na 66,7 % – pro uložení 4 TB dat potřebujete jen 6 TB fyzické úložné kapacity.

dual-parity-wide

V části Souhrn najdete efektivitu kódů duální strany a místního obnovení v každém měřítku.

Kódy místního obnovení

Storage Spaces představuje pokročilou techniku vyvinutou společností Microsoft Research s názvem "kódy místního obnovení" nebo LRC. Duální parita ve velkém měřítku využívá LRC k rozdělení procesu kódování a dekódování do několika menších skupin, aby se snížila režie potřebná k provádění zápisů nebo obnově při selhání.

U pevných disků (HDD) je velikost skupiny čtyři symboly; s jednotkami SSD (Solid-State Drive), velikost skupiny je šest symbolů. Tady je příklad, jak vypadá rozložení s pevnými disky a 12 doménami selhání hardwaru (tj. 12 serverů) – existují dvě skupiny čtyř datových symbolů. Dosahuje 72,7% efektivity úložiště.

local-reconstruction-codes

Doporučujeme tento podrobný, ale vysoce čitelný návod , jak se kódy místního obnovení vypořádávají s různými scénáři selhání a proč jsou atraktivní, Claus Joergensen.

Zrcadlově akcelerovaná parita

Svazek Storage Spaces Direct může být částečně zrcadlený a částečně s paritou. Nejprve se data uloží do zrcadlené části a postupně jsou přesunuta do paritní části. Efektivně jde o použití zrcadlení k urychlení kódování mazání v .

Pokud chcete kombinovat trojcestné zrcadlení a duální paritu, potřebujete alespoň čtyři domény poruch, což znamená čtyři servery.

Efektivita úložiště při použití parity akcelerované zrcadlením leží mezi výsledky, kterých byste dosáhli při použití čistě zrcadlení nebo čistě parity, a závisí na poměrech, které zvolíte.

Important

Pro většinu úloh citlivých na výkon doporučujeme používat zrcadlení. Další informace o vyvážení výkonu a kapacity v závislosti na úloze najdete v tématu Plánování svazků.

Summary

Tato část shrnuje typy odolnosti dostupné v Prostorech úložiště s přímým přístupem, minimální požadavky na škálování pro použití jednotlivých typů, kolik selhání může každý typ tolerovat, a odpovídající efektivitu úložiště.

Typy odolnosti

Resiliency Odolnost proti chybám Efektivita úložiště
Dvoucestné zrcadlo 1 50.0%
Třícestné zrcadlo 2 33.3%
Duální parita 2 50.0% - 80.0%
Mixed 2 33,3% - 80,0%

Minimální požadavky na škálování

Resiliency Minimální požadované domény selhání
Dvoucestné zrcadlo 2
Třícestné zrcadlo 3
Duální parita 4
Mixed 4

Tip

Pokud nepoužíváte odolnost proti chybám skříně nebo racku, počet domén selhání se vztahuje na počet serverů. Počet jednotek na každém serveru nemá vliv na typy odolnosti, které můžete použít, pokud splňujete minimální požadavky pro Prostory úložiště s přímým přístupem.

Efektivita duální parity pro hybridní nasazení

Tato tabulka ukazuje efektivitu úložiště duální parity a kódů místního obnovení v každém měřítku pro hybridní nasazení, která obsahují jak pevné disky (HDD), tak jednotky SSD (Solid-State Drive).

Domény selhání Rozložení Efficiency
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%

Efektivita duální parity pro nasazení systému all-flash

Tato tabulka ukazuje efektivitu úložiště s duální paritou a kódy místní rekonstrukce ve všech měřítkách pro nasazení pouze na flash úložištích, která obsahují pouze jednotky SSD (Solid-State Drive). Rozložení parity může používat větší velikosti skupin a dosáhnout lepší efektivity úložiště v konfiguraci typu all-flash.

Domény selhání Rozložení Efficiency
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%

Examples

Pokud nemáte jenom dva servery, doporučujeme použít trojcestné zrcadlení nebo duální paritu, protože nabízejí lepší odolnost proti chybám. Konkrétně zajišťují, aby všechna data zůstala v bezpečí a nepřetržitě přístupná i v případě, že dvě domény poruch, v prostředí Storage Spaces Direct, jsou ovlivněny současnými selháními dvou serverů.

Příklady, kde všechno zůstává online

Těchto šest příkladů ukazuje, jaké trojcestné zrcadlení a/nebo duální parita může tolerovat.

  • 1. Ztráta jedné jednotky (včetně jednotek mezipaměti)
  • 2. Došlo ke ztrátě jednoho serveru

fault-tolerance-examples-1-and-2

  • 3. Došlo ke ztrátě jednoho serveru a jedné jednotky
  • 4. Dvě jednotky ztracené na různých serverech

fault-tolerance-examples-3-and-4

  • 5. Ztráta více než dvou jednotek, pokud jsou ovlivněny maximálně dva servery
  • 6. Došlo ke ztrátě dvou serverů

fault-tolerance-examples-5-and-6

... v každém případě zůstanou všechny svazky online. (Ujistěte se, že cluster udržuje kvorum.)

Příklady, kde všechno přejde do offline režimu

Prostory úložiště můžou v průběhu své životnosti tolerovat libovolný počet selhání, protože po každém z nich obnoví plnou odolnost za dostatek času. Nanejvýš dvě domény selhání mohou být kdykoliv bezpečně ovlivněny selháními. Níže jsou uvedeny příklady toho, co třícestné zrcadlení nebo duální parita nemůže tolerovat.

  • 7. Ztráta jednotek na třech nebo více serverech najednou
  • 8. Tři nebo více serverů se ztratily najednou

fault-tolerance-examples-7-and-8

Usage

Podívejte se na Vytvoření svazků.

Další kroky

Další informace o tématech uvedených v tomto článku najdete v následujících tématech: