Re: libvirt v1.0.2 fails to boot LXC container, but v1.0.0 works

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 5, 2013 at 9:33 PM, Doug Goldstein <cardoe@xxxxxxxxxx> wrote:
> On Tue, Mar 5, 2013 at 4:13 PM, Dennis Jenkins
> <dennis.jenkins.75@xxxxxxxxx> wrote:
>>
>> Update: 1.0.3 still fails to boot an LXC container on Gentoo Linux.
>>
>> Libvirt 1.0.3 appeared in Gentoo Portage this morning.  I updated my
>> host's kernel to 3.7.10 and libvirt from 1.0.0 to 1.0.3.  I still
>> cannot boot an LXC container.  This exact same container was working
>> fine 30 minutes ago on libvirt 1.0.0.
>>
>> I tried both the "libvirt-1.0.3" ebuild and the "libvirt-9999" ebuild
>> (get most recent master branch from git).  Both produce the same
>> results.
>>
>>
>> ostara ~ # equery l 'libvirt'
>>  * Searching for libvirt ...
>> [IP-] [ -] app-emulation/libvirt-9999:0
>>
>> ostara ~ # virsh --version
>> 1.0.3
>
> virsh version --daemon would check that the daemon is 1.0.3 as well
> and not just the client.
>
>>
>> ostara ~ # uname -a
>> Linux ostara 3.7.10-gentoo #1 SMP PREEMPT Tue Mar 5 15:23:39 CST 2013
>> x86_64 Intel(R) Core(TM) i5 CPU 760 @ 2.80GHz GenuineIntel GNU/Linux
>>
>
> grep FUSE_FS /usr/src/linux/.config
>
> if, =m then: lsmod | grep fuse
>
> lastly, check if you have sys-fs/fuse installed.
> Doug Goldstein

Doug, Gao, thank you for your suggestions.  I performed the
experiments that Doug requested.  I did not edit the libvirt code as
Gao suggested (yet).


ostara ~ # virsh version --daemon
Compiled against library: libvirt 1.0.0
Using library: libvirt 1.0.0
Using API: QEMU 1.0.0
Running hypervisor: QEMU 1.2.2
Running against daemon: 1.0.0

(libvirt-1.0.0 works)

ostara ~ # zgrep "FUSE_FS" /proc/config.gz
CONFIG_FUSE_FS=m

ostara ~ # lsmod | grep fuse
fuse                   61951  0

ostara ~ # equery l sys-fs/fuse
 * Searching for fuse in sys-fs ...
[IP-] [  ] sys-fs/fuse-2.9.1-r1:0

ostara ~ # ACCEPT_KEYWORDS='**' emerge -q =libvirt-9999
(output omitted - installs latest libvirt from git repo, v 1.0.3)

ostara ~ # /etc/init.d/libvirtd restart
(output omitted)

ostara ~ # virsh version --daemon
Compiled against library: libvirt 1.0.3
Using library: libvirt 1.0.3
Using API: QEMU 1.0.3
Running hypervisor: QEMU 1.2.2
Running against daemon: 1.0.3

ostara ~ # virsh -c lxc:// start dwj-lnx-dev
error: Failed to start domain dwj-lnx-dev
error: internal error guest failed to start: PATH=/bin:/sbin
TERM=linux container=lxc-libvirt
container_uuid=fbcd8c3a-9939-12b4-727d-5d3526bc448f
LIBVIRT_LXC_UUID=fbcd8c3a-9939-12b4-727d-5d3526bc448f
LIBVIRT_LXC_NAME=dwj-lnx-dev /sbin/init
2013-03-06 13:51:53.894+0000: 1: info : libvirt version: 1.0.3
2013-03-06 13:51:53.894+0000: 1: error : lxcContainerMountProcFuse:616
: Failed to mount /.oldroot//var/run/libvirt/lxc/dwj-lnx-dev/meminfo
on /proc/meminfo: No such file or directory
2013-03-06 13:51:53.913+0000: 26200: info : libvirt version: 1.0.3
2013-03-06 13:51:53.913+0000: 26200: error : virLXCControllerRun:1462
: Unable to send container continue message: Broken pipe
2013-03-06 13:51:53.947+0000: 26200: error : virCommandWait:2313 :
internal error Child process (ip link del veth1) unexpected exit
status 1: Cannot find device "veth1"

ostara ~ # ls -l /var/run/libvirt/lxc/dwj-lnx-dev
total 0

ostara ~ # ll /var/run/libvirt/lxc/dwj-lnx-dev
-bash: ll: command not found

ostara ~ # touch /var/run/libvirt/lxc/dwj-lnx-dev/meminfo

ostara ~ # virsh -c lxc:// start dwj-lnx-dev
error: Failed to start domain dwj-lnx-dev
error: internal error guest failed to start: fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option

ostara ~ # rm -rf /var/run/libvirt/lxc/dwj-lnx-dev

ostara ~ # virsh -c lxc:// start dwj-lnx-dev
error: Failed to start domain dwj-lnx-dev
error: internal error guest failed to start: PATH=/bin:/sbin
TERM=linux container=lxc-libvirt
container_uuid=fbcd8c3a-9939-12b4-727d-5d3526bc448f
LIBVIRT_LXC_UUID=fbcd8c3a-9939-12b4-727d-5d3526bc448f
LIBVIRT_LXC_NAME=dwj-lnx-dev /sbin/init
2013-03-06 13:53:35.634+0000: 1: info : libvirt version: 1.0.3
2013-03-06 13:53:35.634+0000: 1: error : lxcContainerMountProcFuse:616
: Failed to mount /.oldroot//var/run/libvirt/lxc/dwj-lnx-dev/meminfo
on /proc/meminfo: No such file or directory
2013-03-06 13:53:35.634+0000: 26783: info : libvirt version: 1.0.3
2013-03-06 13:53:35.634+0000: 26783: error : virLXCControllerRun:1468
: error receiving signal from container: Input/output error
2013-03-06 13:53:35.697+0000: 26783: error : virCommandWait:2313 :
internal error Child process (ip link del veth1) unexpected exit
status 1: Cannot find device "veth1"

ostara ~ # ifconfig -a | awk '/^\w/ { print $0 }'
br0: flags=4355<UP,BROADCAST,PROMISC,MULTICAST>  mtu 1500
br1: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST>  mtu 1500
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500

(eth0 = my private LAN)
(eth1 = public IP from DSL modem)
(eth2 = private DMZ to wifi access point)
(br0 = manually managed internal bridge used by QEMU VMs, not tied to
any physical NIC)
(br1 = unused at this time)
(virbr0 = managed by libvirt)

ostara ~ # virsh -c lxc:// dumpxml dwj-lnx-dev
<domain type='lxc'>
  <name>dwj-lnx-dev</name>
  <uuid>fbcd8c3a-9939-12b4-727d-5d3526bc448f</uuid>
  <memory unit='KiB'>500000</memory>
  <currentMemory unit='KiB'>500000</currentMemory>
  <vcpu placement='static'>2</vcpu>
  <os>
    <type arch='x86_64'>exe</type>
    <init>/sbin/init</init>
  </os>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/libexec/libvirt_lxc</emulator>
    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/vm/lxc/dwj-lnx-dev'/>
      <target dir='/'/>
    </filesystem>
    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/usr/portage'/>
      <target dir='/usr/portage'/>
    </filesystem>
    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/usr/src'/>
      <target dir='/usr/src'/>
    </filesystem>
    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/home'/>
      <target dir='/home'/>
    </filesystem>
    <interface type='bridge'>
      <mac address='82:00:00:00:01:00'/>
      <source bridge='br0'/>
    </interface>
    <console type='pty'>
      <target type='lxc' port='0'/>
    </console>
  </devices>
</domain>

_______________________________________________
libvirt-users mailing list
libvirt-users@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvirt-users


[Index of Archives]     [Virt Tools]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]

  Powered by Linux