- Системное администрирование Linux
- Настройка программного RAID на Линукс
- Intel fake raid and linux
- Как установить и настроить программный RAID массив на Linux Astra?
- Как разметить диски и настроить программный RAID при установке с нуля Астра Linux Орел ?
- Как настроить программный RAID на линукс Астра?
- Как установить системный загрузчик Grub через терминал Linux на диск RAID?
Системное администрирование Linux
2018-06-25 11:27:07 9654 2
Настройка программного RAID на Линукс
Массивы RAID были разработаны в целях повышения надежности хранения данных, увеличения скорости работы с дисками и для обеспечения возможности объединения нескольких дисков в один большой диск. Разные типы RAID решают разные задачи.
Рассмотрим основные виды RAID-массивов:
- RAID 0 (Stripe) — Массив, в котором достугается максимальная производительность, но при этом минимальная отказоустойчивость. В этом режиме минимальное необходимое количество дисков — 2. Производительность повышается за счет поочередной записи или чтения с дисков, то есть при записи один блок данных пишется на один диск, а следующий блок данных пишется на другой диск и т.д., при этом при выходе из строя хотя бы одного диска в массиве, все данные будут утеряны. Пользователь получает диск с объемом, равным сумме объемов всех дисков в массиве;
- RAID 1 (Mirror) — Массив зеркало, запись на все диски массива (обычно 2) идет синхронно, т.е. диски полностью дублируют друг друга. При этом при выходе из строя одного из дисков, информация сохраняется на другом. Пользователь получает в пользование объем самого малого диска в массиве;
- RAID 10 — Комбинация RAID 0 и RAID 10 (RAID 0 из двух RAID 1), получаем высокую производительность и высокую отказоустойчивость, минус это дороговизна, минимум необхоодимо 4 диска, при этом полезный объем равен половине суьье всех объемов дисков в массиве;
- RAID 5 — Массив использующий распределенное хранение данных аналогично RAID 0 + распределенное хранение кодов четности для восстановления данных при сбоях. По сути, является компромиссом между RAID0 и RAID1, обеспечивая достаточно высокую скорость работы при неплохой надежности хранения данных. При отказе одного диска из массива данные могут быть восстановлены без потерь в автоматическом режиме. Минимальное количество дисков для такого массива — 3.
- JBOD — Последовательное объединение нескольких физических дисков в один логический, не влияет на производительность, но при этом надежность падает до отказа одного диска, возможно использование дисков разных размеров.
Существует еще много разных видов массивов дисков, но мы рассмотрели основные из них.
Теперь перейдем к настройке программного RAID на Линукс Ubuntu 16.04.
У нас в системе имеется 4 диска объемом по 10Гб, на них и будем реализовывать различные схемы массивов.
Создание массива RAID 0
Для создания и управления массивами в линукс существует утилита mdadm, создадим массив RAID 0 из дисков sdb,sdc
sudo mdadm —create -v /dev/md0 —level=0 —raid-devices=2 \
Проверяем создание массива
Теперь создадим файловую систему на нашем массиве
sudo mkfs.ext4 /dev/md0
И смонтируем наш новый массив
sudo mount /dev/md0 /mnt/
Посмотрим, что получилось
Как видим у нас появилась файловая система с объемом равным объему обоих дисков.
Теперь давай те осуществим настройку, что бы после перезагрузки системы, массив был собран автоматически, для этого в файл конфигурации /etc/mdadm/mdadm.conf необходимо добавить вывод команды mdadm
sudo mdadm —detail —scan >> /etc/mdadm/mdadm.conf
После этого обновим initRAM
sudo update-initramfs -u
Ну и для того что бы наш массив автоматически был смонтирован при загрузке системы, добавим его в /etc/fstab
Если вы хотите удалить массив, то сначала его необходимо отмонтировать, а потом остановить и удалить
sudo umount /dev/md0
sudo mdadm —stop /dev/md0
sudo mdadm —remove /dev/md0
И еще можно забить их нулями, что бы стереть старую инфу
sudo mdadm —zero-superblock /dev/sdb
sudo mdadm —zero-superblock /dev/sdc
И обновляем initRAM
sudo update-initramfs -u
Создание RAID 1
Аналогично как и для RAID 0 создаем RAID 1 из двух дисков
sudo mdadm —create -v /dev/md0 —level=1 —raid-devices=2 \
Выдаст предупреждение, что если вы собираетесь использовать этот массив для хранения директории /boot, необходимо обеспечить что бы загрузчик системы мог работать с массивами.
Проверяем созданием массива
Как видим массив создан, но еще идет процесс синхронизации дисков, подождем когда процесс завершится.
Создадим файловую систему и смонтируем диск
sudo mkfs.ext4 /dev/md0
sudo mount /dev/md0 /mnt
И как и с RAID 0 обеспечим что бы наш RAID собирался автоматически при перезагрузке системы
sudo mdadm —detail —scan >> /etc/mdadm/mdadm.conf
sudo update-initramfs -u
Теперь давай те рассмотрим ситуацию, что наш диск вышел из строя и заменим его другим диском
Создадим файл на нашем массиве
dd if=/dev/zero of=/mnt/raid1 bs=1M count=100
Теперь отключим один из дисков от компьютера
Проверяем, что файлы на нашем массиве остались в порядке и не пропали
Видим, что наш массив помечен как _U, это значит что один из дисков сбойный. Вообще если диск просто сбойный и он отображается как часть массива, но работает нестабильно, то его сначала надо пометить как сбойный, а потом убрать из массива
sudo mdadm —manage /dev/md0 —fail /dev/sdc
sudo mdadm —manage /dev/md0 —remove /dev/sdc
но в нашем случае диск просто был вынут, поэтому можно сразу заменять его новым диском sdd
После подключения нового диска, нужно на нем создать такую же разметку, как и на соседнем диске, копируем разметку командой
sudo sfdisk -d /dev/sdb | sfdisk —force /dev/sdd
Добавляем новый диск в наш массив
sudo mdadm —manage /dev/md0 —add /dev/sdd
И снова дожидаемся пока данные на дисках будут синхронизованы
После окончания синхронизации
Создание RAID 5
Для RAID 5 возьмем три диска sdb, sdc, sdd
sudo mdadm —create -v /dev/md5 —level=5 —raid-devices=3 \
Восстанавливается RAID 5 отличается от RAID 1
Как видим после отключения одного из дисков массив ушел в положение inactive
sudo mdadm —stop /dev/md5
Пробуем пересобрать его
sudo mdadm —assemble —scan —force
Массив снова в положении active
дальше все как и с массивом RAID 1, добавляем новый диск в массив, ждем пока закончится синхронизация и пользуемся
Создание RAID 10
Для создания RAID 10 будем использовать 4 диска sdb,sdc,sdd,sde
sudo mdadm —create -v /dev/md0 —level=10 —raid-devices=4 \
Восстановление RAID 10, после сбоя диска, по-аналогии с RAID 5.
Источник
Intel fake raid and linux
Есть ли какая нибудь возможность подключить intel fake raid в linux? Нашел на этом форуме одну тему, однако не смог туда добавить сообщение. кто-то юзает Intel Fakeraid? Судя по этой теме, Pavval (www.linux.org.ru/people/Pavval/profile) как то это делал. Хотелось бы с ним связаться, но нигде нет контактов. Буду благодарен за любую помощь.
cast Pavval
А чем mdadm не устраивает?
Есть ли какая нибудь возможность подключить intel fake raid в linux?
Есть, подключай. apt-get install dmraid.
Для загрузки с него нужно иметь dmraid в initrd, нормальные дистры это делают.
насколько я понял mdadm поддерживает только software raid. Мне нужен линукс и винда на одном рэйде. В принципе до mdadm я пока просто не добрался, начал копать с dmraid.
Все это дело ставится на мини-линукс, в котором нет менеджеров пакетов. Сегодня смог собрать dmraid из исходников, и удалось примонтировать fake-raid. И при этом даже ничего не сломалось. Однако, покопался я с ним немножко, и понял, что dmraid не подойдет мне. Утилитка img (которая из zenworks), и даже fdisk отказались его видеть. В связи с этим вопрос, нет ли где-нибудь в ядре поддержки fake-raid, чтобы он виделся как обычный диск?
Утилитка img (которая из zenworks), и даже fdisk отказались его видеть. В связи с этим вопрос, нет ли где-нибудь в ядре поддержки fake-raid, чтобы он виделся как обычный диск?
Он отлично видется как диск — ищите проблему у себя. Обычно после активации создаются устройства в /dev/mapper/. Они прекрасно понимаются тем же fdisk. У меня были проблемы с тулзами, которые пытались как-то получить список дисков в системе (тот же gparted видел /dev/sda и /dev/sdb вместо состоящего из них /dev/mapper/isw_*). К kde partition manager я даже сделал патч, который это чинил, но разработчик не откликнулся. Может симлинки в /dev/sd* исправят это.
fdisk -l выдает как раз /dev/sda и /dev/sdb и ни слова об /dev/mapper/. но это не так важно. Главное img не видит. А поподробнее про симлинки можно? Предлагаете сделать симлинк типа /dev/sdc -> /dev/mapper/isw_xxxxxxxxxxx? И еще прочитал что его grub не понимает. А grub2 или lilo мне не подходят. Так что же насчет ядра?
Источник
Как установить и настроить программный RAID массив на Linux Astra?
Друзья, приветствую на fast-wolker.ru! Сегодня будем настраивать программный RAID массив для сервера на Astra Linux. Существует еще один разрез этой технологии. RAID массивы бывают в двух исполнениях — программный и «железный». В первом случае массивом дисков управляет операционная система.
Во втором случае управление дисковым массивом осуществляет материнская плата + RAID контроллер (или специальный процессор). На материнских платах даже у домашних компьютеров в БИОС есть технология Intel RAPID, Intel Storage (или ей подобные), которые умеют объединять диски в массивы на уровне «железа». Дальнейшее управление массивом осуществляется материнской платой и контроллером.
У каждого варианта свои преимущества. Если «железо» серверное, RAID контроллер на нем присутствует обязательно. И лучше выбрать эту технологию. Но, это пожалуй самый дорогой вариант. У дешевых домашних компьютеров ( и у других категории «не серверное железо») в основном псевдо RAID, который в плане надежности и критичности сохранения данных не так хорош, как сервер.
К тому же, Linux не всегда «видит» такие fake-контроллеры при установке. Поэтому во многих случаях установка soft-raid для линукса остается единственным возможным вариантом. Не говоря уже о том, что это самый дешевый вариант. Можно сделать полноценный сервер и радоваться!
Программный RAID можно создать как на этапе установки операционной системы с нуля, так и позже (в некоторых случаях). У вас должно быть подключено нужное количество жестких дисков, они должны иметь одинаковый объем. Количество дисков четное. У каждого диска на торце есть наклейка с индивидуальным номером (он нам пригодиться), не прячьте их:
Если диски бывшие в употреблении — позаботьтесь о том чтобы, с них были предварительно удалены все загрузочные записи, разделы, для исключения проблем с установкой grub в конце процесса.
В моем примере я буду устанавливать операционную систему с нуля и у меня два б/у диска по 500 ГБ. Для RAID типа 10.
Как разметить диски и настроить программный RAID при установке с нуля Астра Linux Орел ?
Если в биосе компьютера диски уже «собраны» в RAID — предварительно отключаем этот режим!
Логично настраивать при установке операционной системы с нуля. На этапе выбора дисков выбираем режим «Вручную» и начинаем настройку:
Далее, выбираем первый в списке диск (их может быть два, четыре, шесть и т.д.):
На выбранном диске надо создать новый раздел (СВОБОДНОЕ МЕСТО):
В этом разделе создаем том:
На каждом диске будет два тома RAID — один под операционную систему. На другом томе будет область файла подкачки, (для оптимизации выгрузки страниц из оперативной памяти). Размер файла подкачки зависит от объема установленной в компьютер оперативной памяти.
В моем случае ее максимально возможный объем равен 32 ГБ (или 6,5 % от общего объема диска.) Добавим еще два процента. Размер тома под операционную систему указываю в процентах:
Тип раздела указываем «первичный»…:
Тип файловой системы «журналируемая файловая система 4»:
И наконец тип «физический том для RAID»:
Настройка этого раздела закончена:
Переходим на оставшееся СВОБОДНОЕ МЕСТО первого диска и продолжаем разметку следующего тома:
Снова создаем новый раздел, как первичный, в начале диска, и используем как «Физический том для RAID«. «Настройка раздела закончена».
Аналогичным образом поступаем со вторым диском. Итоговая картина выглядит так, все четыре тома должны быть RAID:
Если что то сделали не так, можно «удалить раздел», зайдя в него и поправить. Переходим к настройке.
Как настроить программный RAID на линукс Астра?
После разметки дисков переходим в пункт «Настройка программного RAID» (фото выше). Непосредственно сейчас будут внесены изменения в структуру разделов жестких дисков, соглашаемся. Далее, создадим первое MD устройство…:
… с типом RAID 10 (вы выбираете тот который нужен Вам):
У меня только два диска, они и будут активными:
Резервных дисков у меня не установлено и я указываю ноль:
Теперь важный момент! Связываем одинаковые разделы наших дисков (один будет «зеркалом» другого) сначала первую пару:
Затем аналогичным образом создаем ВТОРОЕ МD устройство и связываем вторую пару разделов:
Заканчиваем настройку MD устройств:
Для дальнейшей установки операционной системы необходимо создать точки монтирования корневой файловой системы и файла подкачки на первом (верхнем) устройстве:
Переходим «использовать как» ; вместо «не использовать» выбираем «журналируемую файловую систему 4» и в ней создаем точку монтирования….
…. корневой файловой системы (знак /). Настройка раздела закончена:
Том меньшего размера МОНТИРУЕМ под файл подкачки аналогичным образом, но выбираем точку монтирования «Файл подкачки»:
Результаты выглядят так:
Нажимаем «Закончить и записать изменения на диск», соглашаемся соглашаемся с принятием изменений. Начнется довольно долгий процесс установки операционной системы. Доходим до установки системного загрузчика:
Перед тем как продолжить — сделайте бирки с именами /dev/sd устройств, которые присвоены каждому номеру диска операционной системой и поместите на каждый диск в соответствии с его номером диска на наклейке.
И теперь ставим загрузчик на первый диск, «Продолжить». После появления сообщения об успешной установке нажимаем «вернуться»…
Выбираем пункт «Установка загрузочной записи»:
И устанавливаем загрузочную запись уже на второй диск:
Для чего нужны бирки с именами девайсов на диск? В случае отказа одного из дисков операционная система при диагностике укажет на имя неисправного девайса в системе » /dev/sd». Если у вас не будет такой бирки, вы можете при замене перепутать и установить не тот диск. Результат будет фатальным.
Поэтому при создании программного рейда в качестве подстраховки предусмотрена возможность подключения резервных дисков (в моем примере их нет и я указывал «ноль»). В случае отказа основного диска, резервный включается в работу (если программный RAID был соответвующим образом настроен). Наклейки на резервные тоже желательны.
При отсутствии резервных дисков производится горячая замена на исправный, данные восстанавливаются и система работает.
Как установить системный загрузчик Grub через терминал Linux на диск RAID?
Альтернативный вариант установки загрузчика на второй диск — через терминал. Переход в bash в процессе установки осуществляем клавишами Ctrl+Alt+F2.
chroot /target /bin/bash grub-instal dev/sdb(номер устройства) exit
Нажимаем клавиши Ctrl+Alt+F5 для выхода обратно и заканчиваем установку операционной системы. Состояние и здоровье дисков нужно мониторить. Как это делать, мы еще поговорим. А на сегодня всё!
Источник