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

Можно ли использовать программный RAID внутри контейнера Docker?

Прежде чем кто-нибудь спросит, зачем вам это нужно, я использую молекула чтобы протестировать мою «инфраструктуру как код» локально перед ее развертыванием на реальных машинах.

Начнем с создания двух блочных устройств:

# dd if=/dev/zero of=/tmp/test0 bs=1M count=10
# dd if=/dev/zero of=/tmp/test1 bs=1M count=10
# losetup /dev/loop0 /tmp/test0
# losetup /dev/loop1 /tmp/test1

Теперь создайте массив:

# mdadm --create /dev/md127 --metadata=0.90 --level=1 --raid-devices=2 /dev/loop0 /dev/loop1
modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.19.76-linuxkit/modules.dep.bin'
modprobe: FATAL: Module md_mod not found in directory /lib/modules/4.19.76-linuxkit
mdadm: Fail create md127 when using /sys/module/md_mod/parameters/new_array
mdadm: unexpected failure opening /dev/md127

Я пробовал установить linux-generic пакет для заполнения отсутствующих /lib/modules каталог, но похоже, что правильная версия этого пакета не существует для работающего ядра (это в Ubuntu 20.04):

# uname -r
4.19.76-linuxkit

# apt show linux-generic | grep Version
Version: 5.4.0.12.15