VM 네트워크 어댑터에 대한 QoS(서비스 품질) 구성

적용 대상: Windows Server 2022, Windows Server 2019, Windows Server 2016, Azure Stack HCI, 버전 21H2 및 20H2

트래픽이 많은 VM이 다른 VM 네트워크 트래픽과 경합하지 않도록 가상 인터페이스의 대역폭을 제한하도록 VM(가상 머신) 네트워크 어댑터에 대한 SDN(소프트웨어 정의 네트워킹) QoS(서비스 품질)를 구성할 수 있습니다. 네트워크의 다른 트래픽에 관계없이 VM이 트래픽을 보낼 수 있도록 VM에 대해 특정 양의 대역폭을 예약하도록 SDN QoS를 구성할 수도 있습니다. 이는 기존 VLAN 네트워크에 연결된 VM뿐만 아니라 SDN 오버레이 네트워크에 연결된 VM에도 적용할 수 있습니다.

또한 가상 스위치가 아닌 실제 네트워크 어댑터에서 QoS 규칙을 적용하도록 QoS 오프로드를 구성하여 CPU 사용률이 낮아지고 적용이 향상될 수 있습니다. QoS 오프로드는 Windows Server SDDC(소프트웨어 정의 데이터 센터) 프리미엄 AQ(추가 자격)를 달성한 Windows Server 2022 인증 NIC에 있는 선택적 기능입니다. 자세한 내용은 네트워크 어댑터 선택을 참조하세요.

SDN QoS 대역폭 제한

SDN QoS는 VM에 허용되는 최대 송신 쪽 또는 수신측 대역폭의 구성을 제공합니다. 이는 기존 VLAN 네트워크에 연결된 VM뿐만 아니라 SDN 가상 네트워크에 연결된 VM에도 지원됩니다. 일단 설정되면 VM은 구성된 최대 제한을 초과하는 트래픽을 보내거나 받을 수 없습니다. VM의 경우 송신 쪽 제한, 수신측 제한 또는 둘 다를 구성하도록 선택할 수 있습니다.

SDN QoS를 통해 구성할 수 있는 설정은 다음과 같습니다.

  • OutboundReservedValue - 모드가 "절대"인 경우 outboundReservedMode 값은 전송(송신)을 위해 가상 포트에 보장되는 대역폭(Mbps)을 나타냅니다. 모드가 "가중치"인 경우 outboundReservedMode 값은 보장된 대역폭의 가중치 부분을 나타냅니다.

  • OutboundMaximumMbps - 가상 포트(송신)에 대해 허용되는 최대 송신 쪽 대역폭(Mbps)을 나타냅니다.

  • InboundMaximumMbps - Mbps의 가상 포트(수신)에 허용되는 최대 수신 쪽 대역폭을 나타냅니다.

SDN QoS 정책

SDN용 네트워크 컨트롤러가 설정되면 계속 진행하여 QoS 정책을 배포할 수 있습니다. 현재 네트워크 컨트롤러 PowerShell cmdlet을 사용하여 이 작업을 수행할 수 있습니다.

아래에 -ConnectionUri 사용되는 모든 예제 스크립트의 경우 네트워크 컨트롤러의 REST URI입니다. 예: https://nc.contoso.com

1단계: 전역 QoS 설정 구성

네트워크 컨트롤러 컴퓨터 또는 네트워크 컨트롤러의 관리 클라이언트에서 다음 PowerShell 명령을 실행합니다. 이렇게 하면 전역 설정에서 네트워크 컨트롤러를 통해 QoS 정책을 구성할 수 있습니다.

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

2단계: QoS 정책 구성

먼저 정책을 적용하려는 워크로드 VM 네트워크 인터페이스를 식별해야 합니다.

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

다음으로, 네트워크 인터페이스에서 허용되는 인바운드 및 아웃바운드 최대 처리량을 구성합니다.

$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

QoS 오프로드(선택 사항)

QoS 오프로드를 사용하도록 물리적 NIC를 구성할 수 있습니다. 어댑터가 QoS 오프로드를 지원하는 경우 다음 두 가지 방법 중 하나를 사용하여 사용하도록 설정되어 있는지 확인합니다.

  • 네트워크 ATC(권장)
  • 어댑터 속성을 사용한 수동 사용

네트워크 ATC 사용

QoS 오프로드는 의도 형식의 모든 어댑터에서 자동으로 사용하도록 설정됩니다 Compute . 자세한 내용은 네트워크 ATC를 사용하여 호스트 네트워킹 간소화를 참조 하세요.

참고 항목

이 옵션은 Azure Stack HCI 구독자만 사용할 수 있습니다.

수동 사용 설정 사용

수동 사용은 물리적 어댑터 속성을 관리하는 데 사용되는 기본 제공 cmdlet을 통해 수행됩니다.

Important

모든 호스트에서 팀의 모든 물리적 NIC에서 사용하도록 설정되어 있는지 확인해야 QosOffload 합니다. 이렇게 하지 않으면 QoS 규칙이 가상 스위치를 통해 적용되고 효율성이 낮아질 수 있습니다.

다음 cmdlet을 사용하여 어댑터가 지원하는 QosOffload 지 검사 어댑터 속성을 수정합니다.

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

하드웨어 QoS 구성

설정 및 정책을 사용하여 하드웨어 QoS를 구성할 수 있습니다.

1단계 - 전역 QoS 설정 구성

네트워크 컨트롤러 컴퓨터 또는 네트워크 컨트롤러의 관리 클라이언트에서 아래 단계를 수행합니다. 이렇게 하면 전역 설정이 네트워크 컨트롤러를 통해 QoS 정책을 구성할 수 있습니다.

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

2단계 - QoS 정책 구성

먼저 정책을 적용할 워크로드 VM 네트워크 인터페이스를 식별합니다.

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

다음으로, 네트워크 인터페이스에서 허용되는 아웃바운드 최대 처리량을 구성합니다. 다음 예제에서는 VM 인터페이스의 아웃바운드 트래픽을 1Gbps로 제한하는 QoS 규칙을 만듭니다.

Important

Qos 오프로드는 OutboundMaximumMbps만 지원합니다. Qos 오프로드와 함께 OutboundReservedValue 또는 InboundMaximumMbps를 사용할 수 없습니다.

$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

참고 항목

실시간 마이그레이션 중에 VM이 QoS 오프로드를 지원하지 않는 호스트로 이동할 수 있습니다. 이 시나리오에서는 실시간 마이그레이션이 성공하지만 QoS는 SDN QoS로 대체됩니다.