I think this one is partially invalid/duplicate/fixed in release. I don't think this property exists hw_scsi_controller=virtio-scsi the good one is hw_scsi_model=virtio-scsi
because of that legacy scsi support is used instead of virtio-scsi, then we fall into that bug that have been fixed and backport till Pike. https://bugs.launchpad.net/nova/+bug/1792077 https://review.opendev.org/#/c/611974/ ** Changed in: nova Status: New => Fix Released -- 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/1795747 Title: libvirtError: unsupported configuration: Found duplicate drive address for disk with target name 'sda' controller='0' bus='0' target='0' unit='0' when try to create an instance with two scsi volumes Status in OpenStack Compute (nova): Fix Released Bug description: Description =========== Error occurs when an instance with two volumes (created from scsi image). From nova-compute.log, the following information related to volume attachment (address has no bus, target and unit infos): <disk type="block" device="disk"> <driver name="qemu" type="raw" cache="none" io="native"/> <source dev="/dev/disk/by-path/ip-10.0.0.11:3260-iscsi-iqn.2010-10.org.openstack:volume-8fc346e1-fdf4-420a-b6cd-5ee97e97a5b8-lun-0"/> <target bus="scsi" dev="sda"/> <serial>8fc346e1-fdf4-420a-b6cd-5ee97e97a5b8</serial> <address type="drive" controller="0"/> </disk> <disk type="block" device="disk"> <driver name="qemu" type="raw" cache="none" io="native"/> <source dev="/dev/disk/by-path/ip-10.0.0.11:3260-iscsi-iqn.2010-10.org.openstack:volume-7f3b3f37-8449-4fc1-9d8d-0ba691aeacfb-lun-0"/> <target bus="scsi" dev="sdb"/> <serial>7f3b3f37-8449-4fc1-9d8d-0ba691aeacfb</serial> <address type="drive" controller="0"/> </disk> But when instance is created with only one volume and second volume is attached later (with openstack volume attach .. command), it's configured differently: <disk type='block' device='disk'> <driver name='qemu' type='raw' cache='none' io='native'/> <source dev='/dev/sdc'/> <backingStore/> <target dev='sda' bus='scsi'/> <serial>20fb8417-3ece-46f0-affb-d80800a885dd</serial> <alias name='scsi0-0-0-0'/> <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/sdd'/> <backingStore/> <target dev='sdb' bus='scsi'/> <serial>2d087117-bc51-48ae-9c4d-00950deeb617</serial> <alias name='scsi0-0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> Steps to reproduce ================== 1 - Using an admin openstack account, create a cirros image with scsi properties: wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img openstack image create "cirros_scsi" \ --file cirros-0.3.5-x86_64-disk.img \ --disk-format qcow2 --container-format bare \ --property hw_disk_bus=scsi \ --property hw_scsi_controller=virtio-scsi \ --public 2 - Create two volumes (volume-backed image) using cirros_scsi image: openstack volume create --size 1 volume-0 --image cirros_scsi openstack volume create --size 1 volume-1 --image cirros_scsi 3 - Create an instance using two volumes (error scenario): v1id=`openstack volume show volume-0 | grep " id " | awk '{print $4}'` && echo $v1id v2id=`openstack volume show volume-1 | grep " id " | awk '{print $4}'` && echo $v2id nova boot --flavor m1.nano \ --block-device source=volume,id=$v1id,shutdown=preserve,bootindex=0 \ --block-device source=volume,id=$v2id,shutdown=preserve,bootindex=1 \ --nic net-id=<network_id> \ --key <keypair> instance01 4 - Check instance openstack server list openstack volume list Expected result =============== Instance should be created normally; Actual result ============= (openstack) server list +--------------------------------------+------------+--------+----------+-------+---------+ | ID | Name | Status | Networks | Image | Flavor | +--------------------------------------+------------+--------+----------+-------+---------+ | 6717d471-2092-48c8-8a4f-463ff8afc5bb | instance01 | ERROR | | | m1.nano | +--------------------------------------+------------+--------+----------+-------+---------+ root@cldsrv02 ~]# openstack server show instance01 -f shell | grep fault fault="{u'message': u'Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 6717d471-2092-48c8-8a4f-463ff8afc5bb.', u'code': 500, u'details': u' File "/usr/lib/python2.7/site-packages/nova/conductor/manager.py", line 580, in build_instances\n raise exception.MaxRetriesExceeded(reason=msg)\n', u'created': u'2018-10-02T21:24:23Z'}" Error reported in /var/log/nova/nova-compute.log: lugin='linux_bridge',port_profile=<?>,preserve_on_delete=False,vif_name='tap7946d21b-8f') 2018-10-02 17:24:09.694 17390 ERROR nova.virt.libvirt.guest [req-6105a653-1bdd-4812-83a5-2f68bf3e4b7a f04ef8cc6c7c46f782488ff162dcdef2 bf7678e543da4c4a9703a0196efda6e9 - default default] Error defining a guest with XML: <domain type="qemu"> <uuid>6717d471-2092-48c8-8a4f-463ff8afc5bb</uuid> <name>instance-00000008</name> <memory>65536</memory> <vcpu>1</vcpu> <metadata> <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0"> <nova:package version="17.0.5-1.el7"/> <nova:name>instance01</nova:name> <nova:creationTime>2018-10-02 21:24:07</nova:creationTime> <nova:flavor name="m1.nano"> <nova:memory>64</nova:memory> <nova:disk>1</nova:disk> <nova:swap>0</nova:swap> <nova:ephemeral>0</nova:ephemeral> <nova:vcpus>1</nova:vcpus> </nova:flavor> <nova:owner> <nova:user uuid="7500c13b015449de99a66db93db1b697">admin</nova:user> <nova:project uuid="265f6aeb1ae746a887cc589c482b4929">admin</nova:project> </nova:owner> </nova:instance> </metadata> <sysinfo type="smbios"> <system> <entry name="manufacturer">RDO</entry> <entry name="product">OpenStack Compute</entry> <entry name="version">17.0.5-1.el7</entry> <entry name="serial">1235d097-6a37-4c00-a5e5-33ccae494775</entry> <entry name="uuid">6717d471-2092-48c8-8a4f-463ff8afc5bb</entry> <entry name="family">Virtual Machine</entry> </system> </sysinfo> <os> <type>hvm</type> <boot dev="hd"/> <smbios mode="sysinfo"/> </os> <features> <acpi/> <apic/> </features> <cputune> <shares>1024</shares> </cputune> <clock offset="utc"/> <cpu mode="host-model" match="exact"> <topology sockets="1" cores="1" threads="1"/> </cpu> <devices> <disk type="block" device="disk"> <driver name="qemu" type="raw" cache="none" io="native"/> <source dev="/dev/sdc"/> <target bus="scsi" dev="sda"/> <serial>0ce95aac-3205-4aa3-830b-c65113f0c9f7</serial> <address type="drive" controller="0"/> </disk> <disk type="block" device="disk"> <driver name="qemu" type="raw" cache="none" io="native"/> <source dev="/dev/sdd"/> <target bus="scsi" dev="sdb"/> <serial>08e55f7d-78e8-4e5a-bdfc-2f7ebcd0ee27</serial> <address type="drive" controller="0"/> </disk> <interface type="bridge"> <mac address="fa:16:3e:08:29:07"/> <model type="virtio"/> <driver name="qemu"/> <source bridge="brq77669d98-2b"/> <target dev="tap7946d21b-8f"/> </interface> <serial type="pty"> <log file="/var/lib/nova/instances/6717d471-2092-48c8-8a4f-463ff8afc5bb/console.log" append="off"/> </serial> <input type="tablet" bus="usb"/> <graphics type="vnc" autoport="yes" keymap="en-us" listen="10.0.0.11"/> <video> <model type="cirrus"/> </video> <memballoon model="virtio"> <stats period="10"/> </memballoon> </devices> </domain> : libvirtError: unsupported configuration: Found duplicate drive address for disk with target name 'sda' controller='0' bus='0' target='0' unit='0' 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [req-6105a653-1bdd-4812-83a5-2f68bf3e4b7a f04ef8cc6c7c46f782488ff162dcdef2 bf7678e543da4c4a9703a0196efda6e9 - default default] [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] Instance failed to spawn: libvirtError: unsupported configuration: Found duplicate drive address for disk with target name 'sda' controller='0' bus='0' target='0' unit='0' 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] Traceback (most recent call last): 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2251, in _build_resources 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] yield resources 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 2031, in _build_and_run_instance 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] block_device_info=block_device_info) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 3089, in spawn 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] destroy_disks_on_failure=True) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5614, in _create_domain_and_network 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] destroy_disks_on_failure) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__ 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] self.force_reraise() 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] six.reraise(self.type_, self.value, self.tb) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5583, in _create_domain_and_network 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] post_xml_callback=post_xml_callback) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5495, in _create_domain 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] guest = libvirt_guest.Guest.create(xml, self._host) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/guest.py", line 129, in create 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] encodeutils.safe_decode(xml)) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__ 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] self.force_reraise() 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] six.reraise(self.type_, self.value, self.tb) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/guest.py", line 125, in create 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] guest = host.write_instance_config(xml) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/host.py", line 829, in write_instance_config 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] domain = self.get_connection().defineXML(xml) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 186, in doit 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] result = proxy_call(self._autowrap, f, *args, **kwargs) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 144, in proxy_call 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] rv = execute(f, *args, **kwargs) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 125, in execute 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] six.reraise(c, e, tb) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 83, in tworker 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] rv = meth(*args, **kwargs) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3676, in defineXML 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] if ret is None:raise libvirtError('virDomainDefineXML() failed', conn=self) 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] libvirtError: unsupported configuration: Found duplicate drive address for disk with target name 'sda' controller='0' bus='0' target='0' unit='0' 2018-10-02 17:24:14.189 17390 ERROR nova.compute.manager [instance: 6717d471-2092-48c8-8a4f-463ff8afc5bb] Environment =========== Openstack release: Queens (all in one) root@cldsrv02 ~]# rpm -qa | grep nova openstack-nova-api-17.0.5-1.el7.noarch openstack-nova-placement-api-17.0.5-1.el7.noarch openstack-nova-common-17.0.5-1.el7.noarch openstack-nova-conductor-17.0.5-1.el7.noarch python2-novaclient-10.1.0-1.el7.noarch openstack-nova-compute-17.0.5-1.el7.noarch python-nova-17.0.5-1.el7.noarch openstack-nova-console-17.0.5-1.el7.noarch openstack-nova-novncproxy-17.0.5-1.el7.noarch openstack-nova-scheduler-17.0.5-1.el7.noarch [root@cldsrv02 ~]# Hypervisor: Libvirt + KVM: [root@cldsrv02 ~]# rpm -qa | grep -iE 'kvm|virt' qemu-kvm-common-ev-2.10.0-21.el7_5.4.1.x86_64 libvirt-daemon-driver-storage-scsi-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-interface-3.9.0-14.el7_5.8.x86_64 libvirt-client-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-core-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-rbd-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-network-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-disk-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-logical-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-secret-3.9.0-14.el7_5.8.x86_64 qemu-kvm-ev-2.10.0-21.el7_5.4.1.x86_64 libvirt-libs-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-qemu-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-iscsi-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-nwfilter-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-kvm-3.9.0-14.el7_5.8.x86_64 libvirt-python-3.9.0-1.el7.x86_64 libvirt-daemon-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-gluster-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-storage-mpath-3.9.0-14.el7_5.8.x86_64 libvirt-daemon-driver-nodedev-3.9.0-14.el7_5.8.x86_64 centos-release-virt-common-1-1.el7.centos.noarch virt-what-1.18-4.el7.x86_64 Storage type: LVM: [root@cldsrv02 ~]# rpm -qa | grep lvm lvm2-libs-2.02.177-4.el7.x86_64 lvm2-2.02.177-4.el7.x86_64 Networking: Neutron root@cldsrv02 ~]# rpm -qa | grep neutron openstack-neutron-linuxbridge-12.0.3-1.el7.noarch openstack-neutron-common-12.0.3-1.el7.noarch python2-neutron-lib-1.13.0-1.el7.noarch openstack-neutron-12.0.3-1.el7.noarch openstack-neutron-ml2-12.0.3-1.el7.noarch python-neutron-12.0.3-1.el7.noarch python2-neutronclient-6.7.0-1.el7.noarch To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1795747/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

