Czy duża macierz RAID-Z jest tak samo zła jak duża macierz RAID-5?

11

Od dawna słyszałem o tym, jak złym pomysłem jest duża (> 5 TB?) Macierz RAID-5, ponieważ istnieje wysokie ryzyko awarii innego dysku.

Czy RAID-Z1 zdołał temu zaradzić w przypadku macierzy dowolnej wielkości (jeśli absolutnie potrzebujesz liczby, rozważ 4x2 TB lub 5x2 TB)? Może bezpieczniejszy sposób na powtórzenie danych, które nie są tak intensywne na wszystkich dyskach?

TheLQ
źródło

Odpowiedzi:

8

Nawet biorąc pod uwagę jedną z pozostałych odpowiedzi tutaj, a mianowicie, że ZFS działa tylko z faktycznie używanymi blokami, a nie z pustą przestrzenią, tak, nadal tworzenie dużego RAIDZ1 vdev jest niebezpieczne. Większość pul korzysta z co najmniej 30-50%, wiele idzie w górę do zalecanego maksimum 80% (niektóre przekraczają to, zdecydowanie zalecam, aby tego nie robić ze względów wydajnościowych), więc ZFS zajmuje się tylko z wykorzystanymi klockami to nie jest wielka wygrana. Ponadto niektóre inne odpowiedzi sprawiają, że to brzmi jak zły odczyt, co powoduje problem. Tak nie jest. Trochę zgnilizna wewnątrz bloku nie jest tym, co cię tutaj spieprzyło, zwykle jest to inny dysk, który po prostu się psuje, podczas gdy wciąż trwa resilver z pierwszego dysku, który cię zabije, i zabije cię .. i na dyskach 3 TB w dużej podwyżce może to zająć dni, a nawet tygodnie resilver na nowy dysk, więc Twoja szansa na to nie jest nieznaczna.

Osobiście zalecam klientom, aby nigdy nie używać RAIDZ1 (odpowiednik RAID5) z dyskami o pojemności> 750 GB, aby uniknąć wielu potencjalnych nieprzyjemności. Nie przeszkadzało mi to, że łamią tę zasadę z innych powodów (system ma kopię zapasową gdzie indziej, dane nie są tak ważne itp.), Ale zwykle robię wszystko, co w mojej mocy, aby wcisnąć RAIDZ2 jako minimalną opcję z dużą dyski

Ponadto, z wielu powodów, zwykle nie zalecam używania więcej niż 8-12 dysków w pasku raidz2 lub 11-15 dysków w pasku raidz3. Powinieneś być w niższej części tych zakresów z dyskami o pojemności 3 TB, a może być OK w wyższej klasie tych zakresów na dyskach o pojemności 1 TB. To pomoże ci trzymać się z dala od pomysłu, że więcej dysków ulegnie awarii podczas działania resilvera, to tylko jeden z tych powodów, ale duży.

Jeśli szukasz pewnych rozsądnych zasad (edytuj 04/10/15 - napisałem te reguły mając na uwadze tylko obracające się dyski - ponieważ są one również logiczne [dlaczego miałbyś robić mniej niż 3 dyski w podniesieniu1] ma to sens nawet w przypadku pul SSD, ale pule wszystkich dysków SSD nie były w mojej głowie, gdy je zapisałem):

  • W ogóle nie używaj raidz1 na dyskach> 750 GB.
  • Nie używaj mniej niż 3 lub więcej niż 7 dysków na raidz1.
  • Jeśli zastanawiasz się nad użyciem 3-dyskowych vdevów raidz1, poważnie rozważ zamiast tego 3-drożne vdevy lustrzane.
  • Nie używaj mniej niż 6 lub więcej niż 12 dysków na raidz2.
  • Nie używaj mniej niż 7 lub więcej niż 15 dysków na raidz3.
  • Zawsze pamiętaj, że w przeciwieństwie do tradycyjnych macierzy RAID, w których liczba dysków zwiększa IOPS, w ZFS jest to liczba VDEVS, więc korzystanie z krótszych pasków vdevs poprawia potencjał IOPS puli.
Nex7
źródło
Czy przy zmianie rozmiarów i wydajności dysków nadal zalecałbyś tę samą ogólną zasadę? (2014)
Lord Loh.
Jakieś źródło lub motywacja dla podstawowych zasad?
Kenny Evitt,
Źródłem są doświadczenia mnie i współpracowników w tysiącach wdrożeń ZFS w Nexenta. Jeśli chodzi o aktualizację - zasady obowiązują (04/10/15), nic się nie zmieniło, co zmusiłoby mnie do edytowania punktów wypunktowania, chociaż POWINNO powiedzieć, że napisałem te zasady bez uwzględnienia dysków SSD. Zasady niekoniecznie są takie same dla dysków SSD, w zależności od okoliczności. Z nimi masz również inne uwagi, takie jak wąskie gardło HBA.
Nex7
1
@ Nex7, jaka jest logika tego w Twoim blogu? „8. RAIDZ - liczba parzystych / nieparzystych dysków: Spróbuj (i nie bardzo ciężko) utrzymać liczbę dysków z danymi w parze vdzev do parzystej”
Costin Gușă
Ważne jest, aby pamiętać o przypadkach użycia. W przypadku błędu serwera koncentrujemy się na aplikacjach profesjonalnych / biznesowych, więc Twoja odpowiedź jest właściwa. To powiedziawszy, dla tych, którzy wykonują instalacje konsumenckie (a może nawet ograniczone aplikacje biznesowe?), Zastanów się, jak źle byłoby stracić pojedynczy blok z jednego pliku (być może kilku) z tablicy, jeśli wystąpi awaria podczas odbudować. Nie ma sprawy? Wtedy RAIDZ1 może być w porządku.
Dan Pritts,
11

Czy RAID-Z jest tak zły jak R5, nie. Czy jest tak dobry jak R1 lub R10, zwykle nie.

RAID-Z zdaje sobie sprawę z pustych miejsc na dyskach, gdzie nie ma R5. Dlatego RAID-Z musi tylko czytać obszary z danymi, aby odzyskać brakujący dysk. Ponadto dane niekoniecznie są rozłożone na wszystkie dyski. Bardzo mały plik może znajdować się tylko na jednym dysku, z parzystością na innym dysku. Z tego powodu RAID-5 będzie musiał odczytać dokładnie tyle danych, ile miejsca w macierzy (jeśli 1mb zostanie użyty w macierzy 5 TB, wówczas przebudowa musi tylko odczytać 1 mb).

Idąc w drugą stronę, jeśli większość dużej tablicy jest pełna, większość danych będzie musiała zostać odczytana ze wszystkich dysków. W porównaniu do R1 lub R10, w których dane muszą zostać pobrane dokładnie z jednego dysku (na dysk uszkodzony; jeśli wiele dysków ulegnie awarii tylko w sytuacjach, w których macierz jest nadal możliwa do odzyskania).

Martwisz się tym, że przy każdej operacji odczytu sektora istnieje szansa, że ​​znajdziesz sektor, który nie został poprawnie zapisany lub nie jest już czytelny. Dla typowego dysku w dzisiejszych czasach jest to około 1x10 ^ -16 (nie wszystkie dyski są równe, więc sprawdź specyfikację dysków, aby sprawdzić ich ocenę). Jest to niezwykle rzadkie, ale pojawia się mniej więcej raz na 1PB; dla macierzy 10 TB istnieje 1% szansa, że ​​twoja tablica jest tostowa i nie znasz jej, dopóki nie spróbujesz jej odzyskać.

ZFS pomaga również zminimalizować tę szansę, ponieważ większość nieczytelnych sektorów jest zauważalna, zanim zaczniesz odbudowywać tablicę. Jeśli regularnie szorujesz tablicę ZFS, operacja szorowania wykryje te błędy i obejdzie je (lub zaalarmuje cię, abyś mógł wymienić dysk, jeśli tak robisz). Zalecają szorowanie dysków klasy korporacyjnej około jeden do czterech razy w miesiącu; i dyski klasy konsumenckiej co najmniej raz w tygodniu lub więcej.

Chris S.
źródło
3

Niektóre zalety RAID-Z w porównaniu z tradycyjnym RAID-5 polegają na tym, że nie wymaga on specjalistycznego sprzętu i jest bardziej niezawodny, unikając dziury w zapisie RAID-5.

Jednak zarówno RAID-Z, jak i RAID-5 nie wytrzymują więcej niż jednej awarii dysku.

Jeśli chcesz przetrwać awarię dwóch dysków dzięki ZFS, możesz użyć RAIDZ2 , a awarii trzech dysków RAIDZ3 .

jlliagre
źródło
1
+1 Ponadto sumy kontrolne Perblock pozwalają ZFS, jeśli znajdzie uszkodzenie w tablicy, wyodrębnić pliki, których dotyczy problem. Większość kart HBA R5 po prostu oznaczy cały wolumin jako uszkodzony lub zgłosi systemowi operacyjnemu, że sektor jest uszkodzony, w każdym razie karta HBA nie ma możliwości dowiedzenia się, który dysk jest uszkodzony w scenariuszu uszkodzenia.
Chris S
Więcej dyskusji na temat postępowania w przypadku awarii resilvera ZFS
CVn