Как сделать raid массив из двух дисков на виртуальной машине
Этот вопрос лучше подходит для сбоя сервера, поэтому я заранее прошу прощения, если это так.
Я создал виртуальную машину с Oracle Virtual Box (гостевая ОС Windows 7 x64). На вкладке хранилища в меню настроек окно дерева хранилищ автоматически заполняется контроллером IDE, который указывает на дисковод DVD, и контроллером SATA, который указывает на диск VDI.
Когда я запускаю команду diskpart в операционной системе хоста, она говорит мне, что тип диска - RAID. Когда я запускаю ту же команду в гостевой ОС, она говорит мне, что тип диска - SATA.
Есть ли способ заставить гостевую ОС видеть тот же контроллер, что и у хост-ОС (которым является RAID-контроллер SATA серии Intel (R) ICH8M-E/ICH9M-E/5) или, по крайней мере, видеть тип диска как RAID диск вместо диска SATA?
У многих людей есть домашний ПК, на котором хранятся тонны информации: фото, видео, документы, рабочие материалы и так далее. Максимально обезопасить эти файлы и увеличить скорость доступа к ним, нам поможет технология RAID.
Введение
Массовость востребованности и задействования цифровых электронных ресурсов послужила их стремительному росту, и ежедневно используемый объем таких материалов многократно вырос, что в свою очередь требует наличия особых инструментов для хранения и обеспечения непосредственного прямого доступа при необходимости в любой момент времени согласно соответствующего обращения пользователей.
Современные образцы запоминающих устройств используют прогрессивные конструктивные решения, позволяющие значительно повышать внутренний объем доступного дискового пространства, предлагаемый одним накопителем. А внутренняя организация современных компьютеров предполагает использование нескольких высоко емких дисков в одном устройстве для увеличения пригодного для использования дискового массива.
Подобные технологии
Заключение
Подавляющее большинство современных операций и востребованных процессов пользователей требуют наличия и обязательного использования персональных компьютерных устройств, которые позволяют получать, обрабатывать, оперировать и хранить огромный объем доступных цифровых материалов, количество которых постоянно увеличивается, требуя, в свою очередь, соответствующего доступного свободного дискового инструментария.
Конструктивный формат современных компьютеров не ограничивается возможностью использовать только один дисковый накопитель и позволяет дополнительно комплектовать устройства пользователей добавочными информационными хранилищами, значительно увеличивая пригодное для использования свободное пространство.
Автор: Andrey Mareev, Технический писатель
Каким бы мощным ни был ваш компьютер, у него все же есть одно слабое место: жесткий диск. Он отвечает за целостность и безопасность ваших данных и оказывает значительное влияние на производительность вашего ПК. При этом жесткий диск – единственное устройство в системном блоке, внутри которого есть движущиеся механические части, что и делает его слабым звеном, способным полностью вывести из строя ваш компьютер.
Сегодня есть два способа ускорить работу вашего компьютера: первый – купить дорогой SSD, а второй – по максимуму использовать материнскую плату, то есть настроить массив RAID 0 из двух жестких дисков. Тем более RAID-массив можно использовать и для повышения безопасности ваших важных данных.
В этой статье мы рассмотрим, как создать программный RAID с помощью встроенных инструментов Windows.
Содержание:
Современные материнские платы позволяют создавать дисковые RAID-массивы без необходимости докупать оборудование. Это позволяет значительно сэкономить на сборке массива в целях повышения безопасности данных или ускорения работы компьютера.
Создание программного RAID с помощью встроенных инструментов Windows 8 или Windows 10
Перед созданием программного RAID необходимо определить его тип и для чего он будет использоваться. Сегодня Windows 10 поддерживает три типа программных массивов: RAID 0, RAID 1, RAID 5 (Windows Server).
Итак, мы определились с типом RAID. Затем для создания дискового массива мы подключаем все диски к компьютеру и загружаем операционную систему.
Стоит отметить, что все диски будущего RAID должны быть одинаковыми не только по объему памяти, но желательно и по всем другим параметрам. Это поможет избежать многих неприятностей в будущем.
Далее, чтобы создать программный RAID-массив, выполните следующие действия:
Важно: все данные на дисках, из которых создается RAID-массив, будут удалены. Поэтому заранее сохраните все важные файлы на другой диск или внешний носитель.
После того, как вы настроили массив, вы должны дать ему имя и правильно настроить.
Именно с этим именем и буквой массив будет отображаться в системе Windows.
- Простой (без отказоустойчивости) – это RAID 0;
- Двустороннее зеркало — RAID 1;
- Трехстороннее зеркало – это тоже RAID 1 (с разницей только в количестве копий основного жесткого диска);
- Четность – RAID 5.
В зависимости от выбранного типа RAID мастер автоматически установит максимально доступную емкость дискового массива.
Обычно это значение немного ниже, чем фактический объем доступных данных, и вы также можете установить больший размер дискового пространства. Однако имейте в виду, что это сделано для того, чтобы вы могли установить дополнительные жесткие диски, когда массив будет заполнен, без необходимости перестраивать его.
Новый диск не будет отличаться от обычного жесткого диска, и вы можете выполнять с ним любые операции, даже зашифровать его с помощью BitLocker.
Вы можете создать еще один программный RAID. Только количество жестких дисков, подключенных к ПК, ограничивает количество создаваемых RAID-массивов.
Начнется форматирование и синхронизация дисков, после чего наш массив RAID 0 будет создан.
Все остальные шаги выглядят аналогично.
Как добавить или удалить диск в уже существующем массиве RAID
Как добавить диск в RAID
Предположим, у вас уже есть программный RAID-массив, и вы его используете. Однажды может возникнуть ситуация, когда вам станет не хватать места на диске. К счастью, Windows 10 позволяет добавить еще один диск в уже существующий массив с помощью встроенных инструментов.
Как удалить диск из RAID-массива
Чтобы удалить диск из RAID-массива, следуйте алгоритму:
Создайте программный RAID с помощью командной строки
Другой способ создать программный RAID – использовать командную строку или Windows PowerShell.
Чтобы создать программный RAID с помощью командной строки:
Утилита Diskpart отобразит все диски, подключенные к вашему ПК.
- select disk 1 – где 1 – номер желаемого диска
- convert dynamic – преобразовать в динамический
- select disk 2
- convert dynamic
- select disk 3
- convert dynamic
Теперь, когда мы преобразовали наши диски, мы можем создать том RAID, введя следующие команды:
- select disk 1
- Create Volume RAID Disk 1, 2, 3
После этого следует убедиться, что массив создан.
Все диски будут объединены в один диск.
- select volume 2
- Format FS=NTFS Label=MyNewVolume
- Assign Letter=F
После этого выбранные диски будут объединены в RAID-массив.
Отметим, что с помощью этого метода будет создан RAID 5.
RAID 0
Если вы хотите создать RAID 0, в утилите Diskpart введите:
- list disk;
- create volume stripe size=n disk=1,2,3 – где n — размер в мегабайтах, а 1,2,3 — номера дисков, которые будут включены в массив RAID 0.
RAID 1
Чтобы создать RAID 1, вам необходимо ввести следующие команды одну за другой:
- list disk – для отображения подключенных дисков;
- select disk 0 — количество дисков, их которых создается зеркало;
- convert dynamic – преобразование диска в динамический.
- select volume 0 – выбрать нужный диск;
- add disk=1 – добавить нужный диск для зеркалирования.
После этого будет создан массив RAID 1.
Программное создание RAID в Windows 7
- S (Striping) — соответствует RAID 0;
- M (Mirroring) — соответствует RAID 1;
В некоторых случаях RAID массив может сообщать о поломке диска, хотя на самом деле с ним все в порядке. Чтобы решить этот вопрос нужно сначала понять причину возникновения ошибки.
Однако, физически файлы (в том числе и метаданные) остаются на диске и при добавлении диска в RAID массив вызывают ошибки.
Для этого следует:
Шаг 2: В открывшемся окне введите команду:
Шаг 3: Перед вами откроется список ваших дисков, в котором будет указано имя каждого диска (колонка FriendlyName) и его уникальный идентификатор (колонка UniqueID).
Примечание: вы также можете использовать имя диска (FriendlyName), однако в некоторых случаях система можете отображать одинаковое имя для всех дисков. Поэтому для избегания ошибок лучше всего использовать UniqueID диска.
Шаг 4: Чтобы сбросить ваш диск используйте следующую команду:
Важно: уникальный идентификатор вашего диска должен находится в двойных кавычках. Иначе команда не будет работать.
После этого вы снова можете использовать этот диск в вашем RAID–массиве.
Что делать, если вы потеряли важные данные на RAID-массиве
Использование RAID-массивов может значительно повысить безопасность данных, что очень важно в современном мире. Однако нельзя исключать человеческий фактор.
Потеря важных файлов возможна из-за случайного удаления, форматирования, изменения логической структуры файловой системы и многих других причин. Кроме того, не исключен сбой RAID.
В этой ситуации лучше не принимать поспешных решений. Оптимальный вариант — обратиться к специалистам или воспользоваться специализированным ПО для восстановления данных.
RS RAID Retrieve способен восстановить любой тип RAID-массива, поддерживает все файловые системы, используемые в современных операционных системах.
Всем привет, это Я. Ранее я уже писал на тему жёстких дисков. В той статье я описывал, как продляю жизнь посыпавшемуся жёсткому диску WD Green ёмкостью 2 Тб. Мой метод оказался настолько будоражащим сознание, что у некоторых сдетонировало и они всячески критиковали мои действия. Как оказалось, посторонних, неизвестных мне людей, сохранность моих данных беспокоит больше, чем меня самого. Поразительно! Сегодня будет не менее взрывоопасный контент, ведь мы будем делать RAID 0 из четырёх старых жёстких дисков в 2020 году. Погнали!
Что такое RAID 0
Думаю, немного стоит написать про то, что такое RAID. RAID — массив из нескольких физических жёстких дисков, объединённых в один виртуальный носитель. Существует большое количество различных конфигураций RAID, каждый их которых обладает как плюсами, так и минусами. Чаще всего массив из нескольких дисков используется для обеспечения отказоустойчивости путём хранения избыточных данных. Большие массивы, состоящие из множества жёстких дисков, позволяют не допустить потери данных при выходе из строя сразу нескольких физических жёстких дисков.
Самый простой вариант RAID, не обеспечивающий отказоустойчивости, это RAID 0. Его плюсом является повышенная производительность по сравнению с другими реализациями RAID. По сути, всё что делает RAID 0, так это чередует записываемые в массив данные между всеми дисками массива. На входе данные разбиваются на равные блоки и записываются параллельно на все физические диски. Подобный принцип сильно повышает скорость последовательной записи и последовательного чтения. В теории скорость последовательного чтения/записи может быть равна сумме скоростей каждого диска. Хуже обстоит ситуация со случайной записью и случайным чтением мелких файлов. Впрочем, эти скорости также увеличиваются по сравнению с единичным диском, хоть и не так сильно, как в случае с последовательными операциями чтения/записи.
Основные цели, которые я преследовал при создании массива были: объединение ёмкостей дисков и максимальная производительность. Лучший выбор для этого — RAID 0.
Диски, используемые для RAID 0
Как я написал в введении, наш RAID будет состоять из четырёх дисков. Первый диск — Seagate Barracuda 80 Гб с интерфейсом IDE — самый слабенький:
Тем не менее, состояние его вполне нормальное. Сбойных секторов или прочих ошибок нет. На скриншоте ниже SMART и быстродействие этого диска в программе CrystalDiskMark:
Поскольку на моей системной плате нет разъёмов IDE, то подключить этот диск напрямую я не мог. Для этого пришлось использовать плату-контроллер. Так она выглядит:
Не подумайте, что контроллер я купил специально, дабы подключить старый диск. Делать мне нечего. Случайно я вспомнил, что он у меня валяется без дела и решил задействовать. Контроллер этот двусторонний. То есть, с его помощью можно подключить старый IDE диск к современной системной плате, но также можно подключить новый SATA диск к старой плате, у которой нет SATA контроллера. На фотографии ниже показываю, как диск подключается к плате. В разъём IDE вставляется плата-контроллер, а уже к ней подключается SATA шлейф и питание самого контроллера. Питание диска подключается как обычно:
Как видно на сравнительном скриншоте, разницы в производительности почти нет. Она настолько незначительная, что можно сказать в пределах погрешности измерений. Так что хорошая новость, подобный контроллер практически никак не ограничивает быстродействие жёсткого диска. С этим разобрались, переходим к следующему диску.
Следующий диск тоже Seagate Barracuda 80 Гб, но уже с интерфейсом SATA, более современный:
Диск этот хоть и SATA, но тоже далеко не первой свежести. И тем не менее со SMART всё в порядке. Его вы видите на скриншоте ниже вместе с тестом производительности:
Третий диск, используемый мною для создания массива — Maxtor 80 Gb SATA:
SMART и тест быстродействия этого диска:
Четвёртого диска на 80 Гб у меня не было. Но для создания RAID массива совершенно не обязательно использовать диски одинакового объёма. Посему четвёртым диском был выбран Seagate Barracuda 160 Gb SATA:
SMART этого диска показывает 1 сбойный сектор. Появился он уже давно и новых не добавляется, так что всё в порядке. Хотя наработка внушительная — 47 тысяч 300 часов:
Все четыре диска подключены к компьютеру, переходим к созданию RAID:
Создание RAID 0
Первым делом я переключил в BIOS режим работы SATA контроллера с AHCI на RAID. Выяснилось, что настройки встроенного в плату контроллера не такие уж богатые. В настройках можно выбрать размер блока Stripe Block, политику чтения Read Policy и политику записи Write Policy. И всё. Больше менять ничего нельзя. Впрочем, для моих целей и этих настроек вполне достаточно.
Конечно же все имеющиеся настройки могут влиять на скорость работы будущего RAID. Возник вопрос, какая комбинация настроек обеспечит максимальное быстродействие? К счастью настроек не так уж и много, я проверил их все. Начал с того, что выставил Stripe Block 64 КБ. Политику записи — Write Thru. При таком выборе, единственный доступный вариант политики чтения это NA. Я не буду вдаваться в описание значений всех этих параметров, всё это описано задолго до меня и при желании вы можете найти всё в интернете. Единственное, стоит отметить, что политика записи Write Thru по логике должна быть медленнее других. Поскольку при включении данной политики не используется кэш записи.
Производительность RAID 0 в этом режиме представлена на следующем скриншоте:
После, не меняя размер Stripe Block, я установил Read Policy как Read Cache, а Write Policy как Write Back. Эти параметры задействуют кэш, в теории увеличивая производительность. Минус политики Write Back в том, что при внезапном отключении электричества, с данными, которые не были записаны из кэша на носитель, произойдут алаверды. Они пропадут.
Производительность RAID 0 в режиме с описанными выше параметрами:
По результатам тестов получается, что разница в производительности между протестированными вариантами не такая уж большая. При смене политики на Write Back ощутимо увеличилась лишь случайная запись блоками по 4 КБ. Последовательное чтение, ровно как и случайное, в скорости не прибавило.
Следующая комбинация настроек для тестирования: Stripe Block 64 KB, политики Read Ahead, Write Back. Результаты на скриншоте:
Результаты не слишком отличаются от предыдущих. Для наглядности объединим их в один скриншот:
Думал я, думал, да и решил, что остановлюсь на варианте Read Policy: Read Ahead, Write Policy: Write Back. Осталось только определиться с размером блока Stripe Block. В настройках контроллера этот параметр можно устанавливать в следующих вариациях: 64 KB, 128 KB, 256 KB. В теории, меньший размер блока позволяет добиться большей производительности при работе с мелкими файлами. Больший размер, наоборот, должен повышать быстродействие при записи и чтении файлов большого объёма. Теория есть теория, но почему бы не проверить на практике? Хоть я изначально и склонялся к варианту в 256 KB, так как использовать RAID планировалось для больших файлов, всё же протестировал все три варианта.
Все дальнейшие тесты будут проводиться с включеными политиками Read Ahead и Write Back. Результаты с размером Stripe Block 64 KB нам уже известны. Тестируем Stripe Block 128 KB:
Разница не особа заметна. Случайная запись по 4 КБ немного снизилась, но вместе с тем немного увеличилась при глубине запросов равной 32. Немного возрасло последовательное чтение. Проверим, что получится, если выбрать Stripe Block 256 KB:
Получается, что относительно Stripe Block 128 KB, незначительно увеличилась скорость последовательного чтения. Случайное чтение по 512 КБ немного уменьшилось, зато возрасла скорость случайной записи по 512 КБ и очень сильно, аж на целых 10 МБ/с. Было 49 МБ/с, стало 59 МБ/с. Это уже что-то. Случайная запись по 4 КБ также заметно увеличилась. В остальном разница минимальна. Объединим результаты в один скриншот:
Мне больше всего понравились результаты с Stripe Block 256 KB. Но я решил убедиться и провести ещё два теста, выставив максимальные настройки в CrystalDiskMark: количество повторений 9, объём теста 4000 MB. Результаты Stripe Block 64 KB:
Тот же самый тест с Stripe Block 256 KB:
Проверять Stripe Block 128 KB я не стал, поскольку выбирал между 64 KB и 256 KB. Объединим результаты:
Полученные результаты окончательно сбили с толку. Где-то лучше Stripe Block 64 KB, где-то лучше 256 KB. Значительная разница в результатах наблюдается в случайной записи по 512 КБ. 34 МБ/с при Stripe Block 64 KB и целых 59 МБ/с при 256 KB. В конечном итоге я остановился на размере Stripe Block равным 256 KB. Ведь, как я уже писал, планируется работать с файлами большого объёма.
Так выглядит финальная версия RAID в настройках контроллера:
Общий объём массива в операционной системе — 294 ГБ. На этом скриншоте я уже успел наполнить RAID файлами:
Сравнение RAID 0, Single HDD, SSD
Под конец самое интересное. Сравним быстродействие получившегося RAID 0 с единичным жёстким диском, который у меня используется как основной и с твердотельным накопителем (SSD), на котором установлена операционная система.
Чувствуете запахло горелым? Это начинает подгорать у тех, кто слишком остро реагирует на скриншоты с плохим SMART. Вот, любуйтесь, это мой основной диск Hitachi на 2 ТБ для хранения данных, в программе Hard Disk Sentinel. Готовы? 3… 2… 1… Ignition:
Скриншот с вкладкой SMART в той же программе:
Да, этот диск во всю сыпется. У него была не лёгкая жизнь. Это внешний жёсткий диск, который использовался мной портативно на протяжение нескольких лет. Время наработки у него на тот момент, когда он посыпался, было менее тысячи часов. Сгубило диск то, что я его постоянно возил туда-суда. Но когда он посыпался, я его разобрал, извлёк из корпуса сам диск и по известной методике продлил ему срок службы.
Так этот диск выглядел, пока я его не разобрал:
Непосредственно жёсткий диск, извлечённый из корпуса:
Структура разделов на диске такова: 456 ГБ в начале диска не распределено, именно там находятся заросли бэдов и нестабильных секторов с низкой скоростью доступа. Остальная поверхность в отличном состоянии, там и расположился единственный раздел:
В самом начале отрезано немало пространства. Так я изолировал кучно лежащие бэды и нестабильные сектора. Конечно это существенно сказывается на производительности диска, ведь чем ближе к концу физического пространства, тем ниже скорость чтения/записи. Но это так, к слову.
Что ж, давайте сравним быстродействие RAID 0 из старых жёстких дисков с единичным диском, который уже давно сыпется и с вполне неплохим SSD на MLC чипах. Результаты на скриншоте. Слева RAID 0, по середине HDD Hitachi 2 TB и справа SSD Plextor 128 Gb:
По скорости лидирует SSD с большим отрывом. Было бы странно, будь оно иначе. Но посмотрите на RAID 0 в сравнении с единичным жёстким диском. Тут уже иная картина. RAID 0 показывает куда большие скорости и это при том, что состоит он из старых, можно даже сказать древних дисков, один из которых к тому же имеет интерфейс IDE.
К сожалению не всё так радужно, как хотелось бы. Скорость чтения/записи у жёсткого диска снижается по мере приближения к концу физического пространства. Не лишён этого недостатка и массив из нескольких дисков. На данный момент массив заполнен на 96%. Я решил прогнать тест ещё раз. При такой заполненности результаты совсем печальные:
Поскольку массив заполнен почти до отказа, тест выполнялся в конце физического пространства каждого диска (кроме диска на 160 Гб). Это не могло не сказаться на скорости чтения/записи. В таких условиях скорость RAID 0 уже не так разительно отличается от скорости единичного жёсткого диска.
Итоги
Прежде чем подводить итоги, я хочу дать вам послушать запуск четырёх старых дисков одновременно. Это прикольно звучит. Посмотрите небольшое видео, в нём вы также сможете услышать, как стрекочут все четыре диска при случайном чтении/записи:
Предвосхищая будущие комментарии, не могу не сказать об опасности хранения важных данных на подобных массивах. Но ведь это же очевидно, не так ли? Вероятность того, что в любой момент что-нибудь пойдёт не так, слишком высока. RAID 0 сам по себе мягко говоря не блещет отказоустойчивостью. А если создавать его из старых дисков с огромной наработкой, то высоки шансы, что весь массив внезапно накроется медным тазом. Я использовал этот массив для того, чтобы рендерить на него видео. Даже если массив отвалится, то ничего страшного не произойдёт. Всё, что я потеряю, это отрендеренный файл, который можно рендерить снова. Но ничего подобного не произошло. Не скажу, что я долго пользовался этим массивом, но за всё время его работы не было замечено ни единого сбоя. Всё работало как часы.
18.12.2019
VyacheslavK
CentOS, Linux
комментариев 9
mdadm – утилита для работы с программными RAID-массивами в Linux. В статье мы рассмотрим, как работать с утилитой mdadm (multiple disks admin) для создания массива, добавления дисков, управления дисками, добавление hot-spare и много другой полезной информации.
Установка утилиты управления программным RAID — mdadm
Чтобы установить утилиту mdadm, запустите команду установки:
- Для Centos/Red Hat используется yum/dnf: yum install mdadm
- Для Ubuntu/Debian: apt-get install mdadm
В резульатте в системе будет установлена сама утилита mdadm и необходимые библиотеки:
Создание RAID из 2-х дисков
У меня на сервере установлены два дополнительных диска и я хочу содать на низ програмное зеркало (RAID1). Диски пустые, данные на них не писались. Для начала, нужно занулить все суперблоки на дисках, которые мы будем добавлять в RAID-массив:
У меня два есть два чистых диска vdb и vdc.
Данный листинг означает, что ни один из дисков ранее не был добавлен в массив.
Чтобы собрать программный RAID1 из двух дисков в устройстве /dev/md0, используйтк команду:
А «-n 2«- это количество дисков, которое добавляется в массив.
Если нужно создать RAID0 в режиме страйп (stripe) для увеличения скорости чтения/записи данных за счет распараллеливания команд между несколькими физическими дисками, используйте команду:
RAID 5 из трех или более дисков:
После запуска команды, нужно подтвердить действия и массив будет создан:
Теперь при просмотре информации о дисках, мы видим наш массив:
Создание файловой системы на RAID, монтирование
Чтобы создать файловую систему ext4 на нашем RAID1 массиве из двух дисков, используйте команду:
Создадим директорию backup и примонтируем к ней RAID устройство:
Массив смонтировался без ошибок. Чтобы не монтировать устройство каждый раз вручную, внесем изменения в fstab:
Просмотр состояния, проверка целостности RAID массива
Чтобы проверить целостность данных в массиве, используйте команду:
После чего, нужно посмотреть вывод файла:
Если в результате вы получаете 0, то с вашим массивом все в порядке:
Чтобы остановить проверку, используйте команду:
Чтобы проверить состояние всех RAID -массивов доступны на сервере, используйте команду:
В листинге команды, видим информацию о нашем ранее созданном raid.
Более подробную информацию о конкретном raid-массиве, можно посмотреть командой:
Разберем основные пункты листинга команды:
- Version – версия метаданных;
- Creation Time – дата и время создания raid-массива;
- Raid Level – уровень raid-массива;
- Array Size – объем дискового пространства для raid-массива;
- Used Dev Size – используемый объем для устройств;
- Raid Device – количество дисков в raid-массиве;
- Total Devices – количество добавленных в raid-массив дисков;
- State – текущее состояние (clean – все ОК);
- Active Devices — количество активных дисков в raid-массиве;
- Working Devises — количество рабочих дисков в raid-массиве;
- Failed Devices – количество устройств со сбоями в raid-массиве;
- Spare Devices – количество запасных дисков в raid-массиве;
- Consistency Policy — параметр задающий тип синхронизации после сбоя в raid-массиве, rsync— полная синхронизация после восстановления raid-массива (доступны режимы bitmap, journal, ppl);
- UUID – идентификатор raid-массива
Краткую информацию можно посмотреть с помощью утилиты fdisk:
Восстановление RAID при сбое, замена диска
Если у вас вышел из строя или повредился один из дисков в RAID-массиве, его можно заменить другим. Для начала определим, поврежден ли диск и какой диск нам следует менять.
Из листинга команды, вы видим, что только один диск активен. Так же о проблеме говорит [U_]. Когда оба диска рабочие, вывод будет [UU].
Подробная информация о RAID-массиве также показывает, что естт проблемы:
State : clean, degraded – данная строка указывает на то, что диск в raid-массиве поврежден.
В нашем случае нужно заменить неисправный диск /dev/vdc. Для восстановления массива, нужно удалить нерабочий диск и добавить новый.
Удаляем неиспраный диск:
Добавляем в массив новый диск :
Восстановление диска запустится автоматически после добавления нового диска:
rebuild Status : 69% complete — показывает текущее состояние восстановления массива.
spare rebuilding /dev/vdd — показывает какой диск добавляется к массиву.
После восстановления массива, листинг по дискам выглядит так:
Добавление и удаление дисков в RAID массив на Linux
Чтобы разобрать ранее созданный массив, нужно отмонтировать его :
И выполнить команду:
После разбора массива, он не должен определяться как устройство:
Чтобы собрать массив, который мы ранее разобрали вручную, запустите команду:
Данная команда просканирует диски из разобранного или развалившегося RAID массива и по метаданным попробует собрать из них RAID.
Если вам нужно удалить рабочий диск из массива и заменить его на другой, нужно для начала пометить рабочий диск как нерабочий:
После чего диск можно будет удалить командой::
Добавляется новый диск, так же как и в случае с нерабочим диском:
Добавление Hot-Spare диска в RAID массив
Вы можете добавит в массив hot-spare диск для горячей замены при выходе из строя одного из активных дисков. Добавьте свободный диск в нужный массив:
После чего при проверке статуса массива, будет видно, что началась пересборка массива:
Диск /dev/vdb помечен как нерабочий, а hot-spare диск стал одним из активных дисков RAID и запустился процесс восстановления.
Чтобы добавить дополнительный рабочий диск в RAID, нужно выполнить два шага.
Добавить пустой диск массиву:
Теперь данный диск будет отображаться как hot-spare, чтобы сделать его рабочим, расширим raid-массив:
После чего запустится процесс пересборки массива:
После выполнения пересборки, все диски стали активны:
Удаление массива
Если вы хотите безвозвратно удалить raid-массив, используйте следующую схему:
После чего очищаем все суперблоки на дисках, из которых он был собран:
Mdmonitor: Мониторинг состояния RAID и email оповещения
Для мониторинга состояния RAID массива можно использовать службу mdmonitor. Сначала нужно создать файл /etc/mdadm.conf с конфигурацией текущего массива:
Конфигурационный файл mdadm.conf не создается автоматически. Его нужно создавать и актуализировать вручную.
В конце файла /etc/mdadm.conf добавьте email адрес администратора, на который нужно слать оповещения о проблемах с RAID:
Останолось перезапустить службу mdmonitor через systemctl:
После этого система будет оповещать вас по email об ошибках в mdadm и неисправных дисках.
RAID массив в состоянии inactive
При сбоях оборудования или аварийного выключения по питанию, массив может перейти в состояние inactive. Все диски помечаются как неактивные, но ошибок на дисках нет.
В этом случае нужно остановить массив командой:
И пересобрать его:
Если массив прописан в /etc/fstab, нужно перемонтировать его командой:
Утилита mdadm упрощает работу с raid-массивами в Linux. В данной статье я описал основные моменты работы с данной утилитой, а также затронул самые частые вопросы, которые возникают при работе с raid-массивами через утилиту mdadm.
Читайте также: