Bu makalede8 bölüm
- Teknoloji
- Hyper-V, Switch Embedded Teaming, VLAN, RDMA, SMB Direct, DCB, PowerShell
- Konu
- Hyper-V host sanal ağ ve trafik ayrımı
- Seviye
- Orta–ileri
- Ön koşullar
- Windows Server 2016 veya üzeri Hyper-V hostu
- Temel VLAN ve trunk bilgisi
Canlı geçiş beklenenden uzun sürüyorsa, CSV gecikmesi gündüz saatlerinde artıyorsa ya da tek bir kablo çekildiğinde host yönetimden kopuyorsa, sorun çoğu zaman donanımda değil sanal ağ tasarımındadır. Bir Hyper-V hostu aynı fiziksel kartlar üzerinden yönetim, küme iletişimi, canlı geçiş, depolama ve VM trafiği taşır; bu trafiklerin nasıl ayrıldığı, bir NIC arızasında hostun ayakta kalıp kalmayacağını belirler. Aşağıda Switch Embedded Teaming (SET) ile yakınsamış (converged) bir sanal ağı PowerShell örnekleri ve fiziksel switch gereksinimleriyle kuruyoruz.
Önce trafikleri yazın
Kabloya dokunmadan önce, sunucu ve sistem altyapısındaki her hostta hangi trafiklerin aktığını, hangisinin gecikmeye, hangisinin bant genişliğine duyarlı olduğunu kâğıda dökün:
| Trafik | Özellik | Tipik ayrım |
|---|---|---|
| Yönetim | Düşük bant, yüksek erişilebilirlik | Ayrı VLAN, host vNIC |
| Küme (heartbeat, CSV yönlendirme) | Gecikmeye duyarlı | Ayrı VLAN, en az iki yol |
| Canlı geçiş | Kısa süreli yüksek bant | Ayrı VLAN, mümkünse SMB/RDMA |
| Depolama (SMB3 / iSCSI) | Gecikme ve bant kritik | Ayrı VLAN; iSCSI için ayrı fiziksel NIC tercih edilir |
| VM trafiği | Değişken, çok VLAN’lı | Trunk port, VM başına VLAN etiketi |
1 GbE döneminde her trafik için ayrı fiziksel NIC çifti kullanılırdı; altı–sekiz portlu hostlar bu yüzdendir. 10/25 GbE ile yaygın model, iki (bazen dört) hızlı portu tek SET switch altında birleştirip trafikleri host vNIC’leri, VLAN’lar ve QoS ile ayırmaktır. iSCSI bunun istisnasıdır: MPIO ile çok yollu çalışacak şekilde tasarlandığı için genellikle team dışında, ayrı fiziksel portlarda bırakılır. Ayrıntılar Hyper-V paylaşımlı depolama seçimi yazısında.
LBFO’dan SET’e geçiş
Windows Server 2012 ile gelen LBFO (NIC Teaming), işletim sistemi düzeyinde bir team oluşturur, sanal switch de bu team’in üzerine kurulurdu. SET ise Windows Server 2016’dan itibaren teaming işlevini doğrudan Hyper-V sanal switch’inin içine taşır. Karar için farklar şunlar:
| Özellik | LBFO + vSwitch | SET |
|---|---|---|
| Teaming modu | Switch independent, statik, LACP | Yalnızca switch independent |
| Host vNIC’lerinde RDMA | Yok | Var |
| NIC uyumu | Farklı modeller karışabilir | Aynı model, sürücü ve firmware |
| En fazla üye | 32 | 8 |
| Microsoft’un Hyper-V için yönü | Kullanımdan kaldırılıyor | Önerilen yöntem |
Windows Server 2022’de LBFO team üzerine Hyper-V sanal switch’i oluşturmak varsayılan olarak engellenmiştir; Hyper-V Yöneticisi bu seçeneği sunmaz. LBFO tabanlı hostları yükseltirken sanal switch’i SET olarak yeniden kurmayı plana yazın. Geçişi host bakım moduna alınıp VM’ler boşaltıldıktan sonra yapın, çünkü vSwitch silindiğinde bağlı VM adaptörleri ağdan kopar. Sırayı atlamayın.
SET oluşturma ve yük dengeleme modları
SET’te iki yük dengeleme algoritması vardır:
- HyperVPort: Her VM adaptörü ve host vNIC’i bir fiziksel porta bağlanır. Bir VM’in trafiği tek porttan çıkar; fiziksel switch MAC adresini tek portta görür. Windows Server 2019 ve sonrasında varsayılan budur.
- Dynamic: Giden trafik akış bazında portlara dağıtılır, gelen trafik HyperVPort mantığıyla eşlenir. Az sayıda yüksek trafikli VM’in olduğu ortamlarda giden yükü daha iyi dağıtabilir.
Çoğu ortamda varsayılan HyperVPort doğru seçimdir. SET yalnızca switch independent çalıştığı için fiziksel switch’te port-channel veya LACP yapılandırılmaz; iki portu iki ayrı fiziksel switch’e bağlayıp switch yedekliliği elde edersiniz.
# İki 25 GbE port ile SET switch oluştur
New-VMSwitch -Name "SETswitch" `
-NetAdapterName "SLOT2-P1","SLOT2-P2" `
-EnableEmbeddedTeaming $true `
-AllowManagementOS $false `
-MinimumBandwidthMode Weight
# Yük dengeleme algoritmasını kontrol et / ayarla
Get-VMSwitchTeam -Name "SETswitch" | Format-List
Set-VMSwitchTeam -Name "SETswitch" -LoadBalancingAlgorithm HyperVPort
-MinimumBandwidthMode yalnızca switch oluşturulurken belirlenir. Sonradan değiştirmek switch’i yeniden kurmak demektir. Host vNIC’lerine ağırlık verecekseniz baştan Weight seçin.
Host vNIC’leri ve VLAN yapılandırması
Host işletim sistemi, SET switch’e bağlı sanal adaptörler (host vNIC) üzerinden ağa çıkar. Her trafik türü için ayrı vNIC açıp her birine kendi VLAN’ını verin. Aşağıdaki VLAN numaraları örnektir; kendi adres planınıza göre değiştirin.
# Host vNIC'leri
Add-VMNetworkAdapter -ManagementOS -SwitchName "SETswitch" -Name "Management"
Add-VMNetworkAdapter -ManagementOS -SwitchName "SETswitch" -Name "Cluster"
Add-VMNetworkAdapter -ManagementOS -SwitchName "SETswitch" -Name "LiveMigration"
# VLAN etiketleri (access modunda tek VLAN)
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Management" -Access -VlanId 10
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Cluster" -Access -VlanId 20
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "LiveMigration" -Access -VlanId 30
# Bant genişliği ağırlıkları (göreli değerler)
Set-VMNetworkAdapter -ManagementOS -Name "Management" -MinimumBandwidthWeight 10
Set-VMNetworkAdapter -ManagementOS -Name "Cluster" -MinimumBandwidthWeight 10
Set-VMNetworkAdapter -ManagementOS -Name "LiveMigration" -MinimumBandwidthWeight 30
# VM adaptörüne VLAN
Set-VMNetworkAdapterVlan -VMName "APP01" -Access -VlanId 110
Ağırlıklar bir üst sınır değildir; tıkanıklık anında garanti edilen göreli paydır. Hat boşken her vNIC tüm bant genişliğini kullanabilir. Atanmamış VM adaptörleri için switch’in DefaultFlowMinimumBandwidthWeight değeri kullanılır; VM trafiğine pay bırakmayı unutan tasarımlar yoğun canlı geçiş sırasında kullanıcı şikâyetiyle geri döner.
Yönetim vNIC’ine varsayılan ağ geçidi ve DNS verilir. Küme ve canlı geçiş vNIC’lerinde ağ geçidi tanımlanmaz, DNS kaydı kapatılır. Sahada en sık gördüğümüz hata tam budur: Her vNIC’e ağ geçidi yazılır, host birden fazla varsayılan rota edinir ve yönetim trafiği beklenmeyen arayüzden çıkar. Sonra “RDP ara sıra kopuyor” diye arıza kaydı açılır.
Set-DnsClient -InterfaceAlias "vEthernet (Cluster)" -RegisterThisConnectionsAddress $false
Set-DnsClient -InterfaceAlias "vEthernet (LiveMigration)" -RegisterThisConnectionsAddress $false
RDMA ve SMB Direct
RDMA, SMB trafiğinin işlemciyi neredeyse hiç kullanmadan doğrudan bellekler arasında taşınmasını sağlar (SMB Direct). Hyper-V ortamında SMB3 depolama, Storage Spaces Direct ve SMB tabanlı canlı geçiş bundan doğrudan faydalanır. SET, host vNIC’lerinde RDMA’yı destekleyen tek teaming yöntemidir.
İki yaygın RDMA türü vardır. iWARP TCP üzerinde çalışır, kayıpsız ağ yapılandırması zorunlu değildir. RoCEv2 UDP üzerinde çalışır ve uçtan uca DCB (PFC ve ETS) yapılandırması ister. RoCE’de switch ve host DCB ayarları birebir uyuşmalıdır; bir taraftaki yanlış öncelik numarası hata mesajı üretmez, yalnızca performansı sessizce düşürür. En zor bulunan arıza budur.
# SMB için iki RDMA'lı host vNIC
Add-VMNetworkAdapter -ManagementOS -SwitchName "SETswitch" -Name "SMB1"
Add-VMNetworkAdapter -ManagementOS -SwitchName "SETswitch" -Name "SMB2"
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "SMB1" -Access -VlanId 711
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "SMB2" -Access -VlanId 712
Enable-NetAdapterRdma -Name "vEthernet (SMB1)","vEthernet (SMB2)"
# Her SMB vNIC'ini ayrı fiziksel porta sabitle
Set-VMNetworkAdapterTeamMapping -ManagementOS -VMNetworkAdapterName "SMB1" -PhysicalNetAdapterName "SLOT2-P1"
Set-VMNetworkAdapterTeamMapping -ManagementOS -VMNetworkAdapterName "SMB2" -PhysicalNetAdapterName "SLOT2-P2"
# RoCEv2 için DCB örneği (öncelik 3 = SMB)
Install-WindowsFeature Data-Center-Bridging
New-NetQosPolicy "SMB" -NetDirectPortMatchCondition 445 -PriorityValue8021Action 3
Enable-NetQosFlowControl -Priority 3
Disable-NetQosFlowControl -Priority 0,1,2,4,5,6,7
New-NetQosTrafficClass "SMB" -Priority 3 -BandwidthPercentage 50 -Algorithm ETS
Set-NetQosDcbxSetting -Willing $false
Enable-NetAdapterQos -Name "SLOT2-P1","SLOT2-P2"
RDMA trafiği sanal switch’in yazılım yolunu atladığı için vSwitch ağırlıkları SMB Direct trafiğini sınırlamaz; bu trafiğin payını DCB trafik sınıfı belirler. Örnekteki ETS bant genişliği değeri bir yapılandırma örneğidir, ortamınızdaki trafik dağılımına göre seçin. Microsoft’un referans dokümanı RDMA and Switch Embedded Teaming sayfasıdır.
Fiziksel switch tarafı
Host tarafı ne kadar temiz olursa olsun, karşıdaki switch portu doğrulanmadıkça tasarım bitmiş sayılmaz. Kampüs tarafındaki VLAN planıyla tutarlılık için kurumsal ağda VLAN tasarımı yazısı tamamlayıcıdır.
| Gereksinim | Neden |
|---|---|
| Trunk port, izinli VLAN listesi açıkça tanımlı | Host vNIC ve VM VLAN’ları etiketli gelir |
| Port-channel / LACP yok | SET yalnızca switch independent çalışır |
Uç port davranışı (ör. Cisco’da spanning-tree portfast trunk) |
Link kalkışında STP gecikmesini önler |
| Uçtan uca aynı MTU | Jumbo frame tutarsızlığı canlı geçiş ve SMB hatalarına yol açar |
| RoCE için PFC ve ETS, hostla aynı öncelik | Kayıpsız RDMA trafiği |
Jumbo frame kullanılacaksa Windows tarafında adaptörün “Jumbo Packet” gelişmiş özelliği (çoğu sürücüde 9014 bayt) ile switch tarafındaki MTU birlikte ayarlanır. Jumbo’yu yalnız depolama ve canlı geçiş VLAN’larında açıp yönetim ve VM trafiğinde standart MTU’yu korumak sorun ayıklamayı kolaylaştırır. Yolun ortasındaki tek bir switch’te MTU eksikse büyük paketler düşer, küçük paketler geçer; ping çalışır ama canlı geçiş takılır. Uçtan uca test şarttır.
Kümeye eklemeden önce doğrulama
Her hostta aşağıdaki kontrolleri çalıştırın, çıktıyı değişiklik kaydına ekleyin:
# Team üyeleri ve algoritma
Get-VMSwitchTeam -Name "SETswitch" | Format-List Name, NetAdapterInterfaceDescription, TeamingMode, LoadBalancingAlgorithm
# Host vNIC'leri, VLAN'lar ve fiziksel eşleme
Get-VMNetworkAdapter -ManagementOS | Format-Table Name, SwitchName, MacAddress
Get-VMNetworkAdapterVlan -ManagementOS
Get-VMNetworkAdapterTeamMapping -ManagementOS
# RDMA ve SMB Multichannel
Get-NetAdapterRdma | Format-Table Name, Enabled
Get-SmbClientNetworkInterface
Get-SmbMultichannelConnection
# Jumbo frame uçtan uca test (9014 bayt adaptör ayarı için 8972 bayt yük)
ping 10.0.71.12 -f -l 8972
Kontrol listesi:
- Tüm SET üyeleri aynı model, sürücü ve firmware sürümünde.
- Her host vNIC’i doğru VLAN’da; varsayılan ağ geçidi yalnızca yönetim vNIC’inde.
- Bir fiziksel kablo çekildiğinde yönetim erişimi ve VM trafiği kesintisiz devam ediyor. Bu testi kâğıt üzerinde değil, kabloyu gerçekten çekerek yapın.
- RDMA kullanılıyorsa
Get-SmbMultichannelConnectionçıktısında RDMA yetenekli bağlantılar görünüyor. - Failover Cluster’da küme ağlarının rolleri (yalnız küme, küme ve istemci, hiçbiri) doğru atanmış; canlı geçişin hangi ağları kullanacağı belirlenmiş.
Canlı geçiş sırasındaki ağ kaynaklı hataların teşhisi için Hyper-V Live Migration hataları yazısına, küme tasarımının bütünü için failover cluster planlama kontrol listesine bakabilirsiniz. Mevcut host ağ yapılandırmanızın gözden geçirilmesi için sanallaştırma ve veri yönetimi hizmet sayfamız var.
Sık sorulan sorular
SET kullanırken fiziksel switch’te LACP yapılandırmalı mıyım?
Hayır. SET yalnızca switch independent modda çalışır; fiziksel portlar port-channel veya LACP grubuna alınmaz, her biri bağımsız trunk port olarak yapılandırılır. Bu sayede iki üyeyi iki ayrı fiziksel switch’e bağlayabilirsiniz.
SET’e farklı marka veya hızdaki NIC’leri ekleyebilir miyim?
Microsoft, SET üyelerinin aynı üretici, model, sürücü ve firmware sürümünde olmasını ister. Farklı kartlarla kurulan team destek dışı kalır ve RDMA gibi özelliklerde öngörülemeyen davranışlar görülebilir.
HyperVPort mu Dynamic mi seçmeliyim?
Windows Server 2019 ve sonrasında varsayılan HyperVPort çoğu ortam için doğru seçimdir; her VM tek porta bağlanır ve fiziksel switch’te MAC hareketi olmaz. Az sayıda VM’in giden trafiği tek portu dolduruyorsa Dynamic değerlendirilebilir.
iSCSI trafiğini de SET üzerinden taşımalı mıyım?
Teknik olarak host vNIC’leri üzerinden iSCSI mümkündür. Ancak iSCSI’nin yedekliliği MPIO ile sağlandığı için ayrı fiziksel portlarda, team dışında çalıştırılması yaygın ve önerilen yaklaşımdır. Depolama üreticisinin desteklenen yapılandırmasını da kontrol edin.
- Etiketler windows server
- Teknoloji
- Hyper-V, Switch Embedded Teaming, VLAN, RDMA, SMB Direct, DCB, PowerShell
- Konu
- Hyper-V host sanal ağ ve trafik ayrımı
- Seviye
- Orta–ileri
- Ön koşullar
- Windows Server 2016 veya üzeri Hyper-V hostu
- Temel VLAN ve trunk bilgisi
Sanallaştırma