libvirt and bhyve problems

Roman Bogorodskiy novel at FreeBSD.org
Thu Jun 12 19:03:02 UTC 2014


  Craig Rodrigues wrote:

> On Thu, Jun 12, 2014 at 11:28 AM, Craig Rodrigues <rodrigc at freebsd.org> wrote:
> > On Thu, Jun 12, 2014 at 1:00 AM, Roman Bogorodskiy <novel at freebsd.org> wrote:
> >>
> >> http://people.freebsd.org/~novel/misc/libvirt_port_updated.tgz
> >>
> >> With this setup, I'm able to get networking (e.g. virsh net-list works)
> >> and updated the fix for the previous problem. I was able to start a VM
> >> with that setup.
> >
> >
> > I deleted the old port from my system and took your modified port,
> > built it, and installed it.
> >
> > I followed my previous steps in:
> > http://lists.freebsd.org/pipermail/freebsd-virtualization/2014-June/002588.html
> > and got this:
> >
> > 2014-06-12 18:23:54.328+0000: 34485605376: info : libvirt version: 1.2.5
> > 2014-06-12 18:23:54.328+0000: 34485605376: error :
> > dnsmasqCapsRefreshInternal:726 : Cannot check dnsmasq binary dnsmasq:
> > No such file or directory
> > 2014-06-12 18:23:54.328+0000: 34485605376: info :
> > networkReloadFirewallRules:1750 : Reloading iptables rules
> > 2014-06-12 18:23:54.328+0000: 34485605376: info :
> > networkRefreshDaemons:1722 : Refreshing network daemons
> > 2014-06-12 18:23:54.438+0000: 34485605376: error : virExec:417 :
> > Cannot find 'pm-is-supported' in path: No such file or directory
> > 2014-06-12 18:23:54.439+0000: 34485605376: warning :
> > virQEMUCapsInit:948 : Failed to get host power management capabilities
> > 2014-06-12 18:23:54.460+0000: 34485605376: info :
> > virDomainObjListLoadAllConfigs:18249 : Scanning for configs in
> > /usr/local/var/run/libvirt/qemu
> > 2014-06-12 18:23:54.461+0000: 34485605376: info :
> > virDomainObjListLoadAllConfigs:18249 : Scanning for configs in
> > /usr/local/etc/libvirt/qemu
> > 2014-06-12 18:23:54.560+0000: 34485605376: info :
> > virDomainObjListLoadAllConfigs:18249 : Scanning for configs in
> > /usr/local/etc/libvirt/bhyve
> > 2014-06-12 18:23:54.560+0000: 34485605376: info :
> > virDomainObjListLoadAllConfigs:18273 : Loading config file 'bhyve.xml'
> > 2014-06-12 18:24:17.940+0000: 34485598208: error :
> > virNetDevBridgeAddPort:399 : Unable to add bridge tap0 port vnet0:
> > Invalid argument
> > 2014-06-12 18:24:18.056+0000: 34485598208: error : virCommandWait:2426
> > : internal error: Child process (/usr/sbin/bhyvectl --destroy
> > --vm=bhyve) unexpected exit status 255
> >
> >
> > --
> > Craig
> 
> 
> After the program fails, these are my tap and bridge devices, as shown
> by ifconfig:
> 
> bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
>         ether 02:29:45:c7:8f:00
>         nd6 options=9<PERFORMNUD,IFDISABLED>
>         id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
>         maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
>         root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
>         member: em0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
>                 ifmaxaddr 0 port 1 priority 128 path cost 20000
>         member: tap2 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
>                 ifmaxaddr 0 port 7 priority 128 path cost 2000000
>         member: tap1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
>                 ifmaxaddr 0 port 6 priority 128 path cost 2000000
>         member: tap0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
>                 ifmaxaddr 0 port 5 priority 128 path cost 2000000
> tap0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
>         options=80000<LINKSTATE>
>         ether 00:bd:53:27:00:00
>         nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>         media: Ethernet autoselect
>         status: no carrier
> tap1: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu
> 1500
>         options=80000<LINKSTATE>
>         ether 00:bd:59:27:00:01
>         nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>         media: Ethernet autoselect
>         status: no carrier
> tap2: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST>
> metric 0 mtu 1500
>         options=80000<LINKSTATE>
>         ether 00:bd:5e:27:00:02
>         nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>         media: Ethernet autoselect
>         status: active
>         Opened by PID 1506
> vnet0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
>         options=80000<LINKSTATE>
>         ether fe:54:00:33:20:8c
>         nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
>         media: Ethernet autoselect
>         status: no carrier
> 
> 
> This is in my /etc/rc.conf for creating bridge and tap devices on bootup:
> 
> #####################################################
> # Create tap devices, one tap interface per BHyve VM.
> # Add the tap interfaces to bridge0
> ####################################################
> cloned_interfaces="bridge0 tap0 tap1 tap2"
> 
> autobridge_interfaces="bridge0"
> autobridge_bridge0="tap* em0"

Ah. Actually, libvirt manages bridges and taps on its own. So, the
preferred flow is that libvirt starts its networks on startup
automatically. By default it has a network with the 'virbr0' device
which it creates on its own.

Later on it creates vnet devices (which are tap devices) automatically
as well on VM startup and plugs them to the bridge.

The configuration you have probably confuses it, could you consider
trying without that?

Also, do you have working 'net-list' command in virsh with my version of
port?

PS If you're available for some real-time conversation such as on IRC, I
think some kind of things would be faster to discuss there.

Thanks,

Roman Bogorodskiy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-testing/attachments/20140612/d58d3097/attachment.sig>


More information about the freebsd-testing mailing list