O SD-WAN Gateway funciona com um hipervisor padrão (KVM ou VMware ESXi).

Requisitos mínimos do servidor

Para executar o hipervisor:

  • CPU: para alcançar o desempenho máximo, é necessário um Intel XEON (mínimo de 10 cores para executar uma VM de gateway de 8 cores individual) com velocidade mínima de 2,0 GHz.
    • As funções de agendamento da rede ESXi vmxnet3 têm de ter 2 cores reservados por máquina virtual (VM) de gateway, independentemente do número de cores atribuídos ao gateway.
      • Exemplo: assuma que existe um servidor de 24 cores a executar ESXi+vmxnet3. Pode implementar gateways de 2 - (8 cores). Isto é, 2 gateways multiplicados por 8 cores requerem 16 cores reservados para aplicação de gateway, o que deixa 8 cores livres. Ao utilizar a fórmula acima, para suportar estes dois gateways executados a uma escala de desempenho máximo, o sistema ESXi/vmxnet3 requer 4 cores adicionais (dois cores para cada um dos dois gateways implementados). Representa um total de 20 cores necessários para executar 2 gateways num sistema de 24 cores.
        Nota: Ao utilizar o SR-IOV, a função de agendamento de rede é descarregada para o pNIC para se obter um desempenho mais elevado. No entanto, o hipervisor ainda tem de desempenhar outras funções de agendamento, como CPU, memória e gestão de atribuição NUMA. É necessário manter sempre dois cores livres para utilização do hipervisor.
  • A CPU deve suportar e ativar os seguintes conjuntos de instruções: AES-NI, SSSE3, SSE4, RDTSC, RDSEED, RDRAND, AVX/AVX2/AVX512.
  • Tem de estar disponível um mínimo de 4 GB de RAM para o sistema de servidor, além da memória atribuída às VMs PGW. Uma VM de gateway requer 16 GB de RAM ou 32 GB de RAM, se a autenticação baseada em certificado estiver ativada.
  • Volume de disco persistente magnético ou baseado em SSD mínimo de 150 GB (uma VM de gateway requer um volume de disco de 64 GB ou 96 GB, se a autenticação baseada em certificado estiver ativada).
  • Desempenho IOPS mínimo necessário: 200 IOPS.
  • Portas de interface de rede 1x10Ge no mínimo e recomenda-se 2 portas ao ativar a interface de handoff de parceiro do gateway (são suportadas NIC de 1Ge, mas limitarão o desempenho). As placas NIC físicas que suportam SR-IOV são os chips Intel 82599/82599ES e Intel X710/XL710. (Consulte o guia “Ativar o SR-IOV”).
    Nota: O SR-IOV não suporta uma união NIC. Para uplinks redundantes, utilize ESXi vSwitch.
  • O VMware SD-WAN Gateway é uma carga de trabalho intensiva de plano de dados que requer ciclos de CPU dedicados para garantir o melhor desempenho e fiabilidade. O cumprimento destas definições é necessário para garantir que a VM de gateway não está a subscrever excessivamente o hardware subjacente e a originar ações que possam desestabilizar o serviço de gateway (por exemplo, ultrapassagem de limites NUMA, memória e/ou subscrição excessiva de vCPU).
  • Certifique-se de que a VM de gateway de parceiro SD-WAN e os recursos utilizados para suportá-la cabem num nó NUMA.
  • Se possível, tente obter um alinhamento vertical completo entre interfaces de rede, memória, CPUs físicas e máquinas virtuais e um único nó NUMA.
  • Nota: Configure as definições da BIOS anfitriã da seguinte forma:

    - Hyper-threading – Desativado

    - Poupança de energia - desativada

    - CPU Turbo - ativada

    - AES-NI - ativado

    - Interleaving de nó NUMA – Desativado

Especificações de exemplo do servidor

Chipset NIC Hardware Especificação
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
  • Modelo CPU e Núcleos – Dual Socket Intel(R) Xeon(R) Gold 5218 CPU @ 2,30 GHz com 16 núcleos cada
  • Memória – 384 GB RAM
Intel X710/XL710 Supermicro SYS-6018U-TRTP+ https://www.supermicro.com/en/products/system/1U/6018/SYS-6018U-TRTP_.cfm
  • Modelo CPU e Núcleos – Dual Socket Intel(R) Xeon(R) CPU E5-2630 v4 @ 2,20 GHz com 10 núcleos cada
  • Memória – 256 GB RAM

Especificações de NIC necessárias para suporte de SR-IOV

Fabricante de hardware Versão de firmware Controlador anfitrião para Ubuntu 18.04 Controlador anfitrião para ESXi 6.7
Controlador Ethernet Intel Corporation XL710 de duas portas para 40 GbE QSFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Controlador Ethernet Intel Corporation X710 de duas portas para 10 GbE SFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Controlador Ethernet Intel Corporation X710 de quatro portas para 10 GbE SFP+ 7.0 2.10.19.30 1.8.6 e 1.10.9.0
Placa Dell rNDC X710/350 nvm 7.10 e FW 19.0.12 2.10.19.30 1.8.6 e 1.10.9.0

Versões de hipervisor suportadas

Hipervisor Versões suportadas
VMware
  • Intel 82599/82599ES - ESXi 6.7 U3 até ESXi 7.0. Para utilizar o SR-IOV, são necessárias as licenças do vCenter e do vSphere Enterprise Plus.
  • Intel X710/XL710 - ESXi 6.7 com VMware vSphere Web Client 6.7.0 até ESXi 7.0 com 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: A instalação do controlador anfitrião do Intel i40e versão 2.10.19.30 num servidor Ubuntu 18.04 LTS pode resultar em erros de compilação. Caso isto ocorra, o cliente é aconselhado a corrigir o controlador anfitrião.

Especificação da máquina virtual (VM) do SD-WAN Gateway

Para o VMware, o OVA já especifica a especificação de hardware virtual mínima. Para o KVM, é fornecido um ficheiro XML de exemplo. As especificações mínimas de hardware virtual são:
  • Se utilizar o VMware ESXi:
    • A sensibilidade à latência tem de estar definida como “Alta”.
      • Procedimento (Ajustar sensibilidade à latência)
        1. Navegue para a máquina virtual no vSphere Client.
          1. Para encontrar uma máquina virtual, selecione um data center, pasta, cluster, conjunto de recursos ou anfitrião.
          2. Clique no separador VMs.
        2. Clique com o botão direito na máquina virtual e clique em Editar definições (Edit Settings).
        3. Clique em Opções de VM (VM Options) e em Avançado (Advanced).
        4. Selecione uma definição no menu pendente Sensibilidade à latência (Latency Sensitivity).
        5. Clique em OK.
      • Reserva de CPU definida para 100%.
      • Partilhas de CPU definidas para Alto (high).
      • O limite da CPU tem de ser definido para Ilimitado (Unlimited).
      • 8 vCPUs (são suportadas 4 vCPUs, mas é expectável que o desempenho seja inferior).
        Importante: Todos os núcleos vCPU devem ser mapeados para o mesmo socket com o parâmetro Núcleos por socket (Cores per Socket) definido para 8, com 8 vCPUs, ou 4, quando são utilizadas 4 vCPUs.
        Nota: Para alcançar o desempenho máximo, o hyper-threading tem de estar desativado.
      • Procedimento de atribuição de recursos da CPU:
        1. Clique em Máquinas virtuais (Virtual Machines)  o inventário VMware Host Client.
        2. Clique com o botão direito numa máquina virtual da lista e selecione Editar definições (Edit settings) no menu pendente.
        3. No separador Hardware virtual (Virtual Hardware), expanda CPU e atribua capacidade de CPU para a máquina virtual.
        Opção Descrição
        Reserva Atribuição de CPU garantida para esta máquina virtual.
        Limite Limite superior da atribuição de CPU para esta máquina virtual. Selecione Ilimitado (Unlimited) para não especificar qualquer limite superior.
        Partilhas As partilhas de CPU para esta máquina virtual em relação ao total do elemento principal. As máquinas virtuais irmãs partilham recursos de acordo com os seus valores de partilha relativos de acordo com a reserva e limite. Selecione Baixo (Low), Normal ou Alto (High), para especificar valores de partilha, respetivamente, numa relação de 1:2:4. Selecione Personalizado (Custom) para atribuir a cada máquina virtual um número específico de partilhas que expressam uma carga proporcional.
    • A afinidade da CPU tem de ser ativada. Siga os passos abaixo.
      1. No vSphere Web Client, aceda ao separador Definições de VM (VM Settings).
      2. Selecione o separador Opções (Options) e clique em Avançado geral (Advanced General) >Parâmetros de configuração (Configuration Parameters).
      3. Adicione entradas para numa.nodeAffinity=0, 1, ..., em que 0 e 1 são os números de socket do processador.
    • A vNIC deve ser do tipo “vmxnet3” (ou SR-IOV; consulte a secção SR-IOV para obter os detalhes do suporte).
    • Mínimo de qualquer um dos seguintes vNICs:
      • O primeiro vNIC é a interface pública (exterior), que deve ser uma interface não identificada.
      • O segundo vNIC é opcional e funciona como a interface privada (interior) que pode suportar a identificação VLAN dot1q e Q-in-Q. Esta interface normalmente está virada para o router PE ou o switch L3.
    • vNIC opcional (se for necessária uma interface de gestão/OAM separada).
    • A reserva de memória é definida para “máximo” (maximum).
      • 16 GB de memória (32 GB de RAM são necessários quando ativa a autenticação baseada em certificado).
    • 64 GB de disco virtual (96 GB de disco são necessários quando ativa a autenticação baseada em certificado).
      Nota: O VMware utiliza as definições acima configuradas para obter números de escala e desempenho. As definições que não estão alinhadas com os requisitos acima não são testadas pelo VMware e podem produzir resultados imprevisíveis de desempenho e escala.
  • Se utilizar o KVM:
    • A vNIC tem de ser do tipo “Linux Bridge”. (O SR-IOV é necessário para um desempenho elevado; consulte a secção SR-IOV para obter os detalhes do suporte).
    • 8 vCPUs (são suportadas 4 vCPUs, mas é expectável que o desempenho seja inferior).
      Importante: Todos os núcleos vCPU devem ser mapeados para o mesmo socket com o parâmetro Núcleos por socket (Cores per Socket) definido para 8, com 8 vCPUs, ou 4, quando são utilizadas 4 vCPUs.
      Nota: Para alcançar o desempenho máximo, o hyper-threading tem de estar desativado.
    • 16 GB de memória (32 GB de RAM são necessários quando ativa a autenticação baseada em certificado).
    • Mínimo de qualquer um dos seguintes vNICs:
      • O primeiro vNIC é a interface pública (exterior), que deve ser uma interface não identificada.
      • O segundo vNIC é opcional e funciona como a interface privada (interior) que pode suportar a identificação VLAN dot1q e Q-in-Q. Esta interface normalmente está virada para o router PE ou o switch L3.
    • vNIC opcional (se for necessária uma interface de gestão/OAM separada).
    • 64 GB de disco virtual (96 GB de disco são necessários quando ativa a autenticação baseada em certificado).

