Программный raid под linux

Создание массива RAID10 для Linux

Преимущество использования «Linux raid10 «заключается в том, что он знает, как использовать нечетное число дисков, чтобы повысить производительность и отказоустойчивость даже дальше, чем ванильный RAID10, в дополнение к тому, что при использовании его массив« 10 »может быть создан в одном шаг.

Создайте массив из дисков, которые мы подготовили на последнем шаге, выпустив:

Заметка: Это всего лишь одна строка, несмотря на то, что представление разбивает ее на две.

Давайте разложим параметры вниз:

  • «-Chunk = 256» — размер байт, на который разбиты полосы рейда, и этот размер рекомендуется для новых / больших дисков (диски 2T, используемые для создания этого руководства, несомненно, были в этой категории).
  • «-Level = 10» — Использует Linux raid10 (если требуется традиционный рейд, по какой-либо причине вам придется создавать два массива и присоединяться к ним).
  • «-P f2» — Использует «дальний» план вращения, см. Примечание ниже для получения дополнительной информации, а «2» сообщает, что массив будет хранить две копии данных.

Заметка: Мы используем «дальний» план, потому что это приводит к тому, что физический макет данных на дисках НЕ будет таким же. Это помогает преодолеть ситуацию, когда аппаратное обеспечение одного из дисков выходит из строя из-за производственной ошибки (и не думаю, что «это не произойдет со мной», как это было на самом деле). В связи с тем, что два диска имеют один и тот же маркер и модель, были использованы одинаково и традиционно хранят данные в одном и том же физическом местоположении … Существует риск того, что накопитель, содержащий копию данных, потерпел неудачу слишком близко или близко, и не будет обеспечивать требуемую отказоустойчивость до тех пор, пока не появится запасной диск. «Дальний» план позволяет распределить данные на совершенно другом физическом месте на копировальных дисках в дополнение к использованию дисков, которые не находятся близко друг к другу в корпусе компьютера. Более подробную информацию можно найти здесь и в ссылках ниже.

Как только массив будет создан, он начнет процесс синхронизации. Хотя вы, возможно, захотите ждать традиции (так как это может занять некоторое время), вы можете сразу начать использовать массив.

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

Создайте файл конфигурации mdadm.conf

Хотя было доказано, что Ubuntu просто знает, как автоматически сканировать и активировать массив при запуске, для полноты и вежливости для следующего sysadmin мы создадим файл. Ваша система не создает файл автоматически и пытается запомнить все компоненты / разделы вашего набора RAID, является талией здравого смысла системного администратора. Эта информация может и должна храниться в файле mdadm.conf. Форматирование может быть сложным, но, к счастью, вывод команды mdadm -detail -scan -verbose предоставляет вам ее.

Заметка: Было сказано, что: «Большинство дистрибутивов ожидают файл mdadm.conf в / etc /, а не / etc / mdadm. Я считаю, что это «ubuntu-ism», чтобы иметь его как /etc/mdadm/mdadm.conf ». В связи с тем, что мы являются используя Ubuntu здесь, мы просто поедем с ним.

ВАЖНЫЙ! вам нужно удалить один «0» из вновь созданного файла, потому что синтаксис, полученный в результате вышеприведенной команды, не совсем корректен (GNU / Linux еще не является ОС).

Если вы хотите увидеть проблему, вызванную этой неправильной конфигурацией, вы можете выдать сообщение «сканирование» команды на этом этапе, прежде чем выполнить настройку:

Чтобы преодолеть это, отредактируйте файл /etc/mdadm/mdadm.conf и изменение:

Читать:

Запуск mdadm -examine -scan команда теперь должна возвращаться без ошибок.

Расширение массива (добавление и замена дисков)[править]

mdadm /dev/md0 --add /dev/hdd3

Эта команда добавляет новый «диск» (а вернее раздел) в массив md0. Добавленный диск считается пустым и резервным. Его можно использовать для расширения размера массива или он будет автоматически использован (в массивах, обеспечивающих отказоустойчивость) в качестве замены для вышедшего из строя диска.

Для расширения размера массива (если конечно тип массива допускает расширение) указывается ключ -G (--grow) и новое число дисков массива с помощью ключа -nX (--raid-devices=X).

mdadm -G /dev/md0 -n4 

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

cat /proc/sys/dev/raid/speed_limit_m*
200000
1000
echo 10000 >/proc/sys/dev/raid/speed_limit_min

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

Предпосылки

  • Терпение молодое, это долгое чтение.
  • Предполагается, что вы знаете, что такое RAID и для чего он используется.
  • Это руководство было написано с использованием Ubuntu server9.10 x64, поэтому предполагается, что у вас также есть система на основе Debian.
  • Вы увидите, что я использую VIM в качестве редактора, это только потому, что я привык к этому … вы можете использовать любой другой редактор, который вам нужен.
  • Система Ubuntu, которую я использовал для написания этого руководства, была установлена на диске с ключом. Это позволило мне использовать sda1 как часть массива RAID, поэтому настройте его соответствующим образом.
  • В зависимости от типа RAID, который вы хотите создать, вам потребуется как минимум два диска в вашей системе, и в этом руководстве мы используем 6 дисков.

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

Останавливаем массив.

mdadm -S /dev/md0

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

mdadm —zero-superblock /dev/sd1

Файл конфигурации mdadm.conf

Иногда требуется вручную добавлять информацию в файл mdadm.conf. Взять ее можно, выполнив команду

mdadm —detail —scan

В результате нам будет выведена информация вида:

ARRAY /dev/md/0 metadata=1.2 name=server:0 UUID=74c51786:16bbb1af:469a4f42:76ec9654 ARRAY /dev/md/1 metadata=1.2 name=server:1 UUID=6c65a539:36d0f116:b1194783:fc35d949 ARRAY /dev/md/2 metadata=1.2 name=server:2 UUID=55c01664:2cc1aa5b:5257948b:a7ea760c ARRAY /dev/md/3 metadata=1.2 name=server:3 UUID=cf13c857:59adbacc:165c987e:d7c7f8a1
Её и добавляем в файл mdadm.conf

Create Array¶

Create RAID 1 Array

To create a RAID 1 array with 2x drives, pass them to the mdadm —create command. You will have to specify the device name you wish to create (/dev/md0 in our case), the RAID level, and the number of devices:

If the drives you are using are not partitioned with the boot flag enabled, you will likely be given the following warning. It is safe to type y to continue:

The mdadm tool will start to mirror the drives. This can take some time to complete, but the array can be used during this time. You can monitor the progress of the mirroring by checking the /proc/mdstat file:

Output

As you can see in the second line, the /dev/md0 device has been created with the RAID 1 configuration using the /dev/sda and /dev/sdb devices. The fourth line shows the progress of the syncing. You can continue the guide while this process completes.

Note

If your system is configured to , then you should also see the red LED2 blinking while your array is (re-)syncing.

Create RAID 6 Array

To create a RAID 6 array with 4x drives, pass them to the mdadm —create command. You will have to specify the device name you wish to create (/dev/md0 in our case), the RAID level, and the number of devices:

The mdadm tool will start to configure the array (it actually uses the recovery process to build the array for performance reasons). This can take some time to complete, but the array can be used during this time. You can monitor the progress of the mirroring by checking the /proc/mdstat file:

Output

As you can see in the second line, the /dev/md0 device has been created with the RAID 6 configuration using the /dev/sda, /dev/sdb, /dev/sdc and /dev/sdd devices. The fourth line shows the progress of the syncing. You can continue the guide while this process completes.

Note

If your system is configured to , then you should also see the red LED2 blinking while your array is (re-)syncing.

Create RAID 10 Array

To create a RAID 10 array with 4x drives, pass them to the mdadm —create command. You will have to specify the device name you wish to create (/dev/md0 in our case), the RAID level, and the number of devices:

The mdadm tool will start to configure the array (it actually uses the recovery process to build the array for performance reasons). This can take some time to complete, but the array can be used during this time. You can monitor the progress of the mirroring by checking the /proc/mdstat file:

Output

As you can see in the second line, the /dev/md0 device has been created with the RAID 10 configuration using the /dev/sda, /dev/sdb, /dev/sdc and /dev/sdd devices. The fourth line shows the progress of the syncing. You can continue the guide while this process completes.

Note

If your system is configured to , then you should also see the red LED2 blinking while your array is (re-)syncing.

mdadm

Управление программным RAID-массивом в Linux выполняется с помощью программы mdadm.

У программы mdadm есть несколько режимов работы.

Assemble (сборка)
Собрать компоненты ранее созданного массива в массив. Компоненты можно указывать явно, но можно и не указывать — тогда выполняется их поиск по суперблокам.
Build (построение)
Собрать массив из компонентов, у которых нет суперблоков. Не выполняются никакие проверки, создание и сборка массива в принципе ничем не отличаются.
Create (создание)
Создать новый массив на основе указанных устройств. Использовать суперблоки размещённые на каждом устройстве.
Monitor (наблюдение)
Следить за изменением состояния устройств. Для RAID0 этот режим не имеет смысла.
Grow (расширение или уменьшение)
Расширение или уменьшение массива, включаются или удаляются новые диски.
Incremental Assembly (инкрементальная сборка)
Добавление диска в массив.
Manage (управление)
Разнообразные операции по управлению массивом, такие как замена диска и пометка как сбойного.
Misc (разное)
Действия, которые не относятся ни к одному из перечисленных выше режимов работы.
Auto-detect (автоообнаружение)
Активация автоматически обнаруживаемых массивов в ядре Linux.

Формат вызова

 mdadm   

Режимы:

  • -A, --assemble — режим сборки
  • -B, --build — режим построения
  • -C, --create — режим создания
  • -F, --follow, --monitor — режим наблюдения
  • -G, --grow — режим расширения
  • -I, --incremental — режим инкрементальной сборки

RAID-массивы. Что это и какие они бывают.

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

Существует несколько спецификаций RAID-массивов:

RAID 0 — Дисковый массив с чередованием. Высокая скорость, но не обеспечивается отказоустойчивость.

RAID 1 — Дисковый массив с зеркалированием. Каждый диск представляет собой полную копию другого.

RAID 2 — Массивы, использующие четность для обеспечения целостности, точно такую же, как и в оперативной памяти типа ECC. Минимальное количество дисков, при котором возможно создание такого типа массива равно 7, при этом чем больше дисков используется в массиве, тем меньше процент дискового пространства, используемого как полезный объем.

RAID 3 — Массив, в котором один из дисков используется для хранения блоков четности, а остальные — для хранения данных. Данные при этом разбиваются на части меньше размера сектора, например, на байты.

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

RAID 5 — Массив, в котором блоки данных и контрольные суммы записываются на все диски циклично. Поэтому RAID 5 не требует выделенного диска для хранения информации для восстановления. Минимальное количество дисков при использовании RAID 5 равно всего трем, при этом для хранения информации для восстановления берется объем, равный объему одного диска.

RAID 6 — Массив, аналогичный RAID 5, но при этом для хранения контрольных сумм берется объем двух дисков и контрольные суммы рассчитываются двумя разными способами. Минимум для создания RAID 6 — четыре диска.

RAID 10 — Массив RAID 1, составленный не из одиночных дисков, а из массивов RAID 0.

RAID 50, RAID 60 — аналогично RAID 10, но уже не RAID 1, а RAID 5 или RAID 6 из массивов RAID 0.

MDAdm. Работа с RAID на Ubuntu

Рано или поздно при настройке серверов приходится столкнуться с такой вещью как RAID.

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

Построение RAID

Построим на сервере RAID1.

Сначала создадим одинаковые разделы на дисках sdb и sdc

#fdisk /dev/sdb

command (m for help): n

Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Select (default p): p

Partition number (1-4, default 1): 1

First sector (2048-16777215, default 2048):

Using default value 2048

Last sector, +sectors or +size{K,M,G} (2048-16777215, default 16777215): +5G

Command (m for help): t

Hex code (type L to list codes): 83

Changed system type of partition 1 to 83

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

Аналогично сделаем и для диска sdc

  Установим утилиту работы с RAID

# apt-get install mdadm

Теперь соберем RAID 1

# mdadm —create —verbose /dev/md0 —level=1 —raid-devices=2 /dev/sdb1 /dev/sdc1

После сборки состояние RAID можно просмотреть при помощи команды

# cat /proc/mdstat

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

personalities :

md0 : active raid1 sdc1 sdb1

5238720 blocks super 1.2 [2/2]

unused devices: <none>

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

# mkfs.ext4 /dev/md0

# mkdir /mnt/raid

# mount /dev/md0 /mnt/raid

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

# touch /mnt/raid/test.txt

Ошибка при работе с RAID

После того, как мы создали RAID он у нас определяется как устройство /dev/md0, однако после перезагрузки такого устройства в системе не будет, а вместо него появится /dev/md127. Тут можно или в дальнейшем использовать именно такое имя устройства, или, что обычно удобнее, насильно объяснить системе, что наш RAID-раздел именно /dev/md0 и ни как иначе. Для этого выполним команду:

# mdadm -Db /dev/md0 > /etc/mdadm/mdadm.conf

В результате выполнения этой команды в файле /etc/mdadm/mdadm.conf будет строка

ARRAY /dev/md0 metadata=1.2 name=ub-4:0 UUID=7da67e34:3d29e3a1:bdf36edd:6be26e60

После этого необходимо обновить образ initramfs:

# update-initramfs -u

Теперь после перезагрузки наш RAID-раздел будет определяться как /dev/md0.

Деградация и восстановление RAID

Посмотрим как можно провести деградацию рейда. Естественно, в реальной системе диск обычно вылетает сам и нет необходимости специально объявлять его сбойным, но мы воспользуемся возможности утилиты mdadm и объявим часть RAID — /dev/sdb1 сбойным.

# mdadm /dev/md0 —fail /dev/sdb1

Посмотрим теперь на состояние RAID

# cat /proc/mdstat

Мы должны увидеть, что /dev/sdb1 имеет некие проблемы и рейд деградирован:

Personalities :

md0 : active raid1 sdb1(F) sdc1

5238720 blocks super 1.2 [2/1]

unused devices: <none>

Теперь с помощью fdisk создадим на устройстве /dev/sdd раздел такого же размера, как и /dev/sdс1. После этого удалим /dev/sdb1 из RAID

# mdadm /dev/md0 —remove /dev/sdb1

И добавим новый раздел /dev/sdd1

# mdadm /dev/md0 —add /dev/sdd1

Если мы сразу же посмотрим на состояние RAID

# cat /proc/mdstat

То мы увидим, что RAID у нас опять состоит из двух нормальных дисков и в данный момент происходит его синхронизация:

Personalities :

md0 : active raid1 sdd1 sdc1

5238720 blocks super 1.2 [2/1]

recovery = 6.2% (329984/5238720) finish=1.2min speed=65996K/sec

unused devices: <none>

Если мы теперь примонтируем наш RAID

# mount /dev/md0 /mnt/raid/

То увидим, что файл, который мы до этого создавали на месте и ничего никуда не пропало.

# ls /mnt/raid/

lost+found test.txt

  • Назад

  • Вперед

Partitioning Hard Drives

# dmesg | less
 sd 3:0:0:0:  15826944 512-byte logical blocks: (8.10 GB/7.54 GiB)
 sd 4:0:0:0:  15826944 512-byte logical blocks: (8.10 GB/7.54 GiB)

We will use to create a primary partition on each disk that will occupy its entire size. The following steps show how to perform this task on , and assume that this drive hasn’t been partitioned yet (otherwise, we can delete the existing partition(s) to start off with a clean disk):

# fdisk /dev/sdb

Press to print the current partition table:

(if one or more partitions are found, they can be deleted with option. Then option is used to apply the changes).

Since no partitions are found, we will create a new primary partition [] as a primary partition [], assign the partition number = [] to it, and then indicate its size. You can press Enter key to accept the proposed default values, or enter a value of your choosing, as shown in the image below.

Now repeat the same process for .

