Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products

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

Summary: В этой статье объясняется, как настроить гостевую RDMA в Windows Server.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Содержание

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

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

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

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

  5. Командлеты PowerShell

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


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

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

На данный момент существует два распространенных внедрения RDMA:

RoCE
- Транспортировка: UDP/IP (RoCE v2)
- На основе DCB (Data Center Bridging)

iWarp
- Базовая сеть: TCP/IP
- TCP обеспечивает управление потоком и перегрузкой.


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

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


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

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

Серверы: 2 сервера Dell EMC R7425 (32-ядерный процессор AMD Epyc 7551), 256 Гбайт памяти, плата Mellanox ConnectX-4 Lx, полностью обновленные (BIOS, микропрограмма, драйверы и ОС).
Установленные роли/функции: Hyper-V, DCB, отказоустойчивая кластеризация, локальные дисковые пространства (S2D).
Коммутатор: Dell EMC S5048F-ON – MGMT VLAN 2, SMB VLAN 15.
 
Dell EMC рекомендует обновлять BIOS, микропрограммы, драйверы и операционную систему в рамках планового цикла обновления. Обновления BIOS, микропрограммы, драйверов и ОС предназначены для повышения надежности, стабильности и безопасности системы.

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

1. Перезагрузите серверы и откройте программу настройки системы (System Setup) (нажмите F2 во время процедуры POST).

2. Выберите пункт Device Settings.


Параметры уровня устройства в BIOS
Рис. 1. Пункт «Device Settings» в BIOS
 
3. Выберите «NIC in Slot 1 Port 1 - Mellanox»

Уровень устройства BIOS Mellanox
Рис. 2. Выбор «Mellanox» для «Slot 1 Port 1» в окне «Device Settings»
 
4. Перейдите в раздел «Device Level Configuration»

Конфигурация BIOS на уровне устройства
Перейдите в раздел «Device Level Configuration»
 
5. Выберите «SR-IOV» в пункте «Virtualization Mode».

Уровень устройства SR-IOV в BIOS
Рис. 4. Выбор пункта «SR-IOV»
 
6. Повторите описанные выше действия для пункта «NIC in Slot 1 Port 2: Mellanox».

Уровень устройства BIOS Mellanox2
Рис. 5. Выбор «Mellanox» для «Slot 1 Port 2» в окне «Device Settings»
 
7. Вернитесь в главное меню «System Setup» и выберите пункт «System BIOS».

BIOS системы
Рис. 6. Выбор пункта «System BIOS»
 
8. Выберите «Integrated Devices».

Встроенные устройства
Рис. 7. Выбор пункта «Integrated Devices» в BIOS
 
9. Включите параметр «SR-IOV Global Enable».

Глобальное включение SR-IOV
Рис. 8. Параметр «SR-IOV Global Enable»
 
10. Сохраните конфигурацию и перезагрузите сервер.
 

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


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

Включение коммутатора Hyper-V
Рис. 9. Конфигурация vSwitch
 
5. Перед настройкой виртуальных машин протестируйте обмен данными при использовании RDMA между физическими серверами. Загрузите утилиту Microsoft DiskSpd и скрипт Microsoft PowerShell «Test-RDMA». Продолжайте выполнение описанных ниже действий только в том случае, если обмен данными работает должным образом. В противном случае проверьте конфигурацию коммутатора и/или настройки DCB на хосте.

Проверка связи RDMA1
Рис. 10. Скрипт «Test-RDMA» на физических хостах
 
6. Проверьте, что параметр «SR-IOV» включен на адаптерах RDMA обоих серверов.

Убедитесь, что SR-IOV включена
Рис. 11. Параметр «SR-IOV» включен
 
7. Создайте две виртуальные машины 2-го поколения (гостевая ОС), по одной на каждом сервере, затем установите Windows Server 2019. В этом сценарии создается гостевая ОС с двумя виртуальными сетевыми платами: одна для трафика MGMT (VLAN 2) и одна для трафика SMB (VLAN 15).

Создание 2 NetConfig ВМ
Рис. 12. Конфигурация сети гостевой ОС хоста R7425-01.

2 NetConfig2 ВМ
Рис. 13. Конфигурация сети виртуальной машины хоста R7425-02
 
8. Завершите работу виртуальных машин.
9. Включите «SR-IOV» и «RDMA» в гостевой ОС.

Включить SR-IOV и гостевую систему RDMA
Рис. 14. Включение «SR-IOV» и «RDMA» в гостевых ОС
 
10. Запустите виртуальные машины, затем откройте Device Manager. В разделе «Network Adapters» должна быть указана виртуальная функция «Mellanox Virtual Function (VF)». Эта виртуальная функция (VF) не представлена как обычный сетевой адаптер в разделе «Network Connections», как показано на рис. 15. 

Диспетчер виртуальных машин
Рис. 15. Device Manager и раздел «Network Connections» в гостевой ОС
 
ПРИМЕЧАНИЕ. Для включения RDMA в гостевой операционной системе может потребоваться установить драйвер сетевой платы.
11. Включите RDMA на виртуальной сетевой плате (vNIC) SMB. Функции RDMA уже включены в Mellanox VF (Ethernet4 — Рис. 16.)

Включена функция RDMA для виртуальной машины
Рис. 16. Включение RDMA на виртуальной сетевой плате (vNIC) SMB
 
12. Протестируйте гостевой удаленный прямой доступ к памяти (RDMA). 
HOW16693_en_US__17icon Примечание. Важно указать IfIndex (индекс интерфейса vNIC) и VfIndex (индекс интерфейса Mellanox VF).

Тестирование гостевой ВМ RDMA
Рис. 17. Скрипт «Test-RDMA» в гостевой ОС
 

5. Командлеты 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

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


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

Affected Products

Microsoft Windows Server 2019
Article Properties
Article Number: 000113009
Article Type: How To
Last Modified: 13 Aug 2024
Version:  9
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.