Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

如何在 Windows Server 2019 上配置来宾 RDMA

Summary: 本文介绍如何在 Windows Server 2019 上配置来宾 RDMA。

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

目录

  1. 远程直接内存访问 (RDMA) 简介

  2. 实验室环境

  3. 硬件配置

  4. 配置来宾 RDMA

  5. Powershell Cmdlet

  6. 下载链接


1. 远程直接内存访问 (RDMA) 简介

远程直接内存访问 (RDMA) 是一项伟大的技术,它使计算机能够跨网络传输数据,而不涉及参与主机的 CPU 或操作系统资源(计算/存储),从而提高吞吐量和性能,减少延迟和 CPU 开销。

目前有两种流行的 RDMA 实现:

RoCE
- 传输:UDP/IP (RoCE v2)
- 依赖于 DCB(数据中心桥接)

iWarp
- 基础网络:TCP/IP
- TCP 提供流量控制和拥塞管理


RoCE 严重依赖于 ETS(增强型传输服务)和 PFC(优先级流量控制)等 DCB 配置,如果网络交换机配置不正确,则这可能会成为问题。iWARP 不需要任何交换机配置。

Microsoft 在 Windows Server 2012 上开始支持 RDMA,并在以后的 Windows Server 操作系统中添加了新功能。Microsoft 最新操作系统 Windows Server 2019 提供的一个功能是能够向来宾操作系统 (VM) 提供 RDMA。这使来宾可以具有与本机主机相同的低延迟网络存储访问,从而减少 CPU 开销,并直接提高 VM 中的吞吐量/性能。


Dell EMC 为 25Gbps RDMA 提供了极好的选择,如 Cavium QLogic FastLinQ 41262 双端口 25 GbE SFP28 (iWarp/RoCE) 和 Mellanox ConnectX-4 Lx 25Gbps RDMA (RoCE)。此示例使用 Mellanox ConnectX-4 Lx RDMA(RoCEv2 模式)来演示来宾 RDMA 功能。

2. 实验环境

服务器:2 个 Dell EMC R7425(AMD Epyc 7551 32 核处理器)、256 GB 内存、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 键)。

2.选择 Device Settings


HOW16693_en_US__1Fig1 - BiosDevSet
图 1 — BIOS 设备设置

3.选择插槽 1 端口 1 中的 NIC — Mellanox

HOW16693_en_US__2Fig2 - BiosDevSetMellanox
图 2 — Mellanox 插槽 1 端口 1 设备设置

4.转至“设备级别配置”

HOW16693_en_US__3Fig3 - BiosDevLevConf
图 3 — 设备级别配置

5.选择虚拟化模式下的 SR-IOV。

HOW16693_en_US__4Fig4 - BiosDevSriov
图 4 — SR-IOV 设置

6.在插槽 1 端口 2 中的 NIC 上重复上述步骤 — Mellanox。

HOW16693_en_US__5Fig5 - BiosDevSetMellanox2
图 5 — Mellanox 插槽 1 端口 2 设备设置

7.返回“系统设置主菜单”,然后选择系统 BIOS。

HOW16693_en_US__6Fig6 - SystemBios
图 6 — 系统 BIOS

8.选择集成设备。

HOW16693_en_US__7Fig7 - IntegratedDev
图 7 — BIOS 集成设备

9.启用“SR-IOV Global Enable”选项。

HOW16693_en_US__8Fig8 - SriovGlobal
图 8 — SR-IOV Global

10.保存您的配置并重新启动服务器。
 

4. 配置来宾 RDMA


1.安装 Windows Server 2019
2.安装 Hyper-V 角色和数据中心桥接 (DCB) 功能。
3.配置 QoS(服务质量)、DCB、PFC、ETS。确保服务器 NIC 和 QoS 配置与交换机配置相匹配。
配置 Hyper-V 集合(交换机嵌入式组)。

HOW16693_en_US__9Fig9 - vSwitch
图 9 — vSwitch 配置

