Ask Your Question
0

Drive created with duplicate ID

asked 2017-08-31 06:03:40 -0600

bcharles gravatar image

updated 2017-09-04 06:24:46 -0600

My setup :

  • OS : Debian 9 (stretch)
  • Openstack version : 14.0.0 (Newton)
  • Installation method : I've used the "OpenStack Installation Tutorial for Debian" from Openstack documentation (https://docs.openstack.org/newton/install-guide-debian/ (https://docs.openstack.org/newton/ins...))
  • Virtualization type : nova-compute (KVM with libvirt driver)

My problem : When a compute node launch an instance with two disks (Ephemeral + Block Storage (cinder)), the second disk is created with the same ID. I use SCSI/IDE (same problem) disks instead of Virtio because the host OS do not supports Virtio controllers.

nova-compute.log displays :

2017-08-31 12:24:57.796 6400 WARNING nova.virt.libvirt.driver [req-2976c1ad-dafb-4523-8ddc-a9c976037e5c 8f1291e9e8e49ac901f45e713bb7fd2e346ff2a7f2464565a7a2db0f7fa8e46e 84a37787811d4412a62911dd5aeaf343 - - -] [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73] Ignoring supplied device name: /dev/sda. Libvirt can't honour user-supplied dev names
2017-08-31 12:24:57.797 6400 WARNING nova.virt.libvirt.driver [req-2976c1ad-dafb-4523-8ddc-a9c976037e5c 8f1291e9e8e49ac901f45e713bb7fd2e346ff2a7f2464565a7a2db0f7fa8e46e 84a37787811d4412a62911dd5aeaf343 - - -] [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73] Ignoring supplied device name: /dev/vda. Libvirt can't honour user-supplied dev names
2017-08-31 12:25:06.017 6400 ERROR nova.virt.libvirt.guest [req-2976c1ad-dafb-4523-8ddc-a9c976037e5c 8f1291e9e8e49ac901f45e713bb7fd2e346ff2a7f2464565a7a2db0f7fa8e46e 84a37787811d4412a62911dd5aeaf343 - - -] Error launching a defined domain with XML: <domain type='kvm'>
  <name>instance-000000f2</name>
  <uuid>e92e8e3f-e684-4600-82d6-a64c9b3e7b73</uuid>    
 (...)
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/e92e8e3f-e684-4600-82d6-a64c9b3e7b73/disk.eph0'/>
      <target dev='sda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='block' device='disk'>
      <driver name='qemu' type='raw' cache='none' io='native'/>
      <source dev='/dev/disk/by-path/ip-172.27.113.76:3260-iscsi-iqn.2010-10.org.openstack:volume-032bdf4b-afc2-4fda-819f-db69bf53fa30-lun-1'/>
      <target dev='vda' bus='ide'/>
      <serial>032bdf4b-afc2-4fda-819f-db69bf53fa30</serial>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
(...)

As you can see the two drives are created with the same controller, bus, target and unit.

Then the instance fail to span with this exception :

2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [req-2976c1ad-dafb-4523-8ddc-a9c976037e5c 8f1291e9e8e49ac901f45e713bb7fd2e346ff2a7f2464565a7a2db0f7fa8e46e 84a37787811d4412a62911dd5aeaf343 - - -] 
[instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73] Instance failed to spawn
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73] Traceback (most recent call last):
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2078, in _build_resources

2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]     yield resources
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]   File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1920, in _build_and_run_in
stance
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]     block_device_info=block_device_info)
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]   File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 2583, in spawn
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]     post_xml_callback=gen_confdrive)
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]   File "/usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py", line 4823, in _create_domai
n_and_network
2017-08-31 12:25:06.019 6400 ERROR nova.compute.manager [instance: e92e8e3f-e684-4600-82d6-a64c9b3e7b73]     post_xml_callback=post_xml_callback)
2017-08-31 12 ...
(more)
edit retag flag offensive close merge delete

Comments

I've also the same error on compute nodes running on CentOS 7.

bcharles gravatar imagebcharles ( 2017-09-15 10:11:14 -0600 )edit

1 answer

Sort by ยป oldest newest most voted
0

answered 2017-09-20 02:47:33 -0600

bcharles gravatar image

updated 2017-09-20 02:55:54 -0600

I've installed Openstack Pike on Ubutnu 16.04 with the PPA detailed here: https://insights.ubuntu.com/2017/09/01/openstack-pike-and-all-new-updates-to-the-cloud-archive/ (https://insights.ubuntu.com/2017/09/0...).

In addition to install all pike packets, the PPA permit to install a version of libvirt-bin much more recent than the version provided by 16.04 offical repositories (3.6.0 instead of 1.3.1). I think that have a recent version of libvirt-bin solved the warning "Libvirt can't honour user-supplied dev names". The disks ID provided by nova-compute (/dev/hda, /dev/hdb with IDE controller) are now correctly used by libvirt and VMs can boot up.

edit flag offensive delete link more

Comments

I met the similar issue on CentOS 7. It can be solved by upgrading libvirt? What's libvirt version you have upgraded?

yafeng gravatar imageyafeng ( 2018-03-06 19:48:40 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2017-08-31 06:03:40 -0600

Seen: 686 times

Last updated: Sep 20 '17