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

Преобразование Linux-бокса без рейда в Raid с минимальным временем простоя

Я хочу преобразовать систему Linux без raid в RAID1, используя два новых диска. Хотелось бы сделать это с минимальным временем простоя.

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

Это то, что мне нужно сделать в самое ближайшее время. Должно получиться примерно так:

  1. Выключите и установите новые диски

  2. Разделить и создать массив RAID

  3. Данные Rsync через

  4. Rsync снова

  5. перейти к одному пользователю

  6. rsync снова

  7. Настроить загрузчик

  8. Перезагрузитесь на новые диски

  9. Как только вы будете счастливы, удалите старый диск

Это действительно связано с двумя или тремя перезагрузками, и у вас будет некоторое время простоя, пока вы выполняете второй rsync, но, надеюсь, это не займет слишком много времени. Вы должны иметь представление о том, сколько времени rsync во время простоя, по времени, которое заняла вторая rsync. Второй rsync должен догнать файлы, измененные во время первого rsync. Старайтесь оставлять как можно меньше времени между вторым rsync и переключением на одного пользователя. Это сокращает объем данных, необходимых третьему rsync.

Если вы используете LVM, вы можете использовать команду «pvmove».

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

Это выглядело бы примерно так:

  1. Создайте массив RAID как обычно.
  2. Используйте «pvcreate», чтобы превратить его в физический том.
  3. Используйте pvmove, чтобы переместить LVM в массив RAID. (Полностью прочтите справочную страницу pvmove, чтобы понять ее ограничения)
  4. Удалите pv без RAID из LV.
  5. Перемещение / загрузка на новые диски (возможно, через другой массив RAID-1)
  6. Обновите конфигурацию загрузчика и поставьте загрузчик на оба диска.
  7. Убедитесь, что в initrd есть соответствующие модули RAID.
  8. Перезагрузитесь и протестируйте.

Примечание: существует проблема с pvmove, которая может вызвать тупиковую ситуацию при выполнении pvmove в корневом разделе.

Попробуйте, чтобы увидеть, работает ли это.

Шон

Если вас не волнует потеря изменений в файлах, измененных во время периода копирования, и вы используете LVM с текущими дисками, вы можете создать моментальный снимок текущего диска и сделать копию, пока система находится в оперативном режиме. Любые изменения, внесенные в систему с момента создания снимка, не будут перенесены на новые диски.

Если вы не используете LVM или не можете потерять какие-либо изменения, внесенные в текущую систему, то хороший способ минимизировать время простоя - использовать rsync для копирования: сначала запустите его, пока система работает, а затем после завершения копирования войдите в однопользовательский режим и снова запустите rsync. На этот раз он скопирует только те файлы, которые были изменены с момента первого запуска rsync, так что это должно быть намного быстрее.