Condividi tramite


Ottimizzazione delle prestazioni del gateway HNV nelle reti definite dal software

In questo argomento vengono fornite specifiche hardware e consigli di configurazione per i server che eseguono Hyper-V e ospitano macchine virtuali gateway Windows Server, oltre ai parametri di configurazione per le macchine virtuali (VM) del gateway Windows Server. Per estrarre prestazioni ottimali dalle macchine virtuali del gateway Windows Server, è previsto che vengano seguite queste linee guida. Le sezioni seguenti contengono requisiti hardware e di configurazione quando si distribuisce Windows Server Gateway.

  1. Hyper-V raccomandazioni sull'hardware
  2. configurazione dell'host Hyper-V
  3. Configurazione della macchina virtuale del gateway Windows Server

Hyper-V raccomandazioni sull'hardware

Di seguito è riportata la configurazione hardware minima consigliata per ogni server che esegue Windows Server 2016 e Hyper-V.

Componente server Specification
Unità di elaborazione centrale (CPU) Nodi NUMA (Non-Uniform Memory Architecture): 2
Se nell'host sono presenti più macchine virtuali gateway Windows Server, per ottenere prestazioni ottimali, ogni macchina virtuale del gateway deve avere accesso completo a un nodo NUMA. E deve essere diverso dal nodo NUMA usato dall'adattatore fisico host.
Core per nodo NUMA 2
Hyper-Threading Disabled. Hyper-Threading non migliora le prestazioni di Windows Server Gateway.
Memoria ad accesso casuale (RAM) 48 GB
Schede di interfaccia di rete Due schede di interfaccia di rete da 10 GB. Le prestazioni del gateway dipenderanno dalla velocità di linea. Se la velocità di linea è inferiore a 10 Gbps, anche i numeri di velocità effettiva del tunnel del gateway diminuiranno dello stesso fattore.

Assicurarsi che il numero di processori virtuali assegnati a una macchina virtuale gateway Windows Server non superi il numero di processori nel nodo NUMA. Ad esempio, se un nodo NUMA ha 8 core, il numero di processori virtuali deve essere minore o uguale a 8. Per ottenere prestazioni ottimali, dovrebbe essere 8. Per individuare il numero di nodi NUMA e il numero di core per ogni nodo NUMA, eseguire lo script di Windows PowerShell seguente in ogni host Hyper-V:

$nodes = [object[]] $(gwmi –Namespace root\virtualization\v2 -Class MSVM_NumaNode)
$cores = ($nodes | Measure-Object NumberOfProcessorCores -sum).Sum
$lps = ($nodes | Measure-Object NumberOfLogicalProcessors -sum).Sum


Write-Host "Number of NUMA Nodes: ", $nodes.count
Write-Host ("Total Number of Cores: ", $cores)
Write-Host ("Total Number of Logical Processors: ", $lps)

Important

L'allocazione di processori virtuali tra nodi NUMA potrebbe avere un impatto negativo sulle prestazioni nel gateway Windows Server. L'esecuzione di più macchine virtuali, ognuna delle quali dispone di processori virtuali da un nodo NUMA, offre probabilmente prestazioni di aggregazione migliori rispetto a una singola macchina virtuale a cui vengono assegnati tutti i processori virtuali.

Una macchina virtuale gateway con otto processori virtuali e almeno 8 GB di RAM è consigliata quando si seleziona il numero di macchine virtuali gateway da installare in ogni host Hyper-V quando ogni nodo NUMA ha otto core. In questo caso, un nodo NUMA è dedicato al computer host.

configurazione dell'host Hyper-V

Di seguito è riportata la configurazione consigliata per ogni server che esegue Windows Server 2016 e Hyper-V e il cui carico di lavoro deve eseguire macchine virtuali gateway Windows Server. Queste istruzioni di configurazione includono l'uso di esempi di comandi di Windows PowerShell. Questi esempi contengono segnaposto per i valori effettivi che è necessario specificare quando si eseguono i comandi nell'ambiente. Ad esempio, i segnaposto per i nomi delle schede di rete sono "NIC1" e "NIC2". Quando si eseguono comandi che usano questi segnaposto, utilizzare i nomi effettivi delle schede di rete nei server anziché usare i segnaposto, altrimenti i comandi non funzioneranno.

Note

Per eseguire i comandi di Windows PowerShell seguenti, è necessario essere membri del gruppo Administrators.

Elemento di configurazione Configurazione di Windows PowerShell
Configurazione Incorporata del Commutatore Quando si crea un vswitch con più schede di rete, viene automaticamente abilitato il teaming integrato del vswitch per tali schede.
New-VMSwitch -Name TeamedvSwitch -NetAdapterName "NIC 1","NIC 2"
Il raggruppamento tradizionale tramite LBFO non è supportato con SDN in Windows Server 2016. Switch Embedded Teaming consente di usare lo stesso set di schede di interfaccia di rete per il traffico virtuale e il traffico RDMA. Questo non è supportato con la combinazione di NIC basata su LBFO.
Moderazione degli interrupt nelle schede di interfaccia di rete fisiche Usare le impostazioni predefinite. Per controllare la configurazione, è possibile usare il comando di Windows PowerShell seguente: Get-NetAdapterAdvancedProperty
Dimensioni dei buffer di ricezione nelle schede di interfaccia di rete fisiche È possibile verificare se le schede di interfaccia di rete fisiche supportano la configurazione di questo parametro eseguendo il comando Get-NetAdapterAdvancedProperty. Se non supportano questo parametro, l'output del comando non include la proprietà "Receive Buffers". Se le schede di interfaccia di rete supportano questo parametro, è possibile usare il comando di Windows PowerShell seguente per impostare le dimensioni dei buffer di ricezione:
Set-NetAdapterAdvancedProperty "NIC1" –DisplayName "Receive Buffers" –DisplayValue 3000
Dimensioni dei buffer di trasmissione nelle schede di interfaccia di rete fisiche È possibile verificare se le schede di interfaccia di rete fisiche supportano la configurazione di questo parametro eseguendo il comando Get-NetAdapterAdvancedProperty. Se le schede di interfaccia di rete non supportano questo parametro, l'output del comando non include la proprietà "Invia buffer". Se le schede di interfaccia di rete supportano questo parametro, è possibile usare il comando di Windows PowerShell seguente per impostare le dimensioni dei buffer di invio:
Set-NetAdapterAdvancedProperty "NIC1" –DisplayName "Transmit Buffers" –DisplayValue 3000
Receive Side Scaling (RSS) nelle schede di interfaccia di rete fisiche È possibile verificare se le schede di interfaccia di rete fisiche hanno abilitato RSS eseguendo il comando Get-NetAdapterRss di Windows PowerShell. È possibile usare i comandi di Windows PowerShell seguenti per abilitare e configurare RSS sulle schede di rete.
Enable-NetAdapterRss "NIC1","NIC2"
Set-NetAdapterRss "NIC1","NIC2" –NumberOfReceiveQueues 16 -MaxProcessors
NOTA: se VMMQ o VMQ è abilitato, non è necessario abilitare RSS negli adattatori di rete fisici. È possibile abilitarlo sugli adattatori di rete virtuali dell'host
VMMQ Per abilitare VMMQ per una macchina virtuale, eseguire il comando seguente:
Set-VmNetworkAdapter -VMName <gateway vm name>,-VrssEnabled $true -VmmqEnabled $true
NOTA: Non tutte le schede di rete sono compatibili con VMMQ. Attualmente, è supportato nella serie Chelsio T5 e T6, Mellanox CX-3 e CX-4 e QLogic 45xxx
Coda di macchine virtuali (VMQ) nel team NIC È possibile abilitare VMQ nel team SET usando il comando di Windows PowerShell seguente:
Enable-NetAdapterVmq
NOTA: questa opzione deve essere abilitata solo se il modulo di protezione hardware non supporta VMMQ. Se supportato, VMMQ deve essere abilitato per ottenere prestazioni migliori.

Note

VMQ e vRSS vengono visualizzati solo quando il carico nella macchina virtuale è elevato e la CPU viene usata al massimo. Solo allora almeno un core processore sarà max out. VMQ e vRSS saranno quindi utili per distribuire il carico di elaborazione tra più core. Questo non è applicabile per il traffico IPsec perché il traffico IPsec è limitato a un singolo core.

Configurazione della macchina virtuale del gateway Windows Server

In entrambi gli host Hyper-V è possibile configurare più macchine virtuali configurate come gateway con Windows Server Gateway. È possibile usare Virtual Switch Manager per creare un commutatore virtuale Hyper-V associato al team NIC nell'host Hyper-V. Si noti che per ottenere prestazioni ottimali, è consigliabile distribuire una singola macchina virtuale gateway in un host Hyper-V. Di seguito è riportata la configurazione consigliata per ogni macchina virtuale del gateway Windows Server.

Elemento di configurazione Configurazione di Windows PowerShell
Memory 8 GB
Numero di schede di rete virtuali 3 schede di interfaccia di rete (NIC) con i seguenti usi specifici: 1 per la gestione utilizzata dal sistema operativo di gestione, 1 esterno che fornisce l'accesso alle reti esterne, 1 interno che fornisce l'accesso solo alle reti interne.
RSS (Receive-Side Scaling) È possibile mantenere le impostazioni RSS predefinite per la scheda di interfaccia di rete di gestione. L'esempio di configurazione seguente è relativo a una macchina virtuale con 8 processori virtuali. Per le schede di interfaccia di rete esterne e interne, è possibile abilitare RSS con BaseProcNumber impostato su 0 e MaxRssProcessors impostato su 8 usando il comando di Windows PowerShell seguente:
Set-NetAdapterRss "Internal","External" –BaseProcNumber 0 –MaxProcessorNumber 8
Invia buffer laterale È possibile mantenere le impostazioni predefinite di Send Side Buffer per la scheda di interfaccia di rete di gestione. Per entrambe le schede di rete interne ed esterne, è possibile configurare il buffer di invio con 32 MB di RAM usando il seguente comando di Windows PowerShell:
Set-NetAdapterAdvancedProperty "Internal","External" –DisplayName "Send Buffer Size" –DisplayValue "32MB"
Buffer lato ricezione È possibile mantenere le impostazioni predefinite del buffer lato ricezione per la scheda di interfaccia di rete di gestione. Per entrambe le schede di interfaccia di rete interne ed esterne, è possibile configurare il buffer lato ricezione con 16 MB di RAM usando il comando di Windows PowerShell seguente:
Set-NetAdapterAdvancedProperty "Internal","External" –DisplayName "Receive Buffer Size" –DisplayValue "16MB"
Ottimizzazione progressiva È possibile mantenere le impostazioni predefinite di Ottimizzazione dell'Inoltro per la NIC di gestione. Per entrambe le schede di rete interne ed esterne, è possibile abilitare l'ottimizzazione dell'inoltro usando il seguente comando di Windows PowerShell:
Set-NetAdapterAdvancedProperty "Internal","External" –DisplayName "Forward Optimization" –DisplayValue "1"