Udostępnij za pośrednictwem


Konfigurowanie jakości usługi (QoS) dla karty sieciowej maszyny wirtualnej

Można skonfigurować jakość usług (QoS) dla sieci zdefiniowanej programowo (SDN) na karcie sieciowej maszyny wirtualnej (VM), aby ograniczyć przepustowość interfejsu wirtualnego i zapobiec konkurowaniu maszyny wirtualnej o dużym natężeniu ruchu z innym ruchem sieciowym maszyny wirtualnej. Możesz również skonfigurować funkcję QoS sieci SDN, aby zarezerwować określoną przepustowość dla maszyny wirtualnej, aby upewnić się, że maszyna wirtualna może wysyłać ruch niezależnie od innego ruchu w sieci. Można to zastosować do maszyn wirtualnych dołączonych do tradycyjnych sieci VLAN, a także maszyn wirtualnych dołączonych do sieci nakładek SDN.

Można również skonfigurować odciążanie QoS, aby wymusić zasady QoS na fizycznej karcie sieciowej zamiast na przełączniku wirtualnym, co prowadzi do obniżenia wykorzystania procesora i poprawy wymuszania. Odciążanie QoS to opcjonalna funkcja dostępna w certyfikowanych kartach sieciowych systemu Windows Server 2022, które uzyskały dodatkową kwalifikację Windows Server Software-Defined Data Center (SDDC) Premium (AQ). Aby uzyskać więcej informacji, zobacz Wybierz kartę sieciową.

Limity przepustowości funkcji QoS sieci SDN

Funkcja QoS sieci SDN zapewnia konfigurację maksymalnej dozwolonej przepustowości po stronie wysyłania lub odbierania dla maszyn wirtualnych. Jest to obsługiwane w przypadku maszyn wirtualnych połączonych z tradycyjną siecią sieci VLAN, a także maszynami wirtualnymi połączonymi z siecią wirtualną SDN. Po ustawieniu maszyna wirtualna nie będzie mogła wysyłać ani odbierać ruchu powyżej skonfigurowanych maksymalnych limitów. W przypadku maszyny wirtualnej można skonfigurować limit po stronie wysyłania, limit po stronie odbieranej lub oba te ustawienia.

Ustawienia, które można skonfigurować za pomocą funkcji QoS sieci SDN, to:

  • OutboundReservedValue — jeśli tryb outboundReservedMode jest "bezwzględny", wartość wskazuje przepustowość w Mbps gwarantowaną portu wirtualnego na potrzeby transmisji wychodzącej. Jeśli tryb outboundReservedMode ma wartość "waga", wartość wskazuje gwarantowaną część ważoną przepustowości.

  • OutboundMaximumMbps — wskazuje maksymalną dozwoloną przepustowość po stronie nadawczej w Mbps dla portu wirtualnego (ruch wychodzący).

  • InboundMaximumMbps — wskazuje maksymalną dozwoloną przepustowość po stronie odbieranej dla portu wirtualnego (ruchu przychodzącego) w Mb/s.

Zasady QoS sieci SDN

Po skonfigurowaniu kontrolera sieci dla sieci SDN można wdrożyć zasady QoS. Obecnie można to zrobić przy użyciu poleceń cmdlet programu PowerShell dla kontrolera sieci .

Dla wszystkich przykładowych skryptów używanych poniżej -ConnectionUri jest identyfikatorem URI REST kontrolera sieci. Na przykład: https://nc.contoso.com.

Krok 1. Konfigurowanie globalnych ustawień QoS

Uruchom następujące polecenie programu PowerShell na komputerze kontrolera sieci lub kliencie zarządzania kontrolera sieci. Umożliwi to skonfigurowanie zasad QoS za pomocą kontrolera sieci w ustawieniach globalnych:

$vswitchConfig=[Microsoft.Windows.NetworkController.VirtualSwitchManagerProperties]::new()
$qos=[Microsoft.Windows.NetworkController.VirtualSwitchQosSettings]::new()
$qos.EnableSoftwareReservations=$true
$vswitchConfig.QosSettings =$qos
Set-NetworkControllerVirtualSwitchConfiguration -ConnectionUri $uri -Properties $vswitchConfig

Krok 2. Konfigurowanie zasad QoS

Najpierw należy zidentyfikować interfejs sieciowy VM, w którym chcesz zastosować politykę:

$NwInterface=Get-NetworkControllerNetworkInterface -ConnectionUri $uri -ResourceId Vnet-VM2_Net_Adapter_0

Następnie skonfiguruj maksymalną przepływność ruchu przychodzącego i wychodzącego dozwoloną w interfejsie sieciowym:

$NwInterface.Properties.PortSettings.QosSettings= [Microsoft.Windows.NetworkController.VirtualNetworkInterfaceQosSettings]::new()
$NwInterface.Properties.PortSettings.QosSettings.InboundMaximumMbps ="1000"
New-NetworkControllerNetworkInterface -ConnectionUri $uri -ResourceId $NwInterface.ResourceId -Properties $NwInterface.Properties

Odciążanie QoS (opcjonalnie)

Możesz skonfigurować fizyczną kartę sieciową tak, aby korzystała z funkcji odciążania QoS. Jeśli adapter obsługuje odciążanie QoS, upewnij się, że jest ono włączone, korzystając z jednej z dwóch metod:

  • Network ATC (zalecane)
  • Ręczne włączanie przy użyciu właściwości adaptera

Korzystanie z usługi Network ATC

Odciążanie QoS jest automatycznie włączone na wszystkich adapterach z typem intencji jako Compute. Aby uzyskać więcej informacji, zobacz Upraszczanie sieci hostów za pomocą usługi Network ATC.

Notatka

Ta opcja jest dostępna tylko dla subskrybentów lokalnych platformy Azure.

Używanie ręcznego włączania

Ręczne uruchamianie jest wykonywane za pomocą wbudowanych cmdletów używanych do zarządzania właściwościami karty fizycznej.

Ważny

Należy upewnić się, że QosOffload jest włączona na każdej fizycznej karcie sieciowej w zespole na każdym hoście. Bez tego reguła QoS będzie wymuszana za pośrednictwem przełącznika wirtualnego i skutkuje niższą wydajnością.

Użyj następujących poleceń cmdlet, aby sprawdzić, czy karty obsługują QosOffload, a następnie zmodyfikuj właściwości adaptera:

Get-NetAdapterAdvancedProperty -Name <physical NIC Name> -RegistryKeyword *QosOffload
Enable QosOffload for your adapters:
Set-NetAdapterAdvancedProperty -Name  <physical NIC Name> -RegistryKeyword *QosOffload -RegistryValue 1

Konfigurowanie sprzętowego QoS

Funkcję QoS sprzętu można skonfigurować przy użyciu ustawień i zasad.

Krok 1. Konfigurowanie globalnych ustawień QoS

Wykonaj poniższe kroki na komputerze kontrolera sieci lub kliencie zarządzania kontrolera sieci. Umożliwi to ustawienie globalne konfigurowania zasad QoS za pomocą kontrolera sieci.

$vswitchConfig=[Microsoft.Windows.NetworkController.VirtualSwitchManagerProperties]::new()
$qos=[Microsoft.Windows.NetworkController.VirtualSwitchQosSettings]::new()
$qos.EnableHardwareLimits=$true
$vswitchConfig.QosSettings =$qos
Set-NetworkControllerVirtualSwitchConfiguration -ConnectionUri $uri -Properties $vswitchConfig

Krok 2. Konfigurowanie zasad QoS

Najpierw zidentyfikuj interfejs sieciowy maszyny wirtualnej, na którą nakłada się obciążenie, gdzie chcesz zastosować politykę.

$NwInterface=Get-NetworkControllerNetworkInterface -ConnectionUri $uri -ResourceId Vnet-VM2_Net_Adapter_0

Następnie skonfiguruj maksymalną przepływność ruchu wychodzącego dozwoloną w interfejsie sieciowym. Poniższy przykład tworzy regułę QoS ograniczającą ruch wychodzący z interfejsu maszyny wirtualnej do 1 Gb/s.

Ważny

Funkcja odciążenia QoS obsługuje tylko OutboundMaximumMbps. Nie można użyć OutboundReservedValue lub InboundMaximumMbps z funkcją Qos Offload.

$NwInterface.Properties.PortSettings.QosSettings= [Microsoft.Windows.NetworkController.VirtualNetworkInterfaceQosSettings]::new()
$NwInterface.Properties.PortSettings.QosSettings. EnableHardwareLimits=$true
$NwInterface.Properties.PortSettings.QosSettings.OutboundMaximumMbps ="1000"
New-NetworkControllerNetworkInterface -ConnectionUri $uri -ResourceId $NwInterface.ResourceId -Properties $NwInterface.Properties

Notatka

Podczas migracji na żywo istnieje możliwość, że maszyna wirtualna zostanie przeniesiona na hosta, który nie obsługuje odciążania QoS. W tym scenariuszu migracja na żywo powiedzie się, ale funkcja QoS wróci do funkcji QoS sieci SDN.