5.在配置 VM 之前,测试物理服务器之间的 RDMA 通信。下载 Microsoft Diskspd 和 Microsoft Test-RDMA PowerShell 脚本。仅在通信正常工作时才继续执行下面的步骤。否则,检查交换机配置和/或主机上的 DCB 设置。

HOW16693_en_US__10Fig10 - Test-RDMA1
图 10 — Test-Rdma 物理主机

6.验证是否在两台服务器上的 RDMA 适配器上启用了 SR-IOV。

HOW16693_en_US__11Fig11 - SRIOVEnab
图 11 — SR-IOV 已启用

7.创建两个第 2 代 VM(来宾操作系统),每台服务器上有一个 VM,然后安装 Windows Server 2019。在这种情况下,将创建具有两个 vNIC 的来宾操作系统,一个用于 MGMT 流量 (VLAN 2),一个用于 SMB 流量 (VLAN 15)。

HOW16693_en_US__12Fig12 - VMNetConfig
图 12 — 来宾操作系统网络配置主机 R7425-01

HOW16693_en_US__13Fig13 - VMNetConfig2
图 13 — 虚拟机网络配置主机 R7425-02

8.关闭虚拟机。
9.在来宾操作系统上启用 SR-IOV 和 RDMA。

HOW16693_en_US__14Fig14 - EnableSriovRdmaGuest
图 14 — 在来宾操作系统上启用 SR-IOV/RDMA

10.启动 VM,然后打开设备管理器。Mellanox 虚拟功能 (VF) 应列示在网络适配器下方。在网络连接中,VF 没有作为常规网络适配器呈现,如图 15 所示。

HOW16693_en_US__15Fig16 - VMDevManager
图 15 - 来宾操作系统设备管理器和网络连接
 
注:可能需要安装 NIC 驱动程序才能在来宾操作系统中启用 RDMA。
11.在 SMB vNIC 上启用 RDMA。Mellanox VF 上已启用 RDMA 功能(Ethernet4 — 图 16)。

HOW16693_en_US__16Fig15 - VMRdmaEnab
图 16 — 在 SMB vNIC 上启用 RDMA

12.测试来宾 RDMA。 
HOW16693_en_US__17icon 注:务必指定 IfIndex(vNIC 接口索引)和 VfIndex(Mellanox VF 接口索引),这一点很重要。

HOW16693_en_US__18Fig17 - Test-RdmaVM
图 17 - Test-RDMA 来宾操作系统
 

5. Powershell Cmdlet


#在启用 SRIOV 选项的情况下创建新的虚拟交换机
New-VMSwitch -Name xxxx -NetadapterName xxxx,xxxx -AllowManagementOS $true -EnableEmbeddedTeaming $true -EnableIov $true

#验证是否在物理适配器上启用了 SRIOV
Get-NetAdapterSriov -Name xxxx

#获取虚拟机网络配置
Get-VM -Name xxxx| Get-VMNetworkAdapter

#获取虚拟机网络 VLAN 配置
Get-VM -Name | Get-VMNetworkAdapterVlan

#在虚拟机(来宾操作系统)vNIC 上设置虚拟机 SRIO 和 RDMA
Get-VM -Name xxxx | Set-VMNetworkAdapter -Name xxx -IovWeight 100 -IoVQueuePairsRequested 2
Get-VM -Name xxxx | Set-VMNetworkAdapterRdma -Name xxx -RdmaWeight 100

#在 NetAdapter 上启用 RDMA
Enable-NetAdapterRdma -Name xxxx

#Test-Rdma 物理主机
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx

#Test-Rdma 虚拟机(来宾操作系统)
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx -VfIndex xx
 

6. 下载链接


Microsoft Diskspd
Microsoft Test-RDMA 脚本


是否有任何意见、疑问或建议?请通过 WinServerBlogs@dell.com 与我们联系
 

Article Properties


Affected Product

PowerEdge, Microsoft Windows Server 2019

Last Published Date

15 Sept 2021

Version

7

Article Type

How To