Raid soft: Software RAID или Hardware RAID? Что выбрать? — Хабр Q&A

Содержание

Особенности работы программного RAID в Windows Server / Argon / Blog

В этой статье я обзорно расскажу о возможностях по организации RAID массивов встроенными средствами Windows Server и подробно о том, какие подводные камни могут встретиться при создании и эксплуатации таких массивов.

Возможности программного RAID в Windows Server

Поддерживаются следующие массивы:

  • чередующийся том (striped volume, RAID0)
  • зеркальный том (mirrored volume, RAID1)
  • том RAID5 (RAID5 volume)
  • охватывающий том (spanned volume, один логический том размещается более чем на одном физическом диске)

Динамические диски

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

  • Обычный (базовый) диск можно преобразовать в динамический только целиком.
  • Обратное преобразование динамического диска в базовый возможно, но только если с динамического диска удалить все тома.
  • Динамический диск представляет собой один большой NTFS раздел, на котором с помощью хитрой служебной информации может размещаться большое количество томов (как простых, так и RAID), имеется возможность изменять размеры простых томов штатными средствами Windows. Однако, насколько оптимально и фрагментировано будут размещаться данные, мне не известно.
  • Известные мне программы клонирования, восстановления и изменения размеров дисков не поддерживают динамические диски.
  • Динамические диски, содержащие RAID-тома, могут быть перенесены на другой компьютер с Windows Server, так как содержат необходимую информацию для правильной сборки массива.

Невозможно создать тома с разными уровнями RAID

На одной группе физических дисков можно создавать тома RAID только одного типа (уровня). Например, если у нас есть 3 физических диска, и мы создали на них том RAID5, не занимая всего пространства. Мы не сможем в свободном пространстве создавать тома другого уровня RAID (RAID0 и RAID1), а только RAID5 и простые тома.

Одновременная синхронизация томов

Если на одной группе дисков создано несколько томов RAID, то в случае какого-либо сбоя после загрузки компьютера они начинают восстанавливаться одновременно. Это лютый, бешеный EPIC FAIL! Простая ситуация: имеется два физических диска, на них создано два RAID1 тома, один под операционную систему, другой под данные.

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

Со стороны такая «отказоустойчивость» выглядит следующим образом: общее быстродействие дисковой подсистемы падает раз в 20, сама ОС загрузится либо после окончания синхронизации одного из томов (минут 15, если он небольшой, гиг на 50), либо минут через 20 и будет бесполезна до конца синхронизации одного из томов.

Вышеописанное поведение я считаю недопустимым архитектурным просчетом со стороны Microsoft и удивлен тем, что эта беда не решена до сих пор со времен появления программного RAID в Windows 2000 Server.

Если вы попали в описанную ситуацию, то не стоит дожидаться загрузки ОС и изнашивания дисков.

  1. Отключаете один из физических дисков.
  2. Загружаетесь в ОС с нормальной скоростью.
  3. Разбиваете зеркало, превратив тома RAID1 в простые.
  4. Подключаете обратно второй диск.
  5. Создаете только одно зеркало для необходимого вам тома.

RAID5

Опишу сценарий, при котором вы не сможете восстановить деградировавший массив RAID5 до здорового состояния, даже если для этого предоставлены все условия.

  1. Имеется массив RAID5 из шести дисков (Диск1-Диск6).
  2. Среди них есть один сбойный Диск1 (например, из терабайтного объёма пара мегабайт не читаются), но операционная система об этом еще не знает и как сбойный его не отметила.
  3. По каким-либо причинам от массива был отключен исправный Диск2.
  4. Следуя логике RAID5, при отказе одного диска работоспособность массива сохраняется, такой массив помечается как деградировавший (degraded), скорость его работы резко падает, требуется синхронизация с новым исправным диском.
  5. Исправный Диск2 подключается на место. Система его опознает как сбойный. Чтобы синхронизировать массив, этот сбойный диск нужно удалить из массива RAID5 и определить как пустой.
  6. Все готово для синхронизации массива. Запускаем исправление массива (repair) на пустой Диск2.
  7. ВНЕЗАПНО синхронизация натыкается на ошибки чтения на действительно неисправном диске Диск1 и останавливается.
  8. Весть массив остается деградированным. Диск1 помечен как содержащий ошибки (errors), Диск2 помечен как online, однако из-за прерванной синхронизации не содержит полных корректных данных.
  9. В надежде на восстановление подключается совершенно новый исправный Диск7. Запускается восстановление массива на него.
  10. В результате исправный Диск2 заменяется на другой исправный Диск7, но синхронизация снова прерывается, найдя ошибку на неисправном диске Диск1.
  11. И так далее по циклу.

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

Не желая признавать поражения, я пытался сделать следующие вещи:

  • Синхронизировать массив с пропуском ошибок чтения на диске Диск1 (ведь это всего лишь мегабайты их целого терабайта). Но Microsoft не дает такой возможности.
  • Посекторно переписать весь сбойный Диск1 на другой здоровый диск с помощью программ для клонирования. Однако, доступные мне программы с динамическими дисками не работали.

Пример грамотной реализации программного RAID

От перечисленных выше недостатков избавлена аппаратно-программная реализация RAID-контроллера, известная как Intel Matrix Storage, и недавно переименованная в Intel Rapid Storage (работает на RAID-версиях чипсетов, таких как ICH9R, ICh20R). Аппаратно-программный RAID от Intel обеспечивает многие преимущества «врослых» RAID-контроллеров:

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

Основным ее недостатком, в отличии от полностью аппаратных RAID-контроллеров, остается «программность», из которой вытекают:

  • отсутствие встроенного кеша и возможности автономной работы в случае аварии
  • полностью зависит от операционной системы и драйверов
  • выполняемые операции на дисковой подсистеме нагружают основной процессор и память
  • отсутствует поддержка продвинутых вычислительно емких уровней RAID, таких как RAID6

Полезные ссылки

Как настроить программный RAID в Windows

Настройка программного RAID массива в среде Windows имеет свои особенности в отличие от настройки под Linux-системами.

Программные массивы могут быть созданы только на динамических дисках. Установка или загрузка Windows с динамического тома возможна только в том случае, если этот диск был преобразован из системного или загрузочного тома. То есть если установлено несколько экземпляров ОС, то после преобразования диска в динамический можно загрузить лишь тот экземпляр, который находится на загрузочном разделе. Для загрузочного и системного томов возможно создание только зеркального массива (RAID1), создание иных видов массива невозможно, так как они подразумевают установку системы на заранее созданный раздел.

Работа с программными массивами и динамическими дисками производится через связку ХранениеУправление дисками в Диспетчере сервера:

  1. Для преобразования дисков в динамические щелкните правой клавишей мыши и выберите в открывшемся меню пункт Преобразовать в динамический диск. Можно преобразовать сразу несколько дисков.

    Обратите внимание! данная операция необратима, переразметить загрузочный диск не получится, так как он после этого перестанет быть загрузочным, при этом можно будет расширить том за счет неразмеченного пространства.

  2. Для создания массива щелкните правой кнопкой мыши на нужном томе и выберите из выпадающего меню нужный вариант. В случае с системным и загрузочными томами вариант будет один — зеркало.

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

  4. Можно как объединить несколько дисков в отдельный том, так и создать RAID 0, 1 или 5.

BIOS

Ниже описана процедура ручной настройки зеркалирования дисков (RAID1) в операционной системе Windows Server:

  1. Перейдите в StartControl PanelSystem And SecurityAdministrative Tools.
  2. Выберите Create and format hard disk partitions.
  3. Кликните правой кнопкой мыши по Disk 0 и выберите Convert to dynamic disk
    .
  4. Повторите процедуру для Disk 1.
  5. В Disk Management кликните правой кнопкой мыши на диске C: и в выпадающем меню выберите Add mirroring.
  6. В следующем меню выберите Disk 1 и нажмите Add mirroring.

После выполнения действий начнется синхронизация дисков. Синхронизация займет некоторое время, которое зависит от объема дисков.

UEFI

Каждая система с UEFI содержит системный раздел (UEFI System Partition). Этот раздел не может быть зеркалирован автоматическими средствами Windows и требует ручного копирования и настройки на втором диске:

  1. Создайте UEFI System Partition на втором диске и отформатируйте его в FAT.
  2. Скопируйте данные с UEFI System Partition с первого диска на второй.
  3. Остальные разделы можно зеркалировать так, как описано выше (
    Disk Management
    Add mirroring).

программный RAID в Windows 8

Как я писал в предыдущих публикациях, на самом деле Windows 8 есть что предложить пользователю кроме нового интерфейса Metro (а иногда и в противовес ему). У меня Windows 8 прочно обосновалась на настольном ПК благодаря одному только Hyper-V, но это, конечно, довольно специальное применение, востребованное далеко не каждым. В этой статье речь пойдет о еще одной важной новинке, которая также достаточно сложна в техническом плане, но, тем не менее, может претендовать на гораздо большую популярность.

Storage Spaces

В русскоязычной версии Windows 8 функция, с которой я хочу познакомить читателей, называется «Дисковые пространства».

Перевод совершенно неудачный, поскольку набирающие популярность SSD к дискам никакого отношения не имеют. По-английски же название звучит совершенно корректно — Storage Spaces, пространства хранения.

Если не вдаваться в глубокую теорию, то «Дисковые пространства» представляют собой программный RAID в составе всех редакций Windows 8. Вообще говоря, для Windows это не новость — похожую функциональность предоставляют динамические диски, а Drive Extender из Windows Home Server можно считать прямым прообразом нынешнего решения. Тем не менее «Дисковые пространства» имеют свою специфику, и можно предположить, что они умышленно вынесены на пользовательский уровень, чтобы привлечь к ним дополнительное внимание. Но прежде чем приступить к их изучению, напомним вкратце о самом

RAID

Эта аббревиатура расшифровывается как Redundant Array of Independent Disks, т. е. избыточный массив независимых дисков. Причем первоначально I означало Inexpensive, поскольку речь шла о применении недорогих дисков из мира ПК. По мере развития технологии, в частности с применением SCSI-дисков, это качество перестало ощущаться, что и привело к соответствующей замене в названии. Сейчас такая же участь, по-видимому, ожидает последнюю букву D, которую, ввиду все более широкого распространения SSD, следовало бы трактовать как Drives, накопители.

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

К примеру, самый простой RAID 0 объединяет два или более накопителея в единое пространство суммарного объема, причем распараллеливание операций чтения/записи позволяет существенно повысить производительность. Ценой же будет, вообще говоря, снижение надежности, т. к. выход из строя одного накопителя разрушает весь массив из-за того, что запись ведется не файлами, а достаточно крупными блоками данных.

А RAID 1 представляет собой простейшее «зеркало», когда все операции на двух накопителях дублируются, т. е. они всегда представляют копии друг друга. Таким образом при отказе одного, вся информация остается доступной на другом. Это главное, но не единственное преимущество. RAID 1 также ускоряет чтение данных, распараллеливая операции, тогда как скорость записи остается примерно такой же, как и у одиночного накопителя. Здесь как раз хорошо видна та самая избыточность: ведь мы используем два накопителя, хотя с точки зрения объема данных хватило бы и одного.

Реализации RAID бывают аппаратные и программные. Первые представляют собой платы расширения, которые могут быть достаточно дороги, поскольку включают специализированный процессор, RAM для кэша, резервное питание (батарейку) для корректного завершения работы в случае пропадания внешнего питания и пр. Программные RAID, соответственно, реализуются средствами ПО и сегодня существуют для всех распространенных ОС. Они, таким образом, задействуют обычные вычислительные ресурсы компьютера, что и является их основным недостатком — под большой нагрузкой общая производительность системы может снижаться. С другой стороны, близость программных RAID к ОС позволяет обеспечить дополнительную гибкость, что мы и увидим на примере «Дисковых пространств».

Как это работает

Microsoft постаралась сделать «Дисковые пространства» максимально прозрачными для пользователя и гибкими в применении. Для этого будущее хранилище формируется на двух уровнях.

Прежде всего, необходимо создать так называемый пул хранения, т. е. логическое объединение нескольких накопителей. Примечательно, что при этом можно комбинировать устройства с разными объемами и интерфейсами — USB, SATA, SAS, SCSI и даже iSCSI. Количество накопителей, вообще говоря, также может быть совершенно произвольным, не считая минимальных ограничений для каждого типа пространств (см. ниже).

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

Дальше будут автоматически найдены все физические накопители, которые можно объединить в пул — отдельно пустые и содержащие данные или отформатированные. Имейте в виду, что старые данные будут безвозвратно удалены. Кроме того, для RAID не может быть использован системный накопитель — вот первое (впрочем, достаточно очевидное) ограничение.

Как уже говорилось, нет никаких препятствий для объединения в один пул накопителей различных типов и объемов, как, к примеру, на иллюстрации ниже — объединены внутренний SATA- и внешний USB-диски:

На протяжении всего процесса настройки Windows не выдает никаких рекомендации или предупреждений о возможных нюансах — скажем, с производительностью. Между тем, чрезмерные вольности, безусловно, могут приводить к негативным эффектам. Именно поэтому перед использованием «Дисковых пространств» следует разобраться с ними.

Затем на основе пула хранения создаются уже собственно пространства, которые на системном уровне будут выглядеть как обычные логические диски, хотя их природа, как понятно из описания, достаточно виртуальна. Поскольку в моем примере пул объединяет два физических накопителя, то Windows довольно логично предлагает организовать двухстороннее зеркало:

Однако доступны и другие варианты:

Тип пространстваМинимальное число дисков в пулеДопустимое число отказавших дисковАналог RAID
Простое100
Двухсторонее зеркало211
Трехсторонее зеркало521E (?)
Четность315

Остановимся чуть подробнее на каждом из них.

Простое пространство, которое является аналогом RAID 0, не улучшает надежности и может использоваться для ускорения работы с некритичными данными или с файлами огромных размеров. Более того, можно считать, что на самом деле в данном случае надежность как раз ухудшается. Дело в том, что данные на дисковые пространства (любых типов) записываются не файлами, а довольно большими блоками и считаны они могут быть только с функционирующего пространства. Но простое дисковое пространство разрушается, если в пуле выйдет из строя хотя бы один накопитель — при этом никаких аварийных инструментов пока нет, хотя блоки, вероятно, могут хранить какие-то файлы целиком. Такая же проблема касается и всех прочих типов — при отказе числа накопителей свыше допустимого. Некоторые сторонние разработчики заявили о намерении создать соответствующие утилиты, но, насколько мне известно, реально пока ничего не показали. Хотя правильней было бы, чтобы этим вопросом озаботилась сама Microsoft.

В двухстороннем зеркале каждая операция записи осуществляется одновременно на два накопителя. Соответственно, при отказе любого одного накопителя пространство остается работоспособным. Однако, если в пуле более двух дисков то задействоваться они могут все и алгоритм такого «размазывания» от пользователя скрыт.

Трехстороннее зеркало подразумевает параллельную запись на три накопителя, что, соответственно, защищает от отказа любых двух. Для соответствующего пространства, однако, требуется целых пять дисков, хотя в бета-версии Windows 8 достаточно было именно трех. Вероятно, схема RAID видоизменилась уже в последний момент и в доступной сегодня документации четко не описана. Скорее всего, это нечто вроде RAID 1E, где каждый блок действительно записывается трижды, но каждая следующая операция выполняется со сдвигом на один накопитель, т. е. заведомо равномерно «размазывается» по всему пулу. Обычно это делается для улучшения производительности (за счет большего распараллеливания), но будет ли это справедливо в данном случае — вопрос открытый. Некоторые обозреватели также предположили, что речь может идти о RAID 6, однако это достаточно медленная схема (из-за необходимости расчета двух типов контрольных сумм), чего по тестам не видно. В любом случае, для «Дисковых пространств» трехсторонне зеркало — единственный способ добиться максимально надежного хранения критичных данных.

Наконец, пространство с контролем четности (видимо, для краткости оно называется просто четность) в точности соответствует RAID 5. В нем одновременно может задействоваться от 3 до 8 накопителей (хотя пул, как обычно, может содержать и больше). Схема работает следующим образом: на все накопители кроме одного записываются блоки с полезными данными, а на последний — блок контрольных сумм, представляющих собой результат операции XOR. Соответственно, при отказе одного из накопителей, недостающие данные могут быть буквально вычислены. C точки зрения надежности пространство с контролем четности аналогично двухстороннему зеркалу, однако в остальном они отличаются заметно. Так, избыточные данные в первом случае составляют 1/N от общего объема, где N — от 3 до 8 (т. е. равно количеству накопителей, на которые одновременно ведется запись), а во втором — всегда 1/2. Однако из-за необходимости расчета контрольных сумм, пространства с контролем четности ощутимо медленнее на запись, вследствие чего их рекомендуют для хранения больших объемов редко изменяемых данных, к примеру, видео.

На предыдущей иллюстрации видно, что одной из немногочисленных настроек пространства является его размер. В данном случае он вроде бы логично для двухстороннего зеркала установлен в половину от общего доступного объема. Однако же использованные накопители вовсе не равны. Более того, на самом деле можно установить любой размер — на функционировании пространства это никак не скажется. В частности, как только будет заполнен меньший накопитель, пространство демонтируется и восстановить его функционирование можно будет добавлением в соответствующий пул новых накопителей. Подобный принцип работы обеспечивается так называемой тонкой инициализацией (thin provisioning), когда, несмотря на заявленные показатели, физическое пространство реально выделяется только под конкретные запросы системы.

Отсюда, в частности, вытекают еще несколько особенностей «Дисковых пространств». Во-первых, в отличие от аппаратных реализаций RAID в данном случае нет жесткого закрепления за накопителями определенных функций. В общем случае данные и контрольные суммы как бы «размазываются» по всем доступным накопителям, что несколько улучшает производительность и придает технологии дополнительную гибкость, но как уже говорилось затрудняет восстановление. Во-вторых, на каждом пуле может быть создано несколько пространств, причем любых типов. К примеру, при использовании накопителей большой емкости не обязательно сразу же целиком отдавать их под зеркало, если объем критичных данных будет расти постепенно. Параллельно можно создать простое пространство и использовать его (до поры до времени) для повышения производительности при работе, скажем, с временными файлами.

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

Специфика функционирования

Надеюсь, предыдущий раздел дал общее представление о гибкости «Дисковых пространств», однако, как и всегда, это качество достигается за счет ряда компромиссов. Часть из них, как то: блочная запись и объединение накопителей различных типов — уже затрагивались. Но есть и другие, которые также необходимо иметь в виду.

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

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

А вот реакция Windows на заполнение пространства достаточно своеобразна. Начиная с 70% пользователю будут выдаваться соответствующие оповещения, а при полном исчерпании места пространство автоматически демонтируется — подключить его обратно можно вручную через аплет «Дисковые пространства». Хотя кажется более логичным, чтобы пространство просто переводилось в режим только для чтения.

Производительность

Вполне закономерно, что это один из самых неоднозначных вопросов, относящихся к «Дисковым пространствам». Комбинирование накопителей с разными интерфейсами может приводить к самым различным эффектам. Особенно это касается USB, где не всегда даже понятно, как порты распределяются между контроллерами и, конечно, дело не только в пропускной способности интерфейса (т. е. USB 3.0 не решит всех проблем). К сожалению, никаких предупреждений при формировании пулов и пространств пользователь не получает — хотя некоторые неудачные конфигурации вычисляются довольно легко.

Вот как выглядит производительность дисковых пространств из примеров этой статьи.

Зеркало:

Простое:

А вот, для сравнения, производительность использованных физических накопителей.

Внутренний SATA-диск:

Внешний USB-диск:

Видно, что запись на зеркало определяется худшими показателями для двух накопителей, а чтение, как и все операции с простым пространством — усредненными. В данном случае результаты, пожалуй, было несложно предсказать, исходя из принципов работы схем RAID. Однако если бы накопителей в пуле было больше, арифметика была бы не столь проста.

К сожалению, для проведения полновесного тестирования под рукой не оказалось необходимого оборудования, но в общем можно утверждать, что в тех случаях, когда удается распределить одинаковые накопители по независимым каналам, результаты примерно соответствуют общим представлениям о RAID, хотя и с несколько худшим уровнем масштабируемости:

  • простое пространство увеличит производительность и чтения, и записи пропорционально количеству накопителей;
  • при зеркалировании производительность записи примерно соответствует показателям отдельного накопителя (хотя в некоторых случаях может и замедляться), скорость чтения повышается;
  • пространство с контролем четности также улучшает производительность чтения, но замедляет запись в разы (типично — вчетверо).
Выводы

Благодаря различным компромиссам и ухищрениям «Дисковые пространства» реализованы таким образом, чтобы среднестатистическому пользователю не пришлось даже задумываться о подробностях конфигурирования и обслуживания RAID. C помощью этой возможности, к примеру, можно совершенно просто задействовать старые, разрозненные накопители, которые уже рискованно использовать поодиночке. Да, это приведет к каким-то негативным эффектам, но работать все будет исправно и совершенно автоматически. Для более опытных пользователей и администраторов небольших серверов имеется возможность и тонкой настройки посредством PowerShell. Конечно, сегодня появляется все больше бюджетных NAS, однако они все-таки служат несколько иным целям, требуют дополнительных затрат и не обладают гибкостью «Дисковых пространств». В любом случае, хорошо иметь выбор. Наконец, само появление «Дисковых пространств» в Windows 8 говорит о том, что Microsoft пока не собирается сбрасывать со счетов рынок традиционных ПК.

Дисковые пространства – программный RAID на борту Windows

Windows в числе своего арсенала предусматривает несколько возможностей по созданию программного RAID. Это в первую очередь старая системная функция по работе с динамическими дисками, в рамках которой можно, в частности, создавать специальные разделы из нескольких устройств информации с реализацией конфигураций RAID 0, 1 и 5. А Win8.1 и Win10 на своём борту содержат более современную технологию – дисковые пространства.

Что это за технология и как её использовать?

Содержание статьи:

1. О технологии

Итак, в версиях Windows 8.1 и 10 реализована технология по типу программного RAID, называется «Дисковые пространства». Реализована в панели управления.

Предназначается для создания производительных и отказоустойчивых дисковых массивов. С помощью этой технологии можем два и более жёстких диска объединить в одно дисковое пространство, по сути, в единый пользовательский (несистемный) раздел. И хранить на этом разделе что-то не особо важное в случае конфигурации без отказоустойчивости или, наоборот, что-то важное, обеспечив этим данным двух- или трёхсторонние зеркала. Дисковые пространства могут быть сформированы из разного типа устройств информации – внутренних SATA, SAS и внешних USB-HDD.

Чем эта технология отличается от динамических дисков? Дисковые пространства:

• В большей степени эмулируют аппаратный RAID;
• Лишены многих недостатков динамических дисков;
• При зеркалировании позволяют задействовать относительно современную наработку Microsoft — отказоустойчивую файловую систему ReFS;
• Не предусматривают, как динамические диски, возможность зеркалирования самой Windows (очевидно, как лишней функции в свете иных возможностей восстановления работоспособности ОС).

Дисковое пространство – это территория с нуля, при её создании жёсткие диски форматируются, их структура и содержимое теряются. Тогда как при работе с динамическими дисками мы к любому существующему разделу без потери данных можем добавить его раздел-зеркало.

Как и динамические диски, современная технология программного RAID позволяет создавать массивы из разных жёстких дисков, в том числе и по объёму. Но последняя, в отличие от первой, не оставляет незанятое массивом место на одном из носителей меньшего объёма. Чтобы это незанятое место можно было присоединить к другим разделам или создать отдельный раздел. Наоборот, при создании дисковых пространств мы не ограничены объёмом одного из жёстких. Мы можем изначально указать любой виртуальный размер, а впоследствии обеспечить его реальными ресурсами устройств информации, добавив их к массиву — так называемому пулу носителей. Реализация последнего позволяет нам действовать несколько гибче, чем при оперировании динамическими дисками.

2. Пул носителей

Пул носителей – это точка сборки жёстких дисков, создание и настройка непосредственно самого массива (вне зависимости от его функциональности). В пул не может быть добавлен SSD или HDD, на котором установлена текущая Windows. Для старта использования дисковых пространств потребуется как минимум один пустой (или с ненужными данными) жёсткий диск. Но, безусловно, лучше, чтобы их было как минимум два, так сразу можно будет оценить выгоды работы с массивом. С создания пула, собственно, и начинается работа с этой технологией. Жмём кнопку его создания.

Увидим все подключённые к компьютеру устройства информации, которые могут быть добавлены в пул. Они пустые неотформатированные и отформатированные будут отдельно распределены по соответствующим разделам. Здесь можем снять галочки с устройств, которые мы не собираемся использовать для массива. Затем жмём «Создать пул». Напомним, диски с имеющейся информацией впоследствии потеряют её.

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

Удаление дисков из пула не всегда будет доступно. В некоторых случаях потребуется прежде добавление нового устройства информации.

3. Создание дискового пространства

В окно создания дискового пространства попадём автоматически сразу же после создания пула, а также при ручном запуске этой операции.

Здесь можем задать пространству любое имя и выбрать букву. Из обязательных настроек:

• Выбор типа устойчивости, по сути, конфигурации RAID;
• Выбор файловой системы, если кроме NTFS предлагается ReFS;
• Задание размера.

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

• Оставить значение по умолчанию для простого типа (RAID 0), это будет суммарный объём всех носителей;
• Для отказоустойчивых массивов указать размер наименьшего по объёму диска.

Размер можем разделить на 2, 3, 4 и более частей. И создать несколько пространств по типу того, как мы на обычном диске формируем разные разделы для удобства каталогизации данных.

В итоге жмём кнопку создания.

Дисковое пространство в проводнике теперь станет доступно нам как обычный раздел. В управлении дисками носители пула больше не будут видны как отдельные устройства. И будут значиться по порядковому номеру последнего из них.

4. Тип устойчивости

Тип устойчивости – это функционал массива, аналог той или иной конфигурации RAID. Технология предлагает нам 4 таких типа.

Простой тип — это может как обычный раздел на базе одного или нескольких носителей, так и аналог RAID 0, массив как минимум из двух носителей без отказоустойчивости, но с удвоенной (как минимум) скоростью чтения и записи данных. При выходе из строя одного из дисков теряется вся информация. Файловая система – только NTFS.

Двухстороннее зеркало – это аналог RAID 1, отказоустойчивый массив из как минимум двух носителей. Данные одномоментно записываются на основной диск и зеркало, и так же одномоментно считываются. Имеем удвоенную скорость чтения данных и актуальные их копии на случай выхода из строя одного из носителей. Файловая система – и NTFS, и ReFS.

Трёхстороннее зеркало – это аналог RAID 1E, массив из как минимум пяти носителей, обеспечивающий быстродействие и высокую отказоустойчивость. Защищает данные в случае выхода из строя сразу двух дисков. Файловая система – и NTFS, и ReFS.

Чётность – это аналог RAID 5, массив из как минимум трёх носителей, обеспечивающий отказоустойчивость при выходе из строя одного из них. Увеличивается скорость чтения данных, но из-за специфики конфигурации несколько снижается скорость их записи. Файловая система – только NTFS.

5. Выход из строя одного из носителей

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

С ним необходимо разобраться – либо исправить, либо удалить из пула и добавить в пул новое устройство информации.

6. Удаление дискового пространства

Если в дисковом пространстве больше нет надобности, его можно удалить.

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

7. Переустановка Windows и подключение массива к другим компьютерам

Дисковые пространства существуют и вне среды работающей Windows, ведь информация о конфигурациях массивов хранится на самих дисках. Вот только распознать массив — по сути, виртуальный тип устройства информации — сможет только совместимое с Windows 8/8.1/10, Server 2012/2012 R2/2016 программное обеспечение. Это установочные процессы этих версий, LiveDisk на базе WinPE 8-10, ну и, конечно же, сами ОС. Если мы установим, к примеру, Win7 или перенесём весь массив на другой компьютер с этой версией, она не будет видеть такой массив, увидит только отдельные носители как таковые, что «Вне сети». И не предложит ничего более, как удалить на них разделы.

Поддерживающие же технологию версии Windows при переустановке или подключении массива к другому компьютеру обнаружат его автоматически, без нашего вмешательства. Непосредственно во время переустановки ОС мы будем видеть массив как единое устройство информации. Кстати, если переустанавливается EFI-система Windows, необходима внимательность, чтобы по ошибке не удалить или не отформатировать MSR-раздел дискового пространства, а не ОС.

На дисковое пространство даже можно установить второю Windows. Вот только делать этого не стоит. Вторая ОС установится, но не сможет запускаться. Да и ещё и затрёт загрузчик первой ОС, и его придётся восстанавливать.

Создание software RAID внутри ОС Windows Server

1. Для начала необходимо зайти в панель «Управление дисками». Сделать это можно кликнуть правой кнопкой мыши по кнопке «Пуск» и выбрав там «Управление дисками»:

Доступными типами RAID, по умолчанию, являются RAID Ø (чередующийся том), RAID 1 (зеркальный том), RAID 5 и JBOD (составной том). В этой статье мы разберем, как создавать RAID 5, поскольку создание остальных типов RAID (томов) отличается незначительно.

2. Внутри программы «Управление дисками» необходимо кликнуть правой кнопкой мыши по одному из доступных нам неразмеченных дисков и выбрать необходимый тип RAID.

3. Следуя указаниям мастера, добавим все наши 4 диска в один RAID.

5. Назначим букву новому тому и название, а также файловую систему:

6. После закрытия мастера появится сообщение, что необходимо преобразовать диски и что вся информация будет безвозвратно удалена. Поскольку в нашем примере диски пустые, нажимаем «Да».

Важно! Если у вас на дисках хранится нужная вам информация, её необходимо предварительно сохранить где-то в другом месте.

После преобразования и создания RAID 5 на дисках запустится процесс ресинхронизации. Продолжительность этого процесса зависит от объема дисков:

По окончании ресинхронизации мы получаем наш новый том типа RAID-5:

 

Как создать программный RAID в Windows 7

В данной статье попробую подробно рассказать про процедуру создания программного RAID в Windows 7. Итак, имеем:

1) ПК с ОС   Windows 7 Professional – 1 шт

2) Жесткий диск SATA 2 Тб – 2 шт

Что мы хотим получить: на выходе у нас должна получиться система, в которой важная информация защищена от поломки жесткого диска при помощи технологии RAID 1 (зеркалирование).

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


Так как размер моих дисков не превышает 2 Тбайт, я выбрал тип раздела MBR.

Далее приступим к созданию RAID1 (зеркала), для чего щелкните правой кнопкой по любому из дисков и выберите «New Mirror Volume» (Новое зеркало).

В появившемся мастере нажмите  кнопку Далее:

Теперь вы должны выбрать оба диска:

В следующем окне необходимо задать букву диска, я выбрал M: (типа Mirror).

В следующем окне будет предложено выбрать файловую систему для вновь создаваемого тома и отформатировать его. В этом окне нужно выбрать тип файловой системы (NTFS), указать размер блока и задать имя тома.

После чего нажмите кнопку Готово

После нажатия кнопки “Finish” появится окно, предупреждающее о том, что будет выполнена операция преобразования базового диска в динамический, и что загрузка ОС с динамического диска будет невозможна. На что нам нужно ответить «ДА», т.к. у меня есть отдельный диск для операционной системы, а вновь созданный том RAID будет использоваться для хранения информации.

Идем теперь в «Мой компьютер» и видим, что появился новый диск с буквой диска M:. На самом деле это виртуальный диск, который физически представляет собой 2 диска. Теперь любая информация, записанная на диск M: будет защищена от выхода из строй любого из двух жестких дисков.

Тестирование программных RAID-массивов для NVMe-устройств по методике SNIA

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

Результаты тестов тогда были удивительно обескураживающими — огромный потенциал скорости NVMe-дисков совершенно не соотносился с демонстрируемой производительностью имеющихся программных продуктов.

Нашим разработчикам это не понравилось. И они решили написать свой продукт… Продукт, которому маркетологи впоследствии радостно придумали название RAIDIX ERA.

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


Диаграмма из отчета G2M

В настоящий момент одним из лидеров в производстве NVMe компонентов является компания Intel. Именно на их оборудовании мы и проводили тесты, чтобы оценить возможности существующих программных продуктов для управления таким «инновационным» железом.

Совместно с нашим партнером, компанией Промобит (производителем серверов и систем хранения данных под торговой маркой BITBLAZE), мы организовали тестирование интеловских NVMe-накопителей и распространенного программного обеспечения для управления такими устройствами. Тестирование проводили по методике SNIA.

В этом материале мы поделимся цифрами, полученными в ходе тестирования аппаратной NVMe-системы Intel, программных массивов от MDRAID, Zvol поверх ZFS RAIDZ2 и, собственно, нашей новой разработки.

Конфигурация оборудования


За основу тестовой платформы мы взяли серверную систему Intel Server System R2224WFTZS. Она имеет 2 сокета для установки процессоров Intel Xeon Scalable и 12 каналов памяти (24 DIMMs всего) DDR 4 частотой до 2666 MHz.

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

Все NVMe-накопители подключили через 3 бэкплейна (backplane) F2U8X25S3PHS.

Всего в системе у нас получилось 12 NVMe-дисков INTEL SSDPD2MD800G4 c прошивкой CVEK6256004E1P0BGN.

Серверная платформа была оснащена двумя процессорами Intel® Xeon® Gold 6130 CPU @ 2.10GHz с включенной функцией Hyper-Threading, позволяющей запускать два потока с каждого ядра. Таким образом, на выходе мы получали 64 вычислительных потока.

Подготовка к тестированию


Все тесты в этой статье выполнялись в соответствии со спецификацией методики SNIA SSS PTSe v 1.1. В том числе, проводилась предварительная подготовка хранилища для того, чтобы получить стабильный и честный результат.

SNIA позволяет пользователю выставлять параметры количества потоков и глубины очереди, поэтому мы выставили 64/32, обладая 64 вычислительными потоками на 32 ядрах.

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

Перед запуском тестов мы сделана предварительная подготовка системы:

  1. Установка ядра версии 4.11 на CentOS 7.4.
  2. Выключение C-STATES и P-STATES.
  3. Запуск утилиты tuned-adm и выставление профиля latency-performance.

Тестирование каждого продукта и элемента проходило у нас по следующим этапам:

Подготовка устройств по спецификации SNIA (зависимая и независимая от типа нагрузки).

  1. Тест на IOps блоками 4k, 8k, 16k, 32k, 64k, 128k, 1m с вариациями сочетаний чтения и записи 0/100, 5/95, 35/65, 50/50, 65/35, 95/5, 100/0.
  2. Тесты задержек (latency) c блоками 4k, 8k, 16k с вариациями сочетаний чтения и записи 0/100, 65/35 и 100/0. Количество потоков и глубина очереди 1-1. Результаты фиксируются в виде средней и максимальной величины задержек.
  3. Тест на пропускную способность (throughtput) с блоками 128k и 1M, в 64 очереди по 8 команд.

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

Тест 1. Тестирование аппаратной части


Для начала мы решили посмотреть, на что способен один NVMe-диск Intel DC D3700.
В спецификации производитель заявляет следующие параметры производительности:
Random Read (100% Span) 450000 IOPS
Random Write (100% Span) 88000 IOPS

Тест 1.1 Один NVMe-накопитель. Тест на IOPS


Результат производительности (IOps) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 84017.8 91393.8 117271.6 133059.4 175086.8 281131.2 390969.2
8k 42602.6 45735.8 58980.2 67321.4 101357.2 171316.8 216551.4
16k 21618.8 22834.8 29703.6 33821.2 52552.6 89731.2 108347
32k 10929.4 11322 14787 16811 26577.6 47185.2 50670.8
64k 5494.4 5671.6 7342.6 8285.8 13130.2 23884 27249.2
128k 2748.4 2805.2 3617.8 4295.2 6506.6 11997.6 13631
1m 351.6 354.8 451.2 684.8 830.2 1574.4 1702.8

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

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

Тест 1.2 Один NVMe-накопитель. Тесты задержек


Среднее время отклика (ms) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R65% / W35% R100% / W0%
4k 0.02719 0.072134 0.099402
8k 0.029864 0.093092 0.121582
16k 0.046726 0.137016 0.16405

Среднее время отклика (ms) в графическом виде. Read / Write Mix %.

Максимальное время отклика (ms) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R65% / W35% R100% / W0%
4k 6.9856 4.7147 1.5098
8k 7.0004 4.3118 1.4086
16k 7.0068 4.6445 1.1064

Максимальное время отклика (ms) в графическом виде. Read / Write Mix %.

Тест 1.3 Пропускная способность


Заключительный этап — оценка пропускной способности. Здесь получились вот такие показатели:
1MБ последовательная запись — 634 MBps.
1MБ последовательное чтение — 1707 MBps.
128Kб последовательная запись — 620 MBps.
128Kб последовательное чтение — 1704 MBps.

Разобравшись с одним диском, мы переходим к оценке всей платформы целиком, которая состоит у нас из 12 накопителей.

Тест 1.4 Система в 12 накопителей. Тест на IOPS


Здесь было принято волевое решение сэкономить время и показать результаты только для работы с блоком 4k, который на сегодняшний день является наиболее распространенным и показательным сценарием оценки производительности.

Результат производительности (IOps) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 1363078.6 1562345 1944105 2047612 2176476 3441311 4202364

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

Тест 1.5 Система в 12 накопителей. Тесты пропускной способности


1MБ последовательная запись — 8612 MBps.
1MБ последовательное чтение — 20481 MBps.
128Kб последовательная запись — 7500 MBps.
128Kб последовательное чтение — 20400 MBps.

На полученные показатели производительности «железа» мы еще раз посмотрим в конце статьи, сравнивая их с цифрами тестируемого на нем программного обеспечения.

Тест 2. Тестирование MDRAID


Когда мы говорим о программном массиве, то первым на ум приходит MDRAID. Напомним, это базовый программный RAID для Linux, который распространяется совершенно бесплатно.

Посмотрим, как MDRAID справится с предложенной ей системой из 12 дисков при уровне массива RAID 0. Мы все прекрасно понимаем, что построение RAID 0 на 12 дисках требует особой храбрости, но сейчас нам такой уровень массива нужен для демонстрации максимальных возможностей этого решения.

Тест 2.1 MDRAID. RAID 0. Тест на IOPS


Результат производительности (IOps) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 1010396 1049306.6 1312401.4 1459698.6 1932776.8 2692752.8 2963943.6
8k 513627.8 527230.4 678140 771887.8 1146340.6 1894547.8 2526853.2
16k 261087.4 263638.8 343679.2 392655.2 613912.8 1034843.2 1288299.6
32k 131198.6 130947.4 170846.6 216039.4 309028.2 527920.6 644774.6
64k 65083.4 65099.2 85257.2 131005.6 154839.8 268425 322739
128k 32550.2 32718.2 43378.6 66999.8 78935.8 136869.8 161015.4
1m 3802 3718.4 3233.4 3467.2 3546 6150.8 8193.2

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

Тест 2.2 MDRAID. RAID 0. Тесты задержек


Среднее время отклика (ms) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R65% / W35% R100% / W0%
4k 0.03015 0.067541 0.102942
8k 0.03281 0.082132 0.126008
16k 0.050058 0.114278 0.170798

Среднее время отклика (ms) в графическом виде. Read / Write Mix %.

Максимальное время отклика (ms) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R65% / W35% R100% / W0%
4k 6.7042 3.7257 0.8568
8k 6.5918 2.2601 0.9004
16k 6.3466 2.7741 2.5678

Максимальное время отклика (ms) в графическом виде. Read / Write Mix %.

Тест 2.3 MDRAID. RAID 0. Тесты пропускной способности


1MБ последовательная запись — 7820 MBPS.
1MБ последовательное чтение — 20418 MBPS.
128Kб последовательная запись — 7622 MBPS.
128Kб последовательное чтение — 20380 MBPS.

Тест 2.4 MDRAID. RAID 6. Тест на IOPS


Давайте теперь посмотрим, что получается у этой системы на уровне RAID 6.

Параметры создания массива

mdadm —create —verbose —chunk 16K /dev/md0 —level=6 —raid-devices=12 /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1 /dev/nvme5n1 /dev/nvme8n1 /dev/nvme9n1 /dev/nvme10n1 /dev/nvme11n1 /dev/nvme6n1 /dev/nvme7n1

Суммарный объем массива составил 7450.87 GiB.

Запускаем тест после предварительной инициализации RAID-массива.

Результат производительности (IOps) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 39907.6 42849 61609.8 78167.6 108594.6 641950.4 1902561.6
8k 19474.4 20701.6 30316.4 39737.8 57051.6 394072.2 1875791.4
16k 10371.4 10979.2 16022 20992.8 29955.6 225157.4 1267495.6
32k 8505.6 8824.8 12896 16657.8 23823 173261.8 596857.8
64k 5679.4 5931 8576.2 11137.2 15906.4 109469.6 320874.6
128k 3976.8 4170.2 5974.2 7716.6 10996 68124.4 160453.2
1m 768.8 811.2 1177.8 1515 2149.6 4880.4 5499

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

Тест 2.5 MDRAID. RAID 6. Тесты задержек


Среднее время отклика (ms) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R65% / W35% R100% / W0%
4k 0.193702 0.145565 0.10558
8k 0.266582 0.186618 0.127142
16k 0.426294 0.281667 0.169504

Среднее время отклика (ms) в графическом виде. Read / Write Mix %.

Максимальное время отклика (ms) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R65% / W35% R100% / W0%
4k 6.1306 4.5416 4.2322
8k 6.2474 4.5197 3.5898
16k 5.4074 5.5861 4.1404

Максимальное время отклика (ms) в графическом виде. Read / Write Mix %.

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

Тест 2.6 MDRAID. RAID 6. Тесты пропускной способности


1MБ последовательная запись — 890 MBPS.
1MБ последовательное чтение — 18800 MBPS.
128Kб последовательная запись — 870 MBPS.
128Kб последовательное чтение — 10400 MBPS.

Тест 3. Zvol поверх ZFS RAIDZ2


ZFS имеет встроенную функцию создания RAID и встроенный менеджер томов, который создает виртуальные блочные устройства, чем и пользуются многие производители СХД. Мы тоже воспользуемся этими функциями, создав пул с защитой RAIDZ2 (аналог RAID 6) и виртуальный блочный том поверх него.

Была собрана версия 0.79 (ZFS). Параметры создания массива и тома:

ashift=12 / compression – off / dedup – off / recordsize=1M / atime=off / cachefile=none / Тип RAID = RAIDZ2

ZFS показывает очень хорошие результаты при только что созданном пуле. Однако при многократных перезаписях, показатели производительности значительно снижаются.

Подход SNIA тем и хорош, что позволяет увидеть реальные результаты от тестирования подобных файловых систем (той, которая в основе ZFS) после многократных перезаписей на них.

Тест 3.1 ZVOL (ZFS). RAIDZ2. Тест на IOps


Результат производительности (IOps) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 15719.6 15147.2 14190.2 15592.4 17965.6 44832.2 76314.8
8k 15536.2 14929.4 15140.8 16551 17898.8 44553.4 76187.4
16k 16696.6 15937.2 15982.6 17350 18546.2 44895.4 75549.4
32k 11859.6 10915 9698.2 10235.4 11265 26741.8 38167.2
64k 7444 6440.2 6313.2 6578.2 7465.6 14145.8 19099
128k 4425.4 3785.6 4059.8 3859.4 4246.4 7143.4 10052.6
1m 772 730.2 779.6 784 824.4 995.8 1514.2

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

Цифры производительности получаются совсем невпечатляющие. При этом чистый zvol (до перезаписей) дает значительно лучшие результаты (в 5-6 раз выше). Здесь же тест показал, что после первой же перезаписи производительность падает.

Тест 3.2 ZVOL (ZFS). RAIDZ2. Тесты задержек


Среднее время отклика (ms) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R65% / W35% R100% / W0%
4k 0.332824 0.255225 0.218354
8k 0.3299 0.259013 0.225514
16k 0.139738 0.180467 0.233332

Среднее время отклика (ms) в графическом виде. Read / Write Mix %.

Максимальное время отклика (ms) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R65% / W35% R100% / W0%
4k 90.55 69.9718 84.4018
8k 91.6214 86.6109 104.7368
16k 108.2192 86.2194 105.658

Максимальное время отклика (ms) в графическом виде. Read / Write Mix %.

Тест 3.3 ZVOL (ZFS). RAIDZ2. Тесты пропускной способности


1MБ последовательная запись — 1150 MBPS.
1MБ последовательное чтение — 5500 MBPS.
128Kб последовательная запись — 1100 MBPS.
128Kб последовательное чтение — 5300 MBPS.

Тест 4. RAIDIX ERA


Давайте теперь посмотрим на тесты нашего нового продукта — RAIDIX ERA.
Мы создали RAID6. Размер страйпа: 16kb. После завершения инициализации запускаем тест.

Результат производительности (IOps) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 354887 363830 486865.6 619349.4 921403.6 2202384.8 4073187.8
8k 180914.8 185371 249927.2 320438.8 520188.4 1413096.4 2510729
16k 92115.8 96327.2 130661.2 169247.4 275446.6 763307.4 1278465
32k 59994.2 61765.2 83512.8 116562.2 167028.8 420216.4 640418.8
64k 27660.4 28229.8 38687.6 56603.8 76976 214958.8 299137.8
128k 14475.8 14730 20674.2 30358.8 40259 109258.2 160141.8
1m 2892.8 3031.8 4032.8 6331.6 7514.8 15871 19078

Результат производительности (IOps) в графическом виде. Read / Write Mix %.

Тест 4.2 RAIDIX ERA. RAID 6. Тесты задержек


Среднее время отклика (ms) в табличном виде. Read / Write Mix %.
Block size R0% / W100% R65% / W35% R100% / W0%
4k 0.16334 0.136397 0.10958
8k 0.207056 0.163325 0.132586
16k 0.313774 0.225767 0.182928

Среднее время отклика (ms) в графическом виде. Read / Write Mix %.

Максимальное время отклика (ms) в табличном виде. Read / Write Mix %.

Block size R0% / W100% R65% / W35% R100% / W0%
4k 5.371 3.4244 3.5438
8k 5.243 3.7415 3.5414
16k 7.628 4.2891 4.0562

Максимальное время отклика (ms) в графическом виде. Read / Write Mix %.

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

Тест 4.3 RAIDIX ERA. RAID 6. Тесты пропускной способности


1MБ последовательная запись — 8160 MBPS.
1MБ последовательное чтение — 19700 MBPS.
128Kб последовательная запись — 6200 MBPS.
128Kб последовательное чтение — 19700 MBPS.

Заключение


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

Для анализа производительности случайной нагрузки мы будем сравнивать скорость RAID 6 (RAIDZ2) при работе с блоком в 4k.

MD RAID 6 RAIDZ2 RAIDIX ERA RAID 6 Hardware
4k R100% / W0% 1902561 76314 4073187 4494142
4k R65% / W35% 108594 17965 921403 1823432
4k R0% / W100% 39907 15719 354887 958054

Для анализа производительности последовательной нагрузки мы посмотрим на RAID 6 (RAIDZ2) с блоком 128k. Между потоками мы использовали сдвиг в 10GB, чтобы устранить попадание в кэш и показать реальную производительность.

MD RAID 6 RAIDZ2 RAIDIX ERA RAID 6 Hardware
128k seq read 10400 5300 19700 20400
128k seq write 870 1100 6200 7500

Что же получается в итоге?


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

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

Понимая такой запрос, у нас в компании создали продукт RAIDIX ERA, разработка которого фокусировалась на решении следующих задач:

  • Высокая производительность чтения и записи (несколько млн IOps) на массивах с Parity в режиме mix.
  • Потоковая производительность от 30GBps в том числе во время отказов и восстановления.
  • Поддержка RAID уровней 5, 6, 7.3.
  • Фоновая инициализация и реконструкция.
  • Гибкие настройки под разные типы нагрузки (со стороны пользователя).

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

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

Подробнее о продукте RAIDIX ERA читайте у нас на сайте.

UPD. Сокращенное тестирование ZFS с recordsize и volblocksize 8k


Таблица параметров ZFS
NAME PROPERTY VALUE SOURCE
tank recordsize 8K local
tank compression off default
tank dedup off default
tank checksum off local
tank volblocksize
tank/raid recordsize
tank/raid compression off local
tank/raid dedup off default
tank/raid checksum off local
tank/raid volblocksize 8k default

Запись стала похуже, чтение получше.
Но все-равно все результаты значительно хуже остальных решений
Block size R0% / W100% R5% / W95% R35% / W65% R50% / W50% R65% / W35% R95% / W5% R100% / W0%
4k 13703.8 14399.8 20903.8 25669 31610 66955.2 140849.8
8k 15126 16227.2 22393.6 27720.2 34274.8 67008 139480.8
16k 11111.2 11412.4 16980.8 20812.8 24680.2 48803.6 83710.4

Особенности работы программного обеспечения RAID в Windows Server / Argon / Блог

В этой статье я обзорно расскажу о возможностях по системе RAID массивов встроенными средствами Windows Server и подробно о том, какие подводные камни встретиться при создании и эксплуатации таких массивов.

Возможности программного обеспечения RAID в Windows Server

Поддерживаются следующие массивы:

  • чередующийся том (чередующийся том, RAID0)
  • зеркальный том (зеркальный том, RAID1)
  • том RAID5 (том RAID5)
  • охватывающий том (один логический том размещается более чем на одном физическом диске)

Динамические диски

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

  • Обычный (базовый) диск можно преобразовать в динамический только целиком.
  • Обратное преобразование динамического диска в базовый возможно, но только если с динамического диска удалить все тома.
  • Динамический диск представляет собой один большой раздел NTFS, на котором с помощью хитрой служебной информации может размещаться большое количество томов (как простые, так и RAID), имеется возможность оценки размеров простых томов штатными средствами Windows. Однако, насколько оптимально и фрагментировано будут размещаться данные, мне не известно.
  • Известные мне программы клонирования, восстановления и изменения размеров дисков не динамические диски.
  • Динамические диски, содержащие RAID-тома, могут быть перенесены на другой компьютер с Windows Server, так как содержат информацию для правильной сборки.

Невозможно создать тома с разными уровнями RAID

На одной группе физических дисков можно создать тома RAID только одного типа (уровня). Например, если у нас есть 3 физических диска, и мы создали на них том RAID5, не занимая всего пространства. Мы не сможем освободить пространство для создания тома другого уровня RAID (RAID0 и RAID1), а только RAID5 и простые тома.

Одновременная синхронизация томов

Если на одной группе дисков создано несколько томов RAID, то в случае какого-либо сбоя после запуска компьютера они начинают восстанавливаться одновременно. Это лютый, бешеный EPIC FAIL! Простая ситуация: присутствует два RAID1 тома, одна под операционная система, другая под данные.

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

Со стороны такой «отказоустойчивости» выглядит следующим образом: общее быстродействие дисковой подсистемы падает раз в 20, сама ОС загрузится либо после начала синхронизации одного из томов (15 минут, если он небольшой, гиг на 50), либо минут через 20 и будет бесполезна до конца синхронизации одного из томов.

Вышеописанное поведение считается недопустимым архитектурным просчетом со стороны Microsoft и удивлен тем, что эта беда не решена до сих пор со времен появления программного RAID в Windows 2000 Server.

Если вы попали в описанную ситуацию, то не стоит дожидаться загрузки ОС и изнашивания дисков.

  1. Отключаете один из физических дисков.
  2. Загружаетесь в ОС с нормальной скоростью.
  3. Разбиваете зеркало, превратив тома RAID1 в простые.
  4. Подключаете обратно второй диск.
  5. Создайте только одно зеркало для необходимого вам тома.

RAID5

Опишу сценарий, при котором вы не сможете восстановить деградировавший массив RAID5 до здорового состояния, даже если для этого предоставлены все условия.

  1. Имеется массив RAID5 из шести дисков (Диск1-Диск6).
  2. Среди них есть один сбойный Диск1 (например, из терабайтного объёма пара мегабайт не читаются), но операционная система об этом еще не знает и как сбойный его не отметила.
  3. По каким-либо причинам от массива был отключен исправный Диск2.
  4. Следуя логике RAID5, при отказе одного диска работоспособность сохраняется, такой массив помечается как деградировавший (деградированный), скорость его работы резко падает, требуется синхронизация с новым исправным диском.
  5. Исправный Диск2 подключается на место. Система его опознает как сбойный. Чтобы синхронизировать массив, этот сбойный диск нужно удалить из массива RAID5 и определить как пустой.
  6. Все готово для массива массива. Запускаем исправление массива (ремонт) на пустой Диск2.
  7. ВНЕЗАПНО синхронизация натыкается на ошибки чтения на действительно неисправном диске Диск1 и останавливается.
  8. Весть массив остается деградированным. Диск1 помечен как ошибки (ошибки), Диск2 помечен как онлайн, однако из-за прерванной синхронизации не содержит полных корректных данных.
  9. В надежде на восстановление подключается совершенно новый исправный Диск7.Запускается восстановление массива на него.
  10. В результате исправный Диск2 заменяется на другой исправный Диск7, но синхронизация снова прерывается, найдя ошибку на неисправном диске Диск1.
  11. И так далее по циклу.

Ничего сделать, кроме как скопировать еще нельзя читаемые данные и пересобрать весь массив.

Не желая признавать, я пытался сделать следующие вещи:

  • Синхронизировать массив с пропуском ошибок чтения на диске Диск1 (ведь это всего лишь мегабайты их целого терабайта).Но Microsoft не дает такие возможности.
  • Посекторно переписать весь сбойный Диск1 на другой здоровый диск с помощью программ для клонирования. Однако доступные мне программы с динамическими дисками не работали.

Пример грамотной реализации программного RAID

От перечисленных выше недостатков избавлена ​​аппаратно-программная реализация RAID-контроллера, известная как Intel Matrix Storage, и недавно переименованная в Intel Rapid Storage (работает на версии RAID-чипсетов, таких как ICH9R, ICh20R).Аппаратно-программный RAID от Intel обеспечивает множество преимуществ «взрослых» RAID-контроллеров:

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

Основным ее недостатком, в отличии от полностью аппаратных RAID-контроллеров, остается «программность», из которой вытекают:

  • отсутствие встроенного кеша и возможность автономной работы в случае аварии
  • полностью зависит от операционной системы и драйверов
  • выполняемые операции на дисковой подсистеме нагружают основной процессор и память
  • отсутствует поддержка продвинутых вычислительно емких уровней RAID, таких как RAID6

Полезные ссылки

.

программный RAID в Windows 8

Как я писал в предыдущих публикациях, на Windows 8 есть что предложить пользователю кроме нового интерфейса Metro (а иногда и в самом деле ему противовес). У меня Windows 8 прочно обосновалась на настольном ПК одному только Hyper-V, но это, конечно, довольно специальное применение, востребованное далеко не каждому. В этой статье речь пойдет о еще одной простой новинке, которая также достаточно сложна в техническом плане, но, тем не менее, может претендовать на большую популярность.

Места для хранения

В русскоязычной версии Windows 8 функция, с помощью которой я хочу познакомить читателей, называется «Дисковые пространства».

Перевод совершенно неудачный, поскольку набирающие популярность SSD к дискам никакого отношения не имеют. По-английски название же звучит совершенно корректно — Storage Spaces, space storage.

Если не вдаваться в глубокую теорию, то «Дисковые пространство» предоставит собой программный RAID в составе всех редакций Windows 8.Вообще говоря, для Windows это не новая функция, а Drive Extender из Windows Home Server можно считать прямым прообразом нынешнего решения. Тем не менее «Дисковые пространства» имеют свою специфику, и можно предположить, что они умышленно введены на пользовательский уровень, чтобы использовать к ним дополнительное внимание. Но прежде чем приступить к их изучению, напомним вкратце о

RAID

Эта аббревиатура расшифровывается как избыточный массив независимых дисков, т.е. избыточный массив независимых дисков. Причем использовать I означало Недорого, поскольку речь идет о недорогих дисках из мира ПК. По мере развития технологии, в частности с применением SCSI-дисков, это качество перестало ощущаться, что и привело к появлению замене в названии. Сейчас такая же участь, по-видимому, ожидает последнюю букву D, которую, учитывая все более широкого распространения SSD, следовало бы трактовать как накопители, накопители.

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

К примеру, самый простой RAID 0 объединяет два или более накопителея в единое пространство суммарного объема, причем распараллеливание операций чтения / записи позволяет повысить производительность. Ценой же будет, вообще говоря, снижение надежности, т.к. выход из строя одного накопителя разрушает весь массив из-за того, что запись ведется не файлы, а достаточно крупными блоками данных.

А RAID 1 представляет собой простейшее «зеркало», когда все операции на двух накопителях дублируются, т. е. они всегда копии друг друга. Таким образом при отказе одного, вся информация остается доступной на другом. Это главное, но не единственное преимущество. RAID 1 также ускоряет чтение, распараллеливая операция, тогда как скорость записи остается примерно такой же, как и у одиночного накопителя.Здесь как раз хорошо видна та самая избыточность: ведь мы используем два накопителя, хотя с точки зрения объема данных хватило бы и одного.

Реализации RAID бывают аппаратные и программные. Первые предусматривают дополнительные платы расширения, поскольку включают специальный процессор, RAM для кэша, резервное питание (батарейки) для корректного завершения работы в случае пропадания внешнего питания и пр. Программные RAID, соответственно, реализуются средства ПО и сегодня существуют для всех распространенных ОС.Они, таким образом, используют обычные вычислительные ресурсы компьютера, что является их основным недостатком — под большой нагрузкой общей системой может снижаться. С другой стороны, близость программных RAID к ОС позволяет добавить дополнительную гибкость, что мы и увидим на примере «Дисковых пространств».

Как это работает

Microsoft постаралась сделать «Дисковые пространства» максимально прозрачными для пользователя и гибкими в применении. Для этого будущее хранилище формируется на двух уровнях.

Прежде всего, необходимо создать так называемый пул хранения, т. е. логическое объединение нескольких накопителей. Примечательно, что при этом можно комбинировать устройства с разными объемами и интерфейсами — USB, SATA, SAS, SCSI и даже iSCSI. Количество накопителей, вообще говоря, также может быть совершенно произвольным, не считая минимальных ограничений для каждого пространств (см. Ниже).

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

Далее будут автоматически найдены все физические накопители, которые можно объединить в пул — отдельно пустые и данные или отформатированные.Имейте в виду, что старые данные будут безвозвратно удалены. Кроме того, для RAID не может быть использован системный накопитель — вот первое (впрочем, достаточно очевидное) ограничение.

Как уже говорилось, нет никаких препятствий для объединения в один пул накопителей различных типов, как, например, на иллюстрации — ниже объединены внутренний SATA- и внешний USB-диски:

На протяжении всего процесса Windows не выдает никаких никаких рекомендации или предупреждений о преступлении нюансах — скажем, с производственной.Между тем, чрезмерные вольности, безусловно, могут приводить к негативным эффектом. Именно поэтому перед использованием «Дисковых пространств» следует разобраться с ними.

Затем на основе пула хранения уже собственно пространства, которые на системном уровне будут выглядеть как обычные логические диски, хотя их природа, как понятно из описания, достаточно виртуальна. В моем примере пул объединяет два физических накопителя, то Windows предлагает организовать двухстороннее зеркало:

Однако доступны и другие варианты:

Тип пространства Минимальное число дисков в пуле Допустимое число отказавших дисков Аналог RAID
Простое 1 0 0
Двухсторонее зеркало 2 1 1
Трехсторонее зеркало 5 2 1E (?)
Четность 3 1 5

Остановимся чуть подробнее на каждом из них.

Простое пространство , которое является аналогом RAID 0, не надежным и полезным для ускорения работы с некритичными данными или с огромных размеров. Более того, можно считать, что на самом деле в данном случае надежность как раз плохой. Дело в том, что данные на дисковые пространства (типов) записываются не большими блоками, а довольно большими блоками. Но простое дисковое пространство разрушается, если в пуле выйдет из строя хотя бы один накопитель — при этом никаких аварийных инструментов пока нет, хотя блоки, вероятно, могут хранить какие-то файлы целиком.Такая же проблема касается и всех прочих — при отказе числа накопителей сверх допустимого. Некоторые сторонние разработчики заявили о намерении создать соответствующие утилиты, но насколько мне известно, реально пока ничего не показали. Хотя правильней было бы, чтобы этим вопросом озаботилась сама Microsoft.

В двухстороннем зеркале каждая операция записи выполняется одновременно на два накопителя. Соответственно, при отказе любого одного накопителя пространство остается работоспособным.Однако, если в пуле более двух дисков задействовать все и такой алгоритм «размазывания» пользователя скрыт.

Трехстороннее зеркало подразумевает параллельную запись на три накопителя, что, соответственно, защищает от любых двух. Для соответствующего пространства, однако, требуется целых пять дисков, хотя в бета-версии Windows 8 достаточно было именно трех. Вероятно, схема RAID видоизменилась уже в последний момент в доступной сегодня документации четко не описана.Скорее всего, это нечто вроде RAID 1E, где каждый блок действительно записывается трижды, но следующая операция выполняется со сдвигом на один накопитель, т. е. заведомо равномерно «размазывается» по всему пулу. Обычно это делается для улучшения производительности (за счет большего распараллеливания), но будет ли это справедливо в данном случае — вопрос открытый. Некоторые обозреватели также предположили, что речь может идти о RAID 6, однако это достаточно медленная схема (из-за необходимости расчета двух типов контрольных сумм), чего по тестам не видно.В любом случае, для «Дисковых пространств» трехсторонне зеркало — единственный способ максимально максимально надежного хранения критичных данных.

Наконец, пространство с контролем четности (видимо, для краткости оно называется просто четкость ) в точности соответствия RAID 5. В нем одновременно может задействоваться от 3 до 8 накопителей (хотя пул, как правило, может содержать и больше). Схема работает следующим образом: на все накопители кроме одного записываются блоки с полезными данными, а на последний — блок контрольных сумм, представляющих собой результат операции XOR.Соответственно, при отказе одного из накопителей, недостающие данные могут быть вычислены. C точки зрения качества пространство с контролем четности аналогично двухстороннему зеркалу, однако в остальном они отличаются заметно. Так, избыточные данные в первом случае составляют 1 / N от общего объема, где N — от 3 до 8 (т. Е. Количество накопителей, на которых одновременно ведется запись), а во втором — всегда 1/2. Однако из-за необходимости расчета контрольных сумм, пространства с контролем четности ощутимо медленнее на запись, рекомендуют хранения больших размеров редко изменяемых данных, к примеру, видео.

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

Отсюда, в части вытекают еще несколько функций «Дисковых пространств». Во-первых, отличие от аппаратных реализаций RAID в данном случае нет жесткого закрепления за накопителями функций. В общем случае данные и контрольные суммы как бы «размазываются» по всем доступным накопителям, что несколько улучшает производительность и придает технологии дополнительную гибкость, но как уже говорилось, затрудняет восстановление.Во-втором, на каждом пуле может быть создано несколько пространств, причем любых. К примеру, при использовании накопителей большие емкости не обязательно сразу же целиком отдавать под зеркало, если объем критичных данных будет расти постепенно. Параллельно можно создать простое пространство и использовать его (до поры до времени) для повышения производительности при работе, скажем, с временными файлами.

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

Специфика функционирования

Надеюсь, предыдущий раздел дал общее представление о гибкости «Дисковых пространств», однако, как и всегда, это достигается за счет ряда компромиссов. Часть из них, как то: блочная запись и объединение накопителей различных типов — уже анализивались. Но есть и другие, которые также необходимо иметь в виду.

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

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

А вот реакция Windows на заполнение достаточно своеобразна.Начиная с 70% пользователю будут выдаваться соответствующие оповещения, а при полном исчерпании пространства пространство автоматически демонтируется — подключить его обратно можно вручную через аплет «Дисковые пространства». Хотя кажется более логичным, чтобы пространство просто переводилось в режим только для чтения.

Производительность

Вполне закономерно, что это один из самых неоднозначных вопросов, относящихся к «Дисковым пространствам». Комбинирование накопителей с разными интерфейсами может приводить к самым различным различным эффектам.Особенно это касается USB, где не всегда даже понятно, как порты распределяются между контроллерами и, конечно, не только в пропускной способности интерфейса (т. Е. USB 3.0 не решает всех проблем). К сожалению, никаких предупреждений при формировании пулов и пространств пользователь не получает — хотя некоторые неудачные конфигурации довольно легко.

Вот как представление дисковых пространств из примеров этой статьи.

Зеркало:

Простое:

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

Внутренний SATA-диск:

Внешний USB-диск:

Видно, что запись на зеркало определяется худшими показателями для двух накопителей, а чтение, как и все операции с общим пространством — усредненными. В данном случае результаты, пожалуй, было несложно предсказать, исходя из принципов работы схемы RAID. Однако если бы накопителей в пуле было больше, арифметика была бы не столь проста.

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

  • простое пространство увеличит производительность и чтение, и записи пропорционально количеству накопителей;
  • при зеркалировании производительности записи примерно соответствует отдельным накопителям (в некоторых случаях может и замедляться), скорость чтения повышается;
  • пространство с контролем четности также улучшает производительность чтения, но замедляет запись в разы (типично — вчетверо).
Выводы

Благодаря различным компромиссам и ухищрениям «Дисковые пространства» реализованы таким образом, чтобы среднестатистическому пользователю не пришлось даже задумываться о подробностях конфигурирования и обслуживания RAID. C помощью этой возможности, к примеру, можно совершенно просто задействовать старые, разрозненные накопители, которые уже рискованно использовать поодиночке. Да, это приведет к каким-то негативным эффектам, но работать все будет исправно и совершенно автоматически.Для более опытных пользователей и администраторов небольших серверов имеется возможность и тонкой настройки посредством PowerShell. Однако сегодня они демонстрируют все больше бюджетных пространств NAS, но они требуют дополнительных затрат и гибкости «Дисковых пространств». В любом случае, хорошо иметь выбор. Наконец, появление «Дисковых пространств» в Windows 8 говорит о том, что Microsoft пока не собирается сбрасывать со счетов рынок ПК.

.

Как программный RAID в Windows

Настройка программного обеспечения RAID массива в среде Windows особенности в отличие от настройки под Linux-системы.

Программные массивы могут быть созданы только на динамических дисках. Установка или загрузка Windows с динамического тома возможна только в том случае, если этот диск был преобразован из системного или загрузочного тома. То есть если установлено несколько экземпляров ОС, то после преобразования диска в динамический можно загрузить лишь тот экземпляр, который находится на загрузочном разделе.Для загрузочного и системного томов возможно создание только зеркального массива (RAID1), создание данного вида невозможно, так как они подразумевают установку системы на заранееанный раздел.

Работа с системными и динамическими дисками создается через связку Хранение Управление дисками в Диспетчере сервера:

  1. Для преобразования дисков в динамический щелкните правой клавишей мыши и выберите в открывшемся пункт Преобразование в динамический диск .Можно преобразовать сразу несколько дисков.

    Обратите внимание! Эта операция необратима, переразметить загрузочный диск не получится, так как он после этого перестанет быть загрузочным, при этом можно будет расширить счет неразмеченного пространства.

  2. Для создания настройки щелкните правой кнопкой мыши на нужном томе и выберите из выпадающего меню нужный вариант. В случае с системным и загрузочными томами вариант будет один — зеркало.

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

  4. Можно как объединить несколько дисков в отдельный том, так и создать RAID 0, 1 или 5.

BIOS

Ниже описана процедура ручной настройки зеркалирования дисков (RAID1) в операционной системе Windows Server:

  1. Перейдите в Пуск Панель управления Система и безопасность Инструменты администрирования .
  2. Выберите Создайте и отформатируйте разделы жесткого диска .
  3. Кликните правой кнопкой мыши по Disk 0 и выберите Конвертировать в динамический диск .
  4. Повторите для диска 1.
  5. В Disk Management щелкните правой кнопкой мыши на диске C: и в выпадающем меню выберите Добавить зеркалирование .
  6. В следующем меню выберите Disk 1 и Добавьте зеркалирование .

После выполнения начнется синхронизация дисков.Синхронизация некоторое время, которое зависит от объема дисков.

UEFI

Каждая система с UEFI содержит системный раздел (системный раздел UEFI). Этот не может быть зеркалирован автоматическими разделительными средствами Windows и требует ручного копирования и настройки на второй диск:

  1. Создайте Системный раздел UEFI на втором диске и отформатируйте его в FAT.
  2. Скопируйте данные с UEFI System Partition с первого диска на второй.
  3. Остальные разделы можно зеркалировать так, как описано выше ( Управление дисками Добавить зеркалирование ).
.

Дисковые пространства — программный RAID на борту Windows

Windows обеспечивает несколько возможностей по созданию программного обеспечения RAID . Это в первую очередь старая системная функция по работе с динамическими дисками, в рамках которой можно, в частности, создать отдельные разделы нескольких устройств с реализацией конфигурации RAID 0 , 1 и 5 . А Win8.1 и Win10 на уровне устаревшей технологии — дисковые .

Что это за технология и как её использовать?

Содержание статьи:

1. О технологии

Итак, в версиих Windows 8.1 и 10 реализована технология по типу программного обеспечения RAID , называется «Дисковые пространства» . Реализована в панели управления.

Предназначается для создания производительных и отказоустойчивых дисковых массивов. С помощью этой технологии можно два и более жёстких диска объединить в одно дисковое пространство, по сути, в единый пользовательский (несистемный) раздел.И хранить в этом разделе что-то важное в состоянии без отказоустойчивости или наоборот, что-то важное, обеспечив этим двух- или трёхсторонние зеркала. Дисковые пространства могут быть настроены из разного типа устройств информации — внутренние SATA , SAS и внешние USB-HDD .

Чем эта технология отличается от динамических дисков? Дисковые пространства:

• В большей степени эмулирующий аппаратный RAID ;
• Лишены многих недостатков динамических дисков;
• При зеркалировании задействовать относительно современную наработку Microsoft — отказоустойчивую файловую систему ReFS ;
• Не обеспечивает, как динамические диски, возможность зеркалирования самой Windows (очевидно, как лишней функции в свете возможностей восстановления работоспособности ОС) .

Дисковое пространство — это территория с нуля, при её создании жёсткие диски форматируются, их структура и содержимое теряются. Тогда как при работе с динамическими дисками мы к любому существующему разделу потери без данных могут добавить его раздел-зеркало.

Как и динамические диски, современная технология программного обеспечения RAID позволяет создавать массивы из разных жёстких дисков, в том числе и по объёму. Но последняя, ​​в отличие от первой, не оставляет незанятое массивом место на одном из носителей меньшего объёма.Чтобы это незанятое место было присоединить к другим разделам или создать отдельный раздел. Наоборот, при создании дисковых пространств мы не ограничены объёмом одного из жёстких. Мы можем указать любой виртуальный размер, обеспечить их информацию реальными средствами устройств, добавив к массиву — так называемому пулу носителей. Реализация последнего позволяет нам действовать несколько гибче, чем при оперировании динамическими дисками.

2. Пул носителей

Пул носителей — это точка сборки жёстких дисков, создание и настройка непосредственно самого массива (вне зависимости от его функциональности) . В пул не может быть добавлен SSD или HDD , на котором установлена ​​текущая Windows. Для использования дисковых пространств требуется как минимум один пустой (или с ненужными данными) жёсткий диск. Но, безусловно, лучше, чтобы их было как минимум два, так сразу можно получить выгоды работы с массивом. С создания пула, собственно, и начинается работа с этой технологией. Жмём кнопку его создания.

Увидим все подключенные к компьютеру устройства информации, которые могут быть добавлены в пул.Они пустые неотформатированные и отформатированные будут отдельно распределены по частным разделам. Здесь можно снять галочки с устройств, которые мы не собираемся использовать для массива. Затем жмём «Создать пул» . Напомним, диски с имеющейся информацией свидетельствуют её.

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

Удаление дисков из пула не всегда будет доступно. В некоторых устройствах потребуется добавление нового информации.

3. Создание дискового пространства

В создании дискового пространства попадём автоматически сразу же после создания пула, а также при ручном запуске этой операции.

Здесь установить пространству любое имя и выбрать букву. Из обязательных настроек:

• Выбор типа устойчивости, по сути, конфигурации RAID ;
• Выбор файловой системы, если кроме NTFS предлагается ReFS ;
• Задание размера.

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

• Оставить значение по умолчанию для простого типа (RAID 0) , это будет суммарный объём всех носителей;
• Для отказоустойчивых массивов указать размер наименьшего по объёму диска.

Размер можно разделить на 2 , 3 , 4 и более частей. Создать несколько пространств по типу, как на обычном диске, сформировать разные разделы для удобства каталогизации данных.

В итоге жмём кнопку создания.

Дисковое пространство в проводнике теперь станет доступно нам как обычный раздел. В управлении дисками носители пула больше не будут видны как устройства. И будут значиться по порядковому номеру последнего из них.

4. Тип устойчивости

Тип устойчивости — это функционал, аналог другой или иной конфигурации RAID . Технология предлагает нам 4 таких типа.

Простой тип — это может быть как обычный раздел на базе одного или нескольких носителей, так и аналог RAID 0 , массив как минимум из двух носителей без отказоустойчивости, но с удвоенной (как минимум) скорость чтения и записи данных.При выходе из строя одного из дисков теряется вся информация. Файловая система — только NTFS .

Двухстороннее зеркало — это аналог RAID 1 , отказоустойчивый массив из как минимум двух носителей. Данные одномоментно записываются на основной диск и зеркало, и так же одномоментно считываются. Имеем удвоенную скорость чтения данных и актуальные их копии на случай выхода строя одного из носителей. Файловая система — и NTFS , и ReFS .

Трёхстороннее зеркало — это аналог RAID 1E , массив из как минимум пяти носителей, обеспечивающий быстродействие и высокую отказоустойчивость. Защищает данные в случае выхода из строя сразу двух дисков. Файловая система — и NTFS , и ReFS .

Чётность — это аналог RAID 5 , массив из как минимум трёх носителей, обеспечивающий отказоустойчивость при выходе из строя одного из них.Увеличивается скорость чтения данных, но из-за их специфики конфигурации несколько снижается скорость записи. Файловая система — только NTFS .

5. Выход из строя одного из носителей

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

С ним необходимо разобраться — либо исправить, либо удалить из пула и добавить в пул новое устройство информации.

6. Удаление дискового пространства

Если в дисковом пространстве больше нет надобности, его можно удалить.

.

7. Переустановка Windows и подключение к другому компьютеру

Дисковые пространства и вне среды работающей Windows, информация о конфигурациях массивов хранится на самих дисках.Вот только распознать суть информации, виртуальный тип устройства — сможет только соответствие с Windows 8 / 8.1 / 10 , Server 2012/2012 R2 / 2016 программное обеспечение. Это установочные процессы этих версий, LiveDisk на базе WinPE 8-10 , ну и, конечно же, сами ОС . Если мы установим, к примеру, Win7 или перенесём весь массив на другой компьютер с этой версией, она не будет видеть такой массив, увидит только отдельные носители как таковые, что «Вне сети» . И не предложит ничего более, как удалить на них разделы.

Поддерживающие же технологии версии Windows при переустановке или способе к другому компьютеру обнаружат его автоматически, без нашего вмешательства. Непосредственно во время переустановки ОС мы будем видеть массив как единое устройство информации. Кстати, если переустанавливается EFI -система Windows, необходима внимательность, чтобы по ошибке не удалить или не отформатировать MSR -раздел дискового пространства, а не ОС .

На дисковое пространство даже можно установить второю Windows. Вот только делать этого не стоит. Вторая ОС установится, но не сможет запускаться. Да и ещё и затрёт загрузчик первой ОС , и его придётся восстанавливать.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *