Kompleksowe rozwiązania dla biznesu

Odtwarzanie macierzy RAID po usterce

Odtwarzanie macierzy RAID po usterce

 

RAID (Redundant Array of Independent Disks) sprzętowy lub programowy chroni nas przed utratą danych oraz unieruchomieniem systemu w momencie gdy jeden z dysków ulegnie uszkodzeniu.W naszym serwerze jest akurat RAID10 programowy składający się z 4 dysków. Uszkodzenie jednego dysku nie wpływa na pracę systemu tak więc jedyny ból jaki istnieje to na czas fizycznej wymiany dysku należy po prostu wyłączyć serwer. Wymiana trwa około minuty, no i start systemu…. Aby podłączyć wymieniony dysk  do systemu należy wykonać poniższe kroki.

Zakładamy na nowym dysku partycje takie jak w uszkodzonym dysku… U nas akurat uszkodzonym dyskiem był /dev/sdb – aby nie zakładać na „piechotę” partycji użyję narzędzia sfdisk (partition table manipulator for Linux) z opcją -d (dump)

Jeśli pojawi się błąd z założeniem partycji to należy użyć dodatkowo opcji –force (sfdisk -d /dev/sda | sfdisk –force /dev/sdb). A jeżeli błąd jest spowodowany tablicą partycji GPT wówczas musimy użyć polecenia sgdisk  z opcją -R .Po tej operacji na naszym czystym dysku jest utworzona tablica partycji tak jak na pozostałych dyskach będących w naszym RAID 🙂 Teraz po prostu musimy dodać nasze nowe partycje do macierzy, aby dane na dyskach się zreplikowały.

Żeby sprawdzić aktualny stan macierzy wyświetlamy sobie informacje z pliku /proc/mdstat i powinniśmy uzyskać coś podobnego do poniższego listingu :

Jak widać w definicjach urządzeń mdX są dyski sda, sdc, sdd a na końcu linii [U_UU]. Macierz jest niekompletna…

Następnie musimy kolejno wykonać polecenia (u siebie będziesz musiał wykonać analogicznie w zależności od swoich partycji i ustawić)

Do podglądu stanu odbudowy macierzy używamy ponownie polecenia cat /proc/mdstat

a jeśli chcemy się cieszyć na bieżąco odbudową naszej macierzy użyjmy polecenia watch -n[interwał w sek.]:

a wynik będzie nam się odświeżał co 2 sek.

Generalnie system ustawia sobie tak odbudowę macierzy aby nie zakłócać pracy  innym użytkownikom. Jednak jeżeli wiemy że np w nocy nikt na naszym serwerze nie pracuje ani nie jest podłączony to możemy przyśpieszyć odbudowę macierzy modyfikując parametry /proc/sys/dev/raid/{speed_limit_min, speed_limit_max}, w których są zapisane domyślne prędkości w kb/s . W plikach tych są odpowiednio wartości 1000 i 100000 i są to czasy ustawione dla standardowej pracy macierzy jednak do odbudowy możemy te wartości podnieść i przyśpieszyć pracę macierzy np na 50000 i 150000 🙂