1

Этим утром во время длительной операции чтения ~ 1,5 ТБ, отправляющей данные клиенту NFS, мой массив md complex-RAID10 самопроизвольно остановился, а затем отбросил четыре элемента, считая их "не свежими", и не смог начать снова. Проверка mdstat показывает все диски, которые считаются "запасными".

Работает на Debian 7. 6x HGST Deskstar NAS, четыре на дополнительной плате Marvell 88SE9230 PCIe и две на внутренней SATA ICH7. Все диски проходят SMART без перераспределения. Все четыре диска, которые были сброшены, были все на карте Marvell, но это также sda, sdb, sdc и sdd, и я чувствую, что это не обязательно тот контроллер, который я тестировал и продолжает нормально работать.

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

Как я могу начать эту вещь снова? Некоторые предлагали сбой и удаление каждого диска и его повторное добавление, некоторые предлагали запускать массив с --force, а другие все еще говорили о воссоздании массива с помощью --assume-clean, но все имеют опыт работы только с другими уровнями RAID. , Они, как и я, понятия не имеют, как они будут вести себя со сложным RAID10, и это не очень хорошо.

[ОБНОВЛЕНИЕ] Я обнаружил, что имена устройств изменились. Вот почему диск ОС находится в sdg в mdstat (после перезагрузки), а sdc - в syslog (отсюда и сообщение о монтировании EXT4). Теперь я не верю, что четверо, кого выгнали, были на контроллере Marvell.

Я остановил массив, собранный в 1/3, и --assemble --scan показал четыре диска "(возможно, устаревшие)", и он не смог собрать из оставшихся двух. Я попытался снова вручную, используя --assemble --force, и он очистил флаги FAULTY, собранные из 6 дисков, но все еще не смог запустить массив, потому что все они все еще отмечены как ЗАПАСНЫЕ. Таким образом, у меня остается шаг к тому, как снова распознать эти диски как соответствующие функциональные элементы этого RAID10, если это возможно ...

mdstat:

md0 : inactive sdf[0](S) sdd[5](S) sdc[4](S) sdb[3](S) sda[2](S) sde[1](S)
      23441325072 blocks super 1.2


syslog:

    Dec 13 02:30:02 mWproduction rpc.mountd[2790]: authenticated mount request from 10.10.1.124:993 for /media/MainStore (/media/MainStore)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.437611] md: md0 stopped.
    Dec 13 02:33:22 mWproduction kernel: [ 2238.437628] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.456050] md: export_rdev(sdf)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.456131] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.472043] md: export_rdev(sdd)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.472130] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.472183] md: export_rdev(sdc)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.472233] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.476282] md: export_rdev(sdb)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.476329] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.476369] md: export_rdev(sda)
    Dec 13 02:33:22 mWproduction kernel: [ 2238.476421] md: unbind
    Dec 13 02:33:22 mWproduction kernel: [ 2238.480171] md: export_rdev(sde)
    Dec 13 02:33:27 mWproduction kernel: [ 2243.889311] md: md0 stopped.
    Dec 13 02:33:27 mWproduction kernel: [ 2243.890748] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.890902] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891047] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891190] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891327] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891503] md: bind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891528] md: kicking non-fresh sdd from array!
    Dec 13 02:33:27 mWproduction kernel: [ 2243.891534] md: unbind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.904065] md: export_rdev(sdd)
    Dec 13 02:33:27 mWproduction kernel: [ 2243.904079] md: kicking non-fresh sdc from array!
    Dec 13 02:33:27 mWproduction kernel: [ 2243.904090] md: unbind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.916138] md: export_rdev(sdc)
    Dec 13 02:33:27 mWproduction kernel: [ 2243.916155] md: kicking non-fresh sdb from array!
    Dec 13 02:33:27 mWproduction kernel: [ 2243.916173] md: unbind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.928029] md: export_rdev(sdb)
    Dec 13 02:33:27 mWproduction kernel: [ 2243.928039] md: kicking non-fresh sda from array!
    Dec 13 02:33:27 mWproduction kernel: [ 2243.928046] md: unbind
    Dec 13 02:33:27 mWproduction kernel: [ 2243.944040] md: export_rdev(sda)
    Dec 13 02:33:27 mWproduction kernel: [ 2243.962667] md: raid10 personality registered for level 10
    Dec 13 02:33:27 mWproduction kernel: [ 2243.963132] bio: create slab  at 1
    Dec 13 02:33:27 mWproduction kernel: [ 2243.967055] md/raid10:md0: not enough operational mirrors.
    Dec 13 02:33:27 mWproduction kernel: [ 2243.967264] md: pers->run() failed ...
    Dec 13 02:33:35 mWproduction kernel: [ 2251.460454] md: md0 stopped.
    Dec 13 02:33:35 mWproduction kernel: [ 2251.460465] md: unbind
    Dec 13 02:33:35 mWproduction kernel: [ 2251.480313] md: export_rdev(sdf)
    Dec 13 02:33:35 mWproduction kernel: [ 2251.480476] md: unbind
    Dec 13 02:33:35 mWproduction kernel: [ 2251.498418] md: export_rdev(sde)
    Dec 13 02:33:44 mWproduction kernel: [ 2260.905447] md: md0 stopped.
    Dec 13 02:33:44 mWproduction kernel: [ 2260.911283] md: bind
    Dec 13 02:33:44 mWproduction kernel: [ 2260.911576] md: bind
    Dec 13 02:33:44 mWproduction kernel: [ 2260.911844] md: bind
    Dec 13 02:33:44 mWproduction kernel: [ 2260.912306] md: bind
    Dec 13 02:33:44 mWproduction kernel: [ 2260.912475] md: bind
    Dec 13 02:33:44 mWproduction kernel: [ 2260.912650] md: bind
    Dec 13 02:42:48 mWproduction shutdown[4245]: shutting down for system reboot

1 ответ1

1

Проблема решена. Мне посоветовали выполнить mdadm -E на всех дисках. Выяснилось, что теперь, когда массив был принудительно собран, все диски, кроме одного, имели статус массива AAAAAA. Статус /dev/sde застрял на AA .... (два активных, четыре неактивных), что указывало на некоторую аномалию.

Я собрал диски без --force , опуская /dev/sde и это указало на необходимость --run потому что он хотел, чтобы присутствовали все участники. С --run, массив запустился правильно, ухудшился. Сейчас я тестирую оставшийся диск, дважды проверяю, все ли скопировано, и заново добавляю его в массив.

Большое, большое спасибо пользователям spreeuw и mumixam из irc.freenode.net #linux и #mdadm соответственно за их ценный вклад.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .