Замена диска в RAID 1/10

Диски в рейдах время от времени выходят из строя, и их конечно же приходится заменять. Короткая инструкция по замене дисков в программном рейде, на примере RAID 1. Допустим что у нас в сервере установлено два диска и на них следующим образом собран рейд:

/dev/sda1 /dev/sdb1 - /dev/md0
/dev/sda2 /dev/sdb2 - /dev/md1

Диск /dev/sdb выходит из строя и мы будем его заменять. Для начала, последовательно удалим из рейда партации проблемного диска:

# mdadm --manage /dev/md0 --fail /dev/sdb1
# mdadm --manage /dev/md0 --remove /dev/sdb1
# mdadm --manage /dev/md1 --fail /dev/sdb2
# mdadm --manage /dev/md1 --remove /dev/sdb2

Заглядываем в /proc/mdstat и убеждаемся что партации извлечены [U_]:

md0 : active raid1 sda1[0]
 24418688 blocks [2/1] [U_]

md1 : active raid1 sda2[0]
 24418688 blocks [2/1] [U_]

Далее, если сервер поддерживает горячую замену — выдёргиваем нужный диск и ставим новый. Если горячей замены сервер не поддерживает, выключаем его, заменяем диск и включаем обратно. При замене не забываем, что по объёму диск должен быть идентичен тому что был установлен ранее. Загрузив сервер, копируем разметку с рабочего диска на наш новый. Сделать это можно с помощью gdisk, либо с помощью sfdisk (использовать нужно что-то одно!):

# sfdisk -d /dev/sda | sfdisk /dev/sdb

Или:

# sgdisk -R /dev/sdb /dev/sda
# sgdisk -G /dev/sdb

Убеждаемся что разбивка на старом и новом диске идентична, и добавляем партации нового диска в рейд:

# mdadm --manage /dev/md0 --add /dev/sdb1
# mdadm --manage /dev/md1 --add /dev/sdb2

Проверяем /proc/mdstat, видим что синхронизация данных уже началась:

md0 : active raid1 sda1[0] sdb1[1]
 24418688 blocks [2/1] [U_]
 [=>...................] recovery = 19.9% (9692672/48837376) finish=2.7min speed=197535K/sec

md1 : active raid1 sda2[0] sdb2[1]
 24418688 blocks [2/1] [U_]
 [=>...................] recovery = 3.2% (1572096/48837376) finish=1.8min speed=186512K/sec

И отправляемся пить чай, в ожидании завершения процесса. В ходе синхронизации возможно повышение нагрузки на дисковую подсистему, так что лучше всего в это время минимизировать какие-либо ресурсоёмкие операции.

@SysadminNotes

One thought on “Замена диска в RAID 1/10

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *