Astra linux программный raid

Программный raid в Linux

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

Для создания RAID массивов используются аппаратные специальные контроллеры. Однако создать RAID массив можно и без такого контролера. Такие массивы называются программными. В этой статье мы рассмотрим как создать программный RAID Linux.

Что такое RAID

Аббревиатура RAID расшифровывается как Redundant Array of Inexpensive Disks. С помощью этой технологии вы можете превратить несколько реальных жестких дисков в один виртуальный диск с увеличенным объемом и скоростью передачи данных. Но объем полученного диска и параметры его работы уже зависят от выбранного режима работы RAID. Доступны такие режимы:

  • RAID 0 — позволяет увеличить скорость записи. Все диски массива будут использоваться для записи данных, поэтому их скорости будут складываться. Например, если у вас есть три диска объемом 512 Гб и скоростью записи 200 Мб в секунду, то объединив их в RAID 0 вы получите виртуальный диск объемом 1,5 Тб и максимальной скоростью записи 600 Мб в секунду.
  • RAID 1 — этот режим увеличивает сохранность данных. Во время записи одни и те же данные пишутся параллельно на подключённые диски. В результате у вас будет несколько копий одних и тех же данных. Если один из дисков массива выйдет из строя, система продолжит работать, так как данные есть ещё и на другом диске. Например, если вы объедините два диска по 1 Тб в RAID 1, то получите один виртуальный диск с объемом 1 Тб.
  • RAID 10 — объединяет в себе два предыдущих варианта. Он может состоять как минимум из четырех дисков. В таком случае сначала создаются два массива RAID 1, а поверх них создается массив RAID 0 для увеличения производительности.

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

Создание программного RAID в Linux

Шаг 1. Установка mdadm

Для управления программными RAID массивами в Linux используется утилита mdadm. Для того чтобы установить её в Ubuntu или Debian выполните такую команду:

Для установки утилиты в CentOS/Fedora/RedHat необходимо выполнить:

Шаг 2. Подготовка дисков

Посмотреть список дисков, подключённых к системе можно с помощью команды lsblk:

Читайте также:  Astra linux ssh подключение

В этой статье я покажу как объединить три диска в RAID на примере дисков /dev/sda, /dev/sdb и /dev/sdc. Сначала необходимо определиться стоит ли размещать RAID непосредственно на диски или на разделы. Лучше выбрать разделы, так как это дает больше гибкости и безопасности. Во первых, операционная система может перезаписать суперблок RAID если он размещён прямо на диске. Во вторых, если вы выделяете весь диск под RAID, то у вас могут возникнуть проблемы при замене диска. Диски одинакового объема, обычно, немного отличаются у разных производителей. Поэтому для замены вам придется искать точно такой же диск с точно таким же реальным объемом. Если же у вас будет раздел, вы просто сможете создать раздел нужного объема.

Сначала нужно создать таблицу разделов на всех выбранных дисках:

sudo parted /dev/sda mklabel msdos
sudo parted /dev/sdb mklabel msdos
sudo parted /dev/sdc mklabel msdos

Если на диске уже существует таблица разделов программа предупредит о том, что создание новой сотрёт все данные с диска. После создания таблицы разделов следует создать по разделу на каждом диске. Например, создадим разделы размером 460 гигабайт. Для этого можно воспользоваться той же командой parted:

sudo parted /dev/sda mkpart primary ext4 2048 460Gb
sudo parted /dev/sdb mkpart primary ext4 2048 460Gb
sudo parted /dev/sdc mkpart primary ext4 2048 460Gb

Теперь диски готовы к размещению на них RAID:

Шаг 3. Создание RAID 0

Для создания RAID массива надо выполнить команду mdadm с опцией —create, указать режим работы массива, количество дисков и сами диски. Синтаксис команды такой:

$ sudo mdadm —create /dev/имя_массива —level= режим_работы —raid-devices= количество_устройств список устройств

sudo mdadm —create /dev/md0 —level=0 —raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

После выполнения этой команды вы увидите раздел raid в lsblk. С этим разделом можно работать как с любым обычным разделом в вашей системе.

Шаг 4. Тестирование RAID 0

Давайте для примера отформатируем полученный раздел в файловую систему Ext4, смонтируем и попробуем записывать туда файлы:

sudo mkfs -t ext4 /dev/md0
sudo mount /dev/md0 /mnt

Затем можно тестировать скорость с помощью dd:

sudo dd if=/dev/zero of=/mnt/file bs=1G count=5

Как видите, при записи 5 Гб данных мы получаем скорость 400 Мб/сек, это уже на уровне обычного SSD.

Шаг 5. Информация о RAID

Найти информацию обо всех созданных в системе RAID массивах вы можете в файле /proc/mdstat:

Именно так можно посмотреть RAID Linux. Посмотреть более детальную информацию о массиве /dev/md0 можно с помощью самой утилиты mdadm:

Здесь в том числе отображается состояние RAID Linux. Посмотреть детальную информацию о каждом устройстве, которое входит в RAID можно с помощью опции —examine:

sudo mdadm —examine /dev/sda1 /dev/sdb1 /dev/sdc1

Шаг 6. Сохранение RAID массива

В принципе, уже сейчас RAID массив работает и продолжит работать после перезагрузки, потому что mdadm просканирует все диски, найдёт метаданные массива и построит его. Но неизвестно какое имя программа присвоит полученному массиву и неизвестно все ли параметры будут восстановлены верно. Поэтому конфигурацию массива лучше сохранить. Для этого используйте такую команду:

Читайте также:  Блендер линукс 32 бит

sudo mdadm —detail —scan —verbose | sudo tee -a /etc/mdadm/mdadm.conf

Затем нужно пересоздать initramfs с поддержкой этого массива:

С полученным массивом можно обращаться как с обычным разделом диска. Например, для того чтобы автоматически монтировать его в систему добавьте такую строчку в /etc/fstab:

/dev/md0 /mnt/ ext4 defaults 0 0

На этом создание raid массива linux завершено.

Шаг 7. Переименование RAID массива

Если вы не выполните предыдущий пункт и перезагрузите компьютер, то можете получить RAID массив с именем md127 вместо md0, такое имя также может быть присвоено второму RAID массиву. Для того чтобы переименовать массив, его придется пересобрать. Для этого сначала остановите существующий массив:

Затем выполните команду переименования. Синтаксис у неё такой:

$ sudo mdadm —assemble —update= name —name =номер /dev/md_номер список устройств

sudo mdadm —assemble —update=name —name=0 /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1

После этого следует повторить предыдущий шаг для уже правильного сохранения RAID устройства.

Шаг 8. Удаление RAID массива

Если вы не хотите чтобы ваши диски и дальше были объединены в RAID, его можно удалить. Для этого выполните такую команду:

Она удалит все метаданные с дисков /dev/md0. Дальше останется только удалить или закомментировать секцию данного RAID массива в /etc/mdadm/mdadm.conf

sudo vi /etc/mdadm/mdadm.conf

Шаг 10. Создание массива RAID 1

Теперь вы знаете как создать raid linux на примере RAID 0. Давайте ещё разберемся с RAID 1. Для создания RAID 1 используется такая же команда как и для RAID 0, но указывается другой уровень работы массива:

sudo mdadm —create /dev/md0 —level=1 —raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

Затем вы можете убедится что RAID создан посмотрев информацию о нём:

Ну и с помощью lsblk можно оценить размер устройства:

Как и ожидалось, размер не увеличился, поскольку копии данных будут записываться на все три диска. Теперь давайте посмотрим на скорость:

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

Выводы

В этой статье мы рассмотрели как создать программный RAID в Linux. Как видите здесь нет ничего очень сложного. Может и программный RAID не такой производительный, как аппаратный, зато полностью решает задачи объединения дисков.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Установка Astra Linux на программный (soft) RAID

Статья основана на материале How to configure software RAID1 during installation process. В качестве иллюстраций приводится установка Astra Linux Common Edition 2.12 н а программный (Soft) RAID, для других обновлений Astra Linux действия аналогичны.

  • установка выполняется с созданием двух дисковых разделов (файловая система и swap) без использования резервных дисков;
  • предполагается, что компьютер, на который выполняется установка ОС, укомплектован двумя одинаковыми жесткими дисками;
  • установка выполняется в графическом режиме, для установки в текстовом режиме действия аналогичны.

Установка ОС

  1. Начать обычный процесс установки операционной системы и выполнить его до этапа «Разметка дисков»;

В примере используются диски sda и sdb. Такие имена дисков используются на физических машинах. При работе на виртуальных машинах диски могут называться vda и vdb.

Читайте также:  Сброс пароля суперпользователя linux

Создать на каждом из дисков по два дисковых раздела с типом «Первичный»:
один раздел для основной файловой системы (для примера — размером в 80% диска),
и второй раздел для области подкачки (на оставшемся свободном месте):

И используемый как

физический том для RAID:

Аналогичные действия выполнить для создания второго раздела на оставшемся свободном месте на первом диске:

Аналогичные действия выполнить для второго диска

Сохранить изменения:

Создать MD-устройство типа RAID1:


Состоящее из двух дисков:

И имеющее ноль резервных дисков:


И состоящее из двух одинаковых дисковых разделов:

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

«Закончить» разметку и продолжить:

Для созданных программных RAID-устройств выбрать порядок их использования.
На первом устройстве разместить корневую файловую систему:

Выбрать пункт «Закончить разметку, записать изменения на диск», нажать «Продолжить» и подтвердить запись изменений:

После сохранения изменений автоматически начнется установка ОС.
Установку ОС выполнить в обычном режиме до этапа установки системного загрузчика GRUB.
На запрос о необходимости установки загрузчика ответить «Да», нажать «Продолжить»:

Установка системного загрузчика

  1. Системный загрузчик GRUB будет установлен только на один из дисков:

Поэтому на второй диск системный загрузчик нужно будет установить вручную.

Нажать «Ctrl»+»Alt»+F2 ( для виртуальных машин под Oracle VirtualBox «Правый Ctrl»+F2), после приглашения входа в консоль, нажать Enter для активации консоли:

Источник

Описание стенда

Для установки ОС использовался компьютер HPE ProLiant ML30 Gen9, имеющий 4 жестких диска диска по 4 ТБ.

Разметка дисков

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

Аналогичные действия проделать на остальных дисках.

После выполнения действий для всех дисков получаем:

Теперь на каждом диске, где имеется «свободное место»(в нашем примере 4 TB), создать раздел:

Проделать данное действие с каждым диском, в итоге получаем :

Сборка программного RAID0

Войти в пункт «настройка программного RAID», сохранить изменения на устройствах — да,

Создать MD устройство, RAID0.

Нажать продолжить, закончить.
В итоге должно получиться рейд устройство общим размером 16 TB :

Разметка дискового массива

Авто использовать весь диск,

все файлы в одном разделе.

В итоге должно быть получено следующее :

Рейд размечен, но испорчена разметка разделов, которую мы делали на каждом диске размером по 512 МБ.
(Требуется : использовать раздел как системный раздел для EFI(ESP), выбрано fat32).
Разметка должна быть восстановлена.

Выбирать нужный раздел, перейти в него и назначить его использование как «системного раздела для EFI»:

На этом настройка раздела закончена.

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

Переразметка раздела массива

Далее необходимо переразметить раздел рейда.

Выбрать RAID0-устройство, нажать на него, создать новую пустую таблицу разделов — да.
Получаем снова 16 ТБ свободного места и делаем раздел подкачки — 8ГБ (остальное место для корневого раздела(ext4).
Получаем :

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

Источник

Оцените статью
Adblock
detector