Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Cześć Habr! W tym materiale opowiemy, czy warto organizować macierze RAID oparte na dyskach SSD SATA i NVMe, oraz czy przyniesie to znaczną korzyść. Postanowiliśmy przyjrzeć się tej kwestii, badając rodzaje i typy kontrolerów, które to umożliwiają, a także obszary zastosowania takich konfiguracji.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Tak czy inaczej, każdy z nas przynajmniej raz w życiu słyszał takie pojęcia jak „RAID”, „macierz RAID”, „kontroler RAID”, ale raczej nie przykładał do tego większej wagi, ponieważ dla przeciętnego użytkownika PC to mało interesujące. A jednak wysokie prędkości pracy z wewnętrznymi nośnikami i niezawodność ich działania interesuje wszystkich. W końcu, bez względu na to, jak mocne jest wnętrze komputera, prędkość działania nośnika staje się wąskim gardłem, jeśli mówimy o ogólnej wydajności PC i serwera.

Tak było do momentu, gdy tradycyjne HDD zostały zastąpione nowoczesnymi dyskami NVMe SSD o porównywalnej pojemności 1 TB i więcej. Jeśli wcześniej w PC częściej można było spotkać zestaw SATA SSD + kilka pojemnych HDD, to dziś zaczyna je zastępować inne rozwiązanie — NVMe SSD + kilka pojemnych SATA SSD. Jeśli chodzi o serwery korporacyjne i chmurę, wiele podmiotów już przeszło na SATA SSD, po prostu dlatego, że są szybsze od zwykłych „talerzyków” i potrafią przetwarzać większą liczbę operacji wejścia/wyjścia jednocześnie.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Jednak niezawodność systemu wciąż jest na dość niskim poziomie: nie możemy, jak w „Bitwie ekstrasensów”, przewidzieć z dokładnością do tygodnia, kiedy dany dysk SSD przestanie działać. Podczas gdy HDD „umiera” stopniowo, pozwalając dostrzec objawy i podjąć działania, SSD „umierają” natychmiast i bez ostrzeżeń. A teraz nadszedł czas, by zastanowić się, po co to wszystko? Czy warto organizować macierze RAID oparte na rozwiązaniach SSD SATA i NVMe, i czy przyniesie to znaczną korzyść?

Po co potrzebna jest macierz RAID?

Samo słowo „macierz” sugeruje, że do jej utworzenia wykorzystuje się kilka nośników (HDD i SSD), które są łączone za pomocą kontrolera RAID i uznawane przez system operacyjny jako jednolita przestrzeń do przechowywania danych. Główne zadanie, które pozwalają rozwiązać macierze RAID, to minimalizacja czasu dostępu do danych, zwiększenie prędkości odczytu/zapisu oraz niezawodność, która osiągana jest dzięki możliwości szybkiego przywracania w przypadku awarii. Warto dodać, że do domowych kopii zapasowych stosowanie RAID nie jest konieczne. Natomiast jeśli masz własny serwer domowy, do którego potrzebny jest stały dostęp 24/7 — sytuacja wygląda już inaczej.

Istnieje ponad dziesięć poziomów macierzy RAID, z których każdy różni się liczbą używanych nośników i ma swoje plusy oraz minusy: na przykład RAID 0 pozwala uzyskać wysoką wydajność bez tolerancji na awarie, RAID 1 — ustawia automatyczne mirrorowanie danych bez zwiększania prędkości, podczas gdy RAID 10 łączy możliwości wymienionych wcześniej. RAID 0 i 1 to najprostsze (ponieważ nie wymagają wykonywania obliczeń programowych) i, co za tym idzie, — najpopularniejsze. Ostateczny wybór danego poziomu RAID zależy od zadań przypisywanych macierzy dyskowej oraz możliwości kontrolera RAID.

RAID domowy i korporacyjny: jaka jest różnica?

Podstawą każdego nowoczesnego biznesu są duże ilości danych, które muszą być niezawodnie przechowywane na serwerach firm. A także, jak już wcześniej wspomnieliśmy, powinien być zapewniony stały dostęp 24/7. Oczywiście, obok „sprzętu” ważna jest także część programowa, ale w tym przypadku mówimy o sprzęcie, który zapewnia niezawodne przechowywanie i przetwarzanie informacji. Żaden program nie uratuje firmy przed bankructwem, jeśli jej „sprzętowe” wyposażenie nie odpowiada przypisanym mu zadaniom.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Do tych zadań każdy producent „sprzętu” oferuje tak zwane urządzenia korporacyjne. U Kingstona są to mocne rozwiązania solid-state w postaci modeli SATA. Kingston 450R (DC450R) i serii DC500, a także modele NVMe DC1000M U.2 NVMe, DCU1000 U.2 NVMe i DCP-1000 PCI-e, zaprojektowane do użycia w centrach danych (DC) i superkomputerach. Zestawy składające się z takich nośników są zazwyczaj wykorzystywane w połączeniu z kontrolerami sprzętowymi.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Natomiast dla rynku konsumenckiego (tj. dla domowych komputerów PC i serwerów NAS) dostępne są takie nośniki jak Kingston KC2000 NVMe PCIe, ale w tym przypadku nie jest konieczne kupowanie kontrolera sprzętowego. Można ograniczyć się do zintegrowanego w płycie głównej komputera PC lub serwera NAS, chyba że planujesz samodzielnie zbudować domowy serwer do nietypowych zadań (na przykład utworzyć mały domowy hosting dla przyjaciół). Co więcej, domowe zestawy RAID zazwyczaj nie przewidują setek ani tysięcy nośników, ograniczając się do dwóch, czterech lub ośmiu urządzeń (częściej SATA).

Rodzaje i typy kontrolerów RAID

Istnieją trzy rodzaje kontrolerów RAID, oparte na zasadach realizacji zestawów RAID:

1. Programowe, w których zarządzanie zestawem spoczywa na CPU i DRAM (to znaczy wykonanie kodu programowego odbywa się na procesorze).

2. Zintegrowane, czyli wbudowane w płyty główne komputerów PC lub serwerów NAS.

3. Sprzętowe (modułowe), będące dyskretnymi płytami rozszerzeń dla złącza PCI/PCIe płyt głównych.

Jakie są ich zasadnicze różnice? Programowe kontrolery RAID ustępują zintegrowanym i sprzętowym pod względem wydajności i odporności na awarie, jednak nie wymagają specjalnego sprzętu do pracy. Ważne jest, aby upewnić się, że procesor systemu gospodarza jest wystarczająco wydajny do uruchomienia oprogramowania RAID, nie wpływając negatywnie na wydajność aplikacji działających również na hoście. Zintegrowane kontrolery zazwyczaj mają własną pamięć podręczną i wykorzystują pewną ilość zasobów CPU.

Sprzętowe kontrolery mają swoją własną pamięć cache oraz zintegrowany procesor do realizacji algorytmów programowych. Zwykle pozwalają na implementację wszystkich rodzajów poziomów macierzy RAID i obsługują jednocześnie kilka typów nośników. Na przykład nowoczesne sprzętowe kontrolery firmy Broadcom pozwalają na jednoczesne podłączenie urządzeń SATA, SAS oraz NVMe, co umożliwia aktualizację serwerów bez potrzeby zmiany kontrolera: w szczególności, przy przejściu z SATA SSD na NVMe SSD, nie będzie konieczna wymiana kontrolera.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Właściwie, na tej nutie przeszliśmy do typologii samych kontrolerów. Jeśli istnieją kontrolery trzytrybowe, to muszą być też inne? W tym przypadku odpowiedź brzmi twierdząco. W zależności od funkcji i możliwości, kontrolery RAID można podzielić na kilka typów:

1. Zwykłe kontrolery z funkcją RAID
W całej hierarchii to najprostszy kontroler, który pozwala na łączenie HDD i SSD w macierze RAID poziomów „0”, „1” lub „0+1”. Realizowane jest to programowo na poziomie oprogramowania układowego. Jednak takie urządzenia wątpliwie można polecić do wykorzystania w segmencie korporacyjnym, ponieważ nie mają pamięci cache i nie obsługują macierzy poziomów „5”, „3” itp. Natomiast nadają się całkiem dobrze do domowego serwera na poziomie podstawowym.

2. Kontrolery współpracujące z innymi kontrolerami RAID
Ten typ kontrolerów może działać w parze z zintegrowanymi kontrolerami płyt głównych. Realizowane jest to w następujący sposób: dyskretny kontroler RAID przejmuje rozwiązanie 'logicznym' zadań, a zintegrowany — funkcje wymiany danych pomiędzy nośnikami. Ale jest jeden haczyk: równoległa praca takich kontrolerów możliwa jest tylko na kompatybilnych płytach głównych, co znacząco ogranicza ich zastosowanie.

