[make-initrd] [degraded md-raid] make-initrd в p9 и в Сизифе

Leonid Krivoshein klark at basealt.ru
Tue Feb 18 21:43:46 MSK 2020


17.02.2020 22:21, Leonid Krivoshein пишет:
> 17.02.2020 18:23, Alexey Gladkov пишет:
>> [...]
>> Нужно будет написать тест про degraded raid. Я примерно понимаю как это
>> должно выглядеть. А вот с read-auto сложнее. Что это ?
>
> Вот как это выглядит чисто технически:
>
> mdadm --detail /dev/md127
> ...
> State : clean, resyncing (PENDING)
> ...
> cat /sys/block/md127/md/array_state
> read-auto
>
> Мне не удалось пока воспроизвести проблему с make-initrd в 
> конфигурации с RAID+LVM. Зато по ходу нашёл ещё два бага, один с grub 
> и один alterator-vm. make-initrd в обоих случаях совсем не при делах. 
> Поздно уже, завтра продолжу...
>

I. GPT, 2xHDD 2200Gb

1. Legacy, чистый md-raid:

BBP=8M+10G+*
md0=sda2+sdb2 (/)
md1=sda3+sdb3 (superblock v1)

результат => grub rescue --
grub не может найти mduuid/<длинный_ID>, возможно нет модуля mdraid.

2. Legacy, чистый md-raid:

md0=sda+sbd => инсталлятор не может установить загрузчик на md0.
(даже если это норма, то почему разбивалка допускает такую конфигурацию!).

3. Legacy, чистый lvm:

BBP=8M+50%+*

При попытке создать VG0 из чистых разделов (без томов) =>
создаётся самый обыкновенный раздел! Если довести установку до конца,
никакого LVM'а на диске не будет! Если в разбивалке нажать кнопку
"назад" после данной "странности", инсталлятор тут же падает и идёт
на перезагрузку. В других ситуациях по нажатию на эту кнопку он не
падает, а возвращается на предыдущий шаг.

4. Legacy, lvm поверх md-raid:

BBP=8M+2G+...
md0=sda2+sdb2 (SWAP)
md1=sda3+sdb3
md2=sda4+sdb4
VG0=md1+md2

Если поставить систему на LVM-том, а SWAP оставить на md-raid,
то после перезагрузки система загружается нормально, вот только
md0 в состоянии read-auto. Эту ситуацию можно исправить в make-initrd.

5. Legacy, lvm поверх md-raid:

BBP=8M+2G+...
md0=sda2+sdb2
md1=sda3+sdb3
VG0=md0+md1

Всё хорошо. Один раз было, что система не загрузилась, оставшись
в make-initrd, но воспроизвести не получается. Возможно, проблема
не в make-initrd, а в чём-то ещё. К сожалению, сразу не проанализировал,
почему так получилось, рассыпался ли md-raid или это деградация systemd.

6. UEFI, lvm поверх md-raid:

Как в [5], всё хорошо. Отправка "u" в /proc/sysrq-trigger ничего не ломает,
возможно правила udev в initrd чинят ситуацию "read-auto" автоматом. На
новом PVE в инсталлере выбирать установку загрузчика в EFI с очисткой
NVRAM бесполезно, он упорно грузится с ISO-образа.

7. UEFI, чистый md-raid:

ESP=100M+2G+10G+*
md0=sda2+sdb2 (SWAP)
md1=sda3+sdb3 (/)
md2=sda4+sdb4 (/home, superblock v1)

См. скриншот ss04.png -- загрузка успешна, но все три массива в 
дегидрированном
состоянии, причём SWAP ещё и read-auto.

В каждом случае использовался Альт Сервер 9 с минимальным профилем 
установки.

ИТОГ. Хотя мне не удалось воспроизвести ситуацию с превращением машины в 
кирпич
сразу после установки, в новом make-initrd есть что подкрутить на 
предмет автоматики.
К тому же выловилось куча других багов, явно не связанных с make-initrd. 
Возможно,
новый grub исправит ситуацию [1], будем собирать новый образ с ним.


-- 
С уважением,
Леонид Кривошеин.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: ss04.png
Type: image/png
Size: 17611 bytes
Desc: not available
URL: <http://lists.altlinux.org/pipermail/make-initrd/attachments/20200218/d792ecf1/attachment-0001.png>


More information about the Make-initrd mailing list