[openstack-dev] [Glance] Image Cloning to other regions Session Summary

Nikhil Komawar nikhil.komawar at rackspace.com
Thu Apr 25 00:30:11 UTC 2013



Topic and short description :-

Topic: Image Cloning to Other Regions
Description:
Many Cloud providers have clouds in segregated "regions".  AWS just announced the ability for customers to copy images to other regions -- we want to implement the same capability in OpenStack.  One difference would be that we'd like to have the same UUID in every region (because the "bits" of the image would be the same).

It would make sense for this to be a Swift-to-Swift transfer, so we'd need to cooperate with Swift on this. (Swift doesn't currently have anything like this for individual files; it's currently a full-container transfer.)  The reason we're proposing it as a Glance topic is:

it would make sense for Glance to be the endpoint for this service (once Glance is ready for exposure in public clouds)

we want this to be a user operation, not an admin operation

it would make sense that people will want some kind of metadata sync (determining exactly what this would be is part of the focus of this session)

Glance may need some enhancements with respect to API calls and notifications to support this


Link to etherpad discussion

[https://etherpad.openstack.org/havana-image-cloning-to-other-regions] https://etherpad.openstack.org/havana-image-cloning-to-other-regions
 
Summary of summit consensus (if any) about how to proceed

The Rackspace proposal to have the same UUID in each region was rejected.  Instead, the checksum image property will be indexed so that users can search for an image by specifying the checksum.
[https://blueprints.launchpad.net/glance/+spec/index-using-checksum-image-property] https://blueprints.launchpad.net/glance/+spec/index-using-checksum-image-property
guess the URL will be "/images?checksum=<value>" (hopefully returning a list containing at most one element)
The call will use a "pull" model, i.e., will be made in the target region
discussion
makes it easy to return an image URL that can be polled, but what to do when it turns out the UUID doesn't exist or the user doesn't have permission to copy?  Can put the image into an error state, but this isn't helpful telling the user what the problem is
what will the call look like?  (The regions a user has access to should be in the user's service catalog)
requires more discussion on [https://etherpad.openstack.org/clone-image-across-regions] https://etherpad.openstack.org/clone-image-across-regions
[https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions] https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions
All appropriate image properties/metadata will be propagated to the target glance from the source glance.
no ongoing synchronization
requires more discussion on [https://etherpad.openstack.org/clone-image-across-regions] https://etherpad.openstack.org/clone-image-across-regions
[https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions] https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions
The image data should travel directly from source backend store to target backend store.
Swift-to-swift for first implementation? (Exception "operation not supported" for other stores?)
discussion
Since it's an async operation, have to figure out how error states will be propagated back to the caller
requires more discussion on [https://etherpad.openstack.org/copying-image-data-across-regions] https://etherpad.openstack.org/copying-image-data-across-regions
[https://blueprints.launchpad.net/glance/+spec/copying-image-data-across-regions] https://blueprints.launchpad.net/glance/+spec/copying-image-data-across-regions

 
List of blueprints and assignees (if any)

[https://blueprints.launchpad.net/glance/+spec/image-cloning-to-other-regions] https://blueprints.launchpad.net/glance/+spec/image-cloning-to-other-regions

status: discussion

assignee: none

[https://blueprints.launchpad.net/glance/+spec/index-using-checksum-image-property] https://blueprints.launchpad.net/glance/+spec/index-using-checksum-image-property

status: discussion

assignee: none

[https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions] https://blueprints.launchpad.net/glance/+spec/clone-image-across-regions

status: discussion

assignee: none

[https://blueprints.launchpad.net/glance/+spec/copying-image-data-across-regions] https://blueprints.launchpad.net/glance/+spec/copying-image-data-across-regions

status: discussion

assignee: none
 
thanks,
-Nikhil Komawar
(nikhil on #openstack-glance)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130424/250e3f73/attachment.html>


More information about the OpenStack-dev mailing list