3. Samodzielne kontrolery RAID
Te dyskretne rozwiązania zawierają na pokładzie wszystkie niezbędne chipy do pracy z serwerami klasy korporacyjnej, mają własny BIOS, pamięć cache oraz procesor do szybkiej korekcji błędów i obliczania sum kontrolnych. Co więcej, odpowiadają wysokim standardom niezawodności w zakresie produkcji i posiadają wysokiej jakości moduły pamięci.

4. Zewnętrzne kontrolery RAID
Nie jest trudno zgadnąć, że wszystkie wymienione powyżej kontrolery są wewnętrzne i zasilane przez złącze PCIe płyty głównej. Co to oznacza? Oznacza to, że awaria płyty głównej może prowadzić do błędów w działaniu macierzy RAID i utraty danych. Zewnętrzne kontrolery są wolne od tego problemu, ponieważ znajdują się w oddzielnej obudowie z niezależnym zasilaczem. Pod względem niezawodności takie kontrolery zapewniają najwyższy poziom przechowywania danych.

Broadcom, Microsemi Adaptec, Intel, IBM, Dell i Cisco to tylko niektóre z firm, które obecnie oferują sprzętowe kontrolery RAID.

Tryby pracy kontrolerów RAID SAS/SATA/NVMe

Głównym zadaniem kontrolerów HBA i RAID w trybie trójczłonowym (lub kontrolerów z funkcją Tri-Mode) jest tworzenie sprzętowego RAID na bazie NVMe. Firma Broadcom produkuje kontrolery serii 9400, które są w stanie to zrobić: na przykład, MegaRAID 9460-16i. Należy do typu samodzielnych kontrolerów RAID, jest wyposażony w cztery złącza SFF-8643 i dzięki wsparciu dla Tri-Mode pozwala na jednoczesne podłączanie napędów SATA/SAS i NVMe. Ponadto jest to jeden z najbardziej energooszczędnych kontrolerów na rynku (zużywa tylko 17 Watów energii, a mniej niż 1,1 Watta na każdy z 16 portów).

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Interfejsem połączeniowym jest PCI Express x8 w wersji 3.1, co pozwala na realizację przepustowości na poziomie 64 Gb/s (w 2020 roku oczekuje się pojawienia się kontrolerów dla PCI Express 4.0). W podstawie 16-portowego kontrolera znajduje się dwurdzeniowy chip SAS3516 i 72-bitowa pamięć DDR4-2133 SDRAM (4 GB), a także możliwość podłączenia do 240 napędów SATA/SAS lub do 24 urządzeń NVMe. Jeśli chodzi o organizację macierzy RAID, obsługiwane są poziomy “0”, “1”, “5” i “6”, a także “10”, “50” i “60”. Przy okazji, pamięć cache MegaRAID 9460-16i i innych kontrolerów w serii 9400 jest chroniona przed skokami napięcia dodatkowym modułem CacheVault CVPM05.

Podstawą technologii trzech trybów jest funkcja konwersji danych SerDes: zamiana sekwencyjnego przedstawienia danych w interfejsach SAS/SATA na formę równoległą w PCIe NVMe i odwrotnie. Oznacza to, że kontroler dostosowuje prędkości i protokoły, aby bezproblemowo współpracować z każdym z trzech typów urządzeń magazynujących. Umożliwia to płynne skalowanie infrastruktury centrów danych: użytkownicy mogą korzystać z NVMe bez znaczących zmian w innych konfiguracjach systemu.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Jednak planując konfiguracje z dyskami NVMe, warto pamiętać, że rozwiązania NVMe używają do podłączenia 4 linii PCIe, co oznacza, że każdy dysk zajmuje wszystkie linie portów SFF-8643. Oznacza to, że do kontrolera MegaRAID 9460-16i można bezpośrednio podłączyć tylko cztery dyski NVMe. Można również ograniczyć się do dwóch rozwiązań NVMe przy jednoczesnym podłączeniu ośmiu dysków SAS (patrz schemat połączeń poniżej).

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Na rysunku pokazano wykorzystanie złącza „0” (C0 / Connector 0) i złącza „1” do połączeń NVMe, a także złącz „2” i „3” do połączeń SAS. To rozmieszczenie może zostać zmienione na odwrotne, ale każdy dysk x4 NVMe musi być podłączony z użyciem sąsiednich linii. Tryby pracy kontrolera są ustalane za pomocą narzędzi konfiguracyjnych StorCLI lub Human Interface Infrastructure (HII), które działają w środowisku UEFI.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Tryb domyślny to profil „PD64” (obsługa tylko SAS/SATA). Jak już wcześniej wspomniano, istnieją łącznie trzy profile: tryb „SAS/SATA only mode” (PD240 / PD64 / PD 16), tryb „NVMe only mode” (PCIe4) oraz tryb mieszany, w którym mogą pracować wszystkie typy dysków: „PD64-PCIe4” (obsługa 64 fizycznych i wirtualnych dysków z 4 dyskami NVMe). W trybie mieszanym wartość ustawionego profilu powinna być taka – „ProfileID=13”. Przy okazji, wybrany profil jest zapisywany jako dominujący i nie jest resetowany nawet przy przywracaniu ustawień fabrycznych za pomocą polecenia Set Factory Defaults. Można go zmienić tylko ręcznie.

Czy warto tworzyć macierz RAID na SSD?

Zatem już zrozumieliśmy, że macierze RAID to gwarancja wysokiej wydajności. Ale czy warto budować RAID z pamięci flash dla użytku domowego i korporacyjnego? Wielu sceptyków twierdzi, że przyrost prędkości nie jest na tyle znaczący, aby inwestować w dyski NVMe. Ale czy to naprawdę prawda? Niekoniecznie. Największym ograniczeniem stosowania SSD w RAID (zarówno w warunkach domowych, jak i na poziomie korporacyjnym) może być tylko cena. Jakby nie było, koszt gigabajta przestrzeni w HDD jest znacznie tańszy.

Podłączenie kilku pamięci flash "dysków" do kontrolera RAID w celu stworzenia macierzy SSD w określonych konfiguracjach może mieć ogromny wpływ na wydajność. Należy jednak pamiętać, że maksymalna wydajność jest ograniczona przepustowością samego kontrolera RAID. Najlepszym poziomem RAID, który oferuje największą prędkość, jest RAID 0.

Czy warto tworzyć macierz RAID z SSD i jakie kontrolery są do tego potrzebne?

Organizacja standardowego RAID 0 z dwoma dyskami SSD, w którym stosuje się metodę podziału danych na stałe bloki i ich przemienności między pamięciami flash, doprowadzi do podwojenia wydajności (w porównaniu do prędkości, jakie osiąga jeden SSD). Z kolei macierz RAID 0 z czterema dyskami SSD będzie już cztery razy szybsza niż najwolniejszy SSD w macierzy (w zależności od ograniczenia przepustowości na poziomie kontrolera RAID SSD).

Bazując na prostej arytmetyce, SSD SATA są około 3 razy szybsze od tradycyjnych HDD SATA. Rozwiązania NVMe są jeszcze bardziej efektywne — 10 razy i więcej. Pod warunkiem, że dwa dyski twarde w RAID zero pokażą podwojoną wydajność, zwiększając ją o 50%, dwa SSD SATA będą 6 razy szybsze, a dwa SSD NVMe 20 razy szybsze. Na przykład jeden dysk Kingston KC2000 NVMe PCIe może osiągać prędkości sekwencyjnego odczytu i zapisu do 3200 MB/s, co w formacie RAID 0 osiągnie imponujące 6 GB/s. A prędkość odczytu/zapisu losowych bloków o rozmiarze 4 KB wzrośnie z 350 000 IOPS do 700 000 IOPS. Ale… z drugiej strony RAID zero nie zapewnia nam nadmiarowości.

Można powiedzieć, że w warunkach domowych nadmiarowość pamięci masowej zazwyczaj nie jest wymagana, dlatego najbardziej odpowiednią konfiguracją RAID dla SSD jest rzeczywiście RAID 0. To niezawodny sposób na osiągnięcie znacznego wzrostu wydajności jako alternatywa dla technologii, takich jak pamięci flash oparte na Intel Optane. A jak zachowają się rozwiązania SSD w najbardziej popularnych typach RAID („1”, „5”, „10”, „50”) — omówimy to w naszym następnym materiale.

Niniejszy artykuł powstał przy wsparciu naszych kolegów z Broadcom, którzy dostarczają swoje kontrolery inżynierom Kingston do testowania z dyskami SATA/SAS/NVMe klasy enterprise. Dzięki tej przyjaznej symbiozie klienci nie muszą wątpić w niezawodność i stabilność działania dysków Kingston z kontrolerami HBA i RAID. Broadcom.

Dodatkowe informacje o produktach Kingston można znaleźć na oficjalnej stronie firmą.

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster