Indholdsfortegnelse
-
-
-
-
-
-
1. Introduktion til Remote Direct Memory Access (RDMA)
RDMA (Remote Direct Memory Access) er en fantastisk teknologi, der gør det muligt for computere at overføre data på tværs af netværket uden at involvere CPU- eller OS-ressourcer for de involverede værter (Compute/Storage), hvilket forbedrer overførselshastigheden og ydeevnen, hvilket reducerer ventetiden og CPU-spild.
Der er to populære RDMA-implementeringer i dag:
RoCE
- Transport: UDP/IP (RoCE v2)
- Baseret på DCB (Data Center Bridging)
iWarp
– Underliggende netværk: TCP/IP
– TCP giver flowstyring og overbelastningsstyring
RoCE er i høj grad afhængig af DCB-konfigurationer som f.eks. ETS (Enhanced Transmission Service) og PFC (Priority Flow Control), hvilket kan blive et problem, hvis netværksswitche ikke er konfigureret korrekt. iWARP kræver ikke nogen switchkonfiguration.
Microsoft begyndte at understøtte RDMA på Windows Server 2012 og tilføjede nye funktioner i de senere Windows Server-operativsystemer. En funktion, som er tilgængelig på Microsoft nyeste OS, Windows Server 2019, er muligheden for at præsentere RDMA for gæste-OS'en (VM). Dette gør det muligt for gæsten at have samme adgang med kort ventetid til et netværks lager som den indbyggede vært, hvilket reducerer belastningen af CPU'en og forbedrer overførselshastigheden/ydeevnen direkte i VM'en.
Dell EMC tilbyder fremragende muligheder for 25 Gbps RDMA som f.eks. Cavium QLogic FastLinQ 41262 Dual Port 25 GbE SFP28 (IWarp/RoCE) og Mellanox ConnectX-4 Lx 25 Gbps RDMA (RoCE). I dette eksempel bruges Mellanox ConnectX-4 Lx RDMA (RoCEv2-tilstand) til at demonstrere gæste-RDMA-funktionen.
Servere: 2 x Dell EMC R7425 (AMD Epyc 7551 32-Core-processor), 256 GB hukommelse, Mellanox ConnectX-4 Lx fuldt opdateret (BIOS, firmware, drivere og OS)
roller/funktioner installeret: Hyper-V, DCB, failoverklyngedannelse,
S2D-switch: Dell EMC S5048F-ON – MGMT VLAN 2, SMB VLAN 15
Dell EMC anbefaler, at du opdaterer BIOS, firmware, drivere og operativsystem som en del af dine planlagte opdateringer. BIOS, firmware, driver og OS-opdateringer er beregnet til at forbedre systemets pålidelighed, stabilitet og sikkerhed.
1. Genstart serverne, og gå til systemopsætningen (tryk på F2 under POST).
2. Vælg Enhedsindstillinger.
Figur 1 - BIOS-enhedsindstillinger
3. Vælg NIC i Slot 1 Port 1 – Mellanox
Figur 2 – Mellanox slot 1 Port 1 Enhedsindstillinger
4. Gå til Konfiguration af enhedsniveau
Figur 3 – Konfiguration af enhedsniveau
5. Vælg SR-IOV i virtualiseringstilstand.
Figur 4 – SR-IOV-indstilling
6. Gentag trinnene ovenfor på NIC i Slot 1 Port 2 – Mellanox.
Figur 5 – Mellanox slot 1 port 2 Enhedsindstillinger
7. Gå tilbage til hovedmenuen i Systemopsætning, og vælg derefter System BIOS.
Figur 6 – System-BIOS
8. Vælg Integrerede enheder.
Figur 7 - BIOS-integrerede enheder
9. Aktivér indstillingen SR-IOV Global Enable.
Figur 8 – SR-IOV Global
10. Gem din konfiguration og genstart serveren.
1. Installer Windows Server 2019
2. Installer Hyper-V-rollen og Data Center Bridging (DCB)-funktionen.
3. Konfigurer QoS (Quality-of-Service), DCB, PFC, ETS. Sørg for, at serverens NIC- og QoS-konfiguration svarer til switch-konfigurationen.
4. Konfigurere Hyper-V SET (Switch Embedded Team).
Figur 9 – vSwitch-konfiguration
5. Test RDMA-kommunikationen mellem de fysiske servere, inden VM'erne konfigureres. Download Microsoft Diskspd og Microsoft test-RDMA PowerShell-scriptet. Fortsæt kun med trinene nedenfor, hvis kommunikationen fungerer korrekt. Ellers skal du kontrollere switchkonfigurationen og/eller DCB-indstillingerne på værten.
Figur 10 – Test-RDMA fysiske værter
6. Kontroller, om SR-IOV er aktiveret på RDMA-adapterne på begge servere.
Figur 11 – SR-IOV aktiveret
7. Opret to Gen 2 VM'er (gæst OS), en på hver server, og installer derefter Windows Server 2019. I dette scenarie oprettes et gæste-OS med to vNIC'er, et til MGMT-trafik (VLAN 2) og et til SMB-trafik (VLAN 15).
Figur 12 – Gæste-OS netværkskonfigurationsvært R7425-01
Figur 13 – Virtuel maskinnetværkskonfigurationsvært R7425-02
8. Luk VM'erne ned.
9. Aktiver SR-IOV og RDMA på gæste-OS'et.
Figur 14 – Aktiver SR-IOV/RDMA på
gæste-OS 10. Start VM'erne, og åbn derefter Enhedshåndtering. Mellanox Virtual Function (VF) bør være angivet under Netværksadaptere. VF'en vises ikke som en almindelig netværksadapter i Netværksforbindelser, som vist på Figur 15.
Figur 15 – Gæste-OS Enhedshåndtering og Netværksforbindelser
BEMÆRK: Det kan være nødvendigt at installere en NIC-driver for at aktivere RDMA i gæsteoperativsystemet.
11. Aktivér RDMA på SMB vNIC. RDMA-funktionaliteten er allerede aktiveret på Mellanox VF (Ethernet4 – Figur 16).
Figur 16 – Aktivér RDMA på SMB vNIC
12. Test gæste-RDMA.
Bemærk: Det er vigtigt at angive IfIndex (vNIC Interface Index) og VfIndex (Mellanox VF Interface Index).
Figur 17 – Test-RDMA gæste-OS
#Create ny virtuel switch med SRIOV aktiveret
New-VMSwitch -Name xxxx -NetadapterName xxxx,xxxx -AllowManagementOS $true -EnableEmbeddedTeaming $true -EnableIov $true
#Verify, hvis SRIOV er aktiveret på den fysiske adapter
Get-NetAdapterSriov -Name xxxx
#Get VM network configuration
Get-VM -Name xxxx| Get-VMNetworkAdapter
#Get VM-netværks-VLAN-konfiguration
Get-VM -Name | Get-VMNetworkAdapterVlan
#Set VM SRIO og RDMA på Virtuel maskine (gæste-OS) vNIC
Get-VM -Name xxxx | Set-VMNetworkAdapter -Name xxx -IovBruger 100 -IoVQueuePairsRequested 2
Get-VM -Name xxxx | Set-VMNetworkAdapterRdma -Name xxx -Rdma Det vil give 100
#Enable RDMA på 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
(gæste-OS) .\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx -VfIndex xx
•
Microsoft Diskspd
• Microsoft
Test-RDMA ScriptHar du
kommentarer, spørgsmål eller forslag? Kontakt os på
WinServerBlogs@dell.com