Serwer z systemem Linux i programową macierzą RAID (mdadm) udostępnia jednocześnie kilka urządzeń blokowych: fizyczne dyski członkowskie (/dev/sda, /dev/sdb), złożoną macierz (/dev/md0) oraz - jeśli jest partycjonowana - partycje na macierzy (/dev/md0p1, /dev/md0p2). Wybór właściwego źródła kopii zapasowej decyduje o tym, czy kopie będą spójne, oszczędne przestrzeniowo i użyteczne w Bare Metal Recovery.
Ten przewodnik wyjaśnia, które urządzenie wybrać, dlaczego panel blokuje niewłaściwe oraz jak planować wymiarowanie i przywracanie dla poszczególnych poziomów RAID.
1. Zabezpieczaj złożoną macierz (/dev/mdX)
Zasada: jako źródło kopii zapasowej zawsze wybieraj złożony wolumin RAID (np. /dev/md0).
W panelu StateWarden dyski fizyczne należące do macierzy są oznaczane jako członkowie RAID, a akcje kopii zapasowych na nich są wyłączone. Złożony wolumin /dev/mdX jest wymieniony jako poprawny cel kopii zapasowej, a jego widok szczegółów pokazuje strukturę macierzy, w tym poziom RAID i liczbę dysków członkowskich (na przykład wolumin RAID 5 z 3 członkami).
Kopia zapasowa złożonego woluminu zapewnia:
- Spójność: kopia odczytuje jedno urządzenie logiczne, więc każdy blok pochodzi z tego samego punktu w czasie.
- Gotowość do BMR: kopia całego urządzenia
/dev/md0przechwytuje tablicę partycji (GPT/MBR) i sektor rozruchowy razem z danymi. Po przywróceniu partycje (p1,p2, ...) pojawiają się automatycznie i system jest gotowy do rozruchu. - Wydajność CBT: Changed Block Tracking działa na pojedynczym urządzeniu logicznym (zobacz sekcję 4).
- Prostotę: jedna polityka kopii zapasowych na macierz zamiast jednej na partycję.
Struktura macierzy (poziom RAID, liczba członków, rozmiar chunka) jest zapisywana jako metadane razem z kopią zapasową, dzięki czemu środowisko odzyskiwania wie, jak odtworzyć kontener na nowym sprzęcie.
2. Dlaczego dyski członkowskie są wykluczone
Tworzenie kopii zapasowych poszczególnych dysków członkowskich (/dev/sda, /dev/sdb) działającej macierzy jest zablokowane, ponieważ jest jednocześnie marnotrawstwem i zagrożeniem:
- Zduplikowane dane: w RAID 1 i RAID 10 każda gałąź lustra przechowuje identyczną kopię danych. Kopia zapasowa członków zapisywałaby te same dane raz na każde lustro, nie zwiększając ochrony. W RAID 5 i RAID 6 zawartość członków obejmuje fragmenty parzystości, które poza macierzą są bezwartościowe.
- Niespójny stan macierzy: każdy członek byłby odczytywany w innym momencie. Przywrócenie członków przechwyconych w odstępie minut składa rozdesynchronizowaną macierz i może trwale uszkodzić system plików.
- Brak samodzielnej wartości: pojedynczego dysku członkowskiego nie da się przywrócić do użytecznego systemu plików. Dane mają sens wyłącznie jako złożony wolumin logiczny.
Dlatego panel wyszarza dyski członkowskie RAID na potrzeby kopii zapasowych: złożony wolumin jest jedynym celem, który daje możliwą do przywrócenia kopię.
3. Poziomy RAID i wymiarowanie kopii zapasowych
Limity przestrzeni i okna wykonywania kopii planuj względem rozmiaru woluminu logicznego, a nie sumy dysków fizycznych. Te dwie liczby różnią się na każdym poziomie poza RAID 0:
| Poziom RAID | Minimalna liczba dysków | Rozmiar logiczny (użyteczny) | Suma surowych członków |
|---|---|---|---|
| RAID 0 | 2 | N x S | N x S |
| RAID 1 | 2 | S | N x S |
| RAID 5 | 3 | (N-1) x S | N x S |
| RAID 6 | 4 | (N-2) x S | N x S |
| RAID 10 | 4 (parzyście) | (N/2) x S | N x S |
(N = liczba dysków członkowskich, S = rozmiar jednego członka.)
Uwagi dotyczące poszczególnych poziomów:
- RAID 0: rozmiar logiczny jest równy sumie surowych członków, ale nie ma redundancji. Awaria jednego członka niszczy macierz, więc kopia zapasowa jest jedyną ochroną. Utrzymuj rygorystyczną retencję i regularnie testuj przywracanie.
- RAID 1: wolumin logiczny ma rozmiar jednego dysku. Wymiarowanie planu kopii na podstawie dysków fizycznych przeszacowałoby zapotrzebowanie dwukrotnie.
- RAID 5 / RAID 6: pojemność jednego lub dwóch członków to parzystość. Kopia zapasowa obejmuje wyłącznie wolumin logiczny; parzystość nigdy nie jest zabezpieczana, ponieważ jest odbudowywana automatycznie przy ponownym utworzeniu macierzy.
- RAID 10: wolumin logiczny stanowi połowę sumy surowych członków.
Rzeczywisty zajmowany rozmiar jest dodatkowo redukowany przez deduplikację. Szacuj oczekiwania na podstawie danych znajdujących się na woluminie logicznym i pozwól, aby deduplikacja działała na twoją korzyść.
A co z kopią zapasową pojedynczych partycji (/dev/md0p1)?
Można zabezpieczać pojedynczą partycję na macierzy zamiast całego urządzenia, ale to opcja zaawansowana. Kopia zapasowa partycji zawiera wyłącznie dane wewnątrz tej partycji - nie rejestruje, gdzie partycja zaczyna się i kończy na dysku. Po wymianie dysku musisz ręcznie odtworzyć dokładny układ partycji (fdisk/gdisk) przed przywróceniem. Dla ochrony całego systemu zabezpieczaj całe urządzenie /dev/md0.
4. Smart CBT na woluminach RAID
Smart CBT (Changed Block Tracking) działa na złożonych woluminach md tak samo jak na zwykłych dyskach: aktywujesz go dla każdego woluminu osobno przełącznikiem CBT w zakładce Dyski i kopie urządzenia, pierwsza kopia po aktywacji wykonuje się jako pełny skan budujący bazę odniesienia, a kolejne kopie przetwarzają wyłącznie zmienione bloki.
Śledzenie jednego logicznego urządzenia /dev/mdX jest znacznie wydajniejsze niż śledzenie kilku partycji lub dysków członkowskich osobno, więc wolumin macierzy z aktywnym CBT zapewnia krótkie okna kopii przyrostowych nawet na wieloterabajtowych macierzach.
Należy pamiętać, że wyłączenie CBT niszczy metadane śledzenia i kolejna kopia zapasowa wraca do pełnego skanu w celu odbudowania bazy. Kroki włączania, zachowanie awaryjne i rozwiązywanie problemów opisuje artykuł Smart CBT: przyrostowe kopie zapasowe.
5. Woluminy zaszyfrowane na RAID (LUKS na md)
Typowy wzmacniany układ umieszcza LUKS na wierzchu RAID: partycja crypto_LUKS znajduje się na złożonym urządzeniu /dev/mdX. Panel oznacza takie woluminy znacznikiem szyfrowania.
StateWarden zabezpiecza woluminy zaszyfrowane jako surowe zaszyfrowane kontenery na poziomie bloków, co ma dwie praktyczne konsekwencje w środowisku RAID:
- Brak deduplikacji i efektywnego CBT: zaszyfrowane bloki mają wysoką entropię, więc każda kopia zapasowa zaszyfrowanego woluminu wykonuje się jako syntetyczna pełna. Planuj okna kopii i limity przestrzeni pod pełny rozmiar logiczny przy każdym wykonaniu.
- Przywracanie zwraca wolumin nadal zaszyfrowany: nagłówek LUKS i dane wracają dokładnie tak, jak wyglądały w chwili wykonania kopii. Odblokuj przywrócony wolumin oryginalnym hasłem.
Pełną procedurę, w tym zagadnienia związane ze zmianą sprzętu, dokumentuje artykuł Przewodnik przywracania: zaszyfrowane dyski (BitLocker i LUKS).
6. Przywracanie na cele RAID
Standardowe przywracanie: najpierw złóż macierz
Docelowa macierz musi istnieć i być złożona przed rozpoczęciem przywracania. Po wybraniu w panelu kopii zapasowej woluminu RAID ostrzeżenie przypomina, że celem przywracania musi być wstępnie złożona macierz RAID o równym lub większym rozmiarze. W praktyce:
- Utwórz i złóż docelową macierz za pomocą
mdadm, tak aby pojawiła się jako/dev/mdX. - Upewnij się, że złożony wolumin zapewnia co najmniej pojemność oryginalnego woluminu logicznego.
- Jako cel przywracania wybierz złożony wolumin - nigdy pojedynczy dysk członkowski.
Bare Metal Recovery na RAID
W przypadku przywracania całego systemu na nowy sprzęt uruchom maszynę z Recovery ISO zgodnie z opisem w artykule Bare Metal Recovery: przewodnik krok po kroku. Dla kopii zapasowych RAID środowisko odzyskiwania odczytuje strukturę macierzy zapisaną z kopią i samodzielnie zajmuje się kontenerem:
- Mapujesz oryginalne dyski członkowskie na nowe dyski fizyczne podłączone do maszyny.
- Macierz zostaje odtworzona na nowych dyskach z oryginalnym poziomem RAID, liczbą członków i rozmiarem chunka.
- Dane kopii zapasowej są strumieniowane do złożonej macierzy z pominięciem nieprzydzielonej przestrzeni.
- Stosowane są poprawki bootloadera i EFI, aby przywrócony system uruchamiał się na nowym sprzęcie.
Ostrzeżenia:
- BMR jest destrukcyjne: wszystkie istniejące dane i tablice partycji na wybranych dyskach docelowych zostaną nieodwracalnie nadpisane.
- Zapewnij co najmniej tyle dysków fizycznych o wystarczającym rozmiarze, ilu członków miała oryginalna macierz.
- Nie przerywaj procesu między utworzeniem macierzy a zakończeniem strumieniowania danych; częściowo zapisana macierz nie jest rozruchowa.
7. Lista kontrolna
| Cel | Źródło kopii zapasowej | Ocena |
|---|---|---|
| Przywrócenie całego serwera po awarii | /dev/md0 (złożona macierz) | Zalecane |
| Oszczędność przestrzeni kopii zapasowych | /dev/md0 | Deduplikacja działa na woluminie logicznym |
| Ochrona tylko jednej partycji z danymi | /dev/md0p1 | Zaawansowane; na gołym sprzęcie wymaga ręcznego odtworzenia tablicy partycji |
| Kopia zapasowa fizycznego dysku członkowskiego | /dev/sda | Wyłączone dla członków RAID; niespójne i redundantne |
Jeśli twój stos przestrzeni dyskowej wykorzystuje również LVM - na wierzchu RAID lub na zwykłych dyskach - obowiązuje ta sama zasada priorytetu warstwy logicznej. Reguły specyficzne dla LVM opisuje artykuł Kopie zapasowe w środowisku LVM: najlepsze praktyki.
StateWarden: Resilience Engineered.