Сергей Маликов
06.11.2019
39212

RAID 10: особенности, создание и конфигурирование.

В статье рассматриваются особенности создания RAID 10 – комбинации массивов RAID 1 и RAID 0 – из 4 дисков. Особенности RAID 10: Минимальное количество дисков – 4. Объем RAID 10 массива будет в 2 раза меньше суммарного объема входящих в него дисков. В raid 1 данные будут зеркалированы на 2 диска, в raid 0 – […]

В статье рассматриваются особенности создания RAID 10 – комбинации массивов RAID 1 и RAID 0 – из 4 дисков.

Особенности RAID 10:

  • Минимальное количество дисков – 4.
  • Объем RAID 10 массива будет в 2 раза меньше суммарного объема входящих в него дисков.
  • В raid 1 данные будут зеркалированы на 2 диска, в raid 0 – данные будут записаны поочередно на первый и на второй диск, без дублирования. RAID 10 комбинирует RAID 1 и RAID 0.
  • Данные будут сохранены, если произойдет отказ 1 диска в каждом подмассиве.

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

Информация об используемой в примере системе:

lsbrelease –a

Если утилита отсутствует, для ее использования необходимо будет установить пакет redhat-lsb – ‘yum install redhat-lsb’

Информация об используемой в примере системе
Информация об используемой в примере системе

Проверить их отображение можно командой:

lsblk
Список подключенных дисков
Список подключенных дисков

Для создания RAID массива должен быть установлен пакет mdadm (yum install mdadm).

Проверяем подключенные диски на отсутствие метаданных raid. Если такие блоки найдены – необходимо отформатировать утилитой dd.

mdadm -E /dev/sd[be]
Проверка подключенных дисков
Проверка подключенных дисков
fdisk /dev/sdb

В консоли fdisk выберите:

  • создание раздела(n)
  • тип раздела primary(p)
  • номер раздела(1)

начальный и конечный блоки

  • изменение id раздела(t)
  • установка id раздела в Linux raid autodetect(fd)
  • вывод таблицы разделов для проверки результатов(p)
  • применение изменений и выход(w).

Также, на каждом диске создаем раздел с помощью fdisk.

Создание раздела для raid
Создание раздела для raid

Повторная проверка дисков и разделов утилитой mdadm на наличие существующего raid массива

mdadm -E /dev/sd[b-e]
mdadm -E /dev/sd[b-e]1
Проверка дисков и разделов утилитой mdadm
Проверка дисков и разделов утилитой mdadm

Способ 1.

Создание устройства md0. В параметрах указываются имя raid устройства(md0), тип raid(10), количество устройств(4) и сами устройства, которые будут входить  в raid(/dev/sd[b-e]1).

mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1

Проверка созданного raid массива

cat /proc/mdstat
Создание raid 10
Создание raid 10

Подробное отображение информации о raid массиве и входящих в него устройствах

mdadm --examine /dev/sd[b-e]1
mdadm --detail /dev/md0
Детальное отображение о raid массиве и входящих в него устройствах
Детальное отображение о raid массиве и входящих в него устройствах

Создание файловой системы ext4 на raid устройстве md0 и монтирование в /mnt/raid10

mkfs.ext4 /dev/md0
mkdir /mnt/raid10
mount /dev/md0 /mnt/raid10/
ls -l /mnt/raid10/
Форматирование и монтирование raid массива
Форматирование и монтирование raid массива

Добавление записи в /etc/fstab для автоматического монтирования raid

nano /etc/fstab
Добавление записи в /etc/fstab
Добавление записи в /etc/fstab

Проверка записей в /etc/fstab

mount -av
Проверка записей в /etc/fstab
Проверка записей в /etc/fstab

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

mdadm --detail --scan --verbose >> /etc/mdadm.conf
cat /etc/mdadm.conf
Сохранение конфигурации raid
Сохранение конфигурации raid

Первый метод является более простым.

Для создания RAID 10 другим методом необходимо сначала создать два массива RAID 1, а затем, используя эти массивы создать RAID 0.

Создание двух массивов RAID 1, используя 4 диска /dev/sdb,/dev/sdс и /dev/sdd,/dev/sde и проверка статуса созданных raid устройств:

mdadm --create /dev/md1 --metadata=1.2 --level=1 --raid-devices=2 /dev/sd[b-c]1
mdadm --create /dev/md2 --metadata=1.2 --level=1 --raid-devices=2 /dev/sd[d-e]1
cat /proc/mdstat

Создание RAID 0, используя устройства md1 и md2, и проверка статуса:

mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/md1 /dev/md2
cat /proc/mdsta

Сохранение конфигурации raid

mdadm --detail --scan --verbose >> /etc/mdadm.conf

Далее, для тестирования восстановления данных создадим файлы и заполним данными

touch /mnt/raid10/raid10_file_{1..10}.txt
files=$(ls -l /mnt/raid10/ | awk '{print$9}')
for file in $files
do
$(echo test file:  $file > $file)
$(date >> $file)
done;
ls -l /mnt/raid10/
cat  /mnt/raid10/raid10_file_1.txt
Создание тестовых данных
Создание тестовых данных

Замена неисправного диска при сбое, добавление запасного диска

Имеется возможность добавления запасного диска для быстрой замены при выходе из строя одного из основных.

Проверим отображение подключенного диска (/dev/sdf) с помощью

lsblk

Проверим присутствие на диске метаданных raid и, если их нет(иначе их необходимо будет затереть), с помощью fdisk разметим для raid так же как и в примере выше.

Проверка подключения диска, проверка на raid блоки, разметка для raid
Проверка подключения диска, проверка на raid блоки, разметка для raid

Далее повторно проверим раздел, добавим диск /dev/sdf1 в массив md0, и проверим добавление запасного диска в raid устройство

mdadm --examine /dev/sdf
mdadm --examine /dev/sdf1
mdadm --add /dev/md0 /dev/sdf1
mdadm --detail /dev/md0
Добавление запасного диска в raid 10 и проверка статуса
Добавление запасного диска в raid 10 и проверка статуса

Пометим диск /dev/sdb1 в массиве /dev/md0  как сбойный и проверим статус

mdadm --manage --fail /dev/md0 /dev/sdb1
mdadm --detail /dev/md0
cat /proc/mdstat
Пометка одного из дисков в массиве как сбойного и проверка статуса
Пометка одного из дисков в массиве как сбойного и проверка статуса

После завершения процесса синхронизации статус поменяется на [UUUU]. Для дисков большого размера процесс синхронизации займет длительное время – от нескольких часов до суток.

cat /proc/mdstat

Также, проверим данные, имевшиеся на raid массиве

ls -l /mnt/raid10
cat /mnt/raid10/raid10_file_1.txt
Проверка статуса и данных после сбоя
Проверка статуса и данных после сбоя

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

Утилита mdadm с ключом –remove удалит из массива указанный команде диск. Удалим диск /dev/sdb1 из /dev/md0, который ранее был помечен как сбойный и проверим статус.

cat /proc/mdstat
mdadm --remove /dev/md0 /dev/sdb1
cat /proc/mdstat
Удаление диска из массива и проверка статуса.
Удаление диска из массива и проверка статуса.

Расширение массива

Проверим отображение подключенного диска (/dev/sdf) с помощью

lsblk

Проверим присутствие на диске метаданных raid и, если их нет(иначе их необходимо будет затереть), с помощью fdisk разметим для raid так же как и в примере выше. Добавим диск в массив, увеличим размер массива и проверим статус raid.

cat /proc/mdstat
mdadm --add /dev/md0 /dev/sdg1
mdadm --grow --raid-devices=6 /dev/md0
mdadm --detail /dev/md0
cat /proc/mdstat

Также, необходимо сделать изменения в /etc/mdadm.conf

mdadm --detail --scan >> /etc/mdadm.conf 
Добавление диска в raid, увеличение размера массива и проверка статуса
Добавление диска в raid, увеличение размера массива и проверка статуса
 
avatar
  Подписаться  
Уведомление о

Остались вопросы?

Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

Why Choose HUGE?

Unlimited pre-designed elements

Each and every design element is designed for retina ready display on all kind of devices

User friendly interface and design

Each and every design element is designed for retina ready display on all kind of devices

100% editable layered PSD files

Each and every design element is designed for retina ready display on all kind of devices

Created using shape layers

Each and every design element is designed for retina ready display on all kind of devices