czwartek, 30 października 2014

Hot Spare w macierzach RAID

Podobno administratorzy dzielą się na tych co robią kopie zapasowe i na tych co będą je robić. Kopia zapasowa jest jednak ostatecznością, której większość adminów chce uniknąć, ponieważ zawsze istnieje ryzko związane z jakością nośnika kopii, jak również sam proces odtwarzania może być czasochłonny i problematyczny. Lepiej więc robić wszystko co w naszej mocy, aby uniknąć konieczności ich użycia.
Tutaj w sukurs przychodzą nam macierze RAID, a wraz z nimi technologia Hot Spare.

Poniżej zostanie wyjaśnione czym jest technologia Hot Spare, jak ją skonfigurować w macierzy NAS Synology, na serwerze DELL poprzez iDrac oraz na serwerze IBM poprzez program zarządzający w systemie Windows. Dokonamy także uszkodzenia macierzy celem przetestowania funkcjonowania dysku Hot Spare.

Definicja Hot Spare z Wikipedii jest krótka, acz dość treściwa:
Hot spare - używany jest jako mechanizm zabezpieczający, w celu zapewnienia niezawodności konfiguracji systemów. Jest aktywnym i podłączonym zapasowym elementem działającego systemu. W przypadku awarii kluczowego elementu, urządzenie hot spare automatycznie przejmuje rolę urządzenia uszkodzonego.
W zakresie macierzy, Hot Spare należy rozumieć jako jeden, lub więcej dysków zapasowych, czekających na automatyczne (na ogół) uruchomienie w przypadku uszkodzenia któregoś z głównych dysków macierzy.

Schemat macierzy z czterema dyskami w RAID i piątym jako Hot Spare
Schemat macierzy z czterema dyskami w RAID i piątym jako Hot Spare

Jeżeli jeden z nich ulega uszkodzeniu wtedy macierz przestaje z niego korzystać i zaczyna się odbudowywać na zapasowym dysku Hot Spare, który od tego momentu staje się pełnoprawnym członkiem macierzy.

Uszkodzenie drugiego dysku z RAID spowodowało wykorzystanie piątego dysku ustawionego wcześniej jako Hot Spare
Uszkodzenie drugiego dysku z RAID spowodowało wykorzystanie piątego dysku ustawionego wcześniej jako Hot Spare

Jak widać powyżej, w teorii wszystko wygląda pięknie. Pytanie zatem, gdzie jest haczyk.

Otóż cechą (bo trudno to nazwać wadą) tego rozwiązania jest fakt, że miejsce, które może oferować dysk Hot Spare -  z racji tego, że pozostaje on w zapasie - jest dla nas niedostępne. Tym samym, w macierzy składającej się np. z 5 dysków twardych, przez użycie RAID'a tracimy jeden lub dwa dyski pojemności (w zależności od wybranego trybu RAID) oraz minimum jeden dysk na Hot Spare. Końcowo może się okazać, że pięciodyskowa macierz oferuje nam sumaryczną pojemność dwóch, lub trzech dysków. To jest ten haczyk. Hot Spare zwiększa bezpieczeństwo kosztem dodatkowej utraty pojemności.

Powstaje zatem pytanie, po co w ogóle wdrażać omawiany mechanizm skoro tracimy przez niego cenne miejsce. Uszkodzony dysk w macierzy można przecież wymienić ręcznie.
Jedynym zastosowaniem dla tego typu rozwiązania - przynajmniej wg mnie - są środowiska profesjonalne, czyli tam gdzie liczy się minimalizacja czasu ryzyka wystąpienia awarii kolejnego dysku oraz utraty danych. Z punktu widzenia firmy należy rozważyć, czy większym problemem dla niej będzie wydanie dodatkowych pieniędzy na zapasowe dyski, czy ewentualne zwiększenie ryzyka utraty danych. Tutaj w grę wchodzi szacowanie ryzyka i każda firma (lub osoba) powinna indywidualnie to rozważyć.
Jezeli to my szacujemy ryzyko, to powinniśmy pamiętać o tym, że serwer lub macierz, są na ogół zamknięte w szafie serwerowej i nie patrzymy na niego całymi dniami. Jeżeli więc jeden z dysków padnie to może się zdarzyć, że ten fakt pozostanie niezauważony (a jeżeli jesteśmy kierownikiem jednoosobowego działu IT przebywającym na urlopie, to na 90% nie będziemy o tym wiedzieć).
Wówczas awaria kolejnego dysku wiąże się dla nas z niedostępnością serwera, utratą danych i (w najlepszym przypadku) rozpoczęciem procedury przywracania danych z kopii zapasowej.

Dysk Hot Spare w Synology 1513+

W tym przypadku zaprezenuję konfigurację dysku Hot Spare na macierzy Synology 1513+, która posiada 5 zatok z zamontowanymi już dyskami twardymi. Dyski nie są w żaden sposób skonfigurowane (nie ma na nich RAID'a, lub LUN'a).


Nie skonfigurowane dyski w macierzy
Nie skonfigurowane dyski w macierzy

Chcąc ustawić dysk Hot Spare należy wejść w menu Hot Spare i tam spośród dostępnych urządzeń wybrać to, które ma pełnić rolę dysku zapasowego.


Zaznaczenie dysku nr 5 do funkcji Hot Spare
Zaznaczenie dysku nr 5 do funkcji Hot Spare

Potwierdzenie wyboru klawiszem Zastosuj w zasadzie kończy procedurę dodawania dysku Hot Spare. Pozostaje tylko zdefiniować grupę dysków (czyli RAID) i już mamy macierz na której jest skonfigurowany RAID z dyskiem Hot Spare.


Przegląd konfiguracji dysków w Synology 1513+. Widoczne są 4 używane dyski z 1 dyskiem Hot Spare
Przegląd konfiguracji dysków w Synology 1513+. Widoczne są 4 używane dyski z 1 dyskiem Hot Spare

Oczywiście powyższą procedurę można przeprowadzić odwrotnie, czyli najpierw ustawić tryb RAID (pamiętając o pozostawieniu wolnego dysku dla Hot Spare), a dopiero potem zdefiniować wolny dysk do roli zapasowego. Tutaj nie ma jakichś wskazań lub przecwiwskazań, co do kolejności postępowania.

Dysk Hot Spare w serwerze DELL R720xd

W tym punkcie zostanie opisana konfiguracja dysku Hot Spare w serwerze Dell R720xd wyposażonym w kontroler RAID PERC H710P Mini. Różnica, w stosunku do przykładu z macierzą Synology polega na tym, że serwer posiada już skonfigurowany RAID w dwóch grupach dysków. Pierwsza grupa składa się z 2 dysków po 146GB ze skonfigurowanym trybem RAID 1, zaś druga grupa składa się z 4 dysków po 600GB ze skonfigurowanym trybem RAID 10.
Taka konfiguracja skutkuje tym, że nie można użyć jednego dysku Hot Spare dla obydwu grup, gdyż - jak to w RAIDzie bywa - dyski powinny być identyczne.


Dwie grupy dysków bez skonfigurowanych Hot Spare
Dwie grupy dysków bez skonfigurowanych Hot Spare

W tym przypadku został zakupiony dysk identyczny jak zamontowane w grupie drugiej (czyli 600GB), więc celem jest dołożenie i skonfigurowanie dołożonego dysku jako Hot Spare dla tej właśnie grupy.

Po zainstalowaniu dysku, kontroler go rozpoznał i umieścił w gałęzi Unconfigured Physical Disks.

Dysk twardy zamontowany w serwerze, ale jeszcze nie skonfigurowany
Dysk twardy zamontowany w serwerze, ale jeszcze nie skonfigurowany

Następnie należy zaznaczyć grupę dysków do której ma zostać dołączone zapasowe urządzenie i nacisnąć klawisz F2 powodując wyświetlenie menu operacji jakie można na tej grupie wykonać. Spośród dostępnych opcji należało wybrać Manage Ded. HS

Menu operacji dostępnych dla zaznaczonej grupy dysków
Menu operacji dostępnych dla zaznaczonej grupy dysków

Wybranie opcji Manage Ded. HS spowodowało wyświetlenie listy dostępnych dysków, które mogą zostać wybrane do skonfigurowania jako zapasowe. W tym przypadku wyświetlony został tylko jeden dysk - ten który został dołożony do serwera.

Pole wyboru dysków z przeznaczeniem jako Hot Spare dla grupy dysków
Pole wyboru dysków z przeznaczeniem jako Hot Spare dla grupy dysków

Jego zaznaczenie i potwierdzenie klawiszem OK skutkuje pozytywnym zakończeniem operacji dodawania dysku Hot Spare do istniejącej grupy dysków.

Dysk Hot Spare skonfigurowany jako zapasowy dla drugiej grupy dysków
Dysk Hot Spare skonfigurowany jako zapasowy dla drugiej grupy dysków

Informacja z logów systemu iDrac 7 o dodaniu dysku Hot Spare
Informacja z logów systemu iDrac 7 o dodaniu dysku Hot Spare

Dysk Hot Spare w leciwym serwerze IBM xSeries 235

Powyższe rozwiązania pokazywały podłączenie dysku Hot Spare w dedykowanych środowiskach, np. na macierzy poprzez DSM, lub w serwerze DELL poprzez iDrac. Prawie zawsze jednak istnieje możliwość ustawienia zapasowego dysku poprzez aplikację w systemie operacyjnym. Tutaj posłużę się przykładem leciwego serwera IBM xSeries 235 w którym utworzony jest dysk logiczny zbudowany z trzech dysków fizycznych. Do niego zostanie dołożony jeden dysk fizyczny jako Hot Spare.

A więc wkładamy fizyczny dysk do serwera i uruchamiamy aplikację zarządzającą kontrolerem RAID.
Widać, że system wykrył nowy dysk i oznaczył go jako Ready. Można zwrócić uwagę, że wyżej w drzewie jest gałąź Hot-Spare drives, która jest pusta.

Dołożony dysk został rozpoznany i ustawiony jako Ready
Dołożony dysk został rozpoznany i ustawiony jako Ready
Aby ustawić dysk jako zapasowy wystarczy kliknąć na nim prawym klawiszem myszy i wybrać jedną spośród dostępnych opcji:
  • Create hot-spare drive,
  • Create standby hot-spare drive.
Po wybraniu pierwszej opcji dysk pracuje non stop i jest w stanie natychmiastowej gotowości do użycia, zaś  dzięki drugiej dysk jest gotowy, ale wygaszony (talerze się nie kręcą itd.) i w tym stanie oczekuje na wybudzenie i użycie. 
Ja wybrałem drugą opcję, tak aby zapasowy dysk niepotrzebnie się nie kręcił i nie zużywał prądu. 

Po kilku sekundach stan dysku się zmienił na Standby hot spare oraz w drzewie opcji, w gałęzi Hot-spare drives pojawił się dołożony dysk. 

Dysk dodany jako Standby hot spare
Dysk dodany jako Standby hot spare
Skoro mamy już dysk zapasowy zamontowany, można spróbować wyjąć jeden z dysków macierzy i zobaczyć, czy kontroler użyje dysku Hot spare do jej odbudowy. 
Niniejszy test jest przeprowadzany na nieprodukcyjnym serwerze. Nie zalecam jakichkolwiek ryzykownych działań z macierzami w serwerach produkcyjnych.
W tym przykładzie usunięty zostaje dysk oznaczony jako ID 0

Dysk ID 0 widoczny jako uszkodzony, zaś dotychczasowy dysk Hot Spare ID 3 został wykorzystany do obudowy macierzy
Dysk ID 0 widoczny jako uszkodzony, zaś dotychczasowy dysk Hot Spare ID 3 został wykorzystany do obudowy macierzy

Jak widać, macierz od razu wykryła nienormalny stan o czym zostaliśmy poinformowani wieloma wykrzyknikami. Dysk ID 0 został przekreślony na czerwono, zaś dotychczasowy dysk zapasowy (ID 3) otrzymał status Rebuilding oznaczający, że kontroler użył go do odbudowywania macierzy. Stan odbudowy można zauważyć na dolnym pasku okna z informacją "31% Rebuilding controller 1, logical drive1".

Ostatnim krokiem jest zrobienie porządku w programie poprzez usunięcie uszkodzonego dysku lub zastąpienie go nowym i oznaczenie tego w aplikacji.

Jednym słowem, w praktyce wszystko odbyło się tak jak oczekiwaliśmy w teorii .

Podsumowanie, czyli parę słów na koniec

Jak wspomniałem powyżej, planując wdrożenie Hot Spare spotkać się musi księgowy z informatykiem aby rozważyć, z jednej strony dodatkowy koszt, zaś z drugiej strony, większe bezpieczeństwo.
Jeżeli zapadnie decyzja o dołożeniu zapasowych dysków, to sam proces - jak przedstawiono powyżej - nie należy do zbyt skomplikowanych i można go wykonać przed utworzeniem macierzy RAID (jak pokazano na przykładzie 1513+) lub obok już istniejącej (jak w przypadku serwera Dell R720xd i IBM xSeries 235).

Jeżeli coś jest niejasne, albo wszystko jest jasne :) to czekam na komentarze z naganą / pochwałą :)

13 komentarzy:

  1. Bardzo dobry wpis, fajnie, że można przeczytać jeszcze coś ciekawego w ojczystym języku, pozdrawiam autora.

    OdpowiedzUsuń
    Odpowiedzi
    1. Witaj Anonimowy :)
      Ciesze się, że tekst Ci się spodobał :)

      Usuń
  2. Witam. interesuje mnie tematyka hot spare.Prosze o pomoc.Mam Qnap 8 zatokowy ts-853a. chciałbym utworzyć Raid5 z 4dysków 8tb. Hot spare dodać później, jak pozwolą finanse. Czy jest to możliwe? Wyczytałem w pomocy że do konfiguracji raid powyżej 16 tb nie można dodawać dysków.
    Dlatego teraz utworzyć możliwie dużą pojemność 4 x 8 = 32 lub 24 a póżniej uzupełnić o hot spare?
    Prosze o pomoc

    OdpowiedzUsuń
    Odpowiedzi
    1. Cześć Anonimowy ;)
      Mam nadzieję, że dobrze Cię rozumiem, a w związku z tym poprawnie udzielę odpowiedzi.
      Hot Spare nie ma żadnego związku z rozmiarem macierzy i jej rodzajem. Możesz utworzyć RAID5 z 16TB, 32TB lub w jeszcze innej konfiguracji na jaką tylko macierz Ci zezwoli. Hot Spare jest to dysk zapasowy, który zostanie wykorzystany dopiero wtedy gdy jeden z używanych w Raidzie padnie. On nie ma żadnego związku z rodzajem macierzy, którą utworzysz. W gruncie rzeczy jest on dla macierzy tak jakby niewidoczny dopóki pozostałe dyski są sprawne.

      Ufff .. mam nadzieję, że coś z tego zrozumiałeś :)

      Pozdrawiam
      Daniel.

      Usuń
  3. witam ponownie.dziękuje za szybką odpowiedź. Czyli tworząc raid 5 z 4x8tb otrzymuje 24 użytkowej powierzchni + 8 (czwarty dysk )jako spare.
    I później w każdej chwili moge dodać piąty dysk 8tb jako dodatkowy hot spare.
    z góry dziękuje za pomoc.
    pozdrowienia
    AS

    OdpowiedzUsuń
    Odpowiedzi
    1. Tak dokładnie. Trzy dyski po 8TB będą w Raidzie, więc powierzchni użytkowej będziesz mieć 3 x 8TB = 24TB. Czwarty dysk będzie jako Hot Spare, czyli jako zapasowy i on nie będzie chyba, że padnie któryś dysk w Raidzie, wtedy on przejmie jego rolę.

      Nie znam macierzy o której piszesz, ale w rozwiązaniach serwerowych z którymi miałem do czynienia można było dodawać tyle dysków zapasowych ile miałem wolnych zatok. Ale mówię z góry, nie wiem czy tak samo jest w Twojej macierzy. Może tam są jakieś ograniczenia o których nie wiem.

      Pozdrawiam
      Daniel

      Usuń
  4. witam ponownie.
    czyli spare mamy załatwione. Interesuje mnie dlaczego , pewnie tak jest, przy raid-zie np 5 przy pojemności powyzej 16 tb nie można dodać twardego dysku aby zwiększyć pojemnośc raid tylko trzeba całą konfiguracje od nowa postawić. Tak jest opisane w pomocy Qnap i dotyczy wszystkich nasów.
    dziękuje za pomoc
    pozdrowienia
    AS

    OdpowiedzUsuń
  5. Witam, dzięki temu opisowi udało mi się stworzyć coś podobnego. Świetny opis!
    Testuję IBM System x3550 M5 z ServeRAID M5210 01:00:00. I prawie wszystko jest jak w opisie, GlobalHotSpare zadziałał jak należy, ale... TYLKO 1 RAZ! Po wymianie dysku nie mam już żadnej możliwości, nawet po zrestartowaniu serwera, dodać kolejnego GlobalHotSpare. No chyba że na nowo skasuję i utworzę RAID. Testowałem na RAID5 i RAID1. Mam do dyskozycji 8 dysków.
    Pytanie: czy to tak właśnie działa? Czy jest to opcja jednorazowa? (GlobalHotSpare).
    Niestety serwer posiadam do testów jeszcze tydzień, więc w razie pytań, wątpliwości - trzeba się spieszyć. Później już nie będę miał na czym sprawdzić.
    Pozdrawiam
    MM

    OdpowiedzUsuń
    Odpowiedzi
    1. Cześć Anonimowy :)
      Nie wiem czy dokładnie Cię zrozumiałem, ale postaram się udzielić odpowiedzi.
      Już dawno przygotowywałem powyższy tekst, ale z tego co pamiętam, to zasada Hot Spare polega na tym, że gdy dysk produkcyjny padnie, to zapasowy jest brany do puli produkcyjnej.
      Wtedy wyciągasz dysk uszkodzony i w jego miejsce wkładasz nowy, który możesz ustawić jako Hot Spare.

      Mam nadzieję, że o to Ci chodziło :)

      Pozdrawiam serdecznie
      Daniel

      Usuń
    2. Cześć, dzięki za szybką reakcję.
      No tak właśnie zrobiłem - po wyjęciu jednego z 3 dysków RAID5 (nazwijmy je A, B i C a HotSpare X) system właściwie od razu przeszedł na dysk HotSpare. Wyjąłem dysk B. System podjął pracę z dyskiem X. Zrobił rebuilda i działa.
      Włożyłem dysk B, kazałem go zrobić jako (Foreign) Unconfigured Good bo był "Unconfigured Bad" i... koniec. Żadnej innej opcji nie ma, nie można go zrobić "Assign Hot Spare" - funkcja jest niedostępna.
      Sytuacja unormowała się i mam pełny RAID5 (Online) oraz wolny dysk "B" (Foreign) Unconfigured Good. Mogę z dyskiem "B" zrobić jedynie "Mark drive as prepare for removal".
      Nie wiem, czy gdzieś nie ma ukrytej funkcji? IBM przysłał nam do testów najnowszy serwer z najnowszym kontrolerem i upgradem do 2016r.
      Oczywiście działam z poziomu IMM II, ale przeglądając setup serwera, to też nie zauważyłem dodatkowych funkcji. No ale miało być wszystko on-line, a nie poprzez wyłączanie serwera.
      Pozdrawiam
      MM

      Usuń
  6. Czyli ustawiony na początku Hot Spare zadziałał prawidłowo.
    Nie rozumiem natomiast sytuacji po włożeniu sprawnego dysku. W tym momencie powinieneś mieć możliwość ustawienia go jako Hot Spare...

    Wiem, że napisałeś, że ustawiłeś sprawny dysk jako obcy (foreign), bo nie mogłeś nic innego, ale ja bym jednak tutaj szukał. Może gdzieś jest jakaś ukryta opcja.
    Wg mnie ustawienie jako obcy zamiata sprawę.
    Chociaż w sumie co ten "obcy" oznacza? Chyba nie spotkałem się wcześniej z takim oznaczeniem...

    OdpowiedzUsuń
    Odpowiedzi
    1. Tak, wg mnie diabeł tkwi w tym oznaczeniu Foreign. Niestety, to mój pierwszy serwer IBM i testuję go dopiero kilka dni. Wcześniej używałem Supermicro + RAID Adaptec.
      Jak spod setupu usunąłem konfigurację Foreign, to i dysk stał się dostępny do dalszego użytku.
      Dzięki za pomoc, muszę dokładniej poczytać o tej opcji, ale kupujemy serwery IBM dopiero w marcu 2017r. Dam znać, jeżeli coś się dowiem.
      Pozdrawiam
      MM

      Usuń
    2. Super :) Będę bardzo wdzięczny za dodatkowe informacje :)

      Pozdrawiam serdecznie
      Daniel

      Usuń

Bardzo proszę o zachowanie netykiety.