[openstack-dev] Proposal for instance-level snapshots in Nova
Christopher Yeoh
cbkyeoh at gmail.com
Tue Jan 7 02:59:32 UTC 2014
On Tue, Jan 7, 2014 at 7:50 AM, Jon Bernard <jbernard at tuxion.com> wrote:
> Hello all,
>
> I would like to propose instance-level snapshots as a feature for
> inclusion in Nova. An initial draft of the more official proposal is
> here [1], blueprint is here [2].
>
> In a nutshell, this feature will take the existing create-image
> functionality a few steps further by providing the ability to take
> a snapshot of a running instance that includes all of its attached
> volumes. A coordinated snapshot of multiple volumes for backup
> purposes. The snapshot operation should occur while the instance is in
> a paused and quiesced state so that each volume snapshot is both
> consistent within itself and with respect to its sibling snapshots.
>
> I still have some open questions on a few topics:
>
> * API changes, two different approaches come to mind:
>
> 1. Nova already has a command `createImage` for creating an image of an
> existing instance. This command could be extended to take an
> additional parameter `all-volumes` that signals the underlying code
> to capture all attached volumes in addition to the root volume. The
> semantic here is important, `createImage` is used to create
> a template image stored in Glance for later reuse. If the primary
> intent of this new feature is for backup only, then it may not be
> wise to overlap the two operations in this way. On the other hand,
> this approach would introduce the least amount of change to the
> existing API, requiring only modification of an existing command
> instead of the addition of an entirely new one.
>
> 2. If the feature's primary use is for backup purposes, then a new API
> call may be a better approach, and leave `createImage` untouched.
> This new call could be called `createBackup` and take as a parameter
> the name of the instance. Although it introduces a new member to the
> API reference, it would allow this feature to evolve without
> introducing regressions in any existing calls. These two calls could
> share code at some point in the future.
>
Note there already is a createBackup/create_backup API call implemented in
the admin_actions
extension (in V3 API it is being separated into its own extension
https://review.openstack.org/#/c/62280/)
It doesn't do the all volumes snapshot that you want though. There's a
small window (basically end of icehouse) to make an incompatible change in
the V3 API if that would be the best way to do it.
Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140107/c163e9c1/attachment.html>
More information about the OpenStack-dev
mailing list