План создания RAID-массива в Linux
Конфигурирование RAID-массива включает в себя несколько основных этапов:
- Подготовка дисков: обеспечение доступности и подготовка физических дисков, которые будут использоваться в RAID-массиве. Диски могут быть новыми или содержать данные, которые необходимо сохранить;
- Выбор уровня RAID: определение оптимального уровня RAID-массива в соответствии с требованиями системы. Например, RAID 1 для обеспечения отказоустойчивости данных, RAID 0 для повышения производительности или RAID 5/6 для достижения баланса между отказоустойчивостью и производительностью;
- Создание массива RAID: использование утилиты mdadm (Multiple Device Administration) для создания логического RAID-массива на основе выбранного уровня RAID и физических дисков;
- Конфигурирование файловой системы: форматирование RAID-массива с использованием выбранной файловой системы для хранения данных;
- Монтирование RAID-массива: настройка автоматического монтирования RAID-массива при загрузке системы;
- Тестирование и проверка: проверка правильности конфигурации RAID-массива и его работоспособности путем создания, записи и чтения тестовых данных.
Требования
- Root—права;
- Debian 11 или более поздняя версия;
- Некоторые знания о работе ОС;
- Подключение к Интернету.
Добавим диск
В зависимости от инфраструктуры выберите способ подключения диска в систему. Для физической машины — подключиться к свободному порту, для виртуальной машины — заглянуть на вкладку гипервизора и добавить текущий или целевой диск, в другом случае, если вы выбрали VPS—сервер Serverspace, вы можете добавить необходимое пространство через главную панель:

Выберите облачные технологии и серверы, затем выберите вкладку Настройки и прокрутите страницу до появления томов, затем нажмите кнопку Добавить:

Во всплывающем окне выберите необходимое дисковое пространство, установите флажок и перезапустите сервер по кнопке ниже, после чего убедитесь, что диск подключен. В терминале введите команду:
lsblk

Итак, два диска в системе есть и они подключены. На следующем шаге необходимо выбрать формат RAID.
RAID схемы
В различных связках, комбинациях и архитектурах выделяют несколько современных RAID—схем для использования:
RAID 0
Представляет собой базовый метод передачи данных путем чередования блоков информации между двумя или более дисками. При этом целые данные делятся на части, что повышает пропускную способность за счет использования нескольких дисков вместо одного накопителя. Однако в этом случае возникает существенная проблема: отсутствие отказоустойчивости. Если хотя бы один диск будет поврежден, то все данные превратятся в мусор. Эта простая система используется для временного хранения данных и систем с требованиями быстрого чтения и записи информации.
RAID 1
Представляет собой основной метод передачи данных путем зеркалирования и синхронизации информации между двумя или более дисками. При этом все данные копируются на другое хранилище. При этом работает параметр отказоустойчивости и сохранения данных системы при повреждении одного из дисков, но отсутствует быстрая скорость записи данных по сравнению с RAID 0.
RAID 5
Эти решения являются компромиссом между скоростью ввода-вывода и отказоустойчивостью в RAID-системе. Целостность данных будет возможна благодаря алгоритму блоков четности, которые сохраняют данные более надежно.
Процесс вычисления блоков четности зависит от уровня RAID и используемого алгоритма четности. Рассмотрим процессы вычисления блоков четности для RAID 5 и RAID 6, которые являются наиболее распространенными уровнями RAID, использующими блоки четности.
Предположим, у нас есть 4 диска A, B, C и P (где P — диск четности), и мы хотим записать данные на диски A, B и C. Для вычисления блока четности для данных, которые мы хотим записать на диски A, B и C, используется операция XOR (исключающее ИЛИ) над данными на этих дисках.
Пример:
Допустим, у нас есть данные 10101010, которые необходимо записать на диски A, B и C. Тогда процесс вычисления блока четности (P) будет выглядеть следующим образом: P = A XOR B XOR C
Таким образом, значение P будет равно результату операции XOR между данными на дисках A, B и C.
При чтении данных с дисков A, B и C RAID-контроллер может использовать блок четности (P) для восстановления данных на отказавшем диске. Например, при отказе диска В RAID-контроллер использует данные на дисках А, С и Р для восстановления данных, хранившихся на диске В. Но для такого RAID-массива нам необходимо как минимум три диска.
Установка
После того как выбор RAID-системы сделан, необходимо обновить и установить системные пакеты на нашей машине для их корректной работы:
apt update && apt upgrade -y

Если на диске имеются важные данные, создайте их резервную копию с помощью приведенной ниже команды:
tar -czvf backup.tar.gz /etc && scp backup.tar.gz root@65.44.32.1:/etc/backup/
Необходимо изменить IP-адрес на IP вашей машины. Проверьте, установлен ли в вашем дистрибутиве Linux пакет для работы с RAID. В большинстве случаев это будет пакет mdadm. Установить его можно с помощью менеджера пакетов вашего дистрибутива (например, apt, yum, dnf). В нашем примере мы будем использовать пакетный менеджер apt, в вашем случае используйте его в соответствии с вашей ОС. Если вы забыли метку диска, необходимо набрать:
lsblk
После этого установите необходимое программное обеспечение, в нашей инструкции это будет mdadm, которое позволяет создать программную RAID-систему для диска в Linux:
apt install mdadm

Теперь мы можем использовать mdadm для создания массива, выберем RAID 1, создадим виртуальное устройство контроллера и укажем необходимые диски для использования.
Важно отметить! В зависимости от архитектуры вашей сети вам необходимо решить. Будете ли вы использовать загрузочный диск ОС в RAID-системе или нет. Если ответ положительный, то необходимо убедиться, что загрузчик поддерживает версию md. Создадим массив командой, приведенной ниже:
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc /dev/sdb

В утилите mdadm — это основная синтаксическая команда, опция –create позволяет создать массив, /dev/mdo –level=1 устройство RAID 1, –raid-devices=2 /dev/sdc /dev/sdb в этой части мы указываем два используемых диска для нашего массива.
Проверим состояние процесса с помощью следующей команды:
cat /proc/mdstat

Для нашего массива необходимо создать единую файловую систему для всех дисков, мы будем использовать ext4 для наших целей:
sudo mkfs.ext4 /dev/md0

Смонтируем RAID-систему в точку файловой системы:
sudo mkdir /mnt/md
sudo mount /dev/md0 /mnt/md

Добавьте RAID-систему в автозагрузку при старте, после чего откройте nano командой ниже и поставьте Tab в красное поле:
echo "/dev/md0 /mnt/md ext4 defaults 0 0" >> /etc/fstab
nano /etc/fstab

После этого перезагрузим службу:
systemctl daemon-reload
И введем команду, чтобы убедиться в корректности работы файловой системы и RAID:
lsblk

Вывод
Настройка RAID-массива в Linux включает в себя подготовку дисков, выбор уровня RAID, создание RAID-массива с помощью mdadm, настройку файловой системы и монтирование RAID—массива. Тестирование и проверка работоспособности установки является важнейшим условием обеспечения ее функциональности. Особые требования: root-доступ, Debian 11 или выше, знание ОС и подключение к Интернету. Также рассматривается добавление диска, выбор схемы RAID (RAID 0, RAID 1, RAID 5) и шаги по установке. В заключении дается краткий обзор процесса конфигурирования RAID в Linux.