← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1163112] Re: nova calls libvirt but failed:Operation not supported

 

configuration error

** Changed in: nova
       Status: Incomplete => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1163112

Title:
  nova calls libvirt but failed:Operation not supported

Status in OpenStack Compute (Nova):
  Invalid

Bug description:
  Hi all:

  I use github to install nova and quantum, but when I launch an
  instance, nova-compute fails:

  2013-04-02 11:00:15    DEBUG [nova.openstack.common.lockutils] Released file lock "iptables" at /var/lock/nova/nova-iptables for method "_apply"...
  2013-04-02 11:00:17    ERROR [nova.compute.manager] Instance failed to spawn
  Traceback (most recent call last):
    File "/usr/local/lib/python2.7/dist-packages/nova-2013.2.a89.ge9912c6-py2.7.egg/nova/compute/manager.py", line 1069, in _spawn
      block_device_info)
    File "/usr/local/lib/python2.7/dist-packages/nova-2013.2.a89.ge9912c6-py2.7.egg/nova/virt/libvirt/driver.py", line 1520, in spawn
      block_device_info)
    File "/usr/local/lib/python2.7/dist-packages/nova-2013.2.a89.ge9912c6-py2.7.egg/nova/virt/libvirt/driver.py", line 2435, in _create_domain_and_network
      domain = self._create_domain(xml, instance=instance)
    File "/usr/local/lib/python2.7/dist-packages/nova-2013.2.a89.ge9912c6-py2.7.egg/nova/virt/libvirt/driver.py", line 2396, in _create_domain
      domain.createWithFlags(launch_flags)
    File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 187, in doit 
      result = proxy_call(self._autowrap, f, *args, **kwargs)
    File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 147, in proxy_call
      rv = execute(f,*args,**kwargs)
    File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 76, in tworker
      rv = meth(*args,**kwargs)
    File "/usr/lib/python2.7/dist-packages/libvirt.py", line 581, in createWithFlags
      if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)
  libvirtError: Unable to add bridge br-int port tap89ed2dc0-2e: Operation not supported
  2013-04-02 11:00:17    DEBUG [nova.openstack.common.lockutils] Got semaphore "compute_resources" for method "abort"...
  2013-04-02 11:00:17    DEBUG [nova.compute.claims] Aborting claim: [Claim: 512 MB memory, 0 GB disk, 1 VCPUS]

  Is it because user nova call libvirt to create a port so it has not
  enough permission?

  note1:I set up sudoer:
  root@node1:~# cat /etc/sudoers.d/nova_sudoers 
  Defaults:nova !requiretty

  nova ALL = (root) NOPASSWD: /usr/local/bin/nova-rootwrap

  
  note2:I login as root, execute " ovs-vsctl add-port", and succeed.

  root@node1:~# ovs-vsctl add-port br-int  tap89ed2dc0-2e
  root@node1:~# ovs-vsctl show
  f3f4cdc0-1391-45fd-a535-1947d5aea488
      Bridge "br0"
          Port "eth0"
              Interface "eth0"
          Port "br0"
              Interface "br0"
                  type: internal
      Bridge br-int
          Port br-int
              Interface br-int
                  type: internal
          Port patch-tun
              Interface patch-tun
                  type: patch
                  options: {peer=patch-int}
          Port "tap89ed2dc0-2e"
              Interface "tap89ed2dc0-2e"
      Bridge br-tun
          Port patch-int
              Interface patch-int
                  type: patch
                  options: {peer=patch-tun}
          Port "gre-1"
              Interface "gre-1"
                  type: gre
                  options: {in_key=flow, out_key=flow, remote_ip="192.168.19.1"}
          Port br-tun
              Interface br-tun
                  type: internal
      ovs_version: "1.4.0+build0"

  
  I add the following lines to qemu.conf
  cgroup_device_acl = [
      "/dev/null", "/dev/full", "/dev/zero",
      "/dev/random", "/dev/urandom",
      "/dev/ptmx", "/dev/kvm", "/dev/kqemu",
      "/dev/rtc", "/dev/hpet","/dev/net/tun",
  ]

  root@node1:~# service qemu-kvm restart
  qemu-kvm stop/waiting
  qemu-kvm start/running

  root@node1:~# service libvirt-bin restart
  libvirt-bin stop/waiting
  libvirt-bin start/running, process 30917

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1163112/+subscriptions