vmware: Cannot create a volume from image on vSan datastores

Bug #1229998 reported by Sreeram Yerrapragada on 2013-09-24
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
High
Subbu

Bug Description

2013-09-22 20:02:33.088 ERROR cinder.openstack.common.rpc.amqp [req-34ba085d-3144-4d4e-834f-cc5a03e25225 9f996b6250e94616a7a931568f901a8a c8a65072688645f9820d201bf3436f99] Exception during message handling
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp Traceback (most recent call last):
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/openstack/common/rpc/amqp.py", line 441, in _process_data
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp **args)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/openstack/common/rpc/dispatcher.py", line 148, in dispatch
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp return getattr(proxyobj, method)(ctxt, **kwargs)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/utils.py", line 804, in wrapper
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp return func(self, *args, **kwargs)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/volume/manager.py", line 227, in create_volume
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp flow.run(context.elevated())
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/taskflow/decorators.py", line 105, in wrapper
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp return f(self, *args, **kwargs)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/taskflow/patterns/linear_flow.py", line 232, in run
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp run_it(r)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/taskflow/patterns/linear_flow.py", line 212, in run_it
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp self.rollback(context, cause)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp self.gen.next()
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/taskflow/patterns/linear_flow.py", line 172, in run_it
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp result = runner(context, *args, **kwargs)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/taskflow/utils.py", line 260, in __call__
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp self.result = self.task(*args, **kwargs)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/volume/flows/create_volume/__init__.py", line 1468, in __call__
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp **volume_spec)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/volume/flows/create_volume/__init__.py", line 1431, in _create_from_image
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp image_id, image_location, image_service)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp File "/opt/stack/cinder/cinder/volume/flows/create_volume/__init__.py", line 1345, in _copy_image_to_volume
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp raise exception.ImageCopyFailure(reason=ex)
2013-09-22 20:02:33.088 TRACE cinder.openstack.common.rpc.amqp ImageCopyFailure: Failed to copy image to volume: File [vsanDatastore] 1faf3f52-1b53-5e7f-2805-0050569172da/volume-80d2aab3-f4c9-436b-86a0-b090fe763c6d-flat.vmdk was not found

tags: added: vmdk
Changed in cinder:
assignee: nobody → Subbu (subramanian-neelakantan)

Fix proposed to branch: master
Review: https://review.openstack.org/51839

Changed in cinder:
status: New → In Progress
Changed in cinder:
assignee: Subbu (subramanian-neelakantan) → Vui Lam (vui)
Vui Lam (vui) on 2013-10-25
Changed in cinder:
assignee: Vui Lam (vui) → nobody
assignee: nobody → Subbu (subramanian-neelakantan)
Changed in cinder:
importance: Undecided → High

Reviewed: https://review.openstack.org/51839
Committed: http://github.com/openstack/cinder/commit/7b64653931628328bd5d70b0cdea8952e6c709f8
Submitter: Jenkins
Branch: master

commit 7b64653931628328bd5d70b0cdea8952e6c709f8
Author: Subramanian Neelakantan <email address hidden>
Date: Fri Oct 11 08:54:18 2013 +0530

    Using HttpNfcLease to transfer vmdk files.

    The current VMware driver supported only "sparse" and "preallocated"
    vmware_disktype property set in a "vmdk" glance image. Both of these were just
    copied over as *-flat.vmdk files into the vmfs or nfs file system of the
    underlying datastore. This was used during copy_image_to_volume() api.
    Unfortunately for a vsan datastore this work flow breaks since there is no
    access to the flat vmdk file in the underlying datastore.

    This patch introduces a new vmware_disktype for a glance image called
    "streamOptimized". This is a format generated when a VM/vApp is exported using
    the HttpNfc APIs. AS the name suggests this is a highly optimized format for
    streaming in chunks and thus would result in much faster upload / download
    speeds. The driver's copy_volume_to_image() implementation now always uploads
    the vmdk contents using HttpNfc api so that the glance image ends up in the
    "streamOptimized" disk type. Also the driver's copy_image_to_volume()
    implementation now understands a "streamOptmized" disk type and uses HttpNfc to
    import that vmdk into a backing VM.

    Note that the same "streamOptmized" glance image format will also be supported
    by VMware nova driver. This change is in a different patch -
    https://review.openstack.org/#/c/53976/

    Patch Set 4: Removing changes to requirements.txt that got in by mistake.
    Patch Set 5: Fixing a small bug around progress updates.
    Patch Set 6: Addressing comments from Avishay.

    Fixes bug: 1229998

    Change-Id: I6b55945cb61efded826e0bcf7e2a678ebbbbd9d3

Changed in cinder:
status: In Progress → Fix Committed
Changed in cinder:
milestone: none → icehouse-1
Thierry Carrez (ttx) on 2013-12-04
Changed in cinder:
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2014-04-17
Changed in cinder:
milestone: icehouse-1 → 2014.1
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers