RAID массив: что это, как создать и настроить?

Инструкции

Что такое RAID массив и зачем он вам нужен

В первую очередь RAID-массив позволяет обеспечить высокую отказоустойчивость жестких дисков (HDD) вашего компьютера за счет объединения нескольких жестких дисков в один логический элемент. Следовательно, для реализации этой технологии необходимо как минимум два жестких диска. Кроме того, RAID удобен только тем, что всю информацию, которую раньше приходилось копировать на резервные источники (флешки, внешние жесткие диски), теперь можно оставить «как есть», ведь риск полной потери минимален и стремится к нулю , но не всегда, если этот чуть ниже.

RAID переводится примерно так: безопасный набор недорогих дисков. Название происходит из тех времен, когда большие жесткие диски были очень дорогими и было дешевле собрать общий ряд из дисков меньшего размера. Суть с тех пор не изменилась, в общем, как и название, только теперь можно просто создать гигантское хранилище из нескольких больших HDD, или сделать так, чтобы один диск дублировал другой. А еще можно совмещать обе функции, тем самым добиваясь преимуществ и одной, и другой.

Все эти массивы под своими номерами, скорее всего вы о них слышали — рейд 0, 1… 10, т.е массивы разного уровня.

Установка mdadm

Утилиту mdadm можно установить с помощью одной команды.

Если вы используете CentOS/Red Hat:

нам установить mdadm

Если вы используете Ubuntu/Debian:

apt-получить установку mdadm

Сборка RAID

Перед монтажом стоит подготовить носитель. Затем вы можете приступить к созданию массива рейдов.

Подготовка носителей

Для начала необходимо сбросить суперблоки на дисках, которые мы будем использовать для построения RAID (если диски использовались ранее, их суперблоки могут содержать служебную информацию о других RAID):

mdadm —zero-superblock —force /dev/sd{b,c}

* в этом примере мы сбрасываем суперблоки для дисков sdb и sdc.

Если мы получили ответ:

mdadm: Неизвестное устройство компонента md — /dev/sdb
mdadm: неизвестное устройство компонента md — /dev/sdc

. это означает, что диски ранее не использовались для RAID. Мы просто продолжаем настройку.

Далее нужно удалить старые метаданные и подпись на дисках:

wipefs —all —force /dev/sd{b,c}

Создание рейда

Чтобы собрать резервный массив, используйте следующую команду:

mdadm —create —verbose /dev/md0 -l 1 -n 2 /dev/sd{b,c}

* Где:

  • /dev/md0 — RAID-устройство отображается после сборки;
  • -l 1 — уровень RAID;
  • -n 2 — количество дисков, из которых собран массив;
  • /dev/sd{b,c} — монтирование производится с sdb и sdc дисков.

Мы должны увидеть что-то вроде:

mdadm: Примечание: эта матрица имеет метаданные в начале и
может не подойти в качестве загрузочного устройства. Если вы планируете это
сохранить ‘/boot’ на этом устройстве, убедитесь, что
ваш загрузчик понимает метаданные md/v1.x или используйте
—метаданные=0,90
mdadm: размер установлен на 1046528K

Так же система задаст контрольный вопрос, хотим ли мы продолжать и создавать RAID — необходимо ответить y:

Вы хотите продолжить создание массива? у

Мы увидим что-то вроде:

mdadm: по умолчанию используются метаданные версии 1.2
mdadm: запущен массив /dev/md0.

Вводим команду:

лсблк

. и находим информацию о том, что наши диски sdb и sdc имеют раздел md0, например:


sdb 8:16 0 2G 0 диск
??md0 9:0 0 2G 0 рейд1
sdc 8:32 0 2G 0 диск
??md0 9:0 0 2G 0 рейд1

* в примере мы видим рейд1, собранный из дисков sdb и sdc.

Создание файла mdadm.conf

Файл mdadm.conf содержит информацию о массивах RAID и компонентах, которые они включают. Для его создания выполните следующие команды:

каталог /etc/mdadm

echo «Разделы DEVICE» > /etc/mdadm/mdadm.conf

mdadm —detail —scan —verbose | awk ‘/ARRAY/ {print}’ >> /etc/mdadm/mdadm.conf

Пример содержания:

Разделы УСТРОЙСТВА
МАССИВ /dev/md0 level=raid1 num-devices=2 metadata=1.2 name=proxy.dmosk.local:0 UUID=411f9848:0fae25f9:85736344:ff18e41d