Requisitos de firewall/NAT

Nota: Estes requisitos aplicar-se-ão se o SD-WAN Gateway for implementado atrás de uma firewall e/ou um dispositivo NAT.
  • A firewall tem de permitir o tráfego de saída do SD-WAN Gateway para TCP/443 (para comunicação com o SD-WAN Orchestrator).
  • A firewall tem de permitir o tráfego de entrada da Internet para UDP/2426 (VCMP), UDP/4500 e UDP/500. Se o NAT não for utilizado, a firewall também tetá de permitir IP/50 (ESP).
  • Se o NAT for utilizado, as portas acima devetão ser traduzidas para um endereço IP alcançável externamente. São suportadas ambas as traduções 1:1 NAT e porta.

Repositório de Git com modelos e amostras

O repositório de Git que se segue contém modelos e amostras.

git clone https://bitbucket.org/velocloud/deployment.git
Nota: Para obter mais informações, consulte a Ficha técnica de dimensão e desempenho do VMware SD-WAN publicada no portal Partner Connect. Para aceder à ficha técnica, tem de iniciar sessão no portal Partner Connect utilizando as credenciais de parceiro (nome de utilizador e palavra-passe).

Utilização do DPDK no SD-WAN Gateways

Para melhorar o desempenho do débito de pacotes, os SD-WAN Gateways aproveitam a tecnologia do Data Plane Development Kit (DPDK). O DPDK é um conjunto de bibliotecas de plano de dados e de controladores fornecido pela Intel para descarregar o processamento de pacotes TCP a partir do kernel do sistema operativo para processos em execução no espaço do utilizador, o que resulta num débito superior de pacotes. Para obter mais detalhes, consulte https://www.dpdk.org/.

Em Gateways alojados no VMware e Gateways de parceiro, o DPDK é utilizado em interfaces que gerem o tráfego do plano de dados e não é usado em interfaces reservadas para o tráfego do plano de gestão. Por exemplo, num Gateway alojado no VMware típico, eth0 é utilizado para o tráfego do plano de gestão e o DPDK não é utilizado. Em contrapartida, eth1, eth2 e eth3 são utilizados para o tráfego de plano de dados e usam DPDK.