Microsoft Windows: Як налаштувати гостьовий RDMA на Windows Server
摘要: У цій статті пояснюється, як налаштувати гостьовий віддалений прямий доступ до пам'яті (RDMA) на сервері Windows.
说明
Зміст
- Впровадження віддаленого прямого доступу до пам'яті (RDMA)
- Лабораторне середовище
- Конфігурація апаратного забезпечення
- Конфігурація гостьового RDMA
- Командори Powershell
- Посилання для завантаження
Впровадження віддаленого прямого доступу до пам'яті (RDMA)
Віддалений прямий доступ до пам'яті (RDMA) — це чудова технологія, яка дозволяє комп'ютерам передавати дані по мережі без залучення ресурсів процесора чи операційної системи хостів (обчислювальних і сховищ). Це підвищує пропускну здатність і продуктивність, а також зменшує затримки та накладні
навантаження на процесор.Сьогодні існує дві популярні реалізації RDMA:
- RoCE
- Везти: UDP/IP (RoCE v2)
- Покладайтеся на дата-центр Bridging (DCB)
- iWarp
- Базова мережа: TCP/IP
- TCP забезпечує контроль потоку та управління заторами.
RoCE значною мірою покладається на конфігурацію DCB, таку як Enhanced Transmission Service (ETS) та Priority Flow Control (PFC), що може стати проблемою, якщо мережеві комутатори налаштовані неправильно. iWARP не потребує жодної конфігурації перемикачів.
Microsoft почала підтримувати RDMA на Windows Server 2012 і додала нові функції в пізнішій Windows Server OS. Однією з функцій, доступних на Windows Server 2019 від Microsoft, є можливість відтворювати RDMA у гостьову ОС (VM). Це дозволяє гості мати такий самий низькозатримковий доступ до мережевого сховища, як і рідному хосту, зменшуючи накладні витрати на процесор і покращуючи пропускну здатність і продуктивність безпосередньо у віртуальній машині.
Dell пропонує чудові варіанти для 25 Gbps RDMA, такі як Cavius QLogic FastLinQ 41262 Dual Port 25 GbE SFP28 (iWarp/RoCE) та Mellanox ConnectX-4 Lx 25 Gbps RDMA (RoCE). У цьому прикладі використовується Mellanox ConnectX-4 Lx RDMA (режим RoCEv2) для демонстрації функції Guest RDMA.
Лабораторне середовище
Серверів:
- 2 x Dell R7425 (AMD EPYC 7551 32-ядерний процесор)
- 256 ГБ пам'яті
- Mellanox ConnectX-4 Lx повністю оновлений (прошивка (включаючи BIOS), драйвери та ОС)
Встановлені ролі та функції:
- Hyper-V
- DCB
- Резервне кластеризація
- S2D
Комутатор:
- Dell S5048F-ON - MGMT VLAN 2
- SMB VLAN 15
Конфігурація апаратного забезпечення
- Перезавантажте сервери і перейдіть до налаштування системи (натисніть F2 під час POST).
- Виберіть налаштування пристрою.

Рисунок 1 - Налаштування пристрою BIOS
- Виберіть мережеву карту в слоті 1, порт 1 - Mellanox.

Рисунок 2 - Налаштування пристрою Mellanox Slot 1 Port 1
- Перейдіть до налаштування на рівні пристрою.

Рисунок 3 - Конфігурація на рівні пристрою
- Виберіть SR-IOV у режимі віртуалізації.

Рисунок 4 - Налаштування SR-IOV
- Повторіть кроки вище на мережевій карті в слоті 1, порт 2 - Mellanox.

Рисунок 5 - Налаштування пристрою Mellanox Slot 1 Port 2
- Поверніться до головного меню налаштування системи, потім виберіть System BIOS.

Рисунок 6 - Системний BIOS
- Виберіть інтегровані пристрої.

Рисунок 7 - Інтегровані в BIOS пристрої
- Увімкнути опцію SR-IOV Global .

Рисунок 8 - SR-IOV Global
- Збережіть свою конфігурацію і перезавантажте сервер.
Конфігурація гостьового RDMA
- Інсталювати Windows Server 2019+.
- Встановіть роль Hyper-V та функцію перемикання дата-центру (DCB).
- Настроїти Якість обслуговування (QoS), DCB, PFC, ETS. Переконайтеся, що конфігурація серверного NIC та QoS відповідає конфігурації комутатора.
- Настроїти Команда вбудованих комутаторів Hyper-V (SET).

Рисунок 9 - Конфігурація vSwitch
- Тестуйте RDMA-комунікацію між фізичними серверами перед налаштуванням віртуальних машин. Завантажити Microsoft
Diskspdта скрипт Microsoft Test-RDMA PowerShell. Дотримуйтесь кроків нижче лише якщо комунікація працює належним чином. Інакше перевірте конфігурацію комутатора та/або налаштування DCB на хості.

Рисунок 10 - Фізичні хости Test-RDMA
- Перевірте , чи увімкнено SR-IOV на RDMA-адаптерах обох серверів.

Рисунок 11 - Увімкнено SR-IOV
- Створіть дві віртуальні машини другого покоління (гостьова ОС), по одній на кожному сервері, а потім встановіть Windows Server 2019. У цьому сценарії створюється гостьова ОС із двома vNIC: один для трафіку MGMT (VLAN 2) і один для трафіку SMB (VLAN 15).

Рисунок 12 - Хост конфігурації мережі гостевої ОС R7425-01

Рисунок 13 - Хост конфігурації мережі віртуальної машини R7425-02
- Вимкніть віртуальні машини.
- Вмикати SR-IOV та RDMA на гостьовій ОС.

Рисунок 14 - Увімкніть SR-IOV/RDMA на гостьових ОС.
- Запустіть віртуальні машини, а потім відкрийте диспетчер пристроїв. Віртуальна функція Mellanox (VF) має бути зазначена в розділі Мережеві адаптери. VF не представлений як звичайний мережевий адаптер у розділі Network Connections, як показано на рисунку 15.

Рисунок 15 - Диспетчер пристроїв гостьової ОС та мережеві з'єднання
- Увімкніть RDMA на SMB vNIC. Функціональність RDMA вже увімкнена на Mellanox VF (Ethernet4 - Рисунок 16).

Рисунок 16 - Увімкнути RDMA на SMB vNIC.
- Тест Гостьовий RDMA.
IfIndex (індекс інтерфейсу vNIC) та VfIndex (Індекс інтерфейсу Mellanox VF).

Рисунок 17 - Test-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