Como posso configurar várias interfaces de toque para uma única máquina virtual KVM?

1

Estou tentando configurar uma VM usando o Linux KVM para uma implantação do F5 BIG-IP VE (usada em um laboratório) link ®_Virtual_Edition_Setup_Guide_for_Linux_KVM.pdf.

Esta VM requer três interfaces de rede diferentes (gerenciamento, conexão externa e conexão interna)

Eu tenho tentado configurar essas conexões em / etc / network / interfaces com a seguinte configuração:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
# This is an autoconfigured IPv6 interface
iface eth0 inet6 auto

auto br0
iface br0 inet dhcp
   pre-up ip tuntap add dev tap0 mode tap user root
   pre-up ip tuntap add dev tap1 mode tap user root
   pre-up ip tuntap add dev tap2 mode tap user root
   pre-up ip link set tap0 up
   pre-up ip link set tap1 up
   pre-up ip link set tap2 up
   bridge_ports all tap0 tap1 tap2
   bridge_stp off
   bridge_maxwait 0
   bridge_fd      0
   post-down ip link set tap0 down
   post-down ip link set tap1 down
   post-down ip link set tap2 down
   post-down ip tuntap del dev tap0 mode tap
   post-down ip tuntap del dev tap1 mode tap
   post-down ip tuntap del dev tap2 mode tap

Embora sempre que eu vá configurar a VM, apenas uma das interfaces de toque aparecerá como associada à ponte. Passei de 4 a 5 horas apenas tentando fazer essas interfaces funcionarem e não tive sorte. O que estou fazendo errado aqui?

    
por lacrosse1991 25.03.2015 / 03:01

2 respostas

1

Tudo o que você precisa configurar no host é a bridge. Quando você configura NICs virtuais e as anexa à VM, os taps serão criados automaticamente, quando a VM for iniciada.

Agora, sem ler o guia atual, parece que você precisa de três interfaces em três redes DIFERENTES. Se você conectar todas as NICs virtuais na mesma ponte (efetivamente, um comutador virtual), todas elas acabarão na mesma rede L2. É possível obter uma sub-rede simples, é claro, mas se você quiser usar VLANs, será necessário criar uma ponte separada em cada interface marcada de VLAN e conectar as NICs virtuais de acordo

    
por 26.03.2015 / 01:24
0

A resposta de Dyasny está correta, mas deixa de fora informações que podem ser úteis dependendo de como você deseja projetar a pilha de rede em seu hipervisor. As próprias pontes suportam marcação de VLAN com subinterfaces (como br0.10 para VLAN 10 na ponte 0). Dessa forma, você pode gerar subinterfaces a partir da ponte, em vez de vincular pontes a subinterfaces de dispositivos Ethernet individuais. Isso pode simplificar bastante sua pilha de rede se você operar com muitas VLANs em seu host a partir de uma estrutura comum.

Essas subinterfaces marcadas com VLAN podem ser usadas diretamente, usando-as como dispositivos host em uma determinada configuração de NIC de VM (como br0.10). Quando usada dessa maneira, a VM se comunicará nessa determinada VLAN com seu dispositivo de ethernet virtual como se fosse nativo. Nenhuma marcação funcionará dentro do convidado. Se você precisar de mais VLANs, terá que emular mais NICs, e essas NICs ainda podem ser subinterfaces da mesma ponte. Eles NÃO PODEM ser a raiz da bridge (br0) se você já usou subinterfaces.

Como alternativa, usando a interface bridge "raiz" (como br0) para conectar uma interface VM TAP, a própria VM pode acessar a VLAN nativa na ponte e também criar interfaces marcadas que funcionem a partir do convidado assim como alguém faria com a máquina host. Isso pode permitir que várias VLANs sejam acessadas no convidado com apenas uma NIC virtual, simplificando as implantações de máquinas que acessam várias VLANs. As VMs só poderão marcar VLANs que também foram marcadas na ponte do host. Dessa forma, a ponte de host atua como um banco de dados de VLAN e a ACL é semelhante a um switch típico.

E, alternativamente, para isso, o Open vSwitch pode fazer essa mesma atividade com uma interface melhor.

EXEMPLO DE CONFIGURAÇÃO:

Eu estou deixando de fora tudo abaixo da ponte, bem como a maioria das opções de bridge, porque elas não são muito úteis nesta discussão da camada 2. Aqui está um exemplo do uso de subinterfaces marcadas na ponte do host para fornecer um conjunto de VLAN ACL ao usar a própria ponte do host para anexar suas interfaces de toque.

$> cat /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none
NM_CONTROLLED=no
DELAY=0

-

$> cat /etc/sysconfig/network-scripts/ifcfg-br0.10

DEVICE=br0.10
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none
VLAN=yes

Uma vez que você tenha feito tudo isso (ou algo semelhante) use br0 como sua interface para conectar sua interface VM TAP, e veja que agora você pode criar uma interface marcada dentro da própria VM para a VLAN 10. Bridges podem processam VLANs e também atuam como troncos de VLAN.

    
por 11.03.2017 / 06:42