Me lo estoy pasando genial con libvirt. Eliminé la red NAT predeterminada y estoy intentando agregar un puente para máquinas virtuales. Según la wiki de libvirt yFormato XML de red | Usando un puente de host existente, tengo lo siguiente:
<network>
<name>host-bridge</name>
<forward mode="bridge"/>
<bridge name="br0"/>
</network>
Guardé el archivo comohost-bridge.xml
. lo copie a ambos/etc/libvirt/
y/usr/share/libvirt/schemas
. Sin embargo, independientemente de lo que intento, siempre obtengo:
$ 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
La máquina ejecuta Ubuntu Server 14.03 LTS. De acuerdo abrctl
, el puentebr0
existe, y su usoeth1
.
¿Dónde se supone que se guardan los archivos de configuración de red para libvirt?
Respuesta1
En mis sistemas basados (CentOS) están /var/lib/libvirt/network
(y esto es lo mismo para ellibvirt.orgrespuesta wiki) pero elWiki Ubuntusugiere /etc/libvirt/qemu
(en la sección Configuración de libvirt guest)
Respuesta2
Para agregar a la respuesta de @davidgo... realicé:
sudo mv /opt/libvirt/host-bridge.xml /etc/libvirt/qemu/networks
Una vez que el archivo de red esté ubicado donde lo desea:
$ 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>
Aún necesita (1) definirlo o (2) crearlo parade hechoÚselo en una máquina virtual. Si desea que sea persistente, debe definirlo porque es permanente (la creación es transitoria):
virsh net-define /etc/libvirt/qemu/networks/host-bridge.xml
Una vez que se define la red, se agregará el UUID y luego podrá consultarlo en el archivo XML de una 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'/>
...
También aparecerá en elnetworks/autostart
carpeta:
sudo grep -R "host-bridge" /etc/libvirt/
...
/etc/libvirt/qemu/networks/autostart/host-bridge.xml: <name>host-bridge</name>
Finalmente, deberías ver algo similar a lo siguiente:
$ virsh net-list --all
Name State Autostart Persistent
----------------------------------------------------------
host-bridge inactive yes yes
Véase también el de libvirtdefinición neta(permanente),creación neta(transitorio) yinicio automático neto.
Respuesta3
lo que funcionó para mí es simplemente ponerlo en el mismo directorio desde el que estaba huyendo sudo virsh net-create host-bridge
.