×
Ruby on Rails: постинг твитов через Twitter API (04 нояб 2017)

Практикуемся в Ruby on Rails.

Вопрос Программный RAID в Linux

Больше
7 года 2 нед. назад - 7 года 2 нед. назад #1 от Aleksej
Aleksej создал эту тему: Программный RAID в Linux
Linux RAID по праву считается весьма неплохим решением в контексте обеспечения надежного хранилища данных. Тому есть ряд причин; в частности - то обстоятельство, что SATA RAID, встречающийся сейчас уже практически на любой современной материнской плате - является программно-зависимым RAID-ом, а не аппаратным.

Это означает, что управление данными происходит не на уровне "железа", а - на более высоком абстрактном уровне, посредством микрокода BIOS и драйвера ОС. Соответственно - имеем ряд зависимостей - материнская плата, закрытый микрокод... в противовес всему этому - Linux RAID, с заведомо доступными исходниками, испытанный многими уже поколениями it-специалистов. Плюс - возможность использования дисковых томов на любой материнской плате, несложное обновление и т.д.

Open source, одним словом; достоинства содержания этого термина в настоящее время уже ни у кого не вызывает сомнений.

Итак. Создаем RAID1 с зеркалированием данных из двух жестких дисков, на каждом из которых создан раздел (размер один и тот же) - sdb1 и sdc1 (типы партиций - FD (Linux raid autodetection)).

Для создания разделов возможно использовать fdisk или cfdisk, а для создания RAID1 - пакет mdadm:
mdadm is used for building, managing, and monitoring
Linux md devices (aka RAID arrays)
Usage: mdadm --create device options...
            Create a new array from unused devices.
       mdadm --assemble device options...
            Assemble a previously created array.
       mdadm --build device options...
            Create or assemble an array without metadata.
       mdadm --manage device options...
            make changes to an existing array.
       mdadm --misc options... devices
            report on or modify various md related devices.
       mdadm --grow options device
            resize/reshape an active array
       mdadm --incremental device
            add a device to an array as appropriate
       mdadm --monitor options...
            Monitor one or more array for significant changes.
       mdadm device options...
            Shorthand for --manage.
Делаем RAID:
mdadm --create /dev/md0 --verbose -a -l 1 -n 2  /dev/sdb1 /dev/sdc1
-l 1 - тип RAID
-n 2 - количество дисков в массиве

Проверяем результат, выведя на дисплей информацию о только что созданном RAID:
mdadm --detail /dev/md0
И записываем (если уже не записаны) в /etc/raidtab следующие строчки:
raiddev /dev/md0
raid-level      1
nr-raid-disks   2
nr-spare-disks  0
persistent-superblock 1
device          /dev/sdb1
raid-disk       0
device          /dev/sdc1
raid-disk       1
Конфигурируем mdadm:
mdadm -D -s >> /etc/mdadm.conf
Теперь поиск и создание устройства RAID (/dev/md0) доступны вот так:
cd /dev
./MAKEDEV md
ls -l md*
mkraid /dev/md0
Хотя, скорее всего, последний синтаксис вам уже не пригодится - проблемы с распознаванием программного Linux RAID случаются нечасто.

Поддержка ядром RAID (Multiple devices driver support (RAID and LVM) должна быть включена.

После чего, при необходимости, можно использовать и LVM на RAID:

Делаем партицию под LVM2 из RAID; используя уже утилиты из пакета lvm2:
pvcreate /dev/md0
Создаем группу разделов и присваиваем имя vg (volume group):
vgcreate vg /dev/md0
Создаем логические тома:
lvcreate -L2G -nhome vg
lvcreate -L6G -nusr vg
и так далее для opt, var и пр. (см. документацию к LVM)
Активация партиций:
vgscan
vgchange -ay
vgmknodes
Делаем файловые системы на наших логических LVM-партициях (группа vg в /dev/vg/):
mkreiserfs /dev/vg/home
mkreiserfs /dev/vg/usr
и т.д. и т.п.

Операция закончена; на RAID1 находится /dev/vg/home LVM-том с файловой системой raiserfs.

Загрузившись с LiveCD - подключаем, при необходимости, наш RAID следующей командой:
mknod /dev/md1 b 9 1
mdadm --assemble /dev/md1 /dev/sda1 /dev/sdb1
Последнее редактирование: 7 года 2 нед. назад от Aleksej.

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