官术网_书友最值得收藏!

How to do it...

Let's see how a snapshot works with Ceph:

  1. To test the snapshot functionality of Ceph, let's create a file on the block device that we created earlier:

 # echo "Hello Ceph This is snapshot test" 
> /mnt/ceph-disk1/snapshot_test_file
  1. Create a snapshot for the Ceph Block Device. Syntax for the same is as follows:
        # rbd snap create <pool name>/<image name>@<snap name>
# rbd snap create rbd/rbd1@snapshot1
  1. To list the snapshots of an image, use the following syntax:
        # rbd snap ls <pool name>/<image name>
# rbd snap ls rbd/rbd1
  1. To test the snapshot restore functionality of Ceph RBD, let's delete files from the filesystem:
 # rm -f /mnt/ceph-disk1/*
  1. We will now restore the Ceph RBD snapshot to get back the files that we deleted in the last step. Please note that a rollback operation will overwrite the current version of the RBD image and its data with the snapshot version. You should perform this operation carefully. The syntax is as follows:
        # rbd snap rollback <pool-name>/<image-name>@<snap-name>
# umount /mnt/ceph-disk1
# rbd snap rollback rbd/rbd1@snapshot1 --name client.rbd

Prior to the rollback operation the filesystem was unmounted to validate a refreshed filesystem state after the rollback.

  1. Once the snapshot rollback operation is completed, remount the Ceph RBD filesystem to refresh the filesystem state. You should be able to get your deleted files back:
         # mount /dev/rbd0 /mnt/ceph-disk1
# ls -l /mnt/ceph-disk1
  1. You are also able to rename snapshots if you so choose. The syntax is as follows:
        #rbd snap rename <pool-name>/<image-name>@<original-snapshot-
name> <pool-name>/<image-name>@<new-snapshot-name>

# rbd snap rename rbd/rbd1@snapshot1 rbd/rbd1@snapshot1_new
  1. When you no longer need snapshots, you can remove a specific snapshot using the following syntax. Deleting the snapshot will not delete your current data on the Ceph RBD image:
        # rbd snap rm <pool-name>/<image-name>@<snap-name>
# rbd snap rm rbd/rbd1@snapshot1 --name client.rbd
  1. If you have multiple snapshots of an RBD image and you wish to delete all the snapshots with a single command, then use the purge subcommand. The syntax is as follows:
         # rbd snap purge <pool-name>/<image-name>
# rbd snap purge rbd/rbd1 --name client.rbd
主站蜘蛛池模板: 罗定市| 鹤峰县| 海伦市| 怀安县| 罗江县| 霍邱县| 确山县| 定边县| 沭阳县| 丰顺县| 宁强县| 襄汾县| 余干县| 张家界市| 和平区| 辽中县| 乳山市| 武冈市| 卫辉市| 故城县| 甘孜| 津南区| 军事| 神木县| 安龙县| 开阳县| 巴东县| 芦溪县| 牡丹江市| 昌江| 新田县| 崇文区| 新宁县| 壶关县| 达州市| 文水县| 都江堰市| 莱州市| 湾仔区| 海盐县| 安仁县|