Строим сеть (фабрику) NVMe

Сеть хранения данных обеспечивает блочный доступ к NVMe накопителями благодаря протоколу NVMe-oF. NVMe over Fabrics расположен выше уровня транспортного протокола. В качестве транспорта используется подходящий по скорости интерфейс — FC, Ethernet или Infiniband.

Основное требование к сети — удаленное подключение к устройствам NVMe с дополнительной задержкой не более 10 микросекунд. Это сравнимо со скоростью собственных устройств NVMe внутри сервера.

Требования к сети NVMe-oF

Исходя из задачи, идеальная базовая сеть (фабрика) должна иметь следующие характеристики (по материалам http://nvmexpress.org/wp-content/uploads/NVMe_Over_Fabrics.pdf):

  • Надежные механизмы управления потоками и доставки на основе кредита. Этот тип управления потоком позволяет сети или фабрике саморегулироваться. Обеспечивается надежное соединение, на аппаратном уровне гарантирующее доставку без потери кадров или пакетов из-за перегрузки. Управление потоком на основе кредита встроено в протоколы Fibre Channel, InfiniBand и PCI Express.
  • Клиент, оптимизированный для NVMe. Клиентское программное обеспечение должно иметь возможность отправлять и получать команды NVMe напрямую в- и из- структуры без необходимости трансляции, например в SCSI.
  • Структура с низкой задержкой. Сетевая структура должна быть оптимизирована для обеспечения малой задержки — не более 10 мкс, включая коммутаторы.
  • Адаптеры или интерфейсные платы с уменьшенной задержкой и загрузкой ЦП. Адаптер должен поддерживать технологию прямого доступа к памяти (RDMA) для использования приложениями.
  • Поддержка нескольких хостов. Фабрика должна поддерживать несколько хостов, активно отправляющих и принимающих команды одновременно. Это также относится к нескольким подсистемам хранения.
  • Поддержка нескольких портов. Хост-серверы и системы хранения должны поддерживать несколько портов одновременно.
  • Поддержка нескольких путей (Multi-path). Структура должна поддерживать несколько путей одновременно между любым инициатором (Initiator) хоста NVMe и любым целевым хранилищем NVMe (Target).

NVMe-oF совместимое оборудование

Лаборатория совместимости Нью-Гэмпширского университета UNH-IOL выполняет тестирование оборудования NVMe на соответствие стандарту. Успешное прохождение тестов на соответствие обеспечивает достаточную уверенность в том, что тестируемый продукт будет правильно работать в среде NVMe-oF. Список протестированного оборудования приводится на https://www.iol.unh.edu/registry/nvmeof

Ряд производителей оборудования имеет в своем портфеле все компоненты сети — и адаптеры (с драйверами инициатора и таргета) и коммутаторы. Понятно желание таких компаний продвигать «фирменные» сквозные решения.

Схема соединений сети хранения NVMe-OF (из материалов Mellanox)

На рисунке:
Storage Server — сервер, предоставляющий один или несколько NVMe SSD в общее пользование. Сетевой адаптер должен иметь драйвер целевого устройства NVMe (target).
Client Host — сервер / рабочая станция, использующий удаленный NVMe накопитель. Сетевой адаптер должен иметь драйвер инициатора NVMe (initiator).
Для разгрузки процессоров адаптеры должны поддерживать прямой доступ к памяти (RDMA) В данном примере используется RoCE.
Сетевая структура — Ethernet, Fibre Channel, InfiniBand. На рисунке — Ethernet, он может быть с потерями или без (lossless).

Оборудование Ethernet и его настройка для NVMe-oF

Компания Mellanox, например, предлагает следующее сочетание: адаптеры ConnectX-4 /4LX /5 в качестве инициатора, адаптер BlueField в качестве таргета, соединения через коммутаторы Spectrum. У компании даже кабели собственного производства — LinkX. Рекомендации приводятся в блоге для трех вариантов по сложности развертывания и нагрузочной способности: легкая структура минимальной конфигурации; масштабная сеть со смешанным трафиком (TCP / UDP и RoCE). — более детально описано в Обзор NVMe-oF); бескомпромиссная производительность в масштабной сети с несколькими устройствами хранения.
В частности, ресурс описывает настройки:
— Настроить сквозной канал RoCE в сети без потерь (PFC + ECN), построенной на адаптерах ConnectX-4 и коммутаторе Spectrum (Trust L2);
— Настроить сквозной канал RoCE в сети с потерями (ECN), построенной на адаптерах ConnectX-4 и коммутаторе Spectrum (Trust L3).
Этот же ресурс содержит инструкции по настройке RoCE в коммутаторе Arista DCS-7050QX-32 и RoCE в коммутаторе Cisco 3232C для сетей без потерь и с ними.

