Estou me divertindo muito com o libvirt. Excluí a rede NAT padrão e estou tentando adicionar uma ponte para VMs. De acordo com o wiki da libvirt eFormato XML de rede | Usando uma ponte de host existente, eu tenho o seguinte:
<network>
<name>host-bridge</name>
<forward mode="bridge"/>
<bridge name="br0"/>
</network>
Salvei o arquivo comohost-bridge.xml
. copiei para os dois/etc/libvirt/
e/usr/share/libvirt/schemas
. No entanto, independentemente do que eu tente, sempre recebo:
$ sudo virsh net-create host-bridge
error: Failed to open file 'host-bridge': No such file or directory
$ sudo virsh net-create host-bridge.xml
error: Failed to open file 'host-bridge.xml': No such file or directory
A máquina está executando o Ubuntu Server 14.03 LTS. De acordo combrctl
, a Pontebr0
existe, e seu usoeth1
.
Onde os arquivos de configuração de rede devem ser salvos para a libvirt?
Responder1
Nos meus sistemas baseados em (CentOS) eles estão /var/lib/libvirt/network
(e isso é o mesmo para olibvirt.orgresposta wiki), mas oWikiUbuntusugere /etc/libvirt/qemu
(na seção de configuração do convidado libvirt)
Responder2
Para complementar a resposta de @davidgo... eu executei:
sudo mv /opt/libvirt/host-bridge.xml /etc/libvirt/qemu/networks
Assim que o arquivo de rede estiver localizado onde você deseja:
$ sudo cat /etc/libvirt/qemu/networks/host-bridge.xml
<network>
<name>host-bridge</name>
<uuid>88c0529e-4813-43fa-af27-01af164249ed</uuid>
<forward mode='bridge'/>
<bridge name='br0'/>
</network>
Você ainda precisa (1) defini-lo ou (2) criá-lo parana verdadeuse-o em uma VM. Se você quiser que seja persistente, será necessário defini-lo porque é permanente (criar é transitório):
virsh net-define /etc/libvirt/qemu/networks/host-bridge.xml
Assim que a rede for definida, o UUID será adicionado e então você poderá consultá-lo em um arquivo XML da VM:
sudo grep -R "host-bridge" /etc/libvirt/
/etc/libvirt/qemu/Debian_7_x86.xml: <source network='host-bridge'/>
/etc/libvirt/qemu/Debian_7_x64.xml: <source network='host-bridge'/>
/etc/libvirt/qemu/Debian_8_x86.xml: <source network='host-bridge'/>
/etc/libvirt/qemu/Debian_8_x32.xml: <source network='host-bridge'/>
/etc/libvirt/qemu/Debian_8_x64.xml: <source network='host-bridge'/>
...
Também aparecerá nonetworks/autostart
pasta:
sudo grep -R "host-bridge" /etc/libvirt/
...
/etc/libvirt/qemu/networks/autostart/host-bridge.xml: <name>host-bridge</name>
Finalmente, você deverá ver algo semelhante ao seguinte:
$ virsh net-list --all
Name State Autostart Persistent
----------------------------------------------------------
host-bridge inactive yes yes
Veja também o da libvirtdefinição de rede(permanente),criar rede(transitório) enet-autostart.
Responder3
o que funcionou para mim foi colocá-lo no mesmo diretório de onde eu estava fugindo sudo virsh net-create host-bridge
.