If we have two drives of different sizes, say 750 GB and 1 TB for example, we should create a primary partition of 750 GB on each of them, and use the remaining space on the bigger drive for another purpose, independent of the RAID array.

Setup Error Notification (Recommended)¶

Configure Email Alerts

Receive a notification whenever mdadm detects something wrong with your array. This is very important since you don’t want to miss out an issue on your array in order to have time to take the right actions.

Important

You will need to install and configure postfix or sendmail.

Configure Fault LED

Make the Red Fault LED (LED2) indicates if an error has been detected on your array. The below script will light up the LED2 if an error occurs on an array, and make LED2 blink during reconstruction of a degraded array.

Note

Latest Armbian builds, starting version 5.68, are already configured to display RAID faults on Red Fault LED (LED2), therefore you could skip this section. However in some use case file /etc/mdadm/mdadm.conf might have been overwritten by applications such as OpenMediaVault, so it is advised to double check it is properly configured.

First create the script mdadm-fault-led.sh

Copy the following script.

Make the script executable.

Edit mdadm configuration

and add the following section.

Restart mdmonitor service.

Сборка RAID

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

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

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

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

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

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

mdadm: Unrecognised md component device — /dev/sdb
mdadm: Unrecognised md component device — /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: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store ‘/boot’ on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    —metadata=0.90
mdadm: size set to 1046528K

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

Continue creating array? y

Мы увидим что-то на подобие:

mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

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

lsblk

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


sdb                     8:16   0    2G  0 disk  
??md0                   9:0    0    2G  0 raid1 
sdc                     8:32   0    2G  0 disk  
??md0                   9:0    0    2G  0 raid1 

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

Implementation

The RAID devices can be managed in different ways:

Software RAID
This is the easiest implementation as it does not rely on obscure proprietary firmware and software to be used. The array is managed by the operating system either by:
  • an abstraction layer (e.g. );
    Note: This is the method we will use later in this guide.
  • a logical volume manager (e.g. );
  • a component of a file system (e.g. ZFS, ).
Hardware RAID
The array is directly managed by a dedicated hardware card installed in the PC to which the disks are directly connected. The RAID logic runs on an on-board processor independently of the host processor (CPU). Although this solution is independent of any operating system, the latter requires a driver in order to function properly with the hardware RAID controller. The RAID array can either be configured via an option rom interface or, depending on the manufacturer, with a dedicated application when the OS has been installed. The configuration is transparent for the Linux kernel: it does not see the disks separately.
FakeRAID

Which type of RAID do I have?

Since software RAID is implemented by the user, the type of RAID is easily known to the user.

However, discerning between FakeRAID and true hardware RAID can be more difficult. As stated, manufacturers often incorrectly distinguish these two types of RAID and false advertising is always possible. The best solution in this instance is to run the command and looking through the output to find the RAID controller. Then do a search to see what information can be located about the RAID controller. Hardware RAID controllers appear in this list, but FakeRAID implementations do not. Also, true hardware RAID controllers are often rather expensive, so if someone customized the system, then it is very likely that choosing a hardware RAID setup made a very noticeable change in the computer’s price.

Собираем программный RAID в Linux

Так как я использую в качестве основной операционной системы Linux, то естественно, что и RAID будем собирать на работающем компьютере под управлением Linux

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

Перед сборкой массива, диски, в моем случае два диска по 1Tb, за ранее подключаем к компьютеру.

Для работы с массивами в Linux необходимо установить утилиту администрирования и контроля программного RAID – mdadm

Запускаем терминал.

Обновляем информацию о пакетах

Устанавливаем утилиту

Проверяем установлена ли утилита

если утилита стоит вы увидите примерно такой текст

Узнаем информацию о подключенных дисках

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

В данном случае, видим два диска sdb и sdc.

Их идентификаторы будут /dev/sdb и /dev/sdc, соответственно.

Из этих дисков и будем создавать массив Raid-1.

Создаем RAID массив

/dev/md0 – имя нашего будущего рейда

–livel=1 – уровень рейда, в нашем варианте собираем RAID1, если собираете RAID2 то ставим =2, ну и так далее

–raid-devices=2 – количество дисков используемых в рейде, ну и далее перечисляются их имена

