Полное восстановление Intel Matrix Software-RAID 1
У нас есть сервер под управлением Fedora 8 и программный RAID от Intel в конфигурации RAID 1.
Один из дисков вышел из строя на нашем сервере, поэтому я заменил неисправный диск и выполнил команду "dd if=/dev/sda of=/dev/sdb", чтобы скопировать данные хорошего диска на новый диск.
После перезагрузки я снова заработал; жалоб от Fedora нет вообще.
Тем не менее, при загрузке Intel Matrix BIOS по-прежнему говорит, что массив RAID находится в состоянии "Перестроить". Я не вижу ничего плохого в RAID-массиве изнутри ОС, а инструменты на базе Intel BIOS не имеют никаких вариантов для восстановления RAID-массива.
Подробности RAID массива
$ pvscan && vgscan && lvscan
PV /dev/dm-2 VG VolGroup00 lvm2 [465.53 GB / 32.00 MB free]
Total: 1 [465.53 GB] / in use: 1 [465.53 GB] / in no VG: 0 [0 ]
Reading all physical volumes. This may take a while...
Found volume group "VolGroup00" using metadata type lvm2
ACTIVE '/dev/VolGroup00/LogVol00' [463.56 GB] inherit
ACTIVE '/dev/VolGroup00/LogVol01' [1.94 GB] inherit
fdisk -l:
Device Boot Start End Blocks Id System
/dev/sda1 * 1 25 200781 83 Linux
/dev/sda2 26 60800 488175187+ 8e Linux LVM
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 25 200781 83 Linux
/dev/sdb2 26 60800 488175187+ 8e Linux LVM
Device Boot Start End Blocks Id System
/dev/dm-0p1 * 1 25 200781 83 Linux
/dev/dm-0p2 26 60800 488175187+ 8e Linux LVM
Сначала я пытался перестроить массив с помощью инструментов lvm, но у меня они не сработали, так как у меня нет разделов /dev/md*. Dmraid также не помог, поэтому я вернулся к низкоуровневому подходу и использовал вместо него dd.
Мне интересно, является ли мой низкоуровневый подход причиной того, что RAID-массив Intel не воспринимается BIOS как правильно перестроенный.
Обновления:
- Да, у меня есть резервная копия Amazon S3 важных файлов на сервере.
2 ответа
Intel Raid управляется материнской платой и / или драйвером. Инструменты lvm даже не видят вещей.
Ваш Linux видит sda и sdb означает, что он видел настройки raid на материнской плате, что плохо (тм).
В рейде есть несколько уровней: 1) аппаратное обеспечение 2) что делает из него raidcontroller 3) что видит ОС. В любой надежной рейд-системе 2 и 3 одинаковы. Если они не совпадают, возникают такие вопросы, как ваш, что сбивает с толку даже самых опытных администраторов. В этом случае, похоже, вам повезло. Вы сделали не то, ваши настройки рейда проигнорировали вас, а теперь делают (надеюсь) правильные вещи.
Это не всегда так. Равный шанс, что вы делаете правильные вещи, рейд на материнской плате игнорирует вас и делает неправильные вещи.
Единственный способ надежно отремонтировать любой вид рейда - использовать инструменты системы рейда.
То, что сейчас делает драйвер Intel, это dd, называющий его перестройкой. Конечно, он не видел, что сделал твой дд! У него нет идеи, откуда поступает вывод данных dd, и теперь я не могу сказать, что на самом деле это правильные данные. Так что это должно сделать само копирование. Насколько известно бедняжке, это может быть бабушкин сборник рецептов индейки.
Для правильной настройки рейда все должно быть детерминированным. Рейды на материнской плате обычно нет (версия BIOS, версия драйвера, ОС и т. Д.). Администратор должен обучить себя ремонтировать рейды. Если вы помещаете какие-либо важные данные в рейд, вы должны самостоятельно преодолеть некоторые из его неудач. Если вы этого не сделаете, вам, вероятно, будет лучше без рейда. Оказывается, в большинстве случаев, только рейды с программным обеспечением ОС или рейд-карты являются детерминированными. Смешение рейдов на материнских платах и драйверах, которые есть почти на каждой плате, не намного больше, чем плацебо.
PS у тебя есть бэкап?
Осторожно! Интегрированный "Intel Matrix RAID" - это не настоящий аппаратный RAID. Это замаскированный программный RAID, он работает через AFAIK драйвер только для Windows. Забудьте об этом и настройте программный RAID в Linux. К сожалению, это может быть сложно настроить в качестве запоздалой мысли.