7b64653931
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 |
||
---|---|---|
.. | ||
__init__.py | ||
api.py | ||
error_util.py | ||
io_util.py | ||
read_write_util.py | ||
vim.py | ||
vim_util.py | ||
vmdk.py | ||
vmware_images.py | ||
volumeops.py |