* в данном примере хранится информация о массиве /dev/md0 — уровень 1, собран из 2-х дисков.

Создание файловой системы и монтирование массива

Создание файловой системы для массива делается так же, как и для раздела, например:

mkfs.ext4 /dev/md0

* Этой командой мы создаем файловую систему ext4 на md0.

или:

mkfs.xfs /dev/md0

* для файловой системы xfs.

Смонтировать раздел можно командой:

смонтировать /dev/md0 /mnt

* в данном случае мы смонтировали наш массив в директорию /mnt.

Чтобы этот раздел также монтировался при загрузке системы, добавьте fstab.

Сначала посмотрите на идентификатор раздела:

черный

Мы увидим что-то вроде:

/dev/md0: UUID=»ffa7c082-7613-4dbc-ae62-3f5508652cf6″ TYPE=»ext4″

* в моем примере мы будем использовать идентификатор ffa7c082-7613-4dbc-ae62-3f5508652cf6.

теперь открываем fstab и добавляем строчку:

мы /etc/fstab

UUID=»ffa7c082-7613-4dbc-ae62-3f5508652cf6″ /mnt ext4 по умолчанию 0 0

Если мы ранее монтировали раздел в каталог /mnt, введите:

размонтировать / mnt

И после:

собрать -а

Мы должны увидеть смонтированный раздел md следующим образом:

дф-ч

/dev/md0 990M 2.6M 921M 1% /мин

Информация о RAID

Посмотреть статус всех RAID можно командой:

кошка /proc/mdstat

В ответ получаем что-то вроде:

md0 : активный рейд1 sdc1 sdb0
1046528 блоков супер 1.2 [2/2] [UU]

* где md0 — имя RAID-устройства; raid1 sdc1 sdb0 — уровень резервирования и из каких дисков он собран; 1046528 блоков — размер массива; [2/2] [UU] — количество используемых единиц.
** видим строку md0 :active(auto-read-only) — это значит, что после монтирования матрицы она не использовалась для записи.

Подробную информацию о той или иной матрице можно вывести командой:

mdadm -D /dev/md0

* где /dev/md0 — имя RAID-устройства.

Пример ответа:

Версия: 1.2
Время создания: Ср 6 марта 09:41:06 2019
Уровень рейда: Рейд1
Размер массива: 1046528 (1022,00 МБ 1071,64 МБ)
Используемый размер разработки: 1046528 (1022,00 МБ 1071,64 МБ)
Рейдовые отряды: 2
Общее количество единиц: 2
Постоянство: Суперблок постоянен
Время обновления: среда, 6 марта, 09:41:26 2019 г
Состояние: чистый
Активные единицы: 2
Рабочие единицы: 2
Неудачные единицы: 0
Запасные части: 0
Политика согласованности: повторная синхронизация
Имя: proxy.dmosk.local:0 (локальный для хоста proxy.dmosk.local)
UUID: 304ad447:a04cda4a:90457d04:d9a4e884
Событий: 17
Номер Основной Младший RaidDevice State
0 8 16 0 активная синхронизация /dev/sdb
1 8 32 1 активная синхронизация /dev/sdc

* Где:

  • Версия — версия метаданных.
  • Время создания — дата создания массива.
  • Уровень рейда — уровень RAID.
  • Размер массива — объем дискового пространства для RAID.
  • Used Dev Size — используемый размер для устройств. Для каждого уровня будет индивидуальный расчет: RAID1 равен половине общего размера диска, RAID5 равен размеру, используемому для четности.
  • Raid Devices — количество устройств, используемых для RAID.
  • Всего дисков — количество дисков, добавленных в RAID.
  • Время обновления — дата и время последнего изменения массива.
  • Состояние — текущее состояние чистота в порядке.
  • Активные объекты — количество активных объектов в массиве.
  • Рабочие единицы — количество рабочих единиц, добавленных в матрицу.
  • Failed Devices — количество неисправных устройств.
  • Резервные единицы — количество резервных единиц.
  • Политика согласованности — политика согласованности для активного массива (в случае непредвиденной ошибки). По умолчанию используется ресинхронизация — полная ресинхронизация после восстановления. Также это могут быть растровые, журнальные, плл.
  • Имя — это имя компьютера.
  • UUID — это идентификатор массива.
  • События — количество событий обновления.
  • Размер блока (для RAID5) — размер блока в килобайтах, который записывается на разные диски.

Подробнее о каждом параметре можно прочитать в руководстве по mdadm:

человек

Информацию о разделах и дисковом пространстве массива также можно вывести с помощью команды fdisk:

fdisk -l /dev/md0

Проверка целостности

Для проверки целостности введите:

эхо ‘проверить’ > /sys/block/md0/md/sync_action

Смотрим результат проверки командой:

кот /sys/блок/md0/md/mismatch_cnt

* если команда возвращает 0, массив в порядке.

Остановить проверку:

эхо ‘бездействует’ > /sys/block/md0/md/sync_action

Восстановление RAID

Рассмотрим два варианта восстановления массива.

Замена диска

Если один из дисков в массиве выйдет из строя, команда cat /proc/mdstat отобразит следующее:

кошка /proc/mdstat

Личности: [raid1]
md0 : активный рейд1 sdb0
1046528 блоков супер 1.2 [2/1] [U_]

* подчеркивание вместо U говорит нам о наличии проблемы — [U_] вместо [UU].

Или:

mdadm -D /dev/md0


Время обновления: Чт 7 марта 20:20:40 2019
Состояние: чистый, испорченный

* статус degraded указывает на проблемы с RAID.

Для восстановления сначала удалите неисправный диск, например:

mdadm /dev/md0 —удалить /dev/sdc

Теперь добавим новый:

mdadm /dev/md0 —добавить /dev/sde

Смотрим на состояние матрицы:

mdadm -D /dev/md0


Время обновления: Чт 7 марта 20:57:13 2019
Состояние: чистое, испорченное, улучшающееся

Состояние восстановления: завершено на 40

* recovery говорит, что RAID восстанавливается; Rebuild Status — текущее состояние перестроения матрицы (в данном примере она перестроена на 40%).

Если синхронизация слишком медленная, вы можете увеличить скорость. Чтобы изменить скорость синхронизации, введите:

эхо ‘10000’ > /proc/sys/dev/raid/speed_limit_min

* скорость по умолчанию speed_limit_min = 1000 КБ, speed_limit_max — 200000 КБ. Чтобы изменить скорость, вы можете изменить только минимальную скорость.

Пересборка массива

Если нам нужно вернуть ранее размонтированный или свернутый массив дисков, которые уже были частью RAID, вводим:

mdadm —собрать —сканировать

* эта команда автоматически найдет требуемую конфигурацию и восстановит RAID.

Мы также можем указать, с каких дисков восстанавливать массив:

mdadm —mount /dev/md0 /dev/sdb /dev/sdc

Запасной диск (Hot Spare)

Если в массиве есть запасной диск с возможностью «горячей» замены, то в случае отказа одного из основных дисков его место займет запасной.

Диск Hot Spare будет просто добавлен в массив:

mdadm /dev/md0 —добавить /dev/sdd

Информация о матрице изменится, например:

mdadm -D /dev/md0


Номер Основной Младший RaidDevice State
0 8 16 0 активная синхронизация /dev/sdb
2 8 48 1 активная синхронизация /dev/sdc
3 8 32 — запчасти /dev/sdd

Проверить работоспособность запаски можно вручную, смоделировав выход из строя одного из дисков:

mdadm /dev/md0 —сбой /dev/sdb

И посмотрите на состояние:

mdadm -D /dev/md0


Состояние восстановления: завершено на 37

Номер Основной Младший RaidDevice State
3 8 32 0 восстановление резервной копии /dev/sdd
2 8 48 1 активная синхронизация /dev/sdc
0 8 16 — ошибка /dev/sdb

* как видите, начинается перестроение. Горячий резерв sdd заменил неисправный sdb.

Читайте также: Среднее время жизни SSD

Добавить диск к массиву

В данном примере следует рассмотреть возможность добавления в RAID активного диска, который будет использоваться для работы, а не как запасной.

Добавьте диск в массив:

mdadm /dev/md0 —добавить /dev/sde

В качестве запчасти увидим новый диск:

4 8 16 — запчасти /dev/sde

Теперь расширяем RAID:

mdadm -G /dev/md0 —raid-devices=3

* в данном примере предполагается, что у нас есть RAID 1 и мы добавили в него третий диск.

