Przejdź do głównej zawartości

Linux RHCSA cz.14 - RAID - Co zrobić jak zepsuje się dysk ?

Czasami zajdzie sytuacja, iż jeden z dysków zawartych w partycji RAID ulegnie awarii. W takiej sytuacji zachodzi potrzeba usunięcia uszkodzonego dysku i zstąpienie go nowym działającym. Możemy manualnie za symulować awarie dysku by przyjrzeć się temu co się stanie. 

Krok 1 - By wykonać kontrolowaną awarię dysku w partycji RAID użyj polecenia:

# mdadm /dev/md0 -f /dev/hdd1
mdadm: set /dev/hdd1 faulty in /dev/md0

Krok 2 - Sprawdzenie dysków w RAID po uszkodzeniu jednego z nich

# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Jan 27 14:09:23 2011
Raid Level : raid5
Array Size : 16769024 (15.99 GiB 17.17 GB)
Used Dev Size : 8384512 (8.00 GiB 8.59 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Thu Jan 27 14:28:55 2011
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Name : RHEL-01:0 (local to host RHEL-01)
UUID : a02fb98a:63a7cbbf:762c7a7f:e681a8ee
Events : 19
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/hdb1
1 8 33 1 active sync /dev/hdc1
2 0 0 2 removed
3 8 49 - faulty spare
/dev/hdd1

Widoczne jest który z dysków ma awarię i należy zastąpić go nowym.

Krok 3 - Usunięcie dysku z puli dysków zawartych w RAID

# mdadm /dev/md0 -r /dev/hdd1
mdadm: hot removed /dev/hdd1 from /dev/md0

Krok 4 Ponowne sprawdzenie szczegółowych informacji na temat RAID

# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Jan 27 14:09:23 2011
Raid Level : raid5
Array Size : 16769024 (15.99 GiB 17.17 GB)
Used Dev Size : 8384512 (8.00 GiB 8.59 GB)
Raid Devices : 3
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Thu Jan 27 14:31:23 2011
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Name : RHEL-01:0 (local to host RHEL-01)
UUID : a02fb98a:63a7cbbf:762c7a7f:e681a8ee
Events : 22
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/hdb1
1 8 33 1 active sync /dev/hdc1
2 0 0 2 removed

W ostatniej linii w wyniku tego polecenia widać, iż jeden z dysków został usunięty. W prawdziwym środowisku, w takie sytuacji usuwamy uszkodzony dysk i zastępujemy go nowym. Następnie aktywujemy nowy dysk. Ustawiamy taką samą partycję na nowym dysku jak na uszkodzonym (hdd) i konfigurujemy RAID. 

W podanych krokach mowa jest o poleceniu stanowjącym awarię jednego z dysków a następnie kolejnym poleceniu usuwającym uszkodzoną partycje. Można zrobić to za jednym zamachem i może to być jedno z zagadnień egzaminów RedHat. 

# mdadm -v /dev/md0 -f /dev/hdd1 -r /dev/hdd1

Krok 5  - Jeżeli nowa partycja podstawowa została utworzona można dodać ją do partycji RAID

# mdadm /dev/md0 -a /dev/hdd1
mdadm: re-added /dev/hdd1

Krok 6 - Sprawdzenie czy nowy dysk został dodany prawidłowo.

# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Jan 27 14:09:23 2011
Raid Level : raid5
Array Size : 16769024 (15.99 GiB 17.17 GB)
Used Dev Size : 8384512 (8.00 GiB 8.59 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Thu Jan 27 14:34:21 2011
State : clean, degraded, recovering
Active Devices : 2
Working Devices : 3
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Rebuild Status : 3% complete
Name : RHEL-01:0 (local to host RHEL-01)
UUID : a02fb98a:63a7cbbf:762c7a7f:e681a8ee
Events : 26
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/hdb1
1 8 33 1 active sync /dev/hdc1
3 8 49 2 spare rebuilding
/dev/hdd1

Widoczna informacja "rebulding" informuję, iż nowy dysk jest dodawany do RAID.

Krok 7 - Odpytanie jądra systemu

# cat /proc/mdstat
Personalities : [raid0] [raid6] [raid5] [raid4]
md0 : active raid5 hdd1[2] hdc1[1] hdb1[0]
16769024 blocks super 1.2 level 5, 512k chunk, algorithm 2
[3/2] [UU_]
[===>.................] recovery = 17.4% (697276/4000640)
finish=3.9min speed=13843K/sec
unused devices: <none>

W tym miejscu widać więcej szczegółów dotyczących odbudowywania danych na nowej partycji.

Krok 8 - Jeżeli z RAID w całości dzieje się coś niedobrego można zatrzymać działanie dla całej partycji.

# mdadm -vS /dev/md0
mdadm: stopped /dev/md0

W momencie gdy całą partycja RAID jest zatrzymana można prowadzić prace naprawcze po których ponownie można uruchomić RAID.

Komentarze

Najczęściej czytane w tym miesiącu

50 popularnych pytań dotyczących systemu Linux zadawanych na rozmowach kwalifikacyjnych. (Pytania & Odpowiedzi)

Jak dodać użytkownika w systemie Windows z poziomu konsoli CMD? (net user, net localgroup)

Generowanie testowych plików o określonej wielkości