Содержание
Проблематика
В целом это не тянет на полноценный гайд, а скорее просто набор команд, без особого объяснения, которые я решил сохранить на будущее. Оно заработало у меня, но не факт, что взлетит у Вас, но это можно использовать как неплохую отправную точку.
Работаем с RAID-ами в терминале
Для настройки воспользуемся консольной утилитой mdadm
Устанавливаем по классике:
sudo apt-get update
sudo apt-get install -y mdadm
Проверяем, что все работает нормально:
mdadm --version
Чистим существующие RAID-ы
Информацию об активных массивах можно в файле /proc/mdstat
cat /proc/mdstat
Если массив смонтирован, то
sudo umount /dev/md0
Удалить существующий размонтированный массив можно командой:
sudo mdadm --stop /dev/md0
В идеале еще зачистить superblock-и всех дисков, которые были задействованы в массиве:
sudo mdadm --zero-superblock /dev/sdasudo mdadm --zero-superblock /dev/sdb
После чего обновляем initramfs
, чтобы система после перезагрузки не пыталась заново поднять несуществующие массивы:
sudo update-initramfs -u
Готово! Можно заново создавать!
Создаем новый массив
В целом создание любого массива с mdadm выглядит так:
sudo mdadm --create --verbose <имя массива> --level=<уровень> --raid-devices=<кол-во дисков> <путь/к/диску/1> <путь/к/диску/2> ... <путь/к/диску/n>
Рассмотрим на примере RAID 10 - он и быстрый, и в целом отказоустойчивый. В целом команды легко подменяются и для любого другого типа массивов.
Находим необходимые нам диски:
lsblk
В данном случае, рассмотрим, что разворачиваем на дисках: /dev/sda
, /dev/sdb
, /dev/sdc
, /dev/sdd
:
sudo mdadm --create --verbose --level=10 --raid-devices=4 /dev/sd[a-d]
Готово! Можно проверить наличие RAID-а через /proc/mdstat
:
cat /proc/mdstat
Или через сам mdadm
:
sudo mdadm --detail /dev/md0
Монтируем готовый RAID
После создания RAID-а необходимо создать на нем файловую систему (в данном случае ext4, но может быть и любая другая совместимая):
sudo mkfs.ext4 -F /dev/md0
Ну и теперь просто монтируем:
sudo mkdir -p /mnt/md0sudo mount /dev/md0 /mnt/md0
Проверяем, что оно взлетело и новое место доступно и видно:
df -h
Сохраняем массивы
Для того, чтобы после перезагрузки все массивы заново собирались, информация о них должна быть в /etc/mdadm/mdadm.conf
.
Получить информацию о существующих массивах и записать их в этот файл можно одной строчкой:
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
Далее нужно обновить initramfs
, чтобы массив был доступен на ранних этапах загрузки системы (вроде не сильно обяхательный параметр, но лучше запилить):
sudo update-initramfs -u
Теперь лучше добавить запись о монтировании массива в /etc/fstab
:
echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab
Вы великолепны! Массивы настроен и будет работать после всех перезагрузок.
Заключение
В целом в статье описано все необходимое для того, чтобы развернуть на скорую руку RAID 10 на Ubuntu Server.
Может сюда же залетят настройки и примеры других массивов, может их сравнения - кто знает.