Chapter 8. Snapshot Basics
The following procedures demonstrate how to create, list, and remove snapshots using the rbd
command on the command line.
8.1. Create Snapshot Copy linkLink copied to clipboard!
To create a snapshot with rbd
, specify the snap create
option, the pool name and the image name:
rbd --pool {pool-name} snap create --snap {snap-name} {image-name} rbd snap create {pool-name}/{image-name}@{snap-name}
rbd --pool {pool-name} snap create --snap {snap-name} {image-name}
rbd snap create {pool-name}/{image-name}@{snap-name}
For example:
rbd --pool rbd snap create --snap snapname foo rbd snap create rbd/foo@snapname
rbd --pool rbd snap create --snap snapname foo
rbd snap create rbd/foo@snapname
8.2. List Snapshots Copy linkLink copied to clipboard!
To list snapshots of an image, specify the pool name and the image name:
rbd --pool {pool-name} snap ls {image-name} rbd snap ls {pool-name}/{image-name}
rbd --pool {pool-name} snap ls {image-name}
rbd snap ls {pool-name}/{image-name}
For example:
rbd --pool rbd snap ls foo rbd snap ls rbd/foo
rbd --pool rbd snap ls foo
rbd snap ls rbd/foo
8.3. Rollback Snapshot Copy linkLink copied to clipboard!
To rollback to a snapshot with rbd
, specify the snap rollback
option, the pool name, the image name and the snap name:
rbd --pool {pool-name} snap rollback --snap {snap-name} {image-name} rbd snap rollback {pool-name}/{image-name}@{snap-name}
rbd --pool {pool-name} snap rollback --snap {snap-name} {image-name}
rbd snap rollback {pool-name}/{image-name}@{snap-name}
For example:
rbd --pool rbd snap rollback --snap snapname foo rbd snap rollback rbd/foo@snapname
rbd --pool rbd snap rollback --snap snapname foo
rbd snap rollback rbd/foo@snapname
Rolling back an image to a snapshot means overwriting the current version of the image with data from a snapshot. The time it takes to execute a rollback increases with the size of the image. It is faster to clone from a snapshot than to rollback an image to a snapshot, and it is the preferred method of returning to a pre-existing state.
8.4. Delete a Snapshot Copy linkLink copied to clipboard!
To delete a snapshot with rbd
, specify the snap rm
option, the pool name, the image name and the username:
rbd --pool {pool-name} snap rm --snap {snap-name} {image-name} rbd snap rm {pool-name}/{image-name}@{snap-name}
rbd --pool {pool-name} snap rm --snap {snap-name} {image-name}
rbd snap rm {pool-name}/{image-name}@{snap-name}
For example:
rbd --pool rbd snap rm --snap snapname foo rbd snap rm rbd/foo@snapname
rbd --pool rbd snap rm --snap snapname foo
rbd snap rm rbd/foo@snapname
Ceph OSDs delete data asynchronously, so deleting a snapshot doesn’t free up the disk space immediately.
8.5. Purge Snapshots Copy linkLink copied to clipboard!
To delete all snapshots for an image with rbd
, specify the snap purge
option and the image name:
rbd --pool {pool-name} snap purge {image-name} rbd snap purge {pool-name}/{image-name}
rbd --pool {pool-name} snap purge {image-name}
rbd snap purge {pool-name}/{image-name}
For example:
rbd --pool rbd snap purge foo rbd snap purge rbd/foo
rbd --pool rbd snap purge foo
rbd snap purge rbd/foo