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

Обновлено: 06.07.2024

Установка Ubuntu 20.04 с программным RAID 1

У меня возникли проблемы с поиском руководства/шагов по настройке программного RAID 1 в программе установки Ubuntu. Я наткнулся на сообщение в блоге, в котором шаги были написаны очень красиво, однако, поскольку оно было написано в виде комментария, я подумал, что люди могут не заметить его, когда они впервые просматривают результаты поиска. Я перечислю его шаги, а также скриншоты и немного больше информации.

Моя установка

Я буду тестировать свою установку KVM, однако все приведенные ниже шаги применимы так же, как если бы сервер был физическим сервером.

У меня есть два диска емкостью 200 ГБ. Я планирую настроить их на зеркале рейда1, у которого будет такая таблица разделов:

Конфигурация хранилища Ubuntu

После загрузки установщика DVD/ISO для Ubuntu 20.04.2 выполняйте его, пока не дойдете до раздела Управляемая настройка хранилища.

Выберите «Пользовательский макет хранилища» и выберите «Готово».

Если у вас есть какие-либо существующие разделы, удалите их сейчас, выделив Доступное устройство и выбрав Переформатировать.

Шаг 1. Настройте загрузочные диски

Выберите первый диск и выберите параметр «Использовать как загрузочное устройство». (см. ниже).


Использовать как загрузочный диск

Проделайте то же самое для второго диска, однако теперь в опции будет указано «Добавить как другое загрузочное устройство»

Теперь у вас будет создано два раздела bios_grub.


Обратите внимание, что у нас есть раздел bios_grub на каждом диске

Шаг 2. Создание загрузочных разделов

Этот шаг включает в себя создание физических разделов на наших дисках, однако ключевым моментом является сохранение их неформатированными.

Давайте продолжим и выберем ваш первый диск, а затем выберите опцию Добавить раздел GPT


Это будет наш загрузочный раздел, поэтому мы можем установить размер раздела только 1G. Убедитесь, что он не отформатирован. Нажмите Создать


Повторите описанные выше действия, начиная с шага 2, чтобы создать еще один раздел 1G на втором диске.

Теперь ваши диски/разделы должны выглядеть так.


Шаг 3. Создание разделов Swap и Root

Раздел подкачки на самом деле необязателен. Я предпочитаю использовать файл подкачки, так как он более гибок. В любом случае, вы решаете, правильно ли вам создать только корень или и корень, и своп. Шаги будут точно такими же.

Повторите действия шага 2, чтобы создать раздел подкачки и/или корневой раздел. Если вы создаете своп, сделайте это в первую очередь. Как правило, размер раздела подкачки должен соответствовать объему оперативной памяти.

Не забудьте оставить разделы неформатированными.

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

Ниже показано, что вы должны увидеть после создания разделов. Имейте в виду, если вы создали своп, то у вас будет 4 раздела вместо 3, как у меня.


Шаг 4. Создание многодисковых массивов

Наконец-то мы добрались до последнего шага. Идем дальше и выбираем Создать программный RAID (md)

Появится меню с предложением создать ваш первый мультидиск (md0). Давайте продолжим и выберем раздел 2 на каждом диске. Они оба должны быть 1G. Выберите Создать


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

Теперь ваши разделы должны выглядеть так, как показано на рисунке ниже.


Шаг 5. Сопоставление /boot, /swap и / с нашими массивами рейдов

Последним шагом в настройке хранилища является выбор наших md-устройств из списка доступных устройств, их форматирование и сопоставление с местом назначения.

Давайте выберем md0 и добавим раздел GPT


Мы можем оставить размер пустым, чтобы использовать все доступное пространство. Я буду форматировать диски в ext4 и монтировать md0 в /boot


Выполните те же действия для форматирования разделов подкачки и корневого раздела.

Ваша окончательная таблица разделов будет выглядеть примерно так:


Теперь вы можете выбрать "Готово" в нижней части страницы, чтобы пройти оставшуюся часть установки.

Дополнительно

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

В этом руководстве вы узнаете, как настроить программный рейд в Ubuntu 20.04. RAID — это аббревиатура от Redundant Array of Independent Disks. Вместо слова «независимый» иногда может использоваться термин «недорогой». RAID предназначен для объединения нескольких устройств/недорогих дисков в массив, обеспечивающий более высокую производительность, чем у одного большого и дорогого диска.

Некоторые из основных причин использования RAID:

• увеличена скорость передачи данных
• увеличено количество транзакций в секунду
• увеличена емкость одного блочного устройства
• повышена эффективность восстановления после сбоя одного диска

Существует три возможных типа RAID: встроенный RAID, аппаратный RAID и программный RAID. В этом руководстве основное внимание уделяется настройке программного RAID в Ubuntu 20.04.

Настройка программного RAID-массива в Ubuntu 20.04

Программный RAID используется для реализации различных уровней RAID в коде блочного устройства ядра. Ядро Linux содержит драйвер нескольких устройств (MD), который позволяет решению RAID быть полностью независимым от аппаратного обеспечения.

Уровни RAID

Различные уровни RAID, которые могут быть реализованы, включают:

Рейд уровня 0 (чередование)

  • При уровне RAID 0 данные чередуются/записываются на диски-участники массива.
  • С чередованием данные разбиваются на небольшие фрагменты.
  • Данные распределяются по дискам-членам массива.
  • Емкость хранилища массива равна сумме емкостей дисков/разделов-участников
  • RAID уровня 0 обеспечивает высокую производительность операций ввода-вывода.
  • Не обеспечивает отказоустойчивости, поэтому при отказе одного устройства в массиве выходит из строя весь массив.
  • Требуется минимум два устройства хранения.

RAID уровня 1 (зеркалирование)

  • При использовании RAID уровня 1 зеркальная копия (идентичная) данных записывается на каждый диск-участник массива.
  • Обеспечивает избыточность и, следовательно, высокую доступность данных. Если один из дисков массива выходит из строя, можно использовать данные на других дисках.
  • Емкость хранилища массива уровня 1 равна емкости наименьшего зеркального жесткого диска в аппаратном RAID или наименьшего зеркального раздела в программном RAID, поэтому требуется меньше места.
  • Требуется минимум два устройства хранения.

Рейд уровня 5 (разделение с четностью)

  • Это наиболее часто используемый уровень RAID.
  • Требуется не менее трех накопителей/устройств.
  • На этом уровне данные удаляются по дискам-членам массива вместе с информацией о четности. Контроль четности — это необработанные двоичные данные, значение которых вычисляется, чтобы его можно было использовать для восстановления чередующихся данных с других дисков в случае сбоя одного из дисков в массиве.
  • Обеспечивает отказоустойчивость.
  • Емкость хранилища равна емкости наименьшего членского раздела, умноженной на количество разделов минус один.

RAID уровня 6 (чередование с двойной четностью)

  • Аналогичен RAID уровня 5, за исключением того, что он поддерживает двойную четность.
  • Он может выдержать отказ двух дисков в массиве.
  • Требуется как минимум 4 устройства.

RAID уровня 10 (зеркалирование+зачистка)

  • RAID уровня 10 сочетает в себе преимущества производительности уровня 0 с избыточностью уровня 1.
  • Часто обозначается как RAID 1+0 (полоса зеркал).
  • Требуется как минимум 4 устройства.
  • половина устройств хранения используется для зеркального отображения данных, что снижает эффективность использования пространства.
  • самый дорогой из уровней RAID с меньшей полезной емкостью и высокой стоимостью системы.

Настройка программного RAID-массива в Ubuntu 20.04

Как настроить программный RAID в Ubuntu 20.04? В этом руководстве мы покажем, как настроить RAID уровня 1 в Ubuntu 20.04.

Создание разделов RAID

Для настройки RAID уровня 1 необходимо как минимум два диска/раздела. На нашем демонстрационном сервере мы уже подключили два диска, /dev/sdb и /dev/sdc, каждый по 4 ГБ, как показано ниже;

  • Установите тип раздела на диске. В этой настройке мы используем msdos.
  • Создайте раздел и установите тип файловой системы.
  • Установите раздел как раздел программного RAID.
  • Отобразить таблицу разделов.

Повторите то же самое для другого диска.

Настройка программного RAID-массива в Ubuntu 20.04

Теперь, когда у нас есть два диска, вы можете приступить к настройке программного RAID в Ubuntu 20.04.

Прежде чем продолжить, убедитесь, что у вас установлен пакет mdadm. mdadm — это утилита, которую можно использовать для управления MD-устройствами, также известными как Linux Software RAID.

Проверьте, установлен ли пакет.

Если он не установлен, вы можете установить его, выполнив приведенную ниже команду;

Основной синтаксис командной строки для команды mdadm:

  • Assemble (-A, --assemble): собирает компоненты ранее созданного массива в активный массив.
  • Сборка (-B, --build): создает массив без метаданных для каждого устройства (суперблоков).
  • Создать (-C, --create): создает новый массив с метаданными для каждого устройства (суперблоки).
  • Follow/Monitor (-F, --follow, --monitor): отслеживать одно или несколько устройств md и реагировать на любые изменения состояния. Это имеет смысл только для RAID1, 4, 5, 6, 10 или многоканальных массивов.
  • Увеличить (-G, --grow): увеличить (или уменьшить) массив или иным образом изменить его форму.
  • Инкрементная сборка (-I, --incremental): добавление одного устройства в соответствующий массив.
  • Управление . Это предназначено для действий с определенными компонентами массива, таких как добавление новых запасных частей и удаление неисправных устройств.
  • Разное : это режим «все остальное», который поддерживает операции с активными массивами, операции с составными устройствами, такие как стирание старых суперблоков и операции сбора информации.
  • Автоопределение (–auto-detect): этот режим не действует на конкретное устройство или массив, а скорее запрашивает ядро ​​Linux для активации любых автоматически обнаруженных массивов.

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

  • -l, --level= Устанавливает уровень RAID, который может быть одним из; линейный, рейд0, 0, чередование, рейд1, 1, зеркало, рейд4, 4, рейд5, 5, рейд6, 6, рейд10, 10, многопутевой
  • -n, –raid-devices= указывает количество активных устройств в массиве.

Чтобы использовать короткие параметры командной строки;

Чтобы узнать о других параметрах командной строки, обратитесь к man mdadm .

Приведенная выше команда создает /dev/md0 как массив RAID1, состоящий из дисков /dev/sdb1 и /dev/sdc1.

Проверьте состояние RAID;

Чтобы просмотреть подробную информацию о каждом устройстве RAID;

Вы также можете проверить статус, выполнив приведенную ниже команду;

  • Строка Personalities показывает уровень RAID, поддерживаемый ядром в настоящее время.
  • строка md device показывает состояние массива, текущий уровень рейда, установленный на устройстве, и устройства, используемые в массиве.
  • В другой строке указывается полезный размер массива в блоках.
  • [n/m], например, [2/2] показывает, что в массиве будет n устройств, однако в настоящее время используется m устройств. Когда m >= n, все в порядке.

Создать файловую систему на устройстве RAID

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

Обратите внимание, что, как показано выше, мы создали RAID 1, который объединил два диска 4G в один диск 4G.

Следовательно, чтобы создать файловую систему на устройстве md0, выполните приведенную ниже команду, чтобы создать файловую систему ext4 на устройстве RAID.

Монтирование программного RAID-устройства

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

Подтвердить монтирование;

Чтобы автоматически монтировать устройство при загрузке, обновите файл /etc/fstab, добавив строку, подобную приведенной ниже;

Кроме того, вам необходимо обновить файл /etc/mdadm/mdadm.conf, создав прототип файла конфигурации, который описывает активные в данный момент массивы, которые, как известно, состоят из разделов дисков IDE или SCSI с помощью mdadm --detail -- команда сканирования

Чтобы записать информацию в mdadm.conf , затем запустить;

После обновления mdadm.conf вы можете обновить initramfs.

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

На этом наше руководство по настройке программного RAID-массива в Ubuntu 20.04 заканчивается.

ubuntu_raid_00.jpg

Предупреждение: файловая система /boot не может использовать любой уровень softRAID, кроме 1, со стандартным загрузчиком Ubuntu. Если вы хотите использовать какой-либо другой уровень RAID для большинства задач, вам потребуется создать отдельные разделы и создать устройство RAID1 для /boot.

Внимание! Это приведет к удалению всех данных на жестких дисках.

<р>1. Выберите «Вручную» в качестве метода разделения

ubuntu_raid_01.jpg

<р>2. Выберите свой жесткий диск и согласитесь с «Создать новую пустую таблицу разделов на этом устройстве?»

ubuntu_raid_02.jpg
ubuntu_raid_03.jpg

<р>3. Выберите «СВОБОДНОЕ ПРОСТРАНСТВО» на 1-м диске, затем выберите «автоматически разбивать свободное пространство»

ubuntu_raid_04.jpg
ubuntu_raid_05.jpg

<р>4. Ubuntu создаст 2 раздела: / и подкачку, как показано ниже:

ubuntu_raid_06.jpg

<р>5. В разделе / ​​выберите «флаг загрузки» и установите для него значение «включено»

ubuntu_raid_06.jpg

<р>6. Повторите шаги 2–5 для другого жесткого диска

  1. После создания разделов на главной странице "Разделение дисков" выберите "Настроить программный RAID"
  2. Выберите "Да".
  3. Выберите "Создать новый диск MD"
  4. Выберите тип RAID: RAID 0, RAID 1, RAID 5 или RAID 6.
  5. Количество устройств. Для RAID 0 и 1 требуется 2 диска. 3 для RAID 5 и 4 для RAID 6.
  6. Количество запасных устройств. Введите 0, если у вас нет запасного диска.
  7. выберите, какие разделы использовать..
  8. Повторите шаги с 3 по 7 для каждой пары созданных разделов.
  9. Для каждого устройства RAID необходимо указать файловую систему и точки подключения. По умолчанию для них установлено значение «не использовать».
  10. После этого нажмите "Готово".

Если ваш следующий жесткий диск не загрузится, просто установите Grub на другой диск:

  1. редактировать /etc/initramfs-tools/conf.d/mdadm
  2. замените "BOOT_DEGRADED=false" на "BOOT_DEGRADED=true"
  1. выключить сервер
  2. удалить данные о питании и кабеле вашего первого диска
  3. запустите сервер и проверьте, может ли он загружаться с поврежденного диска.

При условии, что RAID работает нормально, это можно исправить с помощью:

Для тех, кому нужен полный контроль над конфигурацией RAID, интерфейс командной строки mdadm предоставляет это.

Из этой информации видно, что доступными пользователями на этой машине являются "raid1, raid6, raid4 и raid5", что означает, что эта машина настроена на использование устройств RAID, сконфигурированных в конфигурации raid1, raid6, raid4 и raid5. .

Вы также можете видеть в трех примерах метаустройств, что есть два зеркальных метаустройства рейда 1. Это md0 и md5. Вы можете видеть, что md5 — это массив raid1, состоящий из диска /dev/sda, раздел 7, и /dev/sdb, раздел 7, содержащий 62685504 блока, причем 2 из 2 дисков доступны и оба синхронизированы.

То же самое можно сказать и о md0, только он меньше (это видно по параметру блоков) и состоит из /dev/sda1 и /dev/sdb1.

md6 отличается тем, что мы видим, что это массив рейда 5, распределенный по трем дискам. Это /dev/sdc1, /dev/sde1 и /dev/sdd1 с размером «чанка» 64 КБ или размером записи. Алгоритм 2 показывает, что это шаблон алгоритма записи, который представляет собой запись «с левого диска на правый диск» по всему массиву. Вы можете видеть, что все три диска присутствуют и синхронизированы.

Замените * на номер раздела.

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

<р>1. Чтобы остановить массив, введите:

Где /dev/md0 — устройство массива.

<р>2. Чтобы удалить диск из массива:

Где /dev/md0 — массив, а /dev/sda — неисправный диск.

<р>3. Добавьте диск в массив:

Где /dev/md0 — это устройство массива, а /dev/sda — новый диск. Примечание. Это не то же самое, что "наращивание" массива!

<р>4. Запустить массив, чтобы заново собрать (запустить) ранее созданный массив:

ddadm просканирует определенные массивы и начнет их сборку.

<р>5. Чтобы отслеживать состояние массива при его запуске:

Ресурсы

Установка/Программное обеспечениеRAID (последним удаленным пользователем Matt 2015-09-12 06:06:22)

Материалы этой вики доступны по бесплатной лицензии, подробности см. в разделе Авторские права / Лицензия
Вы можете внести свой вклад в эту вики, подробности см. в Руководстве по вики

У меня есть машина с UEFI BIOS. Я хочу установить Ubuntu 18.04, настольную версию с RAID 1 (и LVM), чтобы моя система продолжала работать, даже если один из дисков выйдет из строя. Я не нашел HOWTO, как это сделать. Программа установки для настольных ПК не поддерживает RAID.Ответ на этот вопрос почти работает, но требует некоторой оболочки GRUB / спасательного USB-диска и магии настроек UEFI. Кто-нибудь знает о процедуре, которая работает без волшебных частей?


2 ответа 2

  1. Загрузите установщик альтернативного сервера.
  2. Установка с ручным разделением, EFI + RAID и LVM на раздел RAID.
  3. Клонировать раздел EFI из установленного раздела на другой диск.
  4. Установите второй раздел EFI в загрузочную цепочку UEFI.
  5. Чтобы избежать длительного ожидания во время загрузки в случае поломки диска, удалите сценарии загрузки btrfs.

1. Загрузите программу установки

2. Установить с ручным разделением

  • Во время установки на шаге Разметить диски выберите Вручную .
  • Если на дисках есть разделы, удалите их.
    • Если на ваших дисках есть логические тома, выберите «Настроить диспетчер логических томов» .
      • Выбирайте Удалить логический том, пока все тома не будут удалены.
      • Нажимайте «Удалить группу томов», пока все группы томов не будут удалены.
      • Выбирайте «Удалить устройство MD», пока все устройства MD не будут удалены.
      • На каждом диске создайте раздел размером 512 МБ (я видел, что другие используют 128 МБ) в начале диска. Использовать как системный раздел EFI.
      • На каждом диске создайте второй раздел с максимальным размером, используйте как: физический том для RAID.
      • Выберите «Настроить программный RAID».
      • Выберите Создать устройство MD , введите RAID1 , 2 активных диска, 0 резервных дисков и выберите устройства /dev/sda2 и /dev/sdb2.
      • Выберите «Настроить диспетчер логических томов» .
      • Создайте группу томов vg на устройстве /dev/md0.
      • Создайте логические тома, например
        • обмен на 16G
        • корневой доступ на 35 ГБ
        • tmp на скорости 10G
        • переменная в 5G
        • дома на скорости 200G
        • Для раздела подкачки выберите Использовать как: подкачка .
        • Для остальных разделов выберите Использовать как: ext4 с правильными точками монтирования ( / , /tmp , /var , /home соответственно).

        Если вы выполняете повторную установку на диск, который ранее имел конфигурацию RAID, описанный выше шаг создания RAID может завершиться неудачно, и вы никогда не получите md-устройство. В этом случае вам, возможно, придется создать USB-накопитель Ubuntu Live, загрузиться с него, запустить gparted, чтобы очистить все таблицы разделов, прежде чем перезапускать этот HOWTO.

        Проверьте, какой раздел EFI смонтирован. Скорее всего /dev/sda1 .

        монтировать | загрузка grep

        Проверьте состояние RAID. Скорее всего синхронизируется.

        Загруженный EFI должен быть установлен в /dev/sda1 . Поскольку этот раздел не зеркалируется через систему RAID, нам необходимо его клонировать.

        В этом шаге может не быть необходимости, так как в случае выхода из строя одного из дисков система должна загружаться с (идентичных) разделов EFI. Однако представляется разумным убедиться, что мы можем загружаться с любого диска.

        • Запустите efibootmgr -v и обратите внимание на имя файла для загрузочной записи Ubuntu. При моей установке это было \EFI\ubuntu\shimx64.efi .
        • Запустите sudo efibootmgr -c -d /dev/sdb -p 1 -L "ubuntu2" -l \EFI\ubuntu\shimx64.efi . В зависимости от вашей оболочки вам, возможно, придется экранировать обратную косую черту.
        • Убедитесь с помощью efibootmgr -v, что у вас одинаковое имя файла для элементов загрузки ubuntu и ubuntu2 и что они являются первыми двумя в порядке загрузки.
        • Теперь система должна загружаться, даже если один из дисков выйдет из строя!

        Если вы хотите попытаться физически удалить или отключить какой-либо диск для проверки своей установки, вы должны сначала дождаться завершения синхронизации RAID! Следите за ходом выполнения с помощью cat /proc/mdstat. Однако вы можете выполнить шаг 8 ниже во время ожидания.

        Если один диск выйдет из строя (после завершения синхронизации), система все равно загрузится. Однако последовательность загрузки потратит много времени на поиск файловых систем btrfs. Чтобы убрать это ненужное ожидание, запустите

        Это должно удалить btrfs-progs , btrfs-tools и ubuntu-server . Последний пакет — это просто метапакет, поэтому, если больше нет пакетов для удаления, все в порядке.

        Запустите sudo apt install ubuntu-desktop, чтобы установить настольную версию. После этого синхронизация, вероятно, завершена, и ваша система настроена и должна пережить сбой диска!

        При обновлении пакета grub-efi-amd64 файлы в разделе EFI (смонтированном в /boot/efi ) могут измениться. В этом случае обновление необходимо клонировать вручную в зеркальный раздел. К счастью, вы должны получить предупреждение от менеджера обновлений о том, что grub-efi-amd64 вот-вот будет обновлено, поэтому вам не нужно проверять его после каждого обновления.

        10.1. Быстрый способ узнать источник клона

        Если вы не перезагружались после обновления, используйте

        чтобы узнать, какой раздел EFI смонтирован. Этот раздел, обычно /dev/sdb1, следует использовать в качестве источника клонирования.

        10.2 Узнать источник клона параноидальным способом

        Создайте точки подключения и подключите оба раздела:

        Найти временную метку самого нового файла в каждом дереве

        Должен выводиться /dev/sdb1 новейший (скорее всего) или /dev/sda1 новейший . Этот раздел следует использовать в качестве источника клонирования.

        Размонтируйте разделы перед клонированием, чтобы избежать несогласованности кеша/раздела.

        10.3 Клонирование

        Если источником клона был /dev/sdb1:

        Если источником клона был /dev/sda1:

        Готово!

        Если вы хотите сначала попробовать это на виртуальной машине, есть несколько предостережений. По-видимому, NVRAM, в которой хранится информация UEFI, запоминается между перезагрузками, но не между циклами выключения-перезагрузки. В этом случае вы можете оказаться в консоли UEFI Shell. Следующие команды должны загрузить вас на вашу машину из /dev/sda1 (используйте FS1: для /dev/sdb1 ):

        Первое решение в верхнем ответе о загрузке UEFI в виртуальном боксе — Ubuntu 12.04 также может быть полезным.

        Читайте также: