Megosztás a következőn keresztül:


Hibatűrés és tárolási hatékonyság az Azure Stack HCI- és Windows Server-fürtökön

A következőkre vonatkozik: Azure Stack HCI, 22H2 és 21H2 verzió; Windows Server 2022, Windows Server 2019

Ez a cikk ismerteti a rendelkezésre álló rugalmassági lehetőségeket, és ismerteti a méretezési követelményeket, a tárolási hatékonyságot, valamint az egyes eszközök általános előnyeit és kompromisszumoit.

Áttekintés

Tárolóhelyek Direct hibatűrést, más néven "rugalmasságot" biztosít az adatokhoz. Implementációja hasonló a RAID-hez, kivéve a kiszolgálók közötti elosztást és a szoftverben való implementálást.

A RAID-hez hasonlóan a Tárolóhelyek többféleképpen is megteheti ezt, amelyek különböző kompromisszumokat tesznek a hibatűrés, a tárolási hatékonyság és a számítási összetettség között. Ezek nagyjából két kategóriába sorolhatók: a "tükrözés" és a "paritás", az utóbbit néha "törléskódolásnak" is nevezik.

Tükrözés

A tükrözés hibatűrést biztosít az összes adat több másolatának megőrzésével. Ez leginkább a RAID-1-hez hasonlít. Az adatok csíkozásának és elhelyezésének módja nem triviális (további információért tekintse meg ezt a blogot ), de teljesen igaz, hogy a tükrözéssel tárolt adatok teljes egészében többször is meg vannak írva. Minden példány különböző fizikai hardverre (különböző kiszolgálók különböző meghajtóira) van írva, amelyek egymástól függetlenül meghiúsulnak.

Választhat a tükrözés két íze közül : "kétirányú" és "háromirányú".

Kétutas tükrözés

A kétirányú tükrözés mindenről két másolatot ír. Tárolási hatékonysága 50 százalék – 1 TB adat írásához legalább 2 TB fizikai tárolási kapacitásra van szükség. Hasonlóképpen, legalább két hardveres "tartalék tartományra" van szüksége – Tárolóhelyek Direct esetén ez két kiszolgálót jelent.

kétirányú tükör

Figyelmeztetés

Ha kétnál több kiszolgálóval rendelkezik, javasoljuk, hogy inkább háromutas tükrözést használjunk.

Háromutas tükrözés

A háromutas tükrözés mindenből három példányt ír. Tárolási hatékonysága 33,3 százalék – 1 TB adat írásához legalább 3 TB fizikai tárolókapacitásra van szükség. Hasonlóképpen, legalább három hardverhibatartományra van szükség – Tárolóhelyek Direct esetén ez három kiszolgálót jelent.

A háromutas tükrözés egyszerre legalább két hardverproblémát (meghajtót vagy kiszolgálót) képes biztonságosan eltűrni. Ha például újraindít egy kiszolgálót, amikor hirtelen egy másik meghajtó vagy kiszolgáló meghibásodik, minden adat biztonságos és folyamatosan elérhető marad.

háromutas tükör

Paritás

A paritáskódolás, amelyet gyakran "törléskódolásnak" is neveznek, bitenkénti aritmetika használatával hibatűrést biztosít, ami rendkívül bonyolulttá teheti. Ennek működése kevésbé nyilvánvaló, mint a tükrözés, és számos nagyszerű online forrás áll rendelkezésre (például ez a külső dummies guide to Erasure Coding), amely segíthet az ötlet beszerzésében. Elég azt mondani, hogy jobb tárolási hatékonyságot biztosít a hibatűrés veszélyeztetése nélkül.

Tárolóhelyek a paritás két ízét kínálja – az "egy" paritást és a "kettős" paritást, az utóbbi egy speciális technikát, az úgynevezett "helyi rekonstrukciós kódokat" alkalmaz nagyobb léptékben.

Fontos

Javasoljuk, hogy tükrözést használ a legtöbb teljesítményérzékeny számítási feladathoz. A teljesítmény és a kapacitás számítási feladattól függően történő kiegyensúlyozásáról további információt a kötetek tervezése című témakörben talál.

Egyetlen paritás

