Debian: Devo adicionar interface vlan em bridge para o KVM?

3

Estou configurando uma caixa do Debian Squeeze como um host KVM. Eu quero adicionar várias interfaces para cada convidado KVM, então eu quero que eles estejam em VLANs diferentes.

Depois de ler sobre isso, acredito que o melhor método é adicionar várias interfaces VLAN (sub) lógicas às NICs físicas e, em seguida, criar um adaptador de ponte para cada interace de VLAN e atribuir cada ponte como uma NIC para convidados KVM. Isso faz sentido ou loucura?

Eu tenho que usar interfaces em ponte com o KVM assim? Não posso simplesmente adicionar eth1.xx e eth1.yy à minha configuração de interfaces abaixo e, em seguida, configurá-los diretamente como placas de rede guest KVM em ponte? Se sim, como isso deve aparecer no arquivo de configuração de interfaces abaixo?

user@host:~$ cat /etc/network/interfaces 
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# Management Interface
auto eth0
iface eth0 inet static
address 172.22.0.31
netmask 255.255.255.0
gateway 172.22.0.1

# Interface for guest VMs
auto eth1

# Guest1 : Use VLAN 117
auto eth1.117
iface eth1.117 inet manual
# Set up br1 for guest 1, bridging with vlan 117
auto br1.117
iface br1.117 inet manual
bridge_ports eth1.117
bridge_stp off

user@host:~$ uname -a
Linux hostname 3.4.9 #1 SMP Wed Aug 22 19:08:46 BST 2012 x86_64 GNU/Linux

UPDATE

Eu realmente gostaria que alguém pudesse esclarecer a configuração para mim, como eu também vi o acima configurado com esta sintaxe, então não vejo por que uma seria preferida à outra;

# Interface for guest VMs
auto eth1
allow-hotplug eth1
iface eth1 inet static

# Vlan 117 for guest 1
auto vlan 117
iface vlan111 inet static
vlan_raw_device eth1

# Guest 1 : NIC 1
auto br1.117
iface br1.117 inet manual
bridge_ports vlan117
bridge_stp off

RESPOSTA

Concordo com dyasny na topologia, e estou feliz em usar a seguinte configuração com é semelhante ao exemplo de Silopolis:

# Mangement Interafce
allow-hotplug eth0
# Guest Interface
allow-hotplug eth1

# Guest 1
allow-hotplug vlan116
# Guest 2
allow-hotplug vlan117

# Management
auto eth0
iface eth0 inet static
address 10.0.0.10
netmask 255.255.255.0
gateway 10.0.0.1

# Guest 1
auto vlan116
iface vlan116 inet manual
vlan_raw_device eth1

# Guest 2
auto vlan117
iface vlan117 inet manual
vlan_raw_device eth1

allow-hotplug br116
allow-hotplug br117

# Guest 1
auto br116
iface br116 inet manual
bridge_ports vlan116
bridge_stp off

# Guest 2
auto br117
iface br117 inet manual
bridge_ports vlan117
bridge_stp off
    
por jwbensley 30.08.2012 / 19:01

2 respostas

5

Até onde eu entendo a infra-estrutura de configuração de rede Debian, usar brX.YYY não deveria funcionar, pois criaria uma pseudo interface de VLAN "acima" da ponte, para a qual o suporte apenas começou a ser adicionado ao kernel: link

Aqui está o tipo de configuração que eu uso:

# Bring up physical interface
iface eth0 inet manual

# Create VLAN interfaces
iface eth0.10 inet manual
         vlan_raw_device eth0

iface eth0.20 inet manual
...

# Create bridges
auto vmbr10
iface vmbr10 inet static
        address  10.10.10.81
        netmask  255.255.255.0
        #gateway  10.10.10.254
        bridge_ports eth0.10
        bridge_stp off
        bridge_fd 0

auto vmbr20
iface vmbr20 inet static
        address  10.10.20.81
...

Se você quiser usar interfaces agregadas / vinculadas:

  • vincule as interfaces físicas
  • crie as interfaces de VLAN na interface bondX (bondX.YYY)
  • use o bondX.YYY como bridge_ports
por 31.08.2012 / 17:36
6

Eu não estou muito familiarizado com as configurações do Debian, mas o que você descreve está correto

eth0 -> eth0.100 -> brvlan100 <-- VM

Esta é a maneira de configurar isso. Para uma VM, isso pode parecer muito confuso, mas com centenas de VMs, você verá o benefício de fazer isso dessa maneira.

Se você quiser evitar fazer isso, você pode querer definir as tags dentro das próprias VMs, o que também funciona, desde que a ponte esteja conectada a uma porta de tronco

    
por 30.08.2012 / 19:20