Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

Windows Server에서 게스트 RDMA를 구성하는 방법

Summary: 이 문서에서는 Windows Server에서 게스트 RDMA를 구성하는 방법을 설명합니다.

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(Remote Direct Memory Access) 소개

  2. 실습 환경

  3. 하드웨어 구성

  4. Guest RDMA 구성

  5. Powershell Cmdlets

  6. 다운로드 링크


1. RDMA(Remote Direct Memory Access) 소개

RDMA(Remote Direct Memory Access)는 컴퓨터에서 관련 호스트(컴퓨팅/스토리지)의 CPU 또는 OS 리소스를 사용하지 않고 네트워크를 통해 데이터를 전송할 수 있도록 하여 처리량과 성능을 개선하고 레이턴시 및 CPU 오버헤드를 줄이는 뛰어난 기술입니다.

현재 RDMA 구현 방법으로 널리 이용되는 방법은 다음 두 가지입니다.

RoCE
- 전송: UDP/IP(RoCE v2)
- DCB(Data Center Bridging)에 의존

iWarp
- 기본 네트워크: TCP/IP
- TCP는 흐름 제어 및 혼잡 관리를 지원


RoCE는 ETS(Enhanced Transmission Service) 및 PFC(Priority Flow Control)와 같은 DCB 구성에 크게 의존합니다. 이는 네트워크 스위치가 올바르게 구성되지 않을 경우 문제가 될 수 있습니다. iWARP에는 스위치 구성이 필요하지 않습니다.

Microsoft는 Windows Server 2012에서 RDMA 지원을 시작했으며 이후의 Windows Server OS에 새로운 기능을 추가했습니다. Microsoft의 최신 OS인 Windows Server 2019에서 사용할 수 있는 기능 중 하나는 Guest OS(VM)에 RDMA를 제공하는 기능입니다. 이를 통해 Guest는 기본 호스트와 동일한 네트워크 스토리지에 대한 낮은 레이턴시 액세스를 확보하여 CPU 오버헤드를 줄이고 VM에서 직접 처리량/성능을 향상시킬 수 있습니다.


Dell EMC는 Cavium QLogic FastLinQ 41262 듀얼 포트 25GbE SFP28(iWARP/RoCE) 및 Mellanox ConnectX-4 LX 25Gbps RDMA(RoCE) 같은 25Gbps RDMA를 위한 뛰어난 옵션을 제공합니다. 이 예에서는 Mellanox ConnectX-4 Lx RDMA(RoCEv2 모드)를 사용하여 Guest RDMA 기능을 시연합니다.

2. 실습 환경

서버: Dell EMC R7425(AMD EPYC 7551 32코어 프로세서) 2개, 256GB 메모리, 완전히 업데이트된 Mellanox ConnectX-4 Lx(BIOS, 펌웨어, 드라이버 및 OS)
설치된 역할 및 기능: Hyper-V, DCB, 페일오버 클러스터링, S2D
스위치: Dell EMC S5048F-ON – MGMT VLAN 2, SMB VLAN 15
 
예약된 업데이트 주기의 일부로 BIOS, 펌웨어, 드라이버 및 운영 체제를 업데이트하는 것이 좋습니다. BIOS, 펌웨어, 드라이버 및 OS 업데이트는 시스템의 신뢰성, 안정성 및 보안을 개선하기 위한 것입니다.

3. 하드웨어 구성

1. 서버를 재부팅하고 System Setup으로 이동합니다(POST 중에 F2 키를 누름).

2. Device Settings를 선택합니다.


BIOS 디바이스 수준 설정
그림 1 - BIOS 디바이스 설정
 
3. NIC in Slot 1 Port 1 - Mellanox를 선택합니다.

BIOS 디바이스 수준 Mellanox
그림 2 - Mellanox 슬롯 1 포트 1 디바이스 설정
 
4. Device Level Configuration으로 이동합니다.

BIOS 디바이스 수준 구성
그림 3 - 디바이스 수준 구성
 
5. Virtualization Mode에서 SR-IOV를 선택합니다.

BIOS 디바이스 레벨 SR-IOV
그림 4 - SR-IOV 설정 
 
6. NIC in Slot 1 Port 2 - Mellanox에서 위 단계를 반복합니다.

BIOS 디바이스 수준 Mellanox2
그림 5 - Mellanox 슬롯 1 포트 2 디바이스 설정
 
7. System Setup 기본 메뉴로 돌아가서 System BIOS를 선택합니다.

시스템 BIOS
그림 6 - 시스템 BIOS
 
8. Integrated Devices를 선택합니다.

내장형 디바이스
그림 7 - BIOS 내장형 디바이스
 
9. SR-IOV Global Enable 옵션을 활성화합니다.

SR-IOV 전역 활성화
그림 8 - SR-IOV 글로벌
 
10. 구성을 저장하고 서버를 재부팅합니다.
 

4. Guest RDMA 구성


1. Windows Server 2019+
2를 설치합니다. Hyper-V 역할 및 DCB(Data Center Bridging) 기능을 설치합니다.
3. QoS(Quality-of-Service), DCB, PFC, ETS를 구성합니다. 서버 NIC 및 QoS 구성이 스위치 구성과 일치하는지 확인합니다.
4. Hyper-V SET(Switch Embedded Team)를 구성합니다.

Hyper-V 스위치 활성화
그림 9 - vSwitch 구성
 
5. VM을 구성하기 전에 물리적 서버 간에 RDMA 통신을 테스트합니다. Microsoft Diskspd 및 Microsoft Test-RDMA PowerShell 스크립트를 다운로드합니다. 통신이 제대로 작동하는 경우에만 아래 단계를 진행하십시오. 그렇지 않으면 호스트에서 스위치 구성 및/또는 DCB 설정을 확인합니다.

RDMA1 통신 테스트
그림 10 - Test-Rdma 물리적 호스트
 
6. SR-IOV가 두 서버의 RDMA 어댑터에서 활성화되었는지 확인합니다.

SR-IOV 활성화 확인
그림 11 - SR-IOV 활성화
 
7. 각 서버에 하나씩 2개의 Gen 2 VM(Guest OS)을 생성한 다음 Windows Server 2019를 설치합니다. 이 시나리오에서는 MGMT 트래픽(VLAN 2)에 대해 1개, SMB 트래픽(VLAN 15)에 1개 등 2개의 vNIC를 사용하여 Guest OS를 생성합니다.

2개의 VM NetConfig 생성
그림 12 - Guest OS 네트워크 구성 호스트 R7425-01

VM NetConfig2 2개
그림 13 - 가상 머신 네트워크 구성 호스트 R7425-02
 
8. VM을 종료합니다.
9. Guest OS에서 SR-IOV 및 RDMA를 활성화합니다.

SR-IOV 및 RDMA 게스트 활성화
그림 14 - Guest OS에서 SR-IOV/RDMA 활성화
 
10. VM을 시작한 다음 Device Manager를 엽니다. Mellanox VF(Virtual Function)는 Network Adapters 아래에 나열되어야 합니다. VF는 그림 15와 같이 네트워크 연결에서 일반 네트워크 어댑터로 표시되지 않습니다. 

VM 디바이스 관리자
그림 15 - Guest OS 디바이스 관리자 및 네트워크 연결
 
참고: Guest 운영 체제에서 RDMA를 활성화하려면 NIC 드라이버를 설치해야 할 수 있습니다.
11. SMB vNIC에서 RDMA를 활성화합니다. RDMA 기능은 Mellanox VF에서 이미 활성화되었습니다(이더넷 4 - 그림 16).

VM RDMA 활성화
그림 16 - SMB vNIC에서 RDMA 활성화
 
12. Guest RDMA를 테스트합니다. 
HOW16693_en_US__17icon 참고: IfIndex(vNIC 인터페이스 인덱스)와 VfIndex(Mellanox VF 인터페이스 인덱스)를 지정하는 것이 중요합니다.

게스트 RDMA VM 테스트
그림 17 - Test-RDMA Guest OS
 

5. Powershell Cmdlets

#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.