Mam programową macierz RAID5 (Linux md) na 4 dyskach.
Chciałbym wymienić jeden z dysków na nowy, nie wprowadzając tablicy w stan zdegradowany i, jeśli to możliwe, w trybie online. Jak to by było możliwe?
Jest to ważne, ponieważ nie chcę:
- zaryzykuj nacisk na inne dyski, aby podczas awarii można było zawiesić,
- ryzykuję, że jestem w stanie „bez parytetu”, więc nie mam siatki bezpieczeństwa przez pewien czas.
Przypuszczam, że robienie tego w trybie online to zbyt wiele pytań i powinienem po prostu skopiować ( dd
) dane starego dysku na nowy offline, a następnie je wymienić, ale myślę, że jest to teoretycznie możliwe ...
Trochę kontekstu : wszystkie dyski wirują prawie nieprzerwanie od ponad 5,5 lat. W tej chwili nadal działają idealnie i wszystkie przechodzą (długi) autotest SMART. Mam jednak powody, by sądzić, że jeden z tych 4 dysków nie wytrzyma znacznie dłużej (domniemana awaria predykcyjna).
źródło
mdadm --add
jest nadal potrzebny, zanim--replace
zadziała. (mdadm
3.3, Ubuntu 15.10). Jeśli zrobisz to--add
później--replace
, kopiowanie rozpocznie się natychmiast po dodaniu części zapasowej. (Urządzenie pozostanie oznaczone jako „chce wymiany”).Może to być możliwe spełnienie wymagań
Ale nawet jeśli poniższe mogą zadziałać, prawdopodobnie nie znajdziesz tego rodzaju rekomendacji „w książkach” ...
Pomysł:
mdadm --manage /dev/raid5 --fail /dev/OLD
mdadm --build /dev/md42 --level=mirror --raid-devices=2 /dev/OLD /dev/NEW
mdadm --manage /dev/raid5 --re-add /dev/md42
Co powinno :-) się stać:
Obserwuj postęp synchronizacji (
cat /proc/mdstat
lubmdadm --monitor
). Po zakończeniu synchronizacji wyjmij RAID-1 z RAID-5, zatrzymaj RAID-1, ponownie dodaj / dev / NEW do RAID-5. Jeśli wszystko jest w porządku, zastąp superbloki mdraid na / dev / OLD, aby uniknąć problemów:mdadm --zero-superblock
Ostrzeżenie: szybka synchronizacja RAID-5 może działać tylko w przypadku korzystania z mapy bitowej. Jeśli go nie masz, lepiej najpierw przetestuj manekin RAID-5 (bez mapy bitowej). Lub dodaj jeden. Powinno być możliwe przynajmniej dodanie zewnętrznego. W przeciwnym razie może być konieczne zatrzymanie RAID-5 przed zmianą urządzeń. Jeśli jednak uruchomisz system z RAID-5, stanie się to nieco skomplikowane.
źródło
Jeśli nie masz nic przeciwko uruchamianiu RAID-6 (2 dyski parzystości zamiast 1) i jeśli korzystasz z mdadmin 3.1.x lub nowszego, możesz przekonwertować macierz RAID-5 na RAID-6, aby dodać dodatkowy dysk parzystości . Spowoduje to jednak obciążenie tablicy podczas przebudowy. Ma to również wpływ na wydajność, ponieważ istnieje więcej dysków parzystych do aktualizacji podczas zapisu.
Ale jeśli zakończy się powodzeniem, możesz utrzymać uszkodzony dysk na miejscu, a gdy ostatecznie się nie powiedzie, nadal masz ochronę parzystości dla tablicy. Myślę, że możesz przekonwertować macierz z RAID6 z powrotem na RAID5, jeśli nie będziesz czekać, aby zachować ją jako RAID6.
Nie znam internetowego sposobu na utrzymanie macierzy jako RAID-5 i zastąpienie dysku bez przełączania macierzy w tryb awaryjny, ponieważ myślę, że musisz oznaczyć ją jako nieudaną. Sposobem na to może być Twój pomysł na kopię dd.
źródło