Компания Demartek составила детальное руководство RoCE Deployment Guide (2018), содержащее детали настройки оборудования ряда производителей:
— HPE 5900 Series JG838A 10/40GbE коммутатор
— Mellanox® SN2410 25GbE/100GbE коммутатор
— Mellanox ConnectX®-5 MCX512A 2x25GbE и
ConnectX-5 MCX515A 100GbE адаптеры
— Cavium® FastLinQ™ QL45611HLCU-CK
1x100GbE/4x25GbE и QL41234HLCU
4x25GbE адаптеры
— Broadcom® NetXtreme® BCM957414A4142CC
2x25GbE адаптеры

Следующий ресурс показывает, как настроить адаптер ConnectX-5 (или более поздней версии) в качестве целевого устройства (таргета) NVMe over Fabrics (NVMe-oF) с разгрузкой для ОС Linux: настройка таргета на ConnectX-5

Оборудование FC для NVMe-oF

Cisco

Cisco описывает применение архитектуры FlexPod масштаба датацентра для сквозного NVMe решения. В качестве инициаторов выступают серверы Cisco Unified Computing System (Cisco UCS), сетевая структура строится на коммутаторах Cisco Nexus и Cisco MDS (32 порта 32-Gbps Fibre Channel), целевое хранилище — NetApp All Flash FAS (AFF). Транспортный протокол — NVMe over Fibre Channel (FC-NVMe). https://www.cisco.com/c/en/us/products/collateral/servers-unified-computing/ucs-b-series-blade-servers/whitepaper-c11-741907.html

Архитектура Cisco FlexPod

Уровень задержки, вносимый сетью при доступе к удаленному NVMe хранилищу можно оценить по результатам теста. Показаны задержки случайного чтения блоками 4К в зависимости от нагрузки (в тысячах IOPs). Доступ к хранилищу производится по двум протоколам — Fibre Channel Protocol (FCP), или NVMe over Fibre Channel (FC-NVMe).

Компания Cisco обеспечивает также совместимость своих продуктов с Ethernet NVMe-oF решениями. Пример тому — коммутаторы Nexus 9000 Series. https://blogs.cisco.com/datacenter/ethernet-transport-for-nvme-over-fabric

В портфеле Cisco имеется также первое в мире (представлено в январе 2018) полностью флеш гиперконвергентное решение — HyperFlex All-NVMe. Сервер, помимо Intel® Optane™ NVMe DC SSD, оснащается ускорителем NVIDIA V100 GPU.

Dell

Dell опубликовал FC-NVMe — советы по развертыванию и лучшие практики. В документе рассматривается ситуация, в которой оправдано использование FC-NVMe решения. Также приводятся конкретные шаги для реализации FC-NVMe соединения между Dell EMC PowerEdge сервером и Dell EMC PowerMax хранилищем через коммутатор Brocade и Cisco.

NetApp

Управляющее ПО ONTAP для СХД NetApp версии 9 поддерживает FC-NVMe конфигурации. Возможности и ограничения для разных версий ПО приводятся на портале ONTAP Documentation Center https://docs.netapp.com/ontap-9/topic/com.netapp.doc.dot-cm-sanconf/GUID-A39311D7-D917-4462-862C-4AC844EB4CA9.html?cp=14_7_2


Перейдите в интересующий Вас раздел через меню

Заполните форму обратной связи, если Вам необходим проект системы. Сформулируйте задачу: