Я выполняю тест с массивом mdadm в контейнере ddf, в котором после имитации неисправного устройства и замены нового устройства массив контейнеров ddf не перестраивается с добавленным или существующим запасным. Тестовая система представляет собой виртуальную машину с 10 виртуальными дисками. Вот пример:
# mdadm -C /dev/md/ddf0 /dev/sd[b-k] -n 10 -e ddf
mdadm: container /dev/md/ddf0 prepared.
- Создание нескольких массивов mdadm внутри контейнера
# mdadm -C /dev/md/raid10_test1 /dev/md/ddf0 -n 8 -l 10 -z 1G -c 32K
mdadm: array /dev/md/raid10_test1 started.
# mdadm -C /dev/md/raid10_test2 /dev/md/ddf0 -n 8 -l 10 -z 1G -c 32K
mdadm: array /dev/md/raid10_test2 started.
# mdadm -C /dev/md/raid5_test1 /dev/md/ddf0 -qn 8 -l 5 -z 1G -c 32K
mdadm: array /dev/md/raid5_test1 started.
# mdadm -C /dev/md/raid6_test1 /dev/md/ddf0 -n 8 -l 6 -z 1G -c 32K
mdadm: array /dev/md/raid6_test1 started.
# mdadm -C /dev/md/raid1_test1 /dev/md/ddf0 -n 2 -l 1 -z 1G -c 32K
mdadm: array /dev/md/raid1_test1 started.
# mdadm -C /dev/md/raid1_test2 /dev/md/ddf0 -n 3 -l 1 -z 1G -c 32K
mdadm: array /dev/md/raid1_test2 started.
- Пометить сбой и удалить устройство из одного массива
# mdadm /dev/md/raid10_test1 --fail /dev/nvme5n1
mdadm: set /dev/sde faulty in /dev/md/raid10_test1
# mdadm /dev/md/ddf0 --remove /dev/nvme5n1
mdadm: hot removed /dev/sde from /dev/md/ddf0
- Протереть заголовок на удаленном устройстве
# wipefs -a /dev/sde
/dev/sde: 4 bytes were erased at offset 0x3ffffe00 (ddf_raid_member): de 11 de 11
- Добавьте устройство обратно в массив
# mdadm /dev/md/ddf0 --add /dev/sde
mdadm: added /dev/sde
- Устройство добавлено как новый Global Spare, и повторная переплата не выполняется
# mdadm --examine /dev/md/ddf0
[snip..]
Physical Disks : 1023
Number RefNo Size Device Type/State
0 a47420c0 1015808K /dev/sdb Global-Spare/Online
1 1a49734b 1015808K /dev/sdc active/Online
2 c30bd310 1015808K /dev/sdd active/Online
3 2068fdea 1015808K active/Offline, Failed, Missing
4 4af60472 1015808K /dev/sdf active/Online
5 77c8d4a3 1015808K /dev/sdg active/Online
6 e26a1c6d 1015808K /dev/sdh active/Online
7 8ed9b610 1015808K /dev/sdi active/Online
8 eeaca06e 1015808K /dev/sdj active/Online
9 26b4a06b 1015808K /dev/sdk active/Online
10 489e4608 1015808K /dev/sde Global-Spare/Online <<< Device added back in as spare
Почему контейнер не запускает процесс перекомпоновки автоматически? Это потому, что поддерживающее устройство не контролируется контроллером BIOS Raid?