İçindekiler
-
-
-
-
-
-
1. Uzaktan Doğrudan Bellek Erişimine (RDMA) Giriş
Uzaktan Doğrudan Bellek Erişimi (RDMA), dahil olan ana bilgisayarların CPU veya OS kaynaklarını (Bilgi İşlem/Depolama) kullanmadan bilgisayarların ağ genelinde veri aktarmasını sağlayan ve gecikme süresi ile CPU ek yükünü düşürerek verimi ve performansı artıran oldukça faydalı bir teknolojidir.
Şu anda iki popüler RDMA uygulaması mevcuttur:
RoCE
- Taşıma: UDP/IP (RoCE v2)
- DCB (Veri Merkezi Köprüleme) Kullanır
iWarp
- Temel Ağ: TCP/IP
- TCP, akış kontrolü ve tıkanıklık yönetimi sunar
RoCE, büyük oranda ETS (Gelişmiş İletim Hizmeti) ve PFC (Öncelikli Akış Kontrolü) gibi DCP yapılandırmasından faydalanır. Bu durum ağ anahtarları düzgün yapılandırılmadığı takdirde sorun oluşturabilir. iWARP, herhangi bir anahtar yapılandırması gerektirmez.
Microsoft, Windows Server 2012'de RDMA desteği sunmaya başlamış ve daha sonraki Windows Server OS sürümlerine yeni özellikler eklemiştir. Microsoft'un en son işletim sistemi Windows Server 2019'daki özelliklerden biri, RDMA'yı Konuk İşletim Sistemine (VM) sunabilmektir. Bu özellik, CPU ek yükünü düşürerek ve doğrudan VM'de aktarım ve performansı artırarak Konuğun, ağ depolamasına erişirken yerel ana bilgisayar ile aynı seviyede düşük gecikme süresi elde etmesine olanak tanır.
Dell EMC, 25 Gb/sn RDMA için Cavium QLogic FastLinQ 41262 Çift Bağlantı Noktalı 25 GbE SFP28 (iWarp/RoCE) ve Mellanox ConnectX-4 Lx 25 Gb/sn RDMA (RoCE) gibi mükemmel seçenekler sunar. Bu örnekte Konuk RDMA özelliğini tanıtmak için Mellanox ConnectX-4 Lx RDMA (RoCEv2 modu) kullanılmıştır.
Sunucular: Sunucular: 2 adet Dell EMC R7425 (AMD Epyc 7551 32 Çekirdekli İşlemci), 256 GB Bellek, tamamen güncel Mellanox ConnectX-4 Lx (BIOS, Bellenim, Sürücüler ve OS)
Yüklenmiş Roller/Özellikler: Hyper-V, DCB, Yük Devretme Kümelemesi, S2D
Anahtar: Dell EMC S5048F-ON – MGMT VLAN 2, SMB VLAN 15
Dell EMC, planlanmış güncelleme döngünüzün bir parçası olarak BIOS'u, bellenimleri, sürücüleri ve İşletim Sistemini güncellemenizi önerir. BIOS, bellenim, sürücü ve işletim sistemi güncellemeleri, sisteminizin güvenilirliğini, kararlılığını ve güvenliğini artırmak amacıyla sunulur.
1. Sunucuları yeniden başlatın ve System Setup (Sistem Kurulumu) öğesine gidin (POST sırasında F2'ye basarak).
2. Device Settings (Aygıt Ayarları) öğesini seçin.
Şekil 1 - BIOS Aygıt Ayarları
3. NIC in Slot 1 Port 1 (Yuva 1 Bağlantı Noktası 1'de NIC) - Mellanox öğesini seçin
Şekil 2 - Mellanox Yuva 1 Bağlantı Noktası 1 Aygıt Ayarları
4. Device Level Configuration (Aygıt Düzeyinde Yapılandırma) kısmına gidin
Şekil 3 - Aygıt Düzeyinde Yapılandırma
5. Virtualization Mode (Sanallaştırma Modu) kısmında SR-IOV öğesini seçin.
Şekil 4 - SR-IOV Ayarı
6. NIC in Slot 1 Port 2 (Yuva 1 Bağlantı Noktası 2'de NIC) - Mellanox kısmında yukarıdaki adımları tekrarlayın.
Şekil 5 - Mellanox Yuva 1 Bağlantı Noktası 2 Aygıt Ayarları
7. System Setup Main Menu (Sistem Kurulumu Ana Menüsü) ekranına geri dönün, ardından System BIOS (Sistem BIOS'u) öğesini seçin.
Şekil 6 - Sistem BIOS'u
8. Integrated Devices (Entegre Aygıtlar) öğesini seçin.
Şekil 7 - BIOS Entegre Aygıtlar
9. SR-IOV Global Enable (SR-IOV Global Etkinleştirme) öğesini Enabled (Etkin) seçeneğini belirleyerek etkinleştirin.
Şekil 8 - SR-IOV Global
10. Yapılandırmanızı kaydedin ve sunucuyu yeniden başlatın.
1. Windows Server 2019+
2'yi yükleyin. Hyper-V Rolünü ve Veri Merkezi Köprüleme (DCB) özelliğini yükleyin.
3. QoS (Servis Kalitesi), DCB, PFC ve ETS'yi yapılandırın. Sunucu NIC'si ve QoS yapılandırmasının anahtar yapılandırmasıyla eşleştiğinden emin olun.
4. Hyper-V SET'i yapılandırın (Anahtar Kapsamında Grup).
Şekil 9 - vSwitch Yapılandırması
5. VM'leri yapılandırmadan önce fiziksel sunucular arasındaki RDMA iletişimini test edin. Microsoft Diskspd ve Microsoft Test-RDMA PowerShell komut dosyasını indirin. İletişim düzgün şekilde gerçekleşiyorsa aşağıdaki adımları izlemeye devam edin. Aksi takdirde anahtar yapılandırmasını ve/veya ana bilgisayardaki DCB ayarlarını kontrol edin.
Şekil 10 - Fiziksel Ana Bilgisayarlar için Rdma Testi
6. SR-IOV'nin, her iki sunucudaki RDMA bağdaştırıcılarında etkin olduğunu doğrulayın.
Şekil 11 - SR-IOV Etkin
7. Her bir sunucuda birer tane olmak üzere iki Gen 2 VM (Konuk İşletim Sistemi) oluşturun ve ardından Windows Server 2019'u yükleyin. Bu senaryoda Konuk OS, biri MGMT trafiği (VLAN 2) için, diğeri ise SMB trafiği (VLAN 15) için olmak üzere iki vNIC ile oluşturulur.
Şekil 12 - Konuk OS Ağ Yapılandırması Ana Bilgisayarı R7425-01
Şekil 13 - Sanal Makine Ağ Yapılandırması Ana Bilgisayarı R7425-02
8. VM'leri kapatın.
9. Konuk OS üzerinde SR-IOV ve RDMA'yı etkinleştirin.
Şekil 14: Konuk OS'lerde SR-IOV/RDMA'yı etkinleştirme
10. VM'leri başlatıp Aygıt Yöneticisini açın. Mellanox Virtual Function'ın [Sanal İşlev (VF)] Network Adapters (Ağ Bağdaştırıcıları) öğesinin altında listelenmiş olması gerekir. Şekil 15'te görülebileceği üzere VF, Network Connections (Ağ Bağlantıları) öğesi altında normal bir ağ bağdaştırıcısı olarak sunulmaz.
Şekil 15 - Konuk İşletim Sistemi Aygıt Yöneticisi ve Ağ Bağlantıları
NOT: Konuk İşletim Sisteminde RDMA'yı etkinleştirmek için bir NIC sürücüsünün yüklü olması gerekebilir.
11. SMB vNIC'de RDMA'yı etkinleştirin. RDMA işlevi Mellanox VF'de zaten etkindir (Ethernet4 - Şekil 16).
Şekil 16 - SMB vNIC'de RDMA'yı etkinleştirme
12. Konuk RDMA'sını test edin.
Not: IfIndex (vNIC Arayüz Dizini) ve VfIndex'in (Mellanox VF Arayüz Dizini) belirtilmesi önemlidir.
Şekil 17 - Konuk İşletim Sistemi için RDMA Testi
#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
Yorumlarınız, sorularınız veya önerileriniz mi var? Lütfen
WinServerBlogs@dell.com adresinden bize ulaşın