yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #63665
[Bug 1686999] [NEW] Instance with two attached volumes fails to start with error: Duplicate ID 'drive-ide0-0-0' for drive
Public bug reported:
I imported into Openstack a Linux Centos machine. The instance does not have support for VirtIO. I had to import the boot disk as hda. Now I have this instance with two volumes attached, but when I try to boot the following XML is generated.
<disk type='network' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
[..CUT...]
<target dev='hda' bus='ide'/>
<serial>c3841ee3-3f9a-457e-b504-d35e367a1193</serial>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<disk type='network' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
[..CUT...]
<target dev='vda' bus='ide'/>
<serial>63e05c59-8de1-4908-a3dd-3f2261c82ea9</serial>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
The machine does not boot, and in the nova-compute.log I find a
stacktrace.
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher Traceback (most recent call last):
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 138, in _dispatch_and_reply
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher incoming.message))
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 185, in _dispatch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 127, in _do_dispatch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher result = func(ctxt, **new_args)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 110, in wrapped
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher payload)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 89, in wrapped
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return f(self, context, *args, **kw)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 359, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher LOG.warning(msg, e, instance=instance)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 328, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 409, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 387, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher kwargs['instance'], e, sys.exc_info())
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 375, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2606, in start_instance
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._power_on(context, instance)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2579, in _power_on
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher block_device_info)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2623, in power_on
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._hard_reboot(context, instance, network_info, block_device_info)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2514, in _hard_reboot
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher vifs_already_plugged=True)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4926, in _create_domain_and_network
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher xml, pause=pause, power_on=power_on)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4857, in _create_domain
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher guest.launch(pause=pause)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/guest.py", line 142, in launch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._encoded_xml, errors='ignore')
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/guest.py", line 137, in launch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return self._domain.createWithFlags(flags)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 186, in doit
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher result = proxy_call(self._autowrap, f, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 144, in proxy_call
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher rv = execute(f, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 125, in execute
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(c, e, tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 83, in tworker
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher rv = meth(*args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/libvirt.py", line 1065, in createWithFlags
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher libvirtError: internal error: process exited while connecting to monitor: [..CUT..] Duplicate ID 'drive-ide0-0-0' for drive
In liberty the two disked attached where marked as /dev/sda /dev/hdb,
and everything was working. In mitaka I see this behavior where the two
attachments are marked as /dev/sda and /dev/hda and the VM is not
booting.
** Affects: nova
Importance: Undecided
Status: New
--
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/1686999
Title:
Instance with two attached volumes fails to start with error:
Duplicate ID 'drive-ide0-0-0' for drive
Status in OpenStack Compute (nova):
New
Bug description:
I imported into Openstack a Linux Centos machine. The instance does not have support for VirtIO. I had to import the boot disk as hda. Now I have this instance with two volumes attached, but when I try to boot the following XML is generated.
<disk type='network' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
[..CUT...]
<target dev='hda' bus='ide'/>
<serial>c3841ee3-3f9a-457e-b504-d35e367a1193</serial>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<disk type='network' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
[..CUT...]
<target dev='vda' bus='ide'/>
<serial>63e05c59-8de1-4908-a3dd-3f2261c82ea9</serial>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
The machine does not boot, and in the nova-compute.log I find a
stacktrace.
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher Traceback (most recent call last):
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 138, in _dispatch_and_reply
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher incoming.message))
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 185, in _dispatch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 127, in _do_dispatch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher result = func(ctxt, **new_args)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 110, in wrapped
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher payload)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 89, in wrapped
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return f(self, context, *args, **kw)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 359, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher LOG.warning(msg, e, instance=instance)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 328, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 409, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 387, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher kwargs['instance'], e, sys.exc_info())
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 375, in decorated_function
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return function(self, context, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2606, in start_instance
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._power_on(context, instance)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2579, in _power_on
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher block_device_info)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2623, in power_on
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._hard_reboot(context, instance, network_info, block_device_info)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2514, in _hard_reboot
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher vifs_already_plugged=True)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4926, in _create_domain_and_network
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher xml, pause=pause, power_on=power_on)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4857, in _create_domain
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher guest.launch(pause=pause)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/guest.py", line 142, in launch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self._encoded_xml, errors='ignore')
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/guest.py", line 137, in launch
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher return self._domain.createWithFlags(flags)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 186, in doit
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher result = proxy_call(self._autowrap, f, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 144, in proxy_call
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher rv = execute(f, *args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 125, in execute
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher six.reraise(c, e, tb)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/eventlet/tpool.py", line 83, in tworker
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher rv = meth(*args, **kwargs)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/libvirt.py", line 1065, in createWithFlags
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)
2017-04-28 12:56:35.356 43378 ERROR oslo_messaging.rpc.dispatcher libvirtError: internal error: process exited while connecting to monitor: [..CUT..] Duplicate ID 'drive-ide0-0-0' for drive
In liberty the two disked attached where marked as /dev/sda /dev/hdb,
and everything was working. In mitaka I see this behavior where the
two attachments are marked as /dev/sda and /dev/hda and the VM is not
booting.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1686999/+subscriptions
Follow ups