Заказ звонка

*
*
Защита от автоматических сообщений
CAPTCHA
Введите слово на картинке*

Intel VROC

Общий обзор VROC

Intel VROC — программный чипсетный RAID для накопителей NVMe и SATA. Ранее программный RAID для SATA называется RSTe (Intel Rapid Storage Technology Enterprise), в прошлом году обе технологии решено было объединить под общим названием5. В этой статье речь пойдёт именно о массивах из накопителей NVMe на платформе Intel Purley (чипсеты Intel C62x и процессоры Intel Xeon Scalable).

Для начала стоит разобраться с терминологией:

Домен VMD и контроллер VMD. VMD расшифровывается как Volume Management Device, «устройство управления томами». Контроллер PCIe, встроенный в процессоры Intel Xeon Scalable, разделён на три домена по 16 линий PCIe — итого 48 линий.

Наличие VMD не является обязательным условием для работы VROC. Если у вас есть сервер на базе одной из предыдущих платформ без VMD (например, Grantley, Mehlow, Tatlow), то использовать VROC для NVMe накопителей можно, причём без покупки каких либо дополнительных ключей. Не будет поддержки загрузочных массивов, горячего подключения/отключения и управления индикацией. Поддерживаются только накопители производства Intel5.

VROC write hole. RAID-5 и RAID-6 в традиционной реализации1 подвержены проблеме так называемого write hole. При записи неполного страйпа в такие массивы необходимы дополнительные дисковые операции, с пересчётом и записью новых страйпов с контрольными суммами. Сбой накопителей или аварийное отключение питания в этот момент может привести к нарушению целостности данных, если не будет обновлён страйп с контрольной суммой или один из страйпов с данными.

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

The previous Intel VROC mechanisms implemented to address the RAID Write Hole condition encompassed a combination of Dirty Stripe Journaling and Partial Parity Logging. This implementation only partially closed the RAID Write Hole. With the Intel VROC VC product family, the RWH solution included will completely close this condition (when RWH is enabled). When RWH is disabled, the old implementation (using Dirty Stripe Journaling and Partial Parity Logging) is used.

Поддержка VROC операционными системами

Отдельные документы Intel по настройке VROC в Windows и Linux находятся здесь.

Помимо VROC GUI и CLI в Windows, а также mdadm в Linux для управления VROC у Intel есть Accelerated Storage Manager (ASM) — web-интерфейс и RESTful API с очень подробной документацией.

Windows

VROC прозрачен для Intel SSD Datacenter Tool, утилиты для просмотра статуса и обновления прошивок накопителей Intel. У накопителей меняется лишь Device Path:

Работают ли таким же образом утилиты других производителей (например, Samsung SSD DC Toolkit), проверить пока что не удалось.

Для Windows понадобится свежий драйвер вместе с утилитой управления — их можно скачать с Intel Download Center. Для владельцев SSD производства Intel мы советуем заодно скачать свежую версию Intel SSD Datacenter Tool, чтобы обновить прошивку.

Установка драйвера и GUI ничем не отличается от привычного RSTe. Обратите внимание, что все массивы, кроме RAID-0 требуют инициализации. Запустить её можно, выбрав соответствующий пункт в свойствах тома.

Под Windows можно воспользоваться триальным периодом продолжительностью 90 дней. Для этого нужно просто установить VROC GUI и создать массив. Функционал будет соответствовать Premium-ключу. Управление томами будет доступно только через GUI, в интерфейсе EFI HII вы их не увидите. Это означает, во-первых, что в триальном режиме с VROC-томов нельзя будет загрузиться, во-вторых — не стоит размещать на таких томах критичные данные, так как можно пропустить окончание триального периода и потерять доступ к томам.

Linux

VROC в Linux работает через mdraid. Intel предоставляет свои пакеты с mdadm, mdmon, ledmon (вместе с исходными текстами) и скриптами для systemd для официально поддерживаемых дистрибутивов. Весь необходимый дополнительный код Intel передаёт в апстрим. Если это так, то зачем покупать ключ? Intel называет несколько причин3:

  • Возможность создавать массивы можно из UEFI HII и UEFI shell, то есть без участия операционной системы. Это не столь важный функционал, так как для автоматизации развёртывания можно использовать скрипты в live-образе Linux.
  • Управление через AST. Это действительно удобно.
  • Загрузочные массивы. На самом деле, Linux можно заставить грузиться с обычного программного массива любого уровня, но это требует дополнительных действий (например, при установке на RAID-5 или 6 раздел boot обычно помещают на отдельное зеркало на той же дисковой группе). С VROC благодаря поддержке в BIOS процесс установки ОС на RAID осуществляется гораздо проще.
  • Поддержка. Intel уделаяет большое внимание тестированию различных серверных накопителей на платформе Purley и даже обещает предоставлять патчи в случае появления каких-либо проблем у конкретного пользователя (при использовании поддерживаемых накопителей и поддерживаемых дистрибутивов).

Рекомендуется использовать ядро версии 4.15 и новее3.

В целом работа VROC в Linux ничем не отличается от обычного mdraid с форматом метаданных imsm (в честь Intel Matrix Storage Manager), обеспечивающий совместимость массивов с Windows в связке с RSTe/VROC. Для управления используется тот же mdadm, для мониторинга — mdmon. Есть лишь несколько специфических команд. Например, mdadm --detail-platform позволяет узнать подробности о VROC: версия, поддерживаемые размеры страйпов, максимальное количество дисков и томов.

За работу светодиодов отвечает пакет ledmon, поставляемый Intel.

Драйвер для ESXi

Мы упоминали о том, что VROC не поддерживается в ESXi. Тем не менее, на сайте Intel присутствует документ под названием Intel VMD-enabled NVMe Driver for VMware ESXi User Guide. Действительно, RAID-массивы через VROC в ESXi не поддерживаются (ESXi вообще не поддерживает программный RAID), но VMD в платформах для Intel Xeon Scalable можно и нужно задействовать для корректной работы индикации и горячей замены NVMe-накопителей, для чего требуется специальный драйвер, установка которого описана в этом документе.

Ограничения

Intel периодически обновляет документ под названием Supported Configuration Guide («Руководство по поддерживаемым конфигурациям»). Последняя версия на момент публикации этой статьи — 6.2. Заглянем внутрь.

Поддерживаемые накопители

В начале документа вы найдёте таблицу с поддерживаемыми моделями SSD, как Intel, так и других производителей, с некоторыми интересными примечаниями. Обратите внимание, что для «составных» моделей SSD Intel, которые фактически представляют собой два накопителя на одной плате (P3608, P4608, P4618) поддерживается только RAID-0. Как и в случае со списками совместимости для SAS-контроллеров — если вашего накопителя нет в списке, то это не обязательно означает, что он не будет работать в составе VROC. Просто эту модель ещё не тестировали в Intel. Стоит ли идти на риск, зависит от конкретного проекта. Если речь идёт о хранении временных файлов на рабочей станции в RAID-0, то есть стабильность работы и целостность данных стоят на втором месте, то установку официально не поддерживаемых накопителей можно считать оправданной.

Поддерживаемые ОС

Из Linux официально поддерживаются последние RHEL и SLES. Но мы уже упоминали о том, что поддержка VROC в Linux реализована в рамках mdraid, так что VROC должен работать на любых современных дистрибутивах. Для Windows указаны все актуальные серверные версии (2012R2 и новее) и Windows 10. Поддержка Windows 7 закончилась с версией VROC 5.6.

Поддерживаемые аппаратные конфигурации

  • 4 SSD с прямым подключением на каждый VMD-домен (см. выше определение домена VMD) или 24 SSD на VMD-контроллер при подключении через PCIe-коммутаторы.
  • Максимум 48 SSD на платформу.
  • Поддерживается каскадное подключение коммутаторов PCIe — максимум 2 уровня.
  • Максимум два RAID-тома на массив.
  • Том может находится на SSD, подключенных к разным доменам VMD и процессорам.
  • Официально не поддерживается загрузка с томов из SSD, подключенных к разным контроллерам VMD.
Ограничения по массивам
  • RAID-0 и RAID-5: до 24 SSD
  • RAID-10: 4 SSD
  • RAID-1: 2 SSD

Горячее подключение поддерживается, но Intel рекомендует вставлять накопители по одному, дожидаясь инициализации перед добавлением следующего накопителя2.

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

В Intel получили следующие лимиты производительности на чтение для четырёх накопителей в RAID-03:

  • Windows: 1 млн. IOPS. В своей документации Intel сообщает о причинах этого ограничения и даёт рекомендации по тюнингу параметров драйвера6, 7.
  • Linux: 2,5 млн. IOPS. Производительность существенно лучше масштабируется в сравнении с Windows. Особенное это заметно при использовании высокопроизводительных накопителей Intel Optane8.

Стоит напомнить, что при том уровне производительности, который обеспечивают современные твердотельные накопители, следует учитывать нагрузку на процессор и топологию подключения накопителей. То есть, под систему с несколькими накопителями NVMe стоит выбирать процессоры из расчета не менее 8 ядер с частотой от 2,2 ГГц на каждый 1 млн. IOPS. При тестировании или настройке реальных приложений необходимо учитывать топологию соответствия слотов PCIe и процессоров — обращение к накопителю через контроллер PCIe другого процессора приводит к существенному росту задержек9.

VROC на платах Supermicro

Как использовать VROC на материнских платах Supermicro? Для начала необходимо убедиться, что полноценный VROC поддерживается материнской платой. Если это платформа Purley, то есть 1- или 2-процессорная плата под процессоры Intel Xeon Scalable с чипсетом C62x. Бывают и исключения. Например, плата Supermicro X11SRA на базе C422. VROC поддерживается и тоже требует установки ключа, но только для накопителей M.2, а из массивов — RAID-0 и RAID-1. Если у вас есть плата без VMD, то VROC без возможности загрузки и с некоторыми другими ограничениями всё равно можно будет использовать — см. VROC non-VMD NVMe RAID.

Затем необходимо приобрести один из трёх аппаратных ключей4:

  • AOC-VROCINTMOD. Ключ для использования исключительно с накопителями производства Intel. Стоит дешевле остальных.
  • AOC-VROCSTNMOD. Ключ VROC Standard. Обеспечивает RAID 0/1/10 для любых накопителей (настоятельно рекомендуем следовать списку совместимости).
  • AOC-VROCPREMOD. Ключ VROC Premium. То же, что Standard, с добавлением RAID-5.

Устанавливается этот ключ в небольшой белый 4-контактный разъём на материнской плате. На всех поддерживающих VROC платах Supermicro этот разъём имеет маркировку JRK1. Например, на плате X11DDW-L он расположен в левом углу, рядом с угловым вырезом:

Далее необходимо включить VMD для нужных слотов. Загляните в инструкцию к плате — там приведена схема с топологией подключения слотов. Затем в BIOS, в разделе Advanced включите VMD для тех слотов или портов, если PCIe выведен на разъёмы OCuLink, к которым подключены накопители.

В данном случае использовалась плата Supermicro AOC-SHG3-4M2P, позволяющая подключить четыре накопителя M.2 в один слот PCIe x8. Плата была установлена в верхний слот x16 платформы Supermicro 1029P-WTR.

После перезагрузки в разделе Advanced появится пункт Intel Virtual RAID on CPU. Кстати, режимы инициализации всех слотов и режим загрузки необходимо переключить в UEFI вместо Legacy.

UEFI HII для VROC не отличается от такового для RSTe. Создаём массивы, выбираем накопители.

Другие статьи по теме

Примечания

  1. На самом деле write hole может возникнуть и в RAID-1 или 10.
  2. Windows Software User Guide.
  3. Frequently Asked Questions about Intel Virtual RAID on CPU (Intel VROC)..
  4. Add-on Card AOC-VROCxxxMOD.
  5. Intel Virtual RAID on CPU (Intel VROC) name change for 6.0.
  6. RAID Performance Analysis on Intel VROC
  7. Intel Virtual RAID on CPU Windows Performance
  8. Intel Virtual RAID on CPU Linux Performance
  9. Smart Controller - Performance Guide. Статья посвящена тюнингу производительности SAS RAID контроллеров Adaptec, но общие рекомендации будут полезны для любых систем хранения.

Вернуться к списку

Контакты:

  • Адрес: 115487, г. Москва, ул. Нагатинская, дом 16 (Метро "Нагатинская")
  • Телефон: (495) 747-3113
  • Факс: (495) 747-3112
  • Гарантийный отдел: (495) 747-3113 (доб. 333, 304)
  • Отдел продаж: (495) 747-3113
© 2006-2020 True System inc