После ввода команды будет вопрос

Continue creating array ? – соглашаемся, введя Y и нажимаем Enter

Если сделали все правильно, начнется процесс зеркалирования дисков.

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

Мониторинг процесса удобно отслеживать с помощью команды

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

Желательно дождаться окончания процесса.

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

Созданный массив должен иметь свою файловую систему, так как в данном случае linux, очевидно, что это будет ext4

Создаем ее командой

/dev/md0 – имя нашего созданного массива.

Создаем точку в которую будем монтировать наш массив

/mnt/md0 – точка куда будем монтировать наш массив

Теперь можно смонтировать массив /dev/md0 в нашу ранее созданную директорию /mnt/md0

Проверить доступно ли новое пространство можно командой

В моем случае массив md0 смонтирован в /mnt/Arhiv использовано 10%

Сохраняем наш программный RAID

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

Настраиваем автоматическую сборку рейда при запуске системы.

Информацию, о нашем созданном рейде, необходимо записать в файл /etc/mdadm/mdadm.conf

Выполним команду которая сделает это автоматически

В результате в файл mdadm.conf будет сделана запись о сформированном RAID. Если открыть этот файл в блокноте то выглядеть это будет примерно так

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

Для автоматического монтирования нашего диска /dev/md0 в нашу ранее созданную директорию /mnt/md0, нам необходимо так же зделать запись в файл /etc/fstab

В результате будет сделана запись в файл fstab. Если открыть этот файл в блокноте то выглядеть это будет примерно так

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

Всем Удачи!

The level of RAID

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

  2. RAID 1 (зеркало): зеркальный режим Для этого режима также требуется более двух жестких дисков, так почему это режим зеркалирования? Это потому, что метод хранения данных в этом режиме заключается в хранении полной копии данных на двух дисках, Два жестких диска похожи на зеркальные изображения, которые также можно назвать файлами резервных копий. Позвольте мне проиллюстрировать это на примере: Предположим, у нас есть 100 МБ данных для записи на жесткий диск. Когда 100 МБ данных передаются на шину ввода-вывода, они будут скопированы на несколько жестких дисков, поэтому каждый жесткий диск На диске есть полные 100 МБ данных, но общий объем данных увеличится, поэтому скорость чтения и записи снизится, а общая емкость жесткого диска также уменьшится, потому что половина емкости всегда используется для файлов резервных копий, но Преимущество состоит в том, что производительность безопасности выше, даже если один. Если жесткий диск поврежден, резервные данные все еще сохраняются.

  3. RAID 1+0,RAID0+1 Судя по названию, это должно быть сочетание безопасности и производительности. Да, режим работы RAID 1 + 0 таков: сначала два жестких диска формируются в RAID 1, и установлены два набора., то есть четыре жестких диска, а затем эти два набора RAID 1 образуют набор RAID 0, например: Видно, что Diak A и диск B образуют набор RAID 1, диск C и диск D образуют набор RAID 1, а затем эти два набора RAID 1 образуют RAID. 0, что также составляет 100 МБ. Для записи данных 100 МБ данных сначала проходят через RAID 0 и делятся на два 50 МБ для передачи в две группы RAID 1, а две группы RAID 1 выполняют резервное копирование данных.

  4. RAID 5 , как показано ниже: При записи фактических данных будет сгенерировано значение четности (четность). Это значение четности будет записано вместе с данными, и оно будет записано на другой диск, один раз диск поврежден, код проверки других дисков немедленно вызывается, чтобы ответить на данные, поэтому безопасность высока.

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

Рассмотрим пример создания томов из дисков sdb и sdc с помощью LVM.

1. Инициализация

Помечаем диски, что они будут использоваться для LVM:

pvcreate /dev/sdb /dev/sdc

* напомним, что в качестве примера нами используются диски sdb и sdc.

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

pvdisplay

В нашем случае мы должны увидеть что-то на подобие:

  «/dev/sdb» is a new physical volume of «1,00 GiB»
  — NEW Physical volume —
  PV Name               /dev/sdb
  VG
Name               
  PV Size               1,00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               rR8qya-eJes-7AC5-wuxv-CT7a-o30m-bnUrWa
   
  «/dev/sdc» is a new physical volume of «1,00 GiB»
  — NEW Physical volume —
  PV Name               /dev/sdc
  VG Name               
  PV Size               1,00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               2jIgFd-gQvH-cYkf-9K7N-M7cB-WWGE-9dzHIY

* где 

  • PV Name — имя диска. 
  • VG Name — группа томов, в которую входит данный диск (в нашем случае пусто, так как мы еще не добавили его в группу).
  • PV Size — размер диска.
  • Allocatable — распределение по группам. Если NO, то диск еще не задействован и его необходимо для использования включить в группу.
  • PE Size — размер физического фрагмента (экстента). Пока диск не добавлен в группу, значение будет 0.
  • Total PE — количество физических экстентов.
  • Free PE — количество свободных физических экстентов.
  • Allocated PE — распределенные экстенты.
  • PV UUID — идентификатор физического раздела.

2. Создание групп томов

Инициализированные на первом этапе диски должны быть объединены в группы.

Группа может быть создана:

vgcreate vg01 /dev/sdb /dev/sdc

* где vg01 — произвольное имя создаваемой группы; /dev/sdb, /dev/sdc — наши диски.

Просмотреть информацию о созданных группах можно командой:

vgdisplay

На что мы получим, примерно, следующее:

  — Volume group —
  VG Name               vg01
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               1,99 GiB
  PE Size               4,00 MiB
  Total PE              510
  Alloc PE / Size       0 / 0   
  Free  PE / Size       510 / 1,99 GiB
  VG UUID               b0FAUz-wlXt-Hzqz-Sxs4-oEgZ-aquZ-jLzfKz

* где:

  • VG Name — имя группы.
  • Format — версия подсистемы, используемая для создания группы.
  • Metadata Areas — область размещения метаданных. Увеличивается на единицу с созданием каждой группы.
  • VG Access — уровень доступа к группе томов.
  • VG Size — суммарный объем всех дисков, которые входят в группу.
  • PE Size — размер физического фрагмента (экстента).
  • Total PE — количество физических экстентов.
  • Alloc PE / Size — распределенное пространство: колическтво экстентов / объем.
  • Free  PE / Size — свободное пространство: колическтво экстентов / объем.
  • VG UUID — идентификатор группы.

3. Создание логических томов

Последний этап — создание логического раздела их группы томов командой lvcreate. Ее синтаксис:

lvcreate <имя группы томов>

Примеры создания логических томов:

lvcreate -L 1G vg01

* создание тома на 1 Гб из группы vg01.

lvcreate -L50 -n lv01 vg01

* создание тома с именем lv01 на 50 Мб из группы vg01.

lvcreate -l 40%VG vg01

* при создании тома используется 40% от дискового пространства группы vg01.

lvcreate -l 100%FREE -n lv01 vg01

* использовать все свободное пространство группы vg01 при создании логического тома.
* также можно использовать %PVS — процент места от физического тома (PV); %ORIGIN — размер оригинального тома (применяется для снапшотов).

Посмотрим информацию о созданном томе:

lvdisplay

  — Logical volume —
  LV Path                /dev/vg01/lv01
  LV Name                lv01
  VG Name                vg01
  LV UUID                4nQ2rp-7AcZ-ePEQ-AdUr-qcR7-i4rq-vDISfD
  LV Write Access        read/write
  LV Creation host, time vln.dmosk.local, 2019-03-18 20:01:14 +0300
  LV Status              available
  # open                 0
  LV Size                52,00 MiB
  Current LE             13
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  — currently set to     8192
  Block device           253:2

* где:

  • LV Path — путь к устройству логического тома.
  • LV Name — имя логического тома.
  • VG Name — имя группы томов.
  • LV UUID — идентификатор.
  • LV Write Access — уровень доступа.
  • LV Creation host, time — имя компьютера и дата, когда был создан том.
  • LV Size — объем дискового пространства, доступный для использования.
  • Current LE — количество логических экстентов.
Понравилась статья? Поделиться с друзьями:
Быть в курсе нового
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: