Microsoft Windows. Настройка гостевой RDMA в Windows Server

摘要: В этой статье объясняется, как настроить гостевой удаленный прямой доступ к памяти (RDMA) в Windows Server.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

说明

Содержание


Внедрение удаленного прямого доступа к памяти (RDMA)

Remote Direct Memory Access (RDMA) — это отличная технология, которая позволяет компьютерам передавать данные по сети, не задействуя ресурсы ЦП или ОС задействованных хостов (вычислительные ресурсы и хранилище). Это повышает пропускную способность и производительность, а также снижает задержку и нагрузку на ЦП.

На сегодняшний день существует две популярные реализации RDMA:

  • RoCE:
    • Транспорт: UDP/IP (RoCE v2)
    • Использование технологии Data Center Bridging (DCB)
  • iWarp:
    • Базовая сеть: Протокол TCP/IP
    • TCP обеспечивает контроль потока и управление перегрузками.

RoCE в значительной степени полагается на конфигурацию DCB, такую как Enhanced Transmission Service (ETS) и Priority Flow Control (PFC), что может стать проблемой, если сетевые коммутаторы настроены неправильно. iWARP не требует какой-либо настройки коммутатора.

Microsoft начала поддерживать RDMA в Windows Server 2012 и добавила новые функции в более поздней ОС Windows Server. Одной из функций, доступных в Microsoft Windows Server 2019, является возможность представления RDMA гостевой ОС (VM). Это позволяет гостевому компьютеру получать доступ к сетевому хранилищу с низкой задержкой, как и собственный хост, что снижает нагрузку на ЦП и повышает пропускную способность и производительность непосредственно на виртуальной машине.

Dell предлагает отличные варианты для RDMA 25 Гбит/с, такие как двухпортовый адаптер Cavius QLogic FastLinQ 41262 25 GbE SFP28 (iWarp/RoCE) и Mellanox ConnectX-4 Lx 25 Гбит/с RDMA (RoCE). В данном примере для демонстрации функции гостевого удаленного прямого доступа к памяти (RDMA) используется плата Mellanox ConnectX-4 Lx RDMA (в режиме RoCEv2).


Лабораторная среда

Серверы:

  • 2 x Dell R7425 (32-ядерный процессор AMD EPYC 7551)
  • 256 Гбайт памяти
  • Mellanox ConnectX-4 Lx полностью обновлено (микропрограмма (включая BIOS), драйверы и ОС)

Установленные роли и функции:

  • Hyper-V
  • ДКБ
  • Отказоустойчивая кластеризация
  • С2Д

Переключатель:

  • Dell S5048F-ON — управление VLAN 2
  • Сеть SMB VLAN 15
Dell Technologies рекомендует обновлять микропрограмму (включая BIOS), драйверы и операционную систему в соответствии с графиком цикла обновлений. Обновления микропрограммы (включая BIOS), драйверов и ОС предназначены для повышения надежности, устойчивости и безопасности вашей системы.

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

  1. Перезагрузите серверы и войдите в программу настройки системы (нажмите клавишу F2 во время процедуры POST).
  2. Выберите пункт Device Settings.

Параметры уровня устройства в BIOS

Рис. 1 . Параметры устройства BIOS

  1. Выберите сетевую плату в разъеме 1 порт 1 — Mellanox.

Уровень устройства BIOS Mellanox

Рис. 2 . Разъем 1 Порт 1 Mellanox Параметры устройства

  1. Перейдите в раздел Device Level Configuration.

Конфигурация BIOS на уровне устройства

Рисунок 3 . Конфигурация на уровне устройства

  1. Выбирать SR-IOV в режиме виртуализации.

Уровень устройства SR-IOV в BIOS

Рисунок 4 . Настройка SR-IOV 

  1. Повторите описанные выше действия с сетевой платой в разъеме 1, порт 2 — Mellanox.

Уровень устройства BIOS Mellanox2

Рис. 5 . Параметры устройства Mellanox Slot 1 Port 2

  1. Вернитесь в главное меню программы настройки системы и выберите System BIOS.

BIOS системы

Рис. 6 . BIOS системы

  1. Выберите пункт Integrated Devices.

Встроенные устройства

Рис. 7 . Интегрированные устройства BIOS

  1. Включите параметр SR-IOV Global .

Глобальное включение SR-IOV

Рисунок 8 - SR-IOV Global

  1. Сохраните конфигурацию и перезагрузите сервер.

Настройка гостевого удаленного прямого доступа к памяти (RDMA)

  1. Устанавливать Windows Server 2019+.
  2. Установите роль Hyper-V и функцию DCB (Data Center Bridging).
  3. Настроить Качество обслуживания (QoS), DCB, PFC, ETS. Убедитесь, что сетевая плата сервера и конфигурация QoS соответствуют конфигурации коммутатора.
  4. Настроить Hyper-V Switch Embedded Team (SET).

Включение коммутатора Hyper-V

Рис. 9 . Конфигурация vSwitch

  1. Перед настройкой виртуальных машин протестируйте связь RDMA между физическими серверами. Скачать Microsoft Diskspd и сценарий Microsoft Test-RDMA PowerShell. Выполняйте следующие действия только в том случае, если связь работает правильно. В противном случае проверьте конфигурацию коммутатора и/или параметры DCB на хосте.

Проверка связи RDMA1

Рис. 10 . Тест — физические хосты RDMA

  1. Убедитесь , что на адаптерах RDMA на обоих серверах включена поддержка SR-IOV.

Убедитесь, что SR-IOV включена

Рис. 11 . SR-IOV включен

  1. Создайте две виртуальные машины 2-го поколения (гостевая ОС), по одной на каждом сервере, затем установите Windows Server 2019. В этом сценарии создается гостевая ОС с двумя виртуальными сетевыми платами: одна для трафика управления (VLAN 2) и одна для трафика SMB (VLAN 15).

Создание 2 NetConfig ВМ

Рис. 12 . Хост конфигурации сети гостевой ОС R7425-01

2 NetConfig2 ВМ

Рис. 13 . Хост конфигурации сети виртуальной машины R7425-02

  1. Завершите работу виртуальных машин.
  2. Давать возможность SR-IOV и RDMA в гостевой ОС.

Включить SR-IOV и гостевую систему RDMA

Рисунок 14 - Включение SR-IOV/RDMA в гостевых ОС.

  1. Запустите виртуальные машины и откройте Диспетчер устройств. В разделе «Network Adapters» должна быть указана виртуальная функция «Mellanox Virtual Function (VF)». Эта виртуальная функция (VF) не представлена как обычный сетевой адаптер в разделе «Network Connections», как показано на рис. 15. 

Диспетчер виртуальных машин

Рис. 15 . Диспетчер устройств гостевой ОС и сетевые подключения

 
Примечание. Для включения RDMA в гостевой операционной системе может потребоваться установка драйвера сетевой платы.
 
  1. Включите RDMA для виртуальной сетевой платы SMB. Функциональность RDMA уже включена на Mellanox VF (Ethernet4 — рис. 16).

Включена функция RDMA для виртуальной машины

Рис. 16 . Включение RDMA на SMB vNIC.

  1. Тест Гостевая RDMA. 
 
Примечание. Укажите IfIndex (индекс интерфейса vNIC) и VfIndex (Индекс интерфейса Mellanox VF).
 

Тестирование гостевой ВМ RDMA

Рис. 17 . Тест — гостевая ОС RDMA


Командлеты PowerShell

#Create new virtual switch with SRIOV option enabled
New-VMSwitch -Name xxxx -NetadapterName xxxx,xxxx -AllowManagementOS $true -EnableEmbeddedTeaming $true -EnableIov $true

#Verify if SRIOV is enabled on physical adapter
Get-NetAdapterSriov -Name xxxx

#Get VM network configuration
Get-VM -Name xxxx| Get-VMNetworkAdapter

#Get VM network VLAN configuration
Get-VM -Name | Get-VMNetworkAdapterVlan

#Set VM SRIO and RDMA on Virtual Machine(Guest OS) vNIC
Get-VM -Name xxxx | Set-VMNetworkAdapter -Name xxx -IovWeight 100 -IoVQueuePairsRequested 2
Get-VM -Name xxxx | Set-VMNetworkAdapterRdma -Name xxx -RdmaWeight 100

#Enable RDMA on NetAdapter
Enable-NetAdapterRdma -Name xxxx

#Test-Rdma Physical Host
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx

#Test-Rdma Virtual Machine (Guest OS)
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx -VfIndex xx

Ссылки для загрузки

У вас есть какие-либо комментарии, вопросы или предложения? Свяжитесь с нами по WinServerBlogs@dell.com


受影响的产品

Microsoft Windows Server 2019
文章属性
文章编号: 000113009
文章类型: How To
上次修改时间: 25 11月 2025
版本:  12
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。