Установка и настройка RAID

 

Зеркалирование при помощи RAID подразумевает создание точной копии (то есть зеркала) одних и тех же данных, которые при этом записываются на два диска.

Для того чтобы создать массив RAID1, требуется как минимум два диска. Это имеет смысл только когда скорость чтения или надежность выше, чем у зеркалируемого носителя.

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

Отличительные черты RAID1

  • Высокая производительность зеркал.
  • Для хранения некоторого объёма данных требуется вдвое больше места. Таким образом, при использовании двух жестких дисков по 500 Гб (то есть общей емкостью примерно 1 Тб), возможно зеркалирование только 500 Гб информации.
  • Потери данных при зеркалировании практически невозможны, так как одна и та же информация находится на двух дисках.
  • Скорость чтения превышает скорость записи данных.

Требования

Для того, чтобы использовать RAID1, требуется не менее двух дисков. Однако можно использовать любое, кратное двум число: 2, 4, 6, 8 и так далее. Для того, чтобы использовать большее количество дисков, требуется установка физического RAID-контроллера (то есть аппаратного адаптера).

В данном случае речь идет о программной, а не аппаратной базе для RAID, однако если у вас имеется RAID-контроллер, вы можете работать с ним через пользовательский интерфейс соответствующей утилиты или при помощи комбинаций клавиш Ctrl+I.

Настройки моего сервера

Операционная система: CentOS, 6.5 Final

IP-адрес: 192.168.0.226

Имя хоста: rd1.tecmintlocal.com

Диск 1 [20 Гб] : /dev/sdb

Диск 2 [20 Гб] : /dev/sdс

Данная статья содержит пошаговую инструкцию по настройке программного обеспечения для RAID1, то есть использованию mdadm (утилиты для создания и управления RAID) на платформе Linux. Этот алгоритм работает для различных дистрибутивов Linux, например, RedHat, CentOS, Fedora и прочих.

Шаг 1: Установка требуемого ПО и проверка дисков

  1. Как было сказано ранее, в данном примере для создания и управления RAID на Linux используется mdadm с пакетным менеджером yum или apt-get.

 

# yum install mdadm [on RedHat system]

 

# apt-get install mdadm [on RedHat system]

 

  1. После установки mdadm нужно проверить, сконфигурированы ли жесткие диски для использования RAID с помощью следующей команды:

 

#mdadm –E /dev/sd[b-c]

 

Результатом выполнения данной команды будет сообщение: “No md superblock detected on /dev/sdb”, (“ни одного суперблока md на /dev/sdb обнаружено не было”). При этом аналогичное сообщение будет выведено и для /dev/sdc. Это значит, что RAID-массив ещё не был создан.

 

Шаг 2: Разделение жестких дисков для RAID

 

  1. Как уже говорилось, для создания RAID1 требуется как минимум два диска (/dev/sdb и /dev/sdc). При помощи команды fdisk можно создать разделы на них и изменить при этом тип RAID.

 

# fdisk /dev/sdb

 

Для того, чтобы создать раздел:

  • Нажмите клавишу n для создания нового раздела
  • Затем выберите “P”, что означает «Первичный раздел»
  • Теперь выберите число разделов 1
  • Установите размер по умолчанию (для этого дважды нажмите клавишу Enter)
  • Далее нажмите клавишу “P”, чтобы получить данные о разделах
  • Нажмите клавишу “L” чтобы выбрать доступные типы
  • Нажмите клавишу “T” чтобы выбрать разделы
  • Теперь снова нажмите клавишу “P”, чтобы увидеть произошедшие изменения
  • Нажмите клавишу “W” для того, чтобы их сохранить

После создания раздела на /dev/sdb, таким же образом можно создать новый раздел диска /dev/sdc:

 

# fdisk /dev/sdb

 

  1. После завершения создания разделов, убедитесь в том, что оба диска (sdb и sdc) были необходимым образом изменены. Для этого следует использовать ту же команду mdadm. Так же при этом нужно выбрать тип RAID.

 

# mdadm –E /dev/sd[b-c]

 

Примечание: После выполнения указанных команд RAID-массив на sdb1 и sdc1 по-прежнему не определен, именно поэтому мы получаем сообщение no md superblock detected.

Шаг 3 Создание дискового массива RAID1

  1. Теперь создайте RAID1-устройство под названием “dev/md0”, а так же проверьте его. Для этого нужно выполнить данную последовательность команд:

 

# mdadm —create /dev/md0 —level=mirror —raid-devices=2 /dev/sd[b-c]1

 

После выполнения данной команды вы получите сообщение о том, что массив с указанным именем начал свою работу.

 

# cat /proc/mdstat

 

  1. Далее проверьте тип RAID-устройств и RAID-массива при помощи следующих команд:

 

# mdadm -E /dev/sd[b-c]1

 

После выполнения данной будет выведена информация об уровне RAID (в данному случае RAID1), а так же количестве RAID-устройств (в данном случае два)

 

# mdadm —detail /dev/md0

 

В результате выполнения данной команды так же будет получена информация о количестве активных (2), работающих (2) и свободных(0) устройств, а так же устройств, во время работы которых произошла ошибка.

Как видите, убедится в том, что массив RAID1 создан, а так же использует разделы /dev/sdb1 и /dev/sdc1, довольно просто. При этом можно получить информацию о статусе повторной синхронизации.

Шаг 4. Создание файловой системы на RAID-устройствах

  1. Теперь создайте файловую систему при помощи ext4 для md0, а затем смонтируйте устройство при помощи /mnt/raid1.

 

# mkfs.ext4 /dev/md0

 

  1. Далее смонтируйте только что созданную файловую систему при помощи /mnt/raid1, создайте несколько файлов и проверьте содержимое точки монтирования.

 

# mkdir /mnt/raid1

 

# mount /dev/md0 /mnt/raid1/

 

# touch /mnt/raid1/tecmint.txt

 

# echo «tecmint raid setups» > /mnt/raid1/tecmint.txt

 

  1. Для автоматического монтирования RAID1 во время перезагрузки системы, создайте запись в файле fstab. Откройте файл /etc/fstab и добавьте в конце файла следующую строку:

 

/dev/md0             /mnt/raid1           ext4 defaults     0 0

 

  1. Выполните команду “mount -a”, чтобы удостовериться, что добавление записи в файл fstab прошло успешно.
# mount –av

 

В результате выполнения данной команды выводится сообщение “dev/md0 already mounted on /mnt/raid1” (“dev/md0 уже смонтрован на /mnt/raid1”).

 

  1. Теперь вручную сохраните настройки RAID в файле mdadm.conf при помощи следующей команды:

 

# mdadm —detail —scan —verbose >> /etc/mdadm.conf

 

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

 

Шаг 5. Проверить целостность данных после ошибки диска.

 

  1. Главная цель создания RAID-массива – сохранения целостности данных даже после отказа одного из дисков. Поэтому нужно проверить, что происходит, когда не удается получить доступ к одному из дисков массива.

 

# mdadm —detail /dev/md0

 

На данный момент наш RAID-массив имеет два доступных и два активных устройства. Теперь давайте посмотрим, что произойдет, если диск sdc будет удален или откажет.

 

# ls -l /dev | grep sd

 

# mdadm —detail /dev/md0

 

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

 

# cd /mnt/raid1/

 

# cat tecmint.txt

В результате выполнения данных команд можно убедиться, что данные по-прежнему доступны. Таким образом, мы увидели, в чем преимущество использования зеркалирования по средствам RAID1. Следующая статья будет посвящена настройке RAID5 с чередованием блоков данных и контрольной суммы. Надеюсь, данная статья помогла вам понять, как работает зеркалирование при помощи RAID1.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *