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.
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.
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.
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.
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.
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
- 3. Egy kiszolgáló és egy meghajtó elveszett
- 4. Két meghajtó elveszett a különböző kiszolgálókon
- 5. Több mint két meghajtó elveszett, amíg legfeljebb két kiszolgáló érintett
- 6. Két kiszolgáló elveszett
... 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
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: