SD-WAN Gateway viene eseguito in un hypervisor standard (KVM o VMware ESXi).

Requisiti minimi del server

Per eseguire l'hypervisor:

  • CPU: Intel XEON (almeno 10 core per l'esecuzione di una singola macchina virtuale gateway a 8 core) con velocità di clock minima di 2,0 GHz necessario per ottenere prestazioni ottimali.
    • Le funzionalità di pianificazione della rete vmxnet3 di ESXi devono avere 2 core riservati per ogni macchina virtuale gateway, indipendentemente dal numero di core assegnati al gateway.
      • Si supponga ad esempio che sia presente un server a 24 core che esegue ESXi+vmxnet3. È possibile distribuire 2 gateway da 8 core. 2 gateway moltiplicati per 8 core richiedono 16 core riservati per l'applicazione del gateway e lasciano liberi 8 core. Utilizzando la formula precedente, per supportare questi due gateway in esecuzione al massimo delle prestazioni, il sistema ESXi/vmxnet3 richiede 4 core aggiuntivi (due core per ciascuno dei due gateway distribuiti). Ciò significa che sono necessari 20 core in totale per eseguire 2 gateway in un sistema a 24 core.
        Nota: Quando si utilizza SR-IOV, viene eseguito l'offload della funzionalità di pianificazione della rete nella pNIC per ottenere prestazioni più elevate. Tuttavia, l'hypervisor deve comunque eseguire altre funzionalità di pianificazione come la gestione di CPU, memoria e allocazione NUMA. È necessario mantenere sempre due core liberi per l'utilizzo dell'hypervisor.
  • La CPU deve supportare e abilitare i seguenti set di istruzioni: AES-NI, SSSE3, SSE4, RDTSC, RDSEED, RDRAND, AVX/AVX2/AVX512.
  • Per il sistema server devono essere disponibili almeno 4 GB di RAM liberi oltre alla memoria assegnata alle macchine virtuali PGW. Una macchina virtuale gateway richiede 16 GB di RAM o 32 GB di RAM se è abilitata l'autenticazione basata su certificato.
  • Devono essere disponibili almeno 150 GB di volume del disco persistente magnetico o basato su SSD (una macchina virtuale gateway richiede 64 GB o 96 GB di volume se è abilitata l'autenticazione basata su certificato).
  • Prestazioni minime di IOPS richieste: 200 IOPS.
  • Sono necessarie porte dell'interfaccia di rete da almeno 1x10Ge e 2 porte sono preferibili quando si abilita l'interfaccia di handoff del partner gateway (le NIC 1Ge sono supportate, ma causano colli di bottiglia delle prestazioni). Le schede NIC fisiche che supportano SR-IOV sono chipset Intel 82599/82599ES e Intel X710/XL710. (Vedere la guida "Abilitazione di SR-IOV").
    Nota: SR-IOV non supporta il binding della NIC. Per gli uplink ridondanti, utilizzare ESXi vSwitch.
  • VMware SD-WAN Gateway è un carico di lavoro intensivo del piano dati che richiede cicli di CPU dedicati per garantire prestazioni e affidabilità ottimali. È necessario soddisfare queste impostazioni definite per garantire che la macchina virtuale gateway non esegua l'oversubscription dell'hardware sottostante causando azioni che possono destabilizzare il servizio gateway (ad esempio, superamento del limite NUMA e oversubscription della memoria e/o di vCPU).
  • Assicurarsi che la macchina virtuale del gateway partner SD-WAN e le risorse utilizzate per supportarla siano incluse in un nodo NUMA.
  • Quando possibile, cercare di ottenere un allineamento verticale completo tra le interfacce di rete, la memoria, le CPU fisiche e le macchine virtuali in un singolo nodo NUMA.
  • Nota: Configurare le impostazioni del BIOS dell'host nel modo seguente:

    - Hyperthreading - Disattivato

    - Risparmio di energia - Disattivato

    - CPU Turbo - Abilitata

    - AES-NI - Abilitato

    - Interleaving del nodo NUMA - Disattivato

Specifiche del server di esempio

Chipset NIC Hardware Specifica
Intel 82599/82599ES HP DL380G9 http://www.hp.com/hpinfo/newsroom/press_kits/2014/ComputeEra/HP_ProLiantDL380_DataSheet.pdf
Intel X710/XL710 Dell PowerEdge R640 https://www.dell.com/en-us/work/shop/povw/poweredge-r640
  • Modello di CPU e Core - Dual Socket Intel(R) Xeon(R) Gold 5218 CPU @ 2,30 GHz con 16 core ciascuno
  • Memoria - 384 GB di RAM
Intel X710/XL710 Supermicro SYS-6018U-TRTP+ https://www.supermicro.com/en/products/system/1U/6018/SYS-6018U-TRTP_.cfm
  • Modello di CPU e Core - Dual Socket Intel(R) Xeon(R) CPU E5-2630 v4 @ 2,20 GHz con 10 core ciascuno
  • Memoria - 256 GB di RAM

Specifiche della NIC richiesta per il supporto di SR-IOV

Produttore hardware Versione firmware Driver host per Ubuntu 18.04 Driver host per ESXi 6.7
Controller Ethernet Intel Corporation Dual Port XL710 per 40GbE QSFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Controller Ethernet Intel Corporation Dual Port X710 per 10GbE SFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Controller Ethernet Intel Corporation Quad Port X710 per 10GbE SFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Scheda Dell rNDC X710/350 nvm 7.10 e FW 19.0.12 2.10.19.30 1.8.6 e 1.10.9.0

Versioni dell'hypervisor supportate

Hypervisor Versioni supportate
VMware
  • Intel 82599/82599ES - ESXi 6.7 U3 fino a ESXi 7.0. Per utilizzare SR-IOV, sono necessarie le licenze Enterprise Plus di vCenter e vSphere.
  • Intel X710/XL710 - ESXi 6.7 con VMware vSphere Web Client 6.7.0 fino a ESXi 7.0 con VMware vSphere Web Client 7.0.
KVM
  • Intel 82599/82599ES - Ubuntu 16.04 LTS e Ubuntu 18.04 LTS
  • Intel X710/XL710 - Ubuntu 16.04 LTS e Ubuntu 18.04 LTS
Importante: L'installazione del driver host Intel i40e versione 2.10.19.30 su un server Ubuntu 18.04 LTS può causare errori di compilazione. In questo caso, si consiglia al cliente di applicare una patch al driver dell'host.

Specifica della macchina virtuale di SD-WAN Gateway

Per VMware, le specifiche minime dell'hardware virtuale sono già indicate nel file OVA. Per KVM, viene fornito un file XML di esempio. Le specifiche minime dell'hardware virtuale sono:
  • Se si utilizza VMware ESXi:
    • La sensibilità della latenza deve essere impostata su "Alta".
      • Procedura (regolazione della sensibilità della latenza)
        1. Passare alla macchina virtuale in vSphere Client.
          1. Per trovare una macchina virtuale, selezionare un data center, una cartella, un cluster, un pool di risorse o un host.
          2. Fare clic sulla scheda Macchine virtuali (VMs).
        2. Fare clic con il pulsante destro del mouse sulla macchina virtuale e scegliere Modifica impostazioni (Edit Settings).
        3. Fare clic su Opzioni macchina virtuale (VM Options) e quindi su Avanzate (Advanced).
        4. Selezionare un'impostazione nel menu a discesa Sensibilità latenza (Latency Sensitivity).
        5. Fare clic su OK.
      • La prenotazione della CPU deve essere impostata su 100%.
      • La condivisione della CPU deve essere impostata su Alta (High).
      • Il limite della CPU deve essere impostato su Illimitato (Unlimited).
      • 8 vCPU (sono supportate anche 4 vCPU ma le prestazioni risultano inferiori).
        Importante: Tutti i core delle vCPU devono essere mappati allo stesso socket con il parametro Core per socket (Cores per Socket) impostato su 8 con 8 vCPU o su 4 se vengono utilizzate 4 vCPU.
        Nota: Per ottenere prestazioni ottimali, è necessario disattivare l'hyperthreading.
      • Procedura per l'allocazione delle risorse della CPU:
        1. Nell'inventario di VMware Host Client fare clic su Macchine virtuali (Virtual Machines).
        2. Fare clic con il pulsante destro del mouse su una macchina virtuale nell'elenco e scegliere Modifica impostazioni (Edit Settings) dal menu popup.
        3. Nella scheda Hardware virtuale (Virtual Hardware), espandere CPU e allocare la capacità della CPU per la macchina virtuale.
        Opzione Descrizione
        Prenotazione (Reservation) Allocazione della CPU garantita per questa macchina virtuale.
        Limite Limite superiore per l'allocazione della CPU di questa macchina virtuale. Selezionare Illimitato (Unlimited) per non specificare alcun limite superiore.
        Condivisioni (Shares) Condivisioni della CPU per questa macchina virtuale in relazione al totale dell'elemento principale. Le macchine virtuali di pari livello condividono le risorse in base ai loro valori di condivisione relativi delimitati dalla prenotazione e dal limite. Selezionare Basso (Low), Normale (Normal) o Alto (High), che specificano valori di condivisione in un rapporto 1:2:4 rispettivamente. Selezionare Personalizzato (Custom) per assegnare a ogni macchina virtuale un numero specifico di condivisioni che esprimono un peso proporzionale.
    • L'affinità CPU deve essere abilitata. Eseguire i passaggi seguenti.
      1. In vSphere Web Client passare alla scheda Impostazioni macchina virtuale (VM Settings).
      2. Scegliere la scheda Opzioni (Options) e fare clic su Generali avanzate (Advanced General)>Parametri di configurazione (Configuration Parameters).
      3. Aggiungere voci per numa.nodeAffinity=0, 1, ..., dove 0 e 1 sono i numeri di socket del processore.
    • La vNIC deve essere di tipo "vmxnet3" (o SR-IOV; vedere la sezione relativa a SR-IOV per informazioni sul tipo supportato).
    • Almeno una delle vNIC seguenti:
      • La prima vNIC è l'interfaccia pubblica (esterna), che deve essere un'interfaccia senza contrassegno.
      • La seconda vNIC è facoltativa e funge da interfaccia privata (interna) in grado di supportare il contrassegno VLAN dot1q e Q-in-Q. Questa interfaccia è in genere rivolta al router PE o allo switch L3.
    • vNIC facoltativa (se è necessaria un'interfaccia di gestione/OAM separata).
    • La prenotazione della memoria è impostata su "massima".
      • 16 GB di memoria (sono necessari 32 GB di RAM quando si abilita l'autenticazione basata su certificato).
    • 64 GB di disco virtuale (è necessario un disco da 96 GB quando si abilita l'autenticazione basata su certificato).
      Nota: VMware utilizza le impostazioni definite sopra per ottenere i numeri relativi alla scalabilità e alle prestazioni. Le impostazioni che non sono allineate ai requisiti precedenti non vengono testate da VMware e possono generare risultati imprevedibili.
  • Se si utilizza KVM:
    • La vNIC deve essere di tipo "Bridge Linux". (SR-IOV è necessario per ottenere prestazioni elevate; vedere la sezione relativa a SR-IOV per informazioni sul tipo supportato).
    • 8 vCPU (sono supportate anche 4 vCPU ma le prestazioni risultano inferiori).
      Importante: Tutti i core delle vCPU devono essere mappati allo stesso socket con il parametro Core per socket (Cores per Socket) impostato su 8 con 8 vCPU o su 4 se vengono utilizzate 4 vCPU.
      Nota: Per ottenere prestazioni ottimali, è necessario disattivare l'hyperthreading.
    • 16 GB di memoria (sono necessari 32 GB di RAM quando si abilita l'autenticazione basata su certificato)
    • Almeno una delle vNIC seguenti:
      • La prima vNIC è l'interfaccia pubblica (esterna), che deve essere un'interfaccia senza contrassegno.
      • La seconda vNIC è facoltativa e funge da interfaccia privata (interna) in grado di supportare il contrassegno VLAN dot1q e Q-in-Q. Questa interfaccia è in genere rivolta al router PE o allo switch L3.
    • vNIC facoltativa (se è necessaria un'interfaccia di gestione/OAM separata).
    • 64 GB di disco virtuale (è necessario un disco da 96 GB quando si abilita l'autenticazione basata su certificato).

Requisiti del firewall o del NAT

Nota: Questi requisiti si applicano se SD-WAN Gateway viene distribuito dietro un firewall e/o un dispositivo NAT.
  • Il firewall deve consentire il traffico in uscita da SD-WAN Gateway a TCP/443 (per la comunicazione con SASE Orchestrator).
  • Il firewall deve consentire il traffico in entrata da Internet a UDP/2426 (VCMP), UDP/4500 e UDP/500. Se non si utilizza il NAT, il firewall deve consentire anche IP/50 (ESP).
  • Se si utilizza il NAT, le porte indicate sopra devono essere convertite in un indirizzo IP raggiungibile esternamente. Entrambe le conversioni di porta e NAT 1:1 sono supportate.

Repository Git con modelli ed esempi

Il repository Git seguente contiene modelli ed esempi.

git clone https://gitlab.eng.vmware.com/velocloud/velocloud.src.git
Nota: Per ulteriori informazioni, fare riferimento alla scheda Scheda dati sulle prestazioni e scalabilità di VMware SD-WAN pubblicata sul portale Partner Connect. Per accedere alla scheda dati, è necessario accedere al portale di Partner Connect utilizzando le credenziali del partner (nome utente e password).

Utilizzo di DPDK in SD-WAN Gateway

Per migliorare le prestazioni della velocità effettiva dei pacchetti, SD-WAN Gateway sfruttano la tecnologia Data Plane Development Kit (DPDK). DPDK è un set di librerie e driver dei piani dati fornito da Intel per l'offload dell'elaborazione dei pacchetti TCP dal kernel del sistema operativo ai processi in esecuzione nello spazio utente e porta a una maggiore velocità effettiva dei pacchetti. Per ulteriori dettagli, vedere https://www.dpdk.org/.

Sui gateway ospitati da VMware e sui gateway partner, DPDK viene utilizzato sulle interfacce che gestiscono il traffico del piano dati e non viene utilizzato sulle interfacce riservate al traffico del piano di gestione. Ad esempio, in un tipico gateway ospitato da VMware, eth0 è utilizzato per il traffico del piano di gestione e non utilizza DPDK. Al contrario, eth1, eth2 e eth3 vengono utilizzati per il traffico del piano dati e utilizzano DPDK.