Назад | Перейти на главную страницу

Как я могу обновить свой программный набор дисков RAID 1?

У меня есть два диска по 600 ГБ в программной настройке RAID1 на физическом сервере Debian.

Я хочу иметь возможность увеличить емкость сервера путем клонирования дисков в соответствующую пару дисков емкостью 2 ТБ. Затем я могу стереть диски 600 ГБ и использовать их как хранилище или что-то еще.

Как лучше всего это сделать?

slave:~# mount
/dev/md0 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)

Вы должны иметь возможность заменить первый диск, добавить раздел в массив и позволить рейду выполнить повторную синхронизацию. Затем замените второй диск, позвольте ему выполнить повторную синхронизацию, а затем разверните рейд и файловую систему, чтобы занять все пространство. Когда вы разбиваете свои новые диски на разделы, сделайте так, чтобы они занимали все пространство, которое вы хотите для нового макета.

человек мдадм, resize2fs

удалить устройство из массива

mdadm /dev/md0 --remove /dev/olddevice

добавить устройство в массив

mdadm /dev/md0 --add /dev/newdevice

увеличить массив, чтобы он занимал все пространство, разрешенное разделами

mdadm /dev/md0 --grow --size=max

Увеличьте файловую систему, чтобы она занимала все пространство массива

resize2fs /dev/md0

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

На всякий случай, если кто-то погуглиет, вот мой опыт перехода с дисков 2x150Gb на 2x1Tb в mdadm RAID1 + LVM поверх него.

Предположим, у нас есть 2 диска - small1, small2 в зеркале mdadm (md0), а новые - big1 и big2. Поверх них находится LVM с группой томов VG1 и логическим томом LV1.

убедитесь, что все в порядке с текущим md:

cat /proc/mdadm

Скажите mdadm, что нужно вывести один диск из строя и удалить его из массива md:

mdadm /dev/md0 --set-faulty /dev/small1 && mdadm /dev/md0 --remove /dev/small1

Замените диск small1 на большой (либо горячая замена, либо отключение системы).

Создайте новый раздел на большом жестком диске типа FD (автоопределение Linux RAID). Установите размер вашего нового RAID-массива. Я предпочитаю cfdisk, но он может отличаться:

cfdisk /dev/big1

Добавьте новый диск (или, если быть точным, ваш вновь созданный раздел, например, / dev / sda1):

mdadm /dev/md0 --add /dev/big1

Подождите, пока массив синхронизируется:

watch cat /proc/mdstat

Повторите это с другой парой дисков. В итоге вы получите два больших диска в массиве.

Увеличьте массив до максимального размера, разрешенного компонентными устройствами, дождитесь синхронизации:

mdadm /dev/md0 --grow --size=max
watch cat /proc/mdstat

Пришло время изменить размер LVM. Обратите внимание на параметр --test, он будет имитировать действие, но не изменит метаданные (перед фактическим изменением размера полезно проверить, есть ли какие-либо неправильные настройки).

Изменение размера физического объема:

pvresize --verbose --test /dev/md0

Изменение размера логического тома:

lvresize --verbose -L <SIZE> --test /dev/VG1/LV1

И, наконец, изменение размера ext3 FS:

resize2fs /dev/VG1/LV1

С двумя жесткими дисками емкостью 1 ТБ у меня ушло около 20 часов (я удалил один диск из массива, прежде чем возиться с LVM и FS, так что это было 3 синхронизации + рост массива).

Все было сделано на производственном сервере, без перебоев в работе служб.

Но не забывай РЕЗЕРВНОЕ КОПИРОВАНИЕ ДАННЫХ прежде чем вносить какие-либо изменения.

Предполагая, что один из заменяемых дисков является загрузочным, вам не нужно беспокоиться о том, что GRUB включен обе диски, прежде чем вы начнете их выдергивать? (Я предполагаю, что то, что ищет GRUB в / boot, зеркалируется на оба диска.)

Я почти уверен, что смотрел на подсказку не совсем GRUB, когда я не понял это правильно ...