Как создать raid массив на виртуальной машине

Обновлено: 30.06.2024

Доброго времени суток!
В наследство от прошлого админа достался сервер, на котором крутятся около 30 виртуалок (точнее - 29).
Платформа - супермикро (более точно могу сказать позднее). На материнке два процессора, 64 гига памяти, но слабая дисковая подсистема. Все сделано на набортном рейд-контроллере (по-моему, 602 чипсет), да еще на САТА-дисках. По словам старого админа, материнка не видит САС-диски, хотя один разъем на ней есть (как будто бы их подключали, но в биосе они не увиделись). Сейчас через этот разъем подключены обычные САТА-диски.
Вся дисковая подсистема состоит из 4-х зеркал: одно под систему, на трех - по 10 виртуалок.
Чтобы как-то облегчить ситуацию, преобразовал *.vhd в диски фиксированного размера.
В итоге наблюдаем картину: утром, при логоне пользователей % использования самого нагруженного зеркала = 100%. После преобразования в фиксированные длительность этого безобразия сократилась, но хотелось бы большего.

Посоветуйте, плиз, рейд-контроллер под САС-диски, очень дорогой не надо, что-нибудь оптимальное. Сам предпочел бы LSI, т.к. на сервере установлен 2012 Hyper-V без графической оболочки, а управляющая софтина на него устанавливается, запускается.

может соберете 10-ый рейд из всех дисков для начала, чтобы размазать операции по большему количеству шпинделей?

Насчет рейд-10: в целом, можно попробовать, но в настоящее время не хватит дискового объема (если не путаю, в 10-ом рейде свободного места половина от всего объема всех дисков, а сейчас на каждом зеркале только 30 % свободного места).

а какой уровень вы используете, 5-ый наверно? попробуйте тогда с текущим уровнем собрать или 6-ым, если контроллер позволяет. на мой взгляд в данном случае кэш не поможет, но может другие участники форума будут другого мнения. Сколько нужно дискового пространства?
А то зеркало из пары SSDшек просто напрашивается.

Спасибо за советы!
Первоначально немного ошибся в оценке занимаемого места (писал по памяти).
Сейчас все диски в зеркальных массивах, а именно:
диск Д: 2 диска по 1 ТБ Сигейт Констелейшен (он как раз и проблемный, т.к. работает больше всех пользователей). Занято где-то 502 гига (файлы вирт машин 9 шт + служебные файлы, равные объему оперативной памяти, назначенной виртуальной машине).
Диск Е: 2 диска по 500 ГБ, занято промерно 330 гигов (тут пока диски виртуальных машин динамически изменяемые, наверное запланирую установку двух терабайтных винтов + преобразование в фиксированные)
Диск F: тоже зеркало, 2 диска по 1 ТБ, занято 557 гигов.

Если делать Рейд-10 на встроенном в мамку чипсете из 6 дисков по 1 тб, получим 3 тб свободного места. вроде бы так.
Т.е. по расчетам получается, что должно хватить.

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

И такой момент - вылетит один диск из зеркала (или развалиться рейд) - тут проще, можно его собрать на обычном компе попробовать восстановить, ну или если простой случай - просто заменить диск и сделать ребилд.
А как быть, если развалится рейд-10 из 6 дисков? Как тогда восстановить информацию?

Еще раз, благодарю.

Рэйд10 из шести винтов на интеграшке - не стоит, имхо. Зеркало оно делает нормально, но большее - не его уровень, слишком хлипкая конструкция.
Лучше уж смотрите в сторону контроллера типа LSI 9260 и 2-4шт SAS 10/15к в рэйд1/10.
Еще лучше - контроллер с SSD кэшированием и саташным зеркалом. У Вас горячих данных в виртуалках наверняка раз-два и обчелся.


Чтобы построить 10G RAID01
Сначала добавьте к виртуальной машине 4 жестких диска 5G

Просмотрите жесткий диск с помощью команды fdisk-l, вот четыре новых жестких диска sdb, sdc, sdd, sde
Сначала используйте два жестких диска sdb и sdc для создания RAID1 с именем md01.
Используйте sdd, sde, чтобы продолжить построение RAID1 с именем md02.
Используйте cat / proc / mdstad для просмотра, вы можете увидеть два созданных RAID1

Затем используйте два RAID1 для создания RAID0 с именем md10.

Используйте cat / proc / mdstad для повторного просмотра, вы можете видеть, что тип md10 - RAID0
формат md10
Создайте каталог монтирования
для монтирования

Просмотр информации о монтировании df -Th
Создан raid01 10G
Если вы хотите автоматически монтировать после загрузки, вам нужно записать информацию о монтировании в / etc / fstab

Интеллектуальная рекомендация


Michael.W Поговорите о Hyperledger Fabric. Проблема 20 - Подробная индивидуальная сортировка узла с пятью порядками с исходным кодом для чтения.

Michael.W Поговорите о Hyperledger Fabric. Проблема 20 - Подробная индивидуальная сортировка узла с пятью порядками с исходным кодом чтения Fabric Файл исходного кода одиночного режима находится в ord.


Мяу Пасс Матрица SDUT

Мяу Пасс Матрица SDUT Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description Лянцзян получил матрицу, но эта матрица была особенно уродливой, и Лянцзян испытал отвращение. Чт.


Гессенская легкая двоичная структура удаленного вызова

Hessian - это легкая двоичная структура удаленного вызова, официальный адрес документа, в основном он включает протокол удаленного вызова Hessian, протокол сериализации Hessian, прокси-сервер клиента .


TCP Pasket и распаковка и Нетти Solutions

Основные введение TCP является ориентированным на соединение, обеспечивая высокую надежность услуг. На обоих концах (клиенты и терминалы сервера) должны иметь один или более гнезда, так что передающий.

На него планируется поставить 5-6 виртуалок с разными осями (пара линуксов, windows 2012, windows 2003, windows 7).

Виртуализация на Centos7 (KVM)

Как правильно сделать массивы чтобы виртуалки не тормозили диски другим? Просто сделать raid5 или 6? Или сделать несколько массивов?



1. Не знаю как там чистый KVM, но Proxmox позволяет ограничить доступную виртуальным дискам шину (по MB/s, и по ops/s). Подозреваю, что это фича KVM'а. Так что разбивать по массивам смысла особого нет.

2. Определись с нагрузкой на диски. Какие виртуалки будут стоять, что на них будет крутится. Сколько в процентах будет чтение, а сколько записи на RAID массив

4. Исходя из того, сколько % от всех операций будет составлять запись, выбери уровень RAID. Общее правило, чем больше запись, тем выгоднее 10ый рейд, и тем не выгоднее 5ый/50ый, и еще больше не выгоден 6ой/60ый.


Общее правило, чем больше запись, тем выгоднее 10ый рейд, и тем не выгоднее 5ый/50ый

Производительность 5-го и 6-го рейда очень сильно зависит от контроллера и/или от рук.


1. Долго смотрел в графики, но так и не понял, в чём же я не прав с вышеприведенным утверждением. 2. Скорость нужно мерять не мегабайтами, а IOPSами. Так как 90% серверных приложений плевать хотели на МБ, а вот IOPSики это хорошо.

Рандомная запись в IOPS на RAID10 - % на 50 выше чем на RAID5/6. Производительность RAID5/6 на запись ниже производительности одного диска в общем случае (для записи - считывается блок со всех винтов, правятся данные, пересчитывается кс и заливается на 2 или 3 из винтов; для RAID10 - считывается блок с одного винта, правится и записывается на 2 из 4, следующая транзакция с 50% вероятностью заденет вторую пару винтов).

В данном руководстве мы рассмотрим способ создания в ОС Linux программного LVM RAID. А также представим простое решение, позволяющее вернуть утраченную информации с LVM RAID5 после случайного удаления или непредвиденной неисправности накопителей.

how-to-create-software-raid-5-with-lvm.jpg

Введение

LVM RAID – это способ создания логического тома (LV), который использует несколько физических дисков для повышения производительности или устойчивости массива к сбоям. В LVM физические диски (PV) состоят в одной группе томов (VG).

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

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

Структура массива LVM RAID использует драйверы Device Mapper (DM) и Multiple Device (MD) из ядра Linux.

DM используется для создания и управления видимыми устройствами LVM, а MD используется для размещения данных на физических устройствах.

LVM создает скрытые логические тома (устройства DM), расположенные между видимыми разделами (LV) и физическими устройствами.

Далее я покажу как создать RAID5 из 5 жестких дисков, собранных в одну виртуальную группу логических томов.

Как разметить диски и создать виртуальную группу для LV RAID

Чтобы создать LV RAID, используйте команду lvcreate.

01-linux.jpg

Если на вашем ПК еще не установлен менеджер логических томов (LVM), то сперва нужно запустить установку. Подобный процесс подробно рассмотрен нами в следующем видеосюжете.

Устанавливаем менеджер, задействуя инструмент командной строки, ответственный за взаимодействие с системой управления пакетами. Введите в строке команду: sudo apt install lvm2.

02-linux.jpg

Выполняем все действия от имени суперпользователя. Для этого вводим команду sudo -i. Она снимет требование на постоянный ввод пароля.

03-linux.jpg

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

04-linux.jpg

В терминале используйте специальную системную команду fdisk /dev/sdb.

05-linux.jpg

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

Укажите параметры форматирования, набрав пошагово следующие атрибуты:

  • n – создает новый раздел,
  • p – устанавливает для раздела значение «основной»,
  • 1 – присваивает номер.

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

06-linux.jpg

Теперь зададим настройки LVM. Примените следующие атрибуты каждый в своей строке:

  • t – запускает процесс по изменению типа нового раздела,
  • 8e – устанавливает значение LVM.

07-linux.jpg

Убедимся, что новый раздел имеет нужный тип. Наберите в командной строке атрибут «p». Система обработает запрос и представит в табличной форме итоговые сведения. Искомое устройство будет маркировано значением «sdb1» с типом системы «Linux LVM». Потом записываем установленные изменения, используя атрибут «w». Повторите описанную процедуру для всех остальных неразмеченных носителей и выполните их разметку.

Наши следующие действия будут направлены на создание на новом разделе физического тома. Введите в строке команду «pvcreate /dev/sdb1».

09-linux.jpg

Повторите команду для каждого носителя, заменив значение «sdb1» другими именами накопителей («sdc1», «sdd1», «sde1», «sdf1»).

10-linux.jpg

Затем собираем все носители в единую группу. Наберите в строке команду «vgcreate», перечислив созданные диски. В нашем примере команда будет иметь следующий вид: «vgcreate vg1 /dev/sdb1 dev/sdc1 dev/sdd1 dev/sde1 dev/sdf1». Атрибут «vg1» является именем новой группы томов.

11-linux.jpg

Как создать программный LVM RAID 5

Процесс создания программного RAID 5 подразумевает применение в терминале простой команды следующего формата:

«lvcreate -n lvr5 –type raid5 -L 10G -i 4 vg1»

12-linux.jpg

В нашем примере в команде представлены такие атрибуты:

  • -n – присваивает тому имя.
  • –type raid5 – задает тип массива.
  • -L – устанавливает граничный размер для логического тома (у нас его величина равна 10 ГБ).
  • -i – указывает количество устройств, которые будут задействованы в хранении пользовательских данных. Сюда не входит дополнительное устройство для хранения блоков четности. Число должно быть 2 или больше, так как минимальное количество дисков для данного типа – три.
  • vg1 – объясняет системе, откуда ей следует взять нужное количество дискового пространства (указывается конкретный том или целая группа).

После успешного исполнения команды процесс воссоздания RAID 5 в виртуальной группе LVM будет окончен. Осталось только произвести операцию форматирования массива и монтажа. Выбираем для RAID 5 формат ext4. Наберите команду:

«mkfs -t ext4 /dev/vg1/lvr5»

13-linux.jpg

Команда содержит сведения о выбранной нами файловой системе «ext4», имени группы «vg1», имени тома «lvr5».

Теперь монтируем готовый массив. Вводим команду «mkdir /mnt/lvr5», а затем «mount -t ext4 /dev/vg1/lvr5 /mnt/lvr5».

14-linux.jpg

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

15-linux.jpg

Как проверить статус LVM RAID

Для проверки статуса LVM RAID выполните такую команду:

«lvs -a -o name,copy_percent,devices vg1»

16-linux.jpg

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

17-linux.jpg

Каким способом вернуть утраченные данные с массива LVM

Если важные данные потеряны и нужно их вернуть, то воспользуйтесь программным обеспечением для восстановления от компании Hetman Software. Из предлагаемых инструментов выберите программу Hetman RAID Recovery.

Если критически нужно использовать Hetman RAID Recovery в ОС Linux, то воспользуйтесь одним из трех способов. Включите виртуальную машину, дополнительно установите ОС Windows или подключите проблемные носители к ПК с уже установленной Windows в качестве основной ОС.

После запуска программа автоматически определяет параметры LVM RAID и отображает всю известную информацию о массиве.

Полную версию статьи со всеми дополнительными видео уроками смотрите в источнике. А также зайдите на наш Youtube канал, там собраны более 400 обучающих видео.

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