Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1546965 - Launching Instance fails when image property hw_disk_bus=scsi is set
Launching Instance fails when image property hw_disk_bus=scsi is set
Status: CLOSED ERRATA
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-nova (Show other bugs)
10.0 (Newton)
Unspecified Unspecified
high Severity high
: z9
: 10.0 (Newton)
Assigned To: Artom Lifshitz
nova-maint
: Reopened, TestOnly, Triaged, ZStream
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2018-02-20 03:09 EST by PURANDHAR SAIRAM MANNIDI
Modified: 2018-09-17 12:52 EDT (History)
19 users (show)

See Also:
Fixed In Version: openstack-nova-14.1.0-17.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2018-09-17 12:50:53 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 3376161 None None None 2018-03-08 17:55 EST
Red Hat Product Errata RHSA-2018:2714 None None None 2018-09-17 12:52 EDT

  None (edit)
Description PURANDHAR SAIRAM MANNIDI 2018-02-20 03:09:40 EST
Description of problem:
Launching Instance fails with image property hw_disk_bus=scsi and flavor has ephemeral disk

Version-Release number of selected component (if applicable):
Red Hat OpenStack Platform 10

How reproducible:
Always

Steps to Reproduce:
1. create a image in glance with property hw_disk_bus=scsi
2. create a flavor with ephemeral disk included
3. Launch the instance

Actual results:
Instance fails to spawn with 

Expected results:
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [req-ee8830aa-af24-41b6-bc76-c04660cad606 130dd53f32b64593b37903a5a293bda9 62864afed913420daa7f4d8ccc751a0d - - -] [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa] Instance failed to spawn
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa] Traceback (most recent call last):
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2087, in _build_resources
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     yield resources
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1928, in _build_and_run_instance
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     block_device_info=block_device_info)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 2674, in spawn
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     destroy_disks_on_failure=True)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5013, in _create_domain_and_network
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     destroy_disks_on_failure)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     self.force_reraise()
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     six.reraise(self.type_, self.value, self.tb)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 4985, in _create_domain_and_network
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     post_xml_callback=post_xml_callback)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 4896, in _create_domain
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     guest = libvirt_guest.Guest.create(xml, self._host)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/guest.py", line 129, in create
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     encodeutils.safe_decode(xml))
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     self.force_reraise()
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     six.reraise(self.type_, self.value, self.tb)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/guest.py", line 125, in create
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     domain = host.write_instance_config(xml)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/host.py", line 906, in write_instance_config
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     return self.get_connection().defineXML(xml)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 186, in doit
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     result = proxy_call(self._autowrap, f, *args, **kwargs)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 144, in proxy_call
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     rv = execute(f, *args, **kwargs)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 125, in execute
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     six.reraise(c, e, tb)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 83, in tworker
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     rv = meth(*args, **kwargs)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]   File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3585, in defineXML
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa]     if ret is None:raise libvirtError('virDomainDefineXML() failed', conn=self)
2018-02-20 02:44:31.113 969429 ERROR nova.compute.manager [instance: b7f8d946-496a-49f9-9991-48f2c32cc7fa] libvirtError: unsupported configuration: Found duplicate drive address for disk with target name 'sda' controller='0' bus='0' target='0' unit='0'


Additional info:

Tried 2 cases:

1. VM root disk is a volume
2. VM root disk is local disk.
Comment 1 Martin Schuppert 2018-02-20 03:42:06 EST
seems we might have to add "hw_scsi_model=virtio-scsi" as well.
Comment 2 Sahid Ferdjaoui 2018-02-20 03:46:53 EST
(In reply to Martin Schuppert from comment #1)
> seems we might have to add "hw_scsi_model=virtio-scsi" as well.

Yes you made good point.

Can you share the packages versions used? It might be related to bug 1495158 as you have noticed to me on IRC.
Comment 3 PURANDHAR SAIRAM MANNIDI 2018-02-20 03:48:20 EST
openstack-nova-14.0.8-5.el7ost
Comment 4 PURANDHAR SAIRAM MANNIDI 2018-02-20 03:51:41 EST
So,Do we need to set hw_scsi_model=virtio-scsi as mandatory for hw_disk_bus=scsi?
Comment 5 Sahid Ferdjaoui 2018-02-20 03:55:13 EST
Yes, for libvirt driver I think we only support SCSI with a virtio-scsi controller.
Comment 6 PURANDHAR SAIRAM MANNIDI 2018-02-20 04:09:37 EST
Nova version prior to openstack-nova-14.0.8-2.el7ost (including) works with just setting hw_disk_bus=scsi in the image property. Post openstack-nova-14.0.8-4.el7ost, we have to set both hw_scsi_model=virtio-scsi  and hw_disk_bus=scsi to make sure instance spawns with ephemeral disk.

Note: Using hugepages and CPU pinning can alter the results.
Comment 7 Sahid Ferdjaoui 2018-02-21 03:15:28 EST
(In reply to PURANDHAR SAIRAM MANNIDI from comment #6)
> Note: Using hugepages and CPU pinning can alter the results.

What do you mean by that? can you provide more information I don't see the relation between HP/pinning and SCSI controller.

Also, can I suggest to decrease the severity since it was a configuration issue?
Comment 8 PURANDHAR SAIRAM MANNIDI 2018-02-21 17:36:44 EST
Yes, there is no relation to it.

we can close this ticket as we have updated the documentation with a note saying that we need hw_scsi_model=virtio-scsi when hw_disk_bus=scsi is set.
Comment 9 Sahid Ferdjaoui 2018-03-07 02:53:32 EST
A patch sent upstream is going to address this issue:

  https://review.openstack.org/#/c/538310/

Do you have possibility to make a test?
Comment 15 Lon Hohberger 2018-05-22 06:36:24 EDT
According to our records, this should be resolved by openstack-nova-14.1.0-22.el7ost.  This build is available now.
Comment 19 Alex 2018-09-03 03:58:45 EDT
Hi there,

If this bug requires doc text for errata release, please set the 'Doc Type' and provide draft text according to the template in the 'Doc Text' field.

The documentation team will review, edit, and approve the text.

If this bug does not require doc text, please set the 'requires_doc_text' flag to -.

Thanks,
Alex
Comment 22 errata-xmlrpc 2018-09-17 12:50:53 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:2714

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