Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Instalação de VMX aninhados

Uma máquina virtual aninhada é uma máquina virtual contida em outro VM. Leia este tópico para entender como lançar o vMX VM aninhado na KVM.

Visão geral do modelo de VM aninhado

O modelo aninhado de máquina virtual vMX (VM) tem o plano de controle virtual (VCP) funcionando como um VM dentro do plano de encaminhamento virtual (VFP) VM. O VFP VM executa o software de plano de encaminhamento trio virtual e o VCP VM executa o Junos OS. O VM VCP e o VFP VM exigem conectividade de Camada 2 para se comunicarem entre si. Uma ponte interna que é local para o servidor para cada instância vMX permite essa comunicação. O VM VCP e o VFP VM também exigem conectividade de Camada 2 para se comunicarem com a porta de gerenciamento Ethernet no servidor. Você deve especificar interfaces Ethernet virtuais com endereços IP exclusivos e endereços MAC para o VFP e o VCP para configurar uma ponte externa para uma instância vMX. O tráfego de gerenciamento de ethernet para todas as instâncias vMX entra no servidor através da porta de gerenciamento Ethernet.

O vMX VM aninhado oferece suporte a interfaces virtio e SR-IOV para portas de encaminhamento. A primeira interface é usada para gerenciamento e deve ser uma interface virtio conectada à ponte br-ext (ponte externa). Interfaces posteriores são interfaces WAN e podem ser interfaces virtio ou SR-IOV. Você deve criar as pontes para todas as interfaces virtio. Você deve ter pelo menos uma interface WAN para o encaminhamento.

VM aninhado com Interfaces Virtio

No modo virtio, as interfaces de servidor não devem ser configuradas com os VFs. Você pode remover ou redefinir as interfaces (eth1) usando o rmmod ixgbe comando e adicionar o driver IXGBE com interface padrão à interface do servidor usando o modprobe ixgbe comando.

A Figura 1 ilustra o modelo vMX VM aninhado com interfaces virtio.

Figura 1: VM aninhado com interfaces Nested VM with virtio Interfaces virtio

VM aninhado com interfaces SR-IOV

No modo SR-IOV, as interfaces vMX estão associadas às interfaces de servidor. Por exemplo, a ge-0/0/0 interface está associada a eth1 . eth1 é definida no .conf file- interface: ge-0/0/0 ,nic: eth1.

O VF é adicionado ao driver IXGBE da interface eth1 do servidor que está associado ao VF e pode ser verificado usando o ip link show eth1 comando enquanto está em execução no modo SR-IOV.

A Figura 2 ilustra o modelo vMX VM aninhado com interfaces SR-IOV.

Figura 2: VM aninhado com interfaces Nested VM with SR-IOV Interfaces SR-IOV

Para interfaces SR-IOV, você deve carregar o driver IXGBE modificado antes de lançar o vMX VM aninhado.

A maneira como o tráfego de rede passa da NIC física para a NIC virtual depende da técnica de virtualização que você configura.

Requisitos do sistema para modelo VM aninhado

O vMX pode ser configurado para ser executado em dois modos, dependendo do caso de uso:

  • Modo Lite — precisa de menos recursos em termos de CPU e memória para ser executado em menor largura de banda.

  • Modo de desempenho — precisa de recursos mais altos em termos de CPU e memória para ser executado em maior largura de banda.

    Nota:

    O modo de desempenho é o modo padrão.

Limitações vMX com o modelo VM aninhado

O vMX não oferece suporte aos seguintes recursos com o modelo VM aninhado:

  • Anexo ou distanciamento de interfaces enquanto uma instância vMX está em execução

  • Atualização da versão do Junos OS

Requisitos de hardware e software para VMS vMX aninhados

A Tabela 1 lista os requisitos de hardware.

Tabela 1: Requisitos mínimos de hardware para o vMX VM aninhado

Descrição

Valor

Configuração do sistema de amostra

Para virtio: qualquer processador x86 (Intel ou AMD) com recursos VT-d.

Para SR-IOV: placas PCI-Express baseadas em Intel 82599 (10 Gbps) e processadores Ivy Bridge.

Número de núcleos

Nota:

O modo de desempenho é o modo padrão e o valor mínimo é baseado em uma porta.

  • Para o modo lite: mínimo de 4 vCPUs

    Nota:

    Se você quiser usar o modo lite quando estiver em execução com mais de 4 vCPUs para o VFP, você deve configurar explicitamente o modo lite.

  • Para modo de desempenho: mínimo de 8 vCPUs

    Nota:

    Para calcular o número recomendado de vCPUs necessários pelo VFP para o modo de desempenho:

    (3 * number-of-forwarding-ports) + 4

Memória

  • Para o modo lite: mínimo de 3 GB

  • Para o modo de desempenho:

    • Mínimo de 5 GB

    • Recomendado de 16 GB

A Tabela 2 lista os requisitos de software.

Tabela 2: Requisitos de software para o Ubuntu

Descrição

Valor

Sistema Operacional

Ubuntu 14.04.1 LTS

Linux 3.19.0-80 genérico

Virtualização

QEMU-KVM 2.0.0+dfsg-2ubuntu1.11

Pacotes necessários

Nota:

Outros pacotes adicionais podem ser necessários para satisfazer todas as dependências.

bridge-utils qemu-kvm libvirt-bin virtinst

Nota:

libvirt 1.2.19

Instalação e lançamento do vMX VM aninhado na KVM

Para lançar o vMX VM aninhado na KVM, execute essas tarefas.

Preparando o host Ubuntu para instalar o VM VM aninhado

Para preparar o sistema de host do Ubuntu para a instalação do vMX:

  1. Atenda aos requisitos de software e SO descritos nos requisitos de hardware e software para VMS aninhados de vMX.
  2. Habilite o Intel VT-d em BIOS. (Recomendamos que você verifique o processo com o fornecedor porque diferentes sistemas têm métodos diferentes para habilitar o VT-d.)

    Consulte o procedimento para habilitar o VT-d disponível no site da Intel.

  3. Desabiibilize o KSM configurando KSM_ENABLED=0 em /etc/default/qemu-kvm.
  4. Desabilito a virtualização APIC editando o arquivo /etc/modprobe.d/qemu-system-x86.conf e adicionando enable_apicv=0 à linha que contém options kvm_intel.

    options kvm_intel nested=1 enable_apicv=0

  5. Reinicie o host para desativar a virtualização de KSM e APIC.
  6. Se você estiver usando SR-IOV, você deve realizar esta etapa.
    Nota:

    Você deve remover qualquer instalação anterior com uma ponte externa em /etc/rede/interfaces e voltar a usar a interface de gerenciamento original. Certifique-se de que o ifconfig -a comando não mostre pontes externas antes de prosseguir com a instalação.

    Para determinar se uma ponte externa é exibida, use o ifconfig comando para ver a interface de gerenciamento. Para confirmar que essa interface é usada para um grupo de ponte externa, use o brctl show comando para ver se a interface de gerenciamento está listada como uma ponte externa.

    Habilite a capacidade do SR-IOV ativando-se intel_iommu=on no /etc/default/grub directory.

    GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on"

    Aplicação da intel_iommu=on seqüência a qualquer texto existente para o GRUB_CMDLINE_LINUX_DEFAULT parâmetro.

  7. Para um desempenho ideal, recomendamos que você configure o tamanho de páginas enormes para ser 1G no host e certifique-se de que o nó NUMA para o VFP tenha pelo menos 16 páginas enormes de 1G. Para configurar o tamanho de páginas enormes, adicione a seguinte linha em /etc/padrão/grub:

    GRUB_CMDLINE_LINUX="default_hugepagesz=1G hugepagesz=1G hugepages=number-of-huge-pages"

    O número de páginas enormes deve ser pelo menos (16G * number-of-numa-sockets).

  8. Execute o update-grub comando seguido pelo reboot comando.
  9. Execute o modprobe kvm-intel comando antes de instalar o vMX.

Carregando o driver IXGBE modificado

Se você estiver usando interfaces SR-IOV, você deve carregar o driver IXGBE modificado antes de lançar o vMX VM aninhado. Para carregar o driver IXGBE modificado:

  1. Baixe o pacote de software vMX KVM e descomprima o pacote.
  2. Antes de compilar o driver, certifique-se de que o gcc e a make estejam instalados.
  3. Descarrege o driver IXGBE padrão, compile o driver da Juniper Networks modificado e carregue o driver IXGBE modificado.
  4. Verifique a versão do driver (3.19.1) nas interfaces SR-IOV.

Lançamento de uma instância vMX aninhada

Para lançar a instância vMX aninhada:

  1. Baixe o pacote de software aninhado vMX.
  2. Converta a vmdk imagem em qcow2 formato.
  3. Crie as pontes para as interfaces virtio.
    Nota:

    Quando você cria uma ponte usando o brctl addbr <bridge-name> comando, o servidor pode perder a conexão. Como alternativa, você pode desovar o vMX em modo não polido (seja no modo SRIOV ou virtio) e usar o e virsh destroy vfp vfp-name os virsh destroy vcp vcp-name comandos para criar e reter a ponte.

    Nota:

    Você deve criar as pontes para as interfaces virtio antes de lançar a instância vMX aninhada.

  4. Inicie a instância VMX aninhada com o virt-install comando. Por exemplo:

    Onde:

    • --vcpus— especifica o número de vCPUs.

      Para o modo lite, no mínimo 4 vCPUs. Para o modo de desempenho, mínimo de [(4 * number-of-forwarding-ports) + 4] vCPUs.

    • -r— especifica a quantidade de memória que o VM usa em MB. Mínimo de 16 GB.

    • --serial— especifica a porta serial para o VFP.

    • -w— especifica a interface virtio. A primeira interface é usada para gerenciamento e está conectada à ponte br-ext. Interfaces posteriores são interfaces WAN e estão conectadas às pontes do host.

    • --host-device— especifica a interface SR-IOV como O ID PCI da função virtual (VF0).

      Para determinar o ID de PCI:

      1. Use o ip link comando para obter os nomes de interface para os quais você cria VFs vinculados à instância vMX.

      2. Use o ethtool -i interface-name utilitário para determinar as informações de ônibus de PCI.

      3. Use o virsh nodedev-list comando para obter o VF PCI ID.

    • -n— Especifica o nome do vMX VM.

    • --disk— Especifica o caminho até o qcow2 arquivo (vmx-nested-release.qcow2).

Por exemplo, este comando lança uma instância vMX no modo de desempenho com duas interfaces virtio conectadas às pontes vnet0 e vnet1:

Por exemplo, este comando lança uma instância vMX no modo de desempenho com duas interfaces SR-IOV:

Conectando-se à porta do console VFP

Após o lançamento da instância vMX com o virt-install comando, você pode se conectar à porta de console do VFP do host com o telnet localhost serial-port comando, onde serial-port está a porta especificada por você como host com o -serial parâmetro.

Por exemplo:

Faça login com o nome de jnpr usuário e a senha jnpr123padrão. Torne-se raiz usando o sudo -i comando.

A interface br-ext tenta buscar um endereço IP usando DHCP. Use o ifconfig br-ext comando para exibir o endereço IP atribuído. Se o DHCP estiver indisponível ou se preferir um endereço IP estático, atribua um endereço IP a br-ext. Agora, você pode se conectar ao VFP usando o protocolo SSH e este endereço IP atribuído.

Conectando-se ao VCP

Quando o VM VCP é lançado, você pode se conectar à porta do console VCP na porta TCP 8601 do VFP VM usando este comando:

Na porta do console, você pode fazer login com nome de root usuário e sem senha.

No mínimo, você deve realizar essas tarefas iniciais de configuração do Junos OS após o login no VCP:

  1. Inicie o CLI.
  2. Insira o modo de configuração.
  3. Configure a senha raiz.
  4. Configure o endereço IP e o comprimento do prefixo para a interface Ethernet de gerenciamento do roteador.
  5. Comprometa a configuração.