Bug 1001731 - Can't attach volumes into a vm libvirtError: unsupported configuration: disk bus 'ide' cannot be hotplugged.
Summary: Can't attach volumes into a vm libvirtError: unsupported configuration: disk...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: openstack-nova
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Xavier Queralt
QA Contact: Yogev Rabl
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-08-27 15:30 UTC by Itamar Reis Peixoto
Modified: 2014-06-18 07:00 UTC (History)
20 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-03-10 13:21:48 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Itamar Reis Peixoto 2013-08-27 15:30:20 UTC
Description of problem:

2013-08-27 12:29:27.562 ERROR nova.compute.manager [req-762ee4f5-193b-44bb-82b7-6b355f28eea6 92c87859ed9b49f08ab4cdba13f545d5 a4b4cad85455446b929c17a832227268] [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303] Failed to attach volume 2ba82632-4866-4715-964b-f9c597c2e92e at /dev/hdb
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303] Traceback (most recent call last):
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2936, in _attach_volume
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     mountpoint)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 983, in attach_volume
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     disk_dev)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     self.gen.next()
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 970, in attach_volume
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     virt_dom.attachDeviceFlags(conf.to_xml(), flags)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 187, in doit
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     result = proxy_call(self._autowrap, f, *args, **kwargs)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 147, in proxy_call
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     rv = execute(f,*args,**kwargs)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 76, in tworker
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     rv = meth(*args,**kwargs)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]   File "/usr/lib64/python2.7/site-packages/libvirt.py", line 439, in attachDeviceFlags
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303]     if ret == -1: raise libvirtError ('virDomainAttachDeviceFlags() failed', dom=self)
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303] libvirtError: unsupported configuration: disk bus 'ide' cannot be hotplugged.
2013-08-27 12:29:27.562 6769 TRACE nova.compute.manager [instance: bcd8cfbd-1162-41bf-b4c8-b73d73146303] 
2013-08-27 12:29:28.143 ERROR nova.openstack.common.rpc.amqp [req-762ee4f5-193b-44bb-82b7-6b355f28eea6 92c87859ed9b49f08ab4cdba13f545d5 a4b4cad85455446b929c17a832227268] Exception during message handling
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/openstack/common/rpc/amqp.py", line 430, in _process_data
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     rval = self.proxy.dispatch(ctxt, version, method, **args)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/openstack/common/rpc/dispatcher.py", line 133, in dispatch
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     return getattr(proxyobj, method)(ctxt, **kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/exception.py", line 117, in wrapped
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     temp_level, payload)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/exception.py", line 94, in wrapped
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     return f(self, context, *args, **kw)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 209, in decorated_function
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     pass
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 195, in decorated_function
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 237, in decorated_function
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     e, sys.exc_info())
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 224, in decorated_function
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2910, in attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     context, instance, mountpoint)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2905, in attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     mountpoint, instance)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2945, in _attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     connector)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2936, in _attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     mountpoint)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 983, in attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     disk_dev)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 970, in attach_volume
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     virt_dom.attachDeviceFlags(conf.to_xml(), flags)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 187, in doit
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     result = proxy_call(self._autowrap, f, *args, **kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 147, in proxy_call
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     rv = execute(f,*args,**kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 76, in tworker
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     rv = meth(*args,**kwargs)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.7/site-packages/libvirt.py", line 439, in attachDeviceFlags
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp     if ret == -1: raise libvirtError ('virDomainAttachDeviceFlags() failed', dom=self)
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp libvirtError: unsupported configuration: disk bus 'ide' cannot be hotplugged.
2013-08-27 12:29:28.143 6769 TRACE nova.openstack.common.rpc.amqp

Comment 1 Yogev Rabl 2013-10-28 15:32:48 UTC
When I try to attach a volume to an instance the action fails. 


The version is: 
openstack-nova-compute-2013.1.4-1.el6ost.noarch
openstack-dashboard-2013.1.4-1.el6ost.noarch
openstack-utils-2013.1-8.1.el6ost.noarch
openstack-glance-2013.1.4-1.el6ost.noarch
openstack-selinux-0.1.2-10.el6ost.noarch
openstack-cinder-2013.1.4-2.el6ost.noarch
openstack-nova-api-2013.1.4-1.el6ost.noarch
openstack-nova-console-2013.1.4-1.el6ost.noarch
openstack-nova-conductor-2013.1.4-1.el6ost.noarch
openstack-nova-novncproxy-0.4-6.el6ost.noarch
openstack-nova-network-2013.1.4-1.el6ost.noarch
openstack-nova-cert-2013.1.4-1.el6ost.noarch
python-django-openstack-auth-1.0.6-2.el6ost.noarch
redhat-access-plugin-openstack-1.2.0-5.el6ost.noarch
openstack-keystone-2013.1.4-1.el6ost.noarch
openstack-nova-common-2013.1.4-1.el6ost.noarch
openstack-nova-scheduler-2013.1.4-1.el6ost.noarch
openstack-packstack-2013.1.1-0.33.dev695.el6ost.noarch

The OS is: 
Red Hat Enterprise Linux Server release 6.5 Beta

The logs from the nova compute show: 

2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     return getattr(proxyobj, method)(ctxt, **kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/exception.py", line 117, in wrapped
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     temp_level, payload)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/exception.py", line 94, in wrapped
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     return f(self, context, *args, **kw)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 209, in decorated_function
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     pass
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 195, in decorated_function
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 237, in decorated_function
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     e, sys.exc_info())
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 224, in decorated_function
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     return function(self, context, *args, **kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 2910, in attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     context, instance, mountpoint)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 2905, in attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     mountpoint, instance)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 2945, in _attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     connector)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/compute/manager.py", line 2936, in _attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     mountpoint)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py", line 983, in attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     disk_dev)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     self.gen.next()
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py", line 970, in attach_volume
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     virt_dom.attachDeviceFlags(conf.to_xml(), flags)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/eventlet/tpool.py", line 187, in doit
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     result = proxy_call(self._autowrap, f, *args, **kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/eventlet/tpool.py", line 147, in proxy_call
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     rv = execute(f,*args,**kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib/python2.6/site-packages/eventlet/tpool.py", line 76, in tworker
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     rv = meth(*args,**kwargs)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp   File "/usr/lib64/python2.6/site-packages/libvirt.py", line 419, in attachDeviceFlags
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp     if ret == -1: raise libvirtError ('virDomainAttachDeviceFlags() failed', dom=self)
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp libvirtError: unsupported configuration: disk bus 'ide' cannot be hotplugged.
2013-10-28 17:20:02.168 4234 TRACE nova.openstack.common.rpc.amqp
2013-10-28 17:20:06.580 4234 AUDIT nova.compute.resource_tracker [-] Auditing locally available compute resources
2013-10-28 17:20:06.748 4234 AUDIT nova.compute.resource_tracker [-] Free ram (MB): 31076
2013-10-28 17:20:06.748 4234 AUDIT nova.compute.resource_tracker [-] Free disk (GB): 442
2013-10-28 17:20:06.748 4234 AUDIT nova.compute.resource_tracker [-] Free VCPUS: 5
2013-10-28 17:20:06.861 4234 INFO nova.compute.resource_tracker [-] Compute_service record updated for cougar12.scl.lab.tlv.redhat.com:cougar12.scl.lab.tlv.redhat.com

Comment 2 Stephen Gordon 2013-11-13 13:24:47 UTC
I am guessing that the disk_bus of the volume is set to IDE, which means that just like an IDE disk in a physical server the volume can not be hot plugged.

You must either:

    * Create or update the volume so that the disk_bus value is set to a bus that does support hotplugging (such as virtio) if your Hypervisor and guests support it.

    * Shutdown the instance to attach the volume.

For example you would create a 1G volume that uses the virtio bus using this command:

# cinder create --metadata disk_bus=virtio 1

Comment 3 Fedora Admin XMLRPC Client 2013-12-16 16:18:00 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 4 Xavier Queralt 2014-03-10 13:21:48 UTC
As Stephen pointed out, a disk cannot be hot plugged when using the IDE bus. If the process in comment 2 doesn't work as expected, please reopen the bug.


Note You need to log in before you can comment on or make changes to this bug.