Inhoudsopgave
-
-
-
-
-
-
1. Introductie van Remote Direct Memory Access (RDMA)
Remote Direct Memory Access (RDMA) is een geweldige technologie waarmee computers data over het netwerk kunnen overdragen zonder dat hierbij CPU- of OS-bronnen van de betrokken hosts betrokken zijn (Compute/Storage), waardoor de doorvoer en prestaties worden verbeterd, latentie en CPU-overhead worden verminderd.
Er zijn vandaag de dag twee populaire RDMA-implementaties:
RoCE
- Transport: UDP/IP (RoCE v2)
- Vertrouw op DCB (Data Center Bridging)
iWarp
- Onderliggende netwerk: TCP/IP
- TCP biedt flowbesturing en congestiebeheer
RoCE is sterk afhankelijk van DCB-configuraties zoals ETS (Enhanced Transmission Service) en PFC (Priority Flow Control), wat een probleem kan worden als netwerkswitches niet correct zijn geconfigureerd. iWARP vereist geen switchconfiguratie.
Microsoft begon met het ondersteunen van RDMA op Windows Server 2012 en voegt nieuwe functies toe in de latere Windows Server-besturingssystemen. Een functie die beschikbaar is op het nieuwste besturingssysteem van Microsoft, Windows Server 2019, is de mogelijkheid om RDMA te presenteren aan het gast-besturingssysteem (VM). Hierdoor kan de gast dezelfde lagelatentietoegang hebben tot een netwerkstorage als de native host, wat de CPU-overhead vermindert en zorgt voor verbeterde doorvoer en prestaties rechtstreeks in de VM.
Dell EMC biedt geweldige opties voor 25 Gbps RDMA, zoals de Cavium QLogic FastLinQ 41262 Dual Port 25 GbE SFP28 (iWarp/RoCE) en de Mellanox ConnectX-4 Lx 25 Gbps RDMA (RoCE). In dit voorbeeld wordt de gast-RDMA-functie gedemonstreerd aan de hand van de Mellanox ConnectX-4 Lx RDMA (RoCEv2-modus).
Servers: 2 x Dell EMC R7425 (AMD Epyc 7551 32-Core processor), 256 GB geheugen, Mellanox ConnectX-4 Lx volledig bijgewerkte functies/functies (BIOS, firmware, drivers en
besturingssysteem): Hyper-V, DCB, failoverclustering,
S2D-switch: Dell EMC S5048F-ON – MGMT VLAN 2, SMB VLAN 15
Dell EMC raadt aan het BIOS, de firmware, de drivers en het besturingssysteem bij te werken als onderdeel van uw geplande updatecyclus. BIOS-, firmware-, driver- en besturingssysteemupdates zijn bedoeld om de betrouwbaarheid, stabiliteit en beveiliging van uw systeem te verbeteren.
1. Start de servers opnieuw op en ga naar System Setup (druk op F2 tijdens POST).
2. Selecteer Device Settings.
Afbeelding 1 - BIOS-apparaatinstellingen
3. Selecteer de NIC in Slot 1 Port 1 - Mellanox
Afbeelding 2 - Mellanox Slot 1 Poort 1 Apparaatinstellingen
4. Ga naar Device Level Configuration
Afbeelding 3 - Device Level Configuration
5. Selecteer SR-IOV in virtualisatiemodus.
Afbeelding 4 - SR-IOV-instelling
6. Herhaal de bovenstaande stappen op de NIC in Slot 1 Port 2 - Mellanox.
Afbeelding 5 - Mellanox Slot 1 Poort 2 Apparaatinstellingen
7. Ga terug naar het hoofdmenu van System Setup en selecteer systeem-BIOS.
Afbeelding 6 - Systeem-BIOS
8. Selecteer Geïntegreerde apparaten.
Afbeelding 7 - BIOS Integrated Devices
9. Schakel de optie SR-IOV Global Enable in.
Afbeelding 8 - SR-IOV Global
10. Sla uw configuratie op en start de server opnieuw op.
1. Installeer Windows Server 2019
2. Installeer de Hyper-V-rol en de Functie Data Center Bridging (DCB).
3. Configureer QoS (Quality-of-Service), DCB, PFC, ETS. Zorg ervoor dat de NIC- en QoS-configuratie van de server overeenkomt met de switchconfiguratie.
4. Configureer Hyper-V SET (Switch Embedded Team).
Afbeelding 9 - vSwitch Configuration
5. Test de RDMA-communicatie tussen de fysieke servers voorafgaand aan de configuratie van de VM's. Download Microsoft Diskspd en het Microsoft Test-RDMA PowerShell script. Ga alleen verder met de onderstaande stappen als de communicatie goed werkt. Controleer anders de switchconfiguratie en/of DCB-instellingen op de host.
Afbeelding 10 - Test-Rdma Physical Hosts
6. Controleer of SR-IOV is ingeschakeld op de RDMA-adapters op beide servers.
Afbeelding 11 - SR-IOV ingeschakeld
7. Maak twee 2e generatie VM's (gast-besturingssysteem), één op elke server, en installeer Windows Server 2019. In dit scenario wordt een gast-besturingssysteem gemaakt met twee vNICs, één voor MGMT-verkeer (VLAN 2) en één voor SMB-verkeer (VLAN 15).
Afbeelding 12 - Guest OS Network Configuration Host R7425-01
Afbeelding 13 - Virtual Machine Network Configuration Host R7425-02
8. Sluit de VM's af.
9. Schakel SR-IOV en RDMA in op het gastbesturingssysteem.
Afbeelding 14 - SR-IOV/RDMA inschakelen op gast-besturingssystemen
10. Start de VM's en open Apparaatbeheer. De Mellanox Virtual Function (VF) moet worden vermeld onder Netwerkadapters. De VF wordt niet weergegeven als een normale netwerkadapter in Netwerkverbindingen zoals weergegeven in afbeelding 15.
Afbeelding 15 - Apparaatbeheer en Netwerkverbindingen van het gast-besturingssysteem
OPMERKING: Mogelijk moet er een NIC-driver worden geïnstalleerd om RDMA in te schakelen in het gastbesturingssysteem.
11. Schakel RDMA in op SMB vNIC. RDMA-functionaliteit is al ingeschakeld op de Mellanox VF (Ethernet4 - Afbeelding 16).
Afbeelding 16 - RDMA inschakelen op SMB vNIC
12. Test gast-RDMA.
Opmerking: Het is belangrijk om de IfIndex (vNIC Interface Index) en de VfIndex (Mellanox VF Interface Index) op te geven.
Afbeelding 17- Test-RDMA gast-besturingssysteem
#Create nieuwe virtuele switch met DE OPTIE SRIOV ingeschakeld
New-VMSwitch -Name xxxx -NetadapterName xxxx,xxxx -AllowManagementOS $true -EnableEmbeddedTeaming $true -EnableIov $true
#Verify als SRIOV is ingeschakeld op fysieke adapter
Get-NetAdapterSriov -Name xxxx
#Get VM netwerkconfiguratie
Get-VM -Name xxxx| Get-VMNetworkAdapter
#Get VM-netwerk VLAN-configuratie
Get-VM -Name | Get-VMNetworkAdapterVlan
#Set VM SRIO en RDMA on Virtual Machine (Guest OS) vNIC
Get-VM -Name xxxx | Set-VMNetworkAdapter -Name xxx -IovXxx 100 -IoVQueuePairsRequested 2
Get-VM -Name xxxx | Set-VMNetworkAdapterRdma -Name xxx -RdmaXxx 100
#Enable RDMA on NetAdapter
Enable-NetAdapterRdma -Name xxxx
#Test-Rdma Physical Host
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIp Adres xxx.xxx.xxx.xxx -PathToDiskspd xxxxx
#Test-Rdma Virtual Machine (Gast-BESTURINGSSYSTEEM)
.\Test-Rdma.ps1 -IfIndex xx -IsRoCE $true -RemoteIpAddress xxx.xxx.xxx.xxx -PathToDiskspd xxxxx -VfIndex xx
•
Microsoft Diskspd
• Microsoft
Test-RDMA ScriptHebt u
opmerkingen, vragen of suggesties? Neem contact met ons op via
WinServerBlogs@dell.com