Удаление массива

При удалении массива внимательно смотрите на названия массива и дисков и подставляйте свои значения.

Если нам нужно полностью размонтировать RAID, мы сначала размонтируем и остановим его:

размонтировать / mnt

* где /mnt — каталог монтирования нашего RAID.

Если получаем ошибку umount: /mnt: target is busy, то смотрим пользовательские процессы, которые мешают нам размонтировать раздел:

fuser-vm

И мы их останавливаем.

mdadm -S /dev/md0

* где /dev/md0 — матрица, которую мы хотим проанализировать.

Если мы получим ошибку mdadm: не удалось остановить массив /dev/md0: Устройство или ресурс заняты, с помощью команды

lsof -f — /dev/md0

. смотрим процессы использующие раздел и останавливаем их.

Далее удаляем суперблоки на всех дисках, из которых он был собран:

mdadm —zero-superblock /dev/sdb

mdadm —zero-superblock /dev/sdc

mdadm —zero-superblock /dev/sdd

* где диски /dev/sdb, /dev/sdc, /dev/sdd были частью массива md0.

А также удалить метаданные и подпись:

wipefs —all —force /dev/sd{b,c,d}

 

Разновидности RAID

Скоростной Рейд 0

Raid 0 не имеет ничего общего с надежностью, потому что он просто увеличивает скорость. Вам нужно как минимум 2 жестких диска, в этом случае данные будут «вырезаться» и записываться на оба диска одновременно. Это означает, что вам будет доступен весь объем этих дисков, а теоретически это означает, что вы получите в 2 раза большую скорость чтения/записи.

Вот как данные распределяются в RAID 0

Но давайте представим, что один из этих дисков вышел из строя — в этом случае неизбежна потеря ВСЕХ ваших данных. Другими словами, вы все равно должны делать регулярные резервные копии, чтобы иметь возможность восстановить информацию позже. Обычно здесь используется от 2 до 4 дисков.

Рейд 1 или «зеркало»

Надежность не снижается. Вы получаете дисковое пространство и производительность только одного жесткого диска, но вы получаете вдвое большую надежность. Один диск сломается — информация будет храниться на другом.

Распределение данных в массиве RAID 1

Номер уровня RAID 1 не влияет на скорость, но объем составляет только половину всего дискового пространства в вашем распоряжении, которого кстати в RAID 1 может быть 2, 4 и так далее, т.е четное число. В общем, главная «фишка» для рейда первого уровня — надежность.

Рейд 10

Сочетает в себе все лучшее от предыдущих видов. Предлагаю разобрать как это работает на примере четырех HDD. Так информация записывается параллельно на два диска, и эти данные дублируются на два других диска.

Распределение данных в массиве RAID 10

В итоге увеличение скорости доступа в 2 раза, но и объём только двух дисков из четырёх в массиве. Но при выходе из строя двух дисков потери данных не будет.

Рейд 5

Этот тип массива очень похож на RAID 1 по своему назначению, только теперь вам потребуется как минимум 3 диска, на одном из которых будет храниться необходимая для восстановления информация. Например, если в таком массиве 6 HDD, то только 5 из них будут использоваться для записи информации.

Распределение данных в массиве Raid 5

За счет того, что данные записываются на несколько жестких дисков одновременно, скорость чтения высокая, что отлично подходит для хранения там больших объемов данных. Но без дорогого рейд-контроллера скорость будет не очень высокой. Не дай бог сломается один из дисков — восстановление информации займет много времени.

Рейд 6

Этот массив может выдержать отказ двух жестких дисков одновременно. Это значит, что для создания такого массива нужно как минимум четыре диска, при том, что скорость записи будет даже ниже, чем для RAID 5.

Распределение данных в RAID 6

Учтите, что без производительного рейд-контроллера такой массив (6) вряд ли соберется. Если у вас всего 4 жестких диска, лучше собрать RAID 1.

Как создать и настроить RAID массив

так выглядит контроллер
RAID-контроллер

RAID-массив можно создать, подключив несколько HDD к материнской плате компьютера, поддерживающей эту технологию. Это означает, что такая материнская плата имеет встроенный контроллер, который обычно встроен в южный мост чипсета. Но контроллер может быть и внешним, который подключается через разъем PCI или PCI-E. Каждый контроллер обычно имеет собственное программное обеспечение для настройки.

Рейд может быть организован как на аппаратном, так и на программном уровне, причем последний вариант наиболее распространен среди домашних ПК. Пользователи не любят встроенный в материнскую плату контроллер за низкую надежность. Кроме того, в случае повреждения материнской платы восстановление данных будет весьма проблематичным. На программном уровне роль контроллера выполняет центральный процессор, в этом случае можно будет легко перенести рейд-массив на другой ПК.

Аппаратный

Как создать RAID-массив? Для этого вам нужно:

  1. Достать где-нибудь материнскую плату с поддержкой RAID (в случае аппаратного RAID);
  2. Купите как минимум два одинаковых жестких диска. Лучше, чтобы они были идентичными не только по характеристикам, но и одного производителя и модели, и подключались к матовому столу с помощью единого интерфейса.
  3. Перенесите все данные с жесткого диска на другой носитель, иначе они будут уничтожены в процессе создания рейда.
  4. Кроме того, в БИОСе нужно включить поддержку RAID, как это сделать в случае с вашим компьютером — не подскажу, в силу того, что БИОС у всех разный. Обычно этот параметр называется примерно так: «Конфигурация SATA или Настроить SATA как RAID».
  5. Затем перезагрузите компьютер, и должна появиться таблица с более тонкими настройками рейда. Возможно, вам придется нажать комбинацию клавиш «ctrl+i» во время процедуры «POST», чтобы эта таблица появилась. Для тех, у кого внешний контроллер, скорее всего, нужно будет нажать «F2». В самой таблице нажмите «Создать массив» и выберите нужный уровень матрицы.

После создания рейд-массива в биосе нужно зайти в «управление дисками» в Windows 7-10 и отформатировать нераспределенное пространство — это и есть наш массив.

Программный

Вам не нужно ничего включать или отключать в BIOS для создания программного RAID. На самом деле, вам даже не нужна поддержка материнской платы для рейда. Как было сказано выше, технология реализована с использованием центрального процессора ПК и средств самой Windows. Да, вам даже не нужно устанавливать стороннее программное обеспечение. Правда, таким образом можно создать только RAID первого типа, который является «зеркалом».

Настройка томов для создания программного рейда в Windows

Щелкните правой кнопкой мыши «мой компьютер» — «управление» — «управление дисками». Затем кликаем по одному из винчестеров, предназначенных для рейда (диск1 или диск2) и выбираем «Создать зеркальный том». В следующем окне выберите диск, который будет зеркалом другого жесткого диска, затем присвойте букву и отформатируйте итоговый раздел.

Добавление нескольких томов для программного создания RAID-массива в Windows

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

Что произойдет, если один из жестких дисков в программном рейде выйдет из строя

Если один жесткий диск выйдет из строя, появится ошибка «Failed Redundancy», в то время как на другом разделе все останется нетронутым.

Подытожим

RAID 5 необходим для ограниченного круга задач, когда в огромные массивы собирается гораздо большее (чем 4 диска) количество HDD. Для большинства пользователей рейд 1 — лучший вариант. Например, при наличии четырех дисков емкостью 3 терабайта каждый в RAID 1 доступно 6 терабайт места. В этом случае RAID 5 предоставит больше места, но скорость доступа значительно снизится. RAID 6 даст всем те же 6 терабайт, но еще меньшую скорость доступа, да еще потребует от вас дорогого контроллера.

Давайте добавим больше RAID-дисков, и вы увидите, как все изменится. Для примера возьмем восемь дисков одинаковой емкости (3 терабайта). В RAID 1 для записи будет доступно только 12 терабайт места, половина объема будет закрыта! RAID 5 в этом примере предоставит 21 терабайт дискового пространства + будет возможность восстановить данные с поврежденного жесткого диска. RAID 6 предоставит 18 терабайт, и данные можно будет получить со всех двух дисков.

В общем, RAID стоит недешево, но лично я хотел бы иметь в своем распоряжении RAID первого уровня из 3-х терабайтных дисков. Есть еще более изощренные методы, такие как RAID 6 0, или «рейд из рейдовых массивов», но это имеет смысл при большом количестве HDD, хотя бы 8, 16 или 30 — согласитесь, это уже далеко за рамки что нормальное «бытовое использование» и востребовано в основном в серверах.

Оцените статью
Всё о компьютерах
Adblock
detector