Jak rozwinąć macierz RAID10 za pomocą mdadm?
Oczywiście musiałbym dodawać 2 dyski na raz, czy może to być 4 dyski?
Mam wrażenie, że to zły pomysł.
A może po prostu mądrzej byłoby wybrać RAID5?
Jak rozwinąć macierz RAID10 za pomocą mdadm?
Oczywiście musiałbym dodawać 2 dyski na raz, czy może to być 4 dyski?
Mam wrażenie, że to zły pomysł.
A może po prostu mądrzej byłoby wybrać RAID5?
Odpowiedzi:
Ostatnim razem, gdy sprawdzałem, mdadm nie pozwoli ci - powiększ raid10. Przejrzałem teraz stronę podręcznika mdadm i nadal mówi: Obecnie obsługiwane opcje wzrostu, w tym zmiana aktywnego rozmiaru urządzeń składowych i zmiana liczby aktywnych urządzeń w poziomach RAID 1/4/5/6, zmiana poziomu RAID między 1, 5, i 6, zmieniając rozmiar i układ porcji dla RAID5 i RAID5, a także dodając lub usuwając bitmapę przeznaczoną do zapisu.
Aby rozwijać RAID 10, potrzebujesz mdadm w wersji min. 3.3 i wersja jądra min 3.5. Potrzebujesz także parzystej liczby dysków - niesparowane mogą działać tylko jako zapasowe lub ostatecznie przekształcić się w tryb degradacji (nie testowany).
Oto przykład powiększenia RAID 10 z 4 dysków do 6 za pomocą mdadm 3.3-2ubuntu2 @ Linux 4.2.0-10-generic. Testowany z danymi ext4, system plików został odmontowany, ext4 został rozszerzony po tym, jak RAID powiększył się bez żadnego problemu.
~$ cat /proc/mdstat
md126 : active raid10 sdd1[1] sdc1[0] sdf1[3] sde1[2]
976428032 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
bitmap: 0/8 pages [0KB], 65536KB chunk
~$ sudo mdadm /dev/md126 --add /dev/sdi1 /dev/sdj1
mdadm: added /dev/sdi1
mdadm: added /dev/sdj1
~$ sudo mdadm --grow /dev/md126 --raid-devices=6
~$ cat /proc/mdstat
md126 : active raid10 sdj1[5] sdi1[4] sdd1[1] sdc1[0] sdf1[3] sde1[2]
1464642048 blocks super 1.2 512K chunks 2 near-copies [6/6] [UUUUUU]
bitmap: 0/6 pages [0KB], 131072KB chunk
Zdaję sobie sprawę, że ma ponad rok, ale ktoś może uznać to za pomocne ...
Możesz rozwinąć tablicę RAID 10, ale nie tak, jak tego oczekujesz. Będziesz musiał zagnieździć wiele poziomów nalotu. Można to zrobić za pomocą mdadm na 2 dyskach w RAID 10, które całkiem niezłą wydajność zależą od układu, ale trzeba by było zrobić wiele tablic RAID 10 z 2 dyskami, a następnie dołączyć je do węzła logicznego. Następnie, aby rozwinąć, dodaj jeszcze kilka i nałóż na to paski. Jeśli taki jest twój przypadek użycia (trzeba dużo rozszerzyć), rozsądnie byłoby użyć tablicy parzystości, którą można rozwijać.
Takie są ograniczenia związane z raidem 10 przy jednoczesnym utrzymaniu lepszej wydajności odczytu / zapisu. I wyjaśnienie, rajd 5/6 absolutnie nie „Ogólnie zapewnia lepszą wydajność zapisu ...”. Raid 5/6 ma swoje zalety / wady, podobnie jak raid 10, ale wydajność zapisu nie jest zaletą dla raidu 5/6.
Ponadto nie określiłeś rozmiaru dysków, ale uważaj na raid 5 na nowych dużych dyskach. Mimo że zachowujesz ostrożność, możesz odzyskać dane po nieodwracalnym błędzie odczytu, ryzykujesz przestoje i możliwość braku możliwości odzyskania.
- edytuj, aby dodać informacje - Użyj narzędzi takich jak hdparm (hdparm -i) i lshw, aby uzyskać numery seryjne wraz z nazwą urządzenia (/ dev / sda), gdy wystąpi awaria. Zapewni to usunięcie prawidłowego urządzenia podczas wymiany. Strzałka w górę komentarza Travisa, ponieważ jest on bardzo poprawny i ma ładny układ, ale jak zwykle ważą zalety i wady każdego rozwiązania.
Kilka świetnych wiadomości z ogłoszenia wydania mdadm 3.3:
To ważna nowa wersja, więc nie zdziw się, jeśli pojawi się kilka problemów ...
Niektóre najważniejsze to:
...
- Macierze RAID10 mogą być przekształcane w celu zmiany liczby urządzeń , zmiany wielkości porcji lub zmiany układu między „bliskim” a „przesunięciem”. To zawsze zmieni przesunięcie danych i zakończy się niepowodzeniem, jeśli nie będzie miejsca na przesunięcie przesunięcia danych.
...
Zgodnie z tą odpowiedzią na U&L, będziesz potrzebował przynajmniej Linuksa 3.5.
Wiem, że to więcej pracy i może być mylące, ale zawsze możesz rozłożyć wiele lusterek.
Na przykład właśnie skonfigurowałem macierz RAID z 4 dyskami 10, a ta ostatnia chce dodać kolejną macierz RAID z 4 dyskami. Wystarczy użyć mdadm, aby utworzyć nową macierz RAID 10 na nowych dyskach. Możesz następnie utworzyć inną tablicę RAID 0, korzystając z dwóch istniejących urządzeń RAID. Chciałbym jednak użyć funkcji lvm do utworzenia paska, utrzymując w ten sposób konfiguracje mdadm i urządzenia / dev / md w łatwym do zrozumienia stanie. Każda z metod zadziałałaby i prawdopodobnie jest ich więcej, ale to właśnie mogłem zrobić z czubka głowy.
Nie można wyhodować macierzy RAID10, to prawda. Ale można rozpocząć w dwa napędy (kosztem braku redundancji w tym momencie), a później, dodać dwa więcej. Użyłem tej metody, aby przełączyć się z macierzy RAID5 z czterema dyskami na RAID10 z czterema dyskami.
Zdegradowałem RAID5 i usunąłem jeden dysk z macierzy. To dało mi dwa dyski, z których można swobodnie korzystać. Następnie stworzyłem macierz RAID10 z czymś w rodzaju „mdadm --create --level 10 / dev / md0 / dev / sda1 missing / dev / sdc1 missing”. To wystarczyło, aby uruchomić tablicę.
Kiedy przeniosłem dane ze zdegradowanej macierzy RAID5 do macierzy RAID10, dodałem dwa dyski RAID5 do macierzy RAID10 i dodałem dodatkowy jako zapasowy.
Prawdopodobnie dobrym pomysłem jest, jeśli ktoś, kto jest bardziej kompetentny niż ja, może mówić o jakimkolwiek wpływie na wydajność. Ale głównym powodem mojego postu jest pokazanie, że można zacząć od RAID10 i dwóch dysków.
Uwaga: przeczytaj poniższy post na forum, który pyta i odpowiada, czy kolejność dysków w mdadm ma znaczenie .