It looks like it's not an issue in nova nor cinder.

If you take the XML that nova is using (if you turn debug log, you'll see it in 
nova-compute.log):
<disk type="network" device="disk">
  <driver name="qemu" type="raw" cache="writeback"/>
  <source protocol="rbd" 
name="nova/volume-030ske6e-9348-4740-94dc-c8624b64ac0e">
    <host name="192.168.225.9" port="6789"/>
    <host name="192.168.225.10" port="6789"/>
    <host name="192.168.225.23" port="6789"/>
  </source>
  <auth username="nova">
    <secret type="ceph" uuid="6fccyte3-aa5c-4b5e-9627-88akwy82b131"/>
  </auth>
  <target bus="scsi" dev="sda"/>
  <serial>025aa02e-9348-4740-94dc-c8624444ac0e</serial>
</disk>

And try to attach it to the domain manually:
# virsh attach-device instance-0000080a test-dev.xml --live
error: Failed to attach device from test-dev.xml
error: internal error: unable to execute QEMU command 'object-add': attempt to 
add duplicate property 'scsi0-0-0-0-secret0' to object (type 'container')

You will see the same error. It's most likely a bug in libvirt, which in
CentOS 7 is at version 2.0.0.

Reported libvirt bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1459690

** Bug watch added: Red Hat Bugzilla #1459690
   https://bugzilla.redhat.com/show_bug.cgi?id=1459690

** Changed in: nova
       Status: New => Invalid

** Changed in: nova
       Status: Invalid => Confirmed

-- 
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/1678694

Title:
  Can't attach volume to volume-backed instance

Status in OpenStack Compute (nova):
  Confirmed

Bug description:
  When trying to attach a cinder volume to an instance that was launched
  with a cinder root drive, the attachment silently fails both on the
  CLI and in Horizon. From the nova-compute.log on the hypervisor,
  "libvirtError: internal error: unable to execute QEMU command 'object-
  add': attempt to add duplicate property 'scsi0-0-0-0-secret0' to
  object (type 'container')" - so it seems like nova isn't aware of the
  existing cinder root drive.

  Steps to reproduce:
  1) Launch an instance (either via CLI or in Horizon), specifying a cinder 
volume as the root
  2) Create a volume and try to attach it to the instance

  Expected outcome:
  Second volume attaches successfully to the instance

  Actual outcome:
  Volume silently fails to attach, remains in "available" state, error log as 
above in nova-compute.log

  Environment
  CentOS 7.2
  Mitaka (13.1.2-1.el7)
  libvirt+kvm
  ceph storage

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1678694/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to