Az egyetlen paritás csak egy bitenkénti paritásszimbólumot tart meg, amely hibatűrést biztosít egyszerre csak egy hibával szemben. Leginkább a RAID-5-höz hasonlít. Az egyetlen paritás használatához legalább három hardverhibatartományra van szükség – Tárolóhelyek Direct esetén ez három kiszolgálót jelent. Mivel a háromutas tükrözés nagyobb hibatűrést biztosít ugyanabban a skálán, nem javasoljuk, hogy egyetlen paritást használjunk. De ott van, ha ragaszkodik a használatához, és teljes mértékben támogatott.

Figyelmeztetés

Elriasztjuk az egyetlen paritás használatát, mert egyszerre csak egy hardverhibát képes biztonságosan elviselni: ha az egyik kiszolgálót újraindítja, amikor hirtelen egy másik meghajtó vagy kiszolgáló meghibásodik, állásidőt fog tapasztalni. Ha csak három kiszolgálóval rendelkezik, javasoljuk, hogy háromirányú tükrözést használjunk. Ha négy vagy több van, tekintse meg a következő szakaszt.

Kettős paritás

A kettős paritás a Reed-Solomon hibajavító kódokat implementálja két bitenkénti paritásszimbólum megtartása érdekében, így ugyanazt a hibatűrést biztosítja, mint a háromirányú tükrözés (azaz akár két hiba egyszerre), de jobb tárolási hatékonysággal. Leginkább a RAID-6-ra hasonlít. A kettős paritás használatához legalább négy hardverhibatartományra van szükség – Tárolóhelyek Direct esetén ez négy kiszolgálót jelent. Ebben a skálán a tárolási hatékonyság 50% – 2 TB adat tárolásához 4 TB fizikai tárolókapacitásra van szükség.

kettős paritás

A kettős paritás tárolási hatékonysága 50%-ról 80%-ra növeli a hardveres tartalék tartományok számát. Például hétnél (Tárolóhelyek Direct esetén ez hét kiszolgálót jelent) a hatékonyság 66,7%-ra ugrik – 4 TB adat tárolásához mindössze 6 TB fizikai tárolókapacitásra van szükség.

kettős paritásos

A kettős féltől származó és a helyi rekonstrukciós kódok hatékonyságáról az Összegzés szakaszban olvashat.

Helyi rekonstrukciós kódok

Tárolóhelyek a Microsoft Research által kifejlesztett, "helyi rekonstrukciós kódoknak" vagy LRC-nek nevezett speciális technikát vezet be. Nagy léptékben a kettős paritás az LRC használatával osztja fel a kódolást/dekódolást néhány kisebb csoportra, hogy csökkentse az írások készítéséhez vagy a hibák utáni helyreállításhoz szükséges többletterhelést.

Merevlemez-meghajtók (HDD) esetén a csoport mérete négy szimbólum; A szilárdtest-meghajtók (SSD) esetén a csoportméret hat szimbólum. Így néz ki például az elrendezés merevlemez-meghajtókkal és 12 hardverhibás tartománnyal (azaz 12 kiszolgálóval) – két csoport négy adatszimbólumból áll. 72,7 százalékos tárolási hatékonyságot ér el.

helyi-rekonstrukciós kódok

Javasoljuk ezt a részletes, mégis jól olvasható útmutatót, amely bemutatja, hogy a helyi rekonstrukciós kódok hogyan kezelik a különböző meghibásodási forgatókönyveket, és miért vonzóak Claus Joergensen számára.

Tükrözött gyorsított paritás

A közvetlen Tárolóhelyek kötet lehet résztükrözés és részparitás. Először a tükrözött részbe írja a földet, majd később fokozatosan áthelyezi őket a paritásos részbe. Ez tulajdonképpen tükrözés használatával gyorsítja fel a kódolás törlését.

A háromutas tükrözés és a kettős paritás keveredéséhez legalább négy tartalék tartományra van szükség, ami négy kiszolgálót jelent.

A tükrözött paritás tárolási hatékonysága az összes tükrözés vagy az összes paritás használata között van, és a választott arányoktól függ.

Fontos

Javasoljuk, hogy tükrözést használ a legtöbb teljesítményérzékeny számítási feladathoz. A teljesítmény és a kapacitás számítási feladattól függően történő kiegyensúlyozásáról további információt a kötetek tervezése című témakörben talál.

Összegzés

Ez a szakasz a közvetlen Tárolóhelyek elérhető rugalmassági típusokat, az egyes típusok minimális méretezési követelményeit, az egyes típusok által tolerálható hibák számának és a megfelelő tárolási hatékonyságot foglalja össze.

Rugalmassági típusok

Tartósság Hibatűrés Tárolási hatékonyság
Kétutas tükrözés 0 50,0%
Háromutas tükrözés 2 33,3%
Kettős paritás 2 50.0% - 80.0%
Vegyes 2 33.3% - 80.0%

Minimális méretezési követelmények

Tartósság Minimálisan szükséges tartalék tartományok
Kétutas tükrözés 2
Háromutas tükrözés 3
Kettős paritás 4
Vegyes 4

Tipp.

Hacsak nem használ váz- vagy állványhibatűrést, a tartalék tartományok száma a kiszolgálók számára vonatkozik. Az egyes kiszolgálók meghajtóinak száma nem befolyásolja a használható rugalmassági típusokat, mindaddig, amíg megfelel a közvetlen Tárolóhelyek minimális követelményeinek.

Kettős paritásos hatékonyság hibrid üzemelő példányokhoz

Ez a táblázat a kettős paritás és a helyi rekonstrukciós kódok tárolási hatékonyságát mutatja be minden olyan hibrid telepítésnél, amely merevlemez-meghajtókat (HDD- és SSD-meghajtókat) is tartalmaz.

Tartalék tartományok Elrendezés Hatékonyság
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%

Kettős paritásos hatékonyság a teljes körű üzembe helyezéshez

Ez a táblázat a kettős paritás és a helyi rekonstrukciós kódok tárolási hatékonyságát mutatja be minden egyes skálán a kizárólag SSD-t (SSD- t) tartalmazó teljes körű üzemelő példányok esetében. A paritáselrendezés nagyobb csoportméreteket használhat, és jobb tárolási hatékonyságot érhet el egy villámkonfigurációban.

Tartalék tartományok Elrendezés Hatékonyság
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%

Példák

Ha csak két kiszolgálóval rendelkezik, javasoljuk, hogy háromirányú tükrözést és/vagy kettős paritást használ, mert jobb hibatűrést biztosítanak. Pontosabban biztosítják, hogy minden adat biztonságos és folyamatosan elérhető maradjon akkor is, ha két tartalék tartományt – a közvetlen Tárolóhelyek, vagyis két kiszolgálót – egyidejű hibák érintenek.

Példák arra, hogy minden online marad

Ez a hat példa azt mutatja be, hogy a háromirányú tükrözés és/vagy a kettős paritás milyen tűrő képességgel bír .

  • 1. Egy meghajtó elveszett (a gyorsítótár-meghajtókat is beleértve)
  • 2. Egy kiszolgáló elveszett

fault-tolerance-examples-1-and-2

  • 3. Egy kiszolgáló és egy meghajtó elveszett
  • 4. Két meghajtó elveszett a különböző kiszolgálókon

hibatűrési példák-3-and-4

  • 5. Több mint két meghajtó elveszett, amíg legfeljebb két kiszolgáló érintett
  • 6. Két kiszolgáló elveszett

hibatűrési példák-5 és-6

... minden esetben minden kötet online marad. (Győződjön meg arról, hogy a fürt kvórumot tart fenn.)

Példák arra, hogy minden offline állapotba kerül

Az Tárolóhelyek élettartama során bármilyen számú hibát eltűrhet, mivel mindegyik után teljes rugalmasságra áll vissza, megfelelő idő biztosításával. Legfeljebb két tartalék tartományt azonban bármikor biztonságosan érinthetnek a hibák. Az alábbiakban tehát példákat mutatunk be arra, hogy a háromirányú tükrözés és/vagy a kettős paritás mit nem tud tolerálni.

  • 7. Három vagy több kiszolgálón egyszerre elveszett meghajtók
  • 8. Egyszerre három vagy több kiszolgáló elveszett

hibatűrési példák-7-and-8

Használat

Tekintse meg a Kötetek létrehozása című cikket.

Következő lépések

A cikkben említett témákról a következő témakörökben olvashat bővebben: