Mam domowy serwer multimediów działający w systemie openSUSE 12.2. Używam ośmiu dysków 2 TB w konfiguracji RAID-10. Celowo kupiłem dwa różne typy dysków: cztery Seagate Barracuda Green i cztery Western Digital Red. Moim celem jest takie skonfigurowanie macierzy RAID, aby każda dublowana para w macierzy składała się z różnych dysków (tj. Jednego dysku Seagate i jednego dysku WD). Partycjoner YaST2 niestety nie dał mi tego poziomu wyboru w strukturze tablicy, więc teraz próbuję dowiedzieć się, jak wygląda domyślna struktura RAID10.
Wiem, co następuje:
- sdc, sdd, sde i sdf to wszystkie dyski WD
- SDD, SDH, SDI i SDJ to dyski Seagate
Podczas tworzenia macierzy RAID wybrałem domyślny układ „n2”. Domyślam się na podstawie informacji z tych dwóch źródeł, że sąsiednie dyski są dublowane (tj. Sdc == sdd, sde == sdf itp.), Ale chcę wiedzieć na pewno:
- http://en.wikipedia.org/wiki/Non-standard_RAID_levels#Linux_MD_RAID_10
- https://serverfault.com/questions/200725/mirrored-and-stripped-hd-drives-in-raid10
Oto wynik działania polecenia „mdadm --detail / dev / md0”:
/dev/md0: Version : 1.0 Creation Time : Sat Mar 16 12:55:11 2013 Raid Level : raid10 Array Size : 7814045696 (7452.05 GiB 8001.58 GB) Used Dev Size : 1953511424 (1863.01 GiB 2000.40 GB) Raid Devices : 8 Total Devices : 8 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sat Mar 16 13:09:37 2013 State : active, resyncing Active Devices : 8 Working Devices : 8 Failed Devices : 0 Spare Devices : 0 Layout : near=2 Chunk Size : 2048K Resync Status : 1% complete Name : aldaris:0 (local to host aldaris) UUID : c6cc3943:97394500:b77d44cd:f02ed876 Events : 149 Number Major Minor RaidDevice State 0 8 33 0 active sync /dev/sdc1 1 8 49 1 active sync /dev/sdd1 2 8 65 2 active sync /dev/sde1 3 8 81 3 active sync /dev/sdf1 4 8 97 4 active sync /dev/sdg1 5 8 113 5 active sync /dev/sdh1 6 8 129 6 active sync /dev/sdi1 7 8 145 7 active sync /dev/sdj1
A oto zawartość / proc / mdstat:
Personalities : [raid10] md0 : active raid10 sdj1[7] sdi1[6] sdh1[5] sdg1[4] sdf1[3] sde1[2] sdd1[1] sdc1[0]
7814045696 blocks super 1.0 2048K chunks 2 near-copies [8/8] [UUUUUUUU]
[>....................] resync = 4.8% (375163456/7814045696) finish=1206.5min speed=102751K/sec
bitmap: 57/59 pages [228KB], 65536KB chunk
unused devices: <none>
Więc moje pytania to:
- Jak rozpoznać, które dyski są zwierciadłami?
- Czy istnieje sposób, aby to zmienić, czy powinienem po prostu zamienić przewody (ponieważ spowoduje to zamianę liter dysków), a następnie odbudować macierz RAID?
Z góry dziękuję.
Uwaga styczna: dla każdego, kto chce poznać moje uzasadnienie: napędy tego samego modelu i partii, działające przy podobnych obciążeniach użytkowych, czasie pracy i temperaturze mają niewielkie zmiany systemowe, a różnice w czasie do awarii między napędami będą przede wszystkim napędzane przez losowe zmiany w procesie produkcyjnym. Zwiększa to ryzyko śmierci wielu dysków jednocześnie. Kupując dyski nie tylko różnych partii, ale całkowicie różnych producentów, wprowadzam systematyczne zmiany w mojej macierzy, wpływając w ten sposób na to, które dyski ulegną awarii w podobnym czasie.
RaidDevice
kolumnę. Może to być tak proste jak (0,1), (2,3), (4,5), (6,7). To sprawiłoby, że zakładam, że musisz ustawić RaidDevice w kolejce jak WD / Sea / WD / Sea / itp ... Ale nie jestem w 100% pewien.Odpowiedzi:
Najnowsze wersje
mdadm
pokazują to prawo w szczegółach tablicy. Przykład zmdadm v3.3 - 3rd September 2013
Zwróć uwagę na oznaczenie
set-A
lubset-B
. W powyższym przypadku,sdd
asdb
może nie razem bez utraty danych. Możliwe, że dane te nie są dostępne podczas przebudowywania tablicy.źródło
Miałem ten sam problem i po googlowaniu przez jakiś czas nie znalazłem wiarygodnej odpowiedzi. Po przemyśleniu doszedłem do wniosku, że mirrory mają te same dane, więc możemy porównać ich część.
UWAGA: UWAŻAJ, JEŚLI MASZ PONAD 2 NAPĘDY Z TYM SAMYM KONTROLĄ, PRAWDOPODOBNIE PORÓWNASZ PUSTĄ PRZESTRZEŃ, WYBIERZ KOLEJNĄ PRZESUNIĘCIE (opcja pomijania).
Za pomocą tych kilku poleceń możesz to rozgryźć:
Spowoduje to wyświetlenie czegoś takiego:
Teraz wiemy, że sda / sdb to jedno lustro, a sdc / sdd to drugie. Jeden z nich musi zostać, aby uniknąć utraty danych.
Polecenie „dd” odczytuje jeden raz (liczba = 1) jeden megabajt (bs = 1M) z przesunięciem o jeden megabajt od początku dysku (pomijanie = 1M). Nie pomijaj = 0, ponieważ początek dysku zawiera inne informacje. Dane zwykle zaczynają się po 1 MB.
źródło
dd if=/dev/$disk skip=1M bs=1M count=1
nie działało dla mnie.dd (coreutils) 8.23
z Debian 8 (Jessie) nie obsługujeskip
jednostki. Zamiast tego użyłemskip=1
gdzie1
jest względnebs
. Być może literówka?d41d8cd98f00b204e9800998ecf8427e
Twojegodd
połączenia nie powiedzie się. To jest skrót pustego ciągu :-)Myślę, że mówisz o prawdziwej macierzy RAID 10 (dublowanie w paski 1 + 0)
1. Utwórz 4 tablice raid1:
W tej chwili masz 4 tablice raid 1 z 2 TB miejsca na każdym,
2. Zbierzmy je!
Opcje --run są przydatne, ponieważ niektóre komponenty są aktywne w innej tablicy
3. Dostosuj plik mdadm.conf
Może być konieczne (w zależności od konfiguracji) dostosowanie tego pliku, aby odzwierciedlić zmiany dotyczące naszej nowej tablicy (/ dev / md4).
4. Ciesz się ... Twój nowy zestaw DIY raid10!
źródło
Zawsze możesz sprawdzić, które są kopiami lustrzanymi, porównując dane, na przykład:
(Jeśli nie otrzymasz żadnych wyników, może trzeba zwiększyć maskowania = , jak nie jesteś pomijając RAID superblocksl, a jeśli masz taką samą md5 dla więcej niż 2 dyski, może trzeba zwiększyć liczbę = , jak ty prawdopodobnie czytają i m5summing zera - aby uniknąć sytuacji, w której najpierw należy umieścić dane w nalocie, w przeciwnym razie mogą być pełne zer)
Jeśli chodzi o zamianę przewodów, nie musisz tego robić - mdadm powinien utworzyć nalot za pomocą urządzeń określonych w wierszu poleceń w mdadm - Utwórz , więc po prostu podaj napędy w innej kolejności w wierszu poleceń.
źródło
Uruchom „mdadm --examine device” na każdym urządzeniu składowym (tj. / Dev / sda1, / dev / sdb1 itp.). Informacje tam zawarte powinny pomóc ci określić, które komponenty są lustrzanymi odbiciami.
źródło