Estou tentando configurar VMs baseadas em KVM em um servidor local e seguindo este documento: link
Nesta documentação, você afirma que obterá virbr0
para conexão de ponte, mas infelizmente não foi criada automaticamente. Doc sugerir para usar o virt-manager para consertar isso, mas estou tendo apenas uma instalação padrão do servidor debian sem GUI. Então, como posso criar isso a partir da linha de comando?
Eu criei br0, tudo parece bom:
$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
link/ether 00:1f:c6:9c:0f:0d brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 00:1f:c6:9c:0f:0d brd ff:ff:ff:ff:ff:ff
inet 192.168.1.200/24 brd 192.168.1.255 scope global br0
valid_lft forever preferred_lft forever
inet6 fe80::21f:c6ff:fe9c:f0d/64 scope link
valid_lft forever preferred_lft forever
$ sudo ip route
default via 192.168.1.1 dev br0
$ brctl show
bridge name bridge id STP enabled interfaces
br0 8000.001fc69c0f0d no eth0
aviso, não há virbr0
.
Se eu tentar criar o ifage-bridge, recebo um erro:
$ virsh iface-bridge eth0 br0
error: failed to get interface 'eth0'
error: internal error: couldn't find interface named 'eth0': required entry missing
Eu também tenho o bridge configurado para qemu, o que fiz manualmente e adicionei ao qemu autostart:
$ cat /etc/libvirt/qemu/networks/bridge.xml
<network>
<name>bridge</name>
<bridge name="br0"/>
<forward mode="bridge"/>
</network>
E não consigo criar / iniciar uma VM por causa da bridge:
$ virt-install --virt-type kvm --name testvm --network bridge
Starting install...
Retrieving file MANIFEST... | 3.3 kB 00:00 ...
Retrieving file linux... | 6.0 MB 00:08 ...
Retrieving file initrd.gz... | 29 MB 00:56 ...
Allocating 'testvm.qcow2' | 8.0 GB 00:00
ERROR failed to retrieve file descriptor for interface: Transport endpoint is not connected
Funciona se eu omitir a configuração --network
. Esta VM não teria rede, basicamente inútil. Se eu adicionar uma configuração de ponte por virsh edit testvm
:
<interface type='bridge'>
<source bridge='br0'/>
<model type='virtio'/>
</interface>
e executado, ele falhará de qualquer maneira:
$ virsh start testvm
error: Failed to start domain testvm
error: failed to retrieve file descriptor for interface: Transport endpoint is not connected
O que fiz incorretamente? Como devo adicionar virbr0
e quente para configurar a rede para VMs?
Eu tenho uma nova instalação do Debian Jessie, nada foi instalado exceto os principais componentes, ssh e kvm / qemu / libvirt