===== Как создать программный RAID на базе Linux Software RAID (Multiple Device/MD RAID/mdraid) в ОС Debian/GNU Linux 9 ===== {{:unix-linux:linux-software-raid:pasted:20180619-095346.png }} Для возможности создания и управления программными **RAID**-массивами в **Debian**/**GNU Linux 9** потребуется установить пакет **mdadm** из [[unix-linux:debian:stretch:linux-how-to-add-debian-9-stretch-default-repos|стандартных репозиториев Debian]].
# apt-get install mdadm
Утилита **mdadm** имет несколько режимов работы и информативную встроенную справку. Рассмотрим пример создания программного RAID-массив уровня 6 из 12 дисков, которые в нашем случае доступны в системе по нескольким путям, поэтому мы будем оперировать дисками, как **multipath**-устройствами:
# mdadm --create /dev/md0 --level=6 --raid-devices=12 /dev/dm-0 /dev/dm-1 /dev/dm-2 \ 
/dev/dm-3 /dev/dm-4 /dev/dm-5 /dev/dm-6 /dev/dm-7 /dev/dm-8 /dev/dm-9 /dev/dm-10 /dev/dm-11

mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started.
Проверяем состояние массива командой:
# mdadm --detail /dev/md0

/dev/md0: Version : 1.2 Creation Time : Sat Feb 3 00:18:56 2018 Raid Level : raid6 Array Size : 4882206720 (4656.04 GiB 4999.38 GB) Used Dev Size : 488220672 (465.60 GiB 499.94 GB) Raid Devices : 12 Total Devices : 12 Persistence : Superblock is persistent Intent Bitmap : Internal Update Time : Sat Feb 3 00:30:54 2018 State : clean, resyncing Active Devices : 12 Working Devices : 12 Failed Devices : 0 Spare Devices : 0 Layout : left-symmetric Chunk Size : 512K Resync Status : 1% complete Name : KOM-FS01:0 (local to host KOM-FS01) UUID : 25763d5d:257f8e09:fb822ed1:03f5e417 Events : 136 Number Major Minor RaidDevice State 0 254 0 0 active sync /dev/dm-0 1 254 1 1 active sync /dev/dm-1 2 254 2 2 active sync /dev/dm-2 3 254 3 3 active sync /dev/dm-3 4 254 4 4 active sync /dev/dm-4 5 254 5 5 active sync /dev/dm-5 6 254 6 6 active sync /dev/dm-6 7 254 7 7 active sync /dev/dm-7 8 254 8 8 active sync /dev/dm-8 9 254 9 9 active sync /dev/dm-9 10 254 10 10 active sync /dev/dm-10 11 254 11 11 active sync /dev/dm-11
Как видим, наш массив успешно создан и находится в стадии инициализации. Генерируем строку инициализации массива, которая будет нам полезна для того, чтобы наш массив автоматически стартовал после перезагрузки системы в нужной нам конфигурации:
# mdadm --detail --scan

ARRAY /dev/md0 metadata=1.2 name=KOM-FS01:0 UUID=25763d5d:257f8e09:fb822ed1:03f5e417
Запишем полученную строку в конфигурационный файл ''mdadm.conf''. При необходимости заполняем опции **MAILADDR** / **MAILFROM** (для работы механизма почтовых оповещений о проблемах с RAID специальной службой **mdmonitor**) В опции **DEVICE** укажем маску имён устройств, на которых mdraid должен искать свои супер-блоки при запуске, то есть тех устройств, которые участвуют в наших RAID-массивах. В конечном итоге файл mdadm.conf может принять примерно такой вид:
# nano /etc/mdadm/mdadm.conf
# # Please refer to mdadm.conf(5) for information about this file. # # by default (built-in), scan all partitions (/proc/partitions) and all # containers for MD superblocks. alternatively, specify devices to scan, using # wildcards if desired. # DEVICE partitions containers # DEVICE /dev/dm-* # automatically tag new arrays as belonging to the local system # HOMEHOST # instruct the monitoring daemon where to send mail alerts # MAILADDR Linux-Server-Admins@holding.com MAILFROM KOM-FS01@holding.com # definitions of existing MD arrays # ARRAY /dev/md0 metadata=1.2 name=KOM-FS01:0 UUID=25763d5d:257f8e09:fb822ed1:03f5e417 После изменения конфигурационного файла запускаем службу мониторинга состояния RAID-массивов **mdmonitor** и проверяем её статус:
# service mdmonitor restart
# service mdmonitor status
Пересоберём **initial ramdisk**, так как в его состав включается файл ''mdadm.conf''
# update-initramfs -u

update-initramfs: Generating /boot/initrd.img-4.9.0-5-amd64
После этого перезагружаем Linux-систему и убеждаемся в том, что при запуске ОС успешно загружается созданный нами RAID-массив. Если на подключённых дисках ранее уже использовался RAID-массив созданный в mdraid, то при перезагрузке сервера старый массив должен собраться автоматом в случае, если имена дисков из которых состоит массив подпадают под маску в параметре **DEVICE** конфигурационного файла ''/etc/mdadm/mdadm.conf'' ---- Проверено на следующих конфигурациях: ^ Версия ОС ^ |Debian GNU/Linux Stretch 9.2.1 | ---- {{:user:blogroot.png?50&nolink |}} Автор первичной редакции:\\ [[user:blogroot|Алексей Максимов]] \\ Время публикации: 03.05.2019 18:39 {{tag>Linux Debian "Debian 9" "Debian Stretch" RAID mdadm mdraid "Multiple Device" "MD RAID" multipath}} ~~DISCUSSION~~