rbd flatten扁平化镜像
rbd flattenrbd flatten vms/bb78d1b9-fea6-4cc7-b2ae-84178f1bde61_disk
Image flatten: 100% complete...done.
# rbd flatten vms/bb78d1b9-fea6-4cc7-b2ae-84178f1bde61_disk
Image flatten: 100% complete...done.
#
Connection closed by foreign host.
Disconnected from remote host(192.168.0.75) at 12:08:13.
Type `help' to learn how to use Xshell prompt.
Last login: Wed Nov3 11:25:03 2021 from 192.168.3.28
# rbd snapremoveimages/cceec6e8-29f7-4469-98d1-44131268b88b
rbd: snapshot name was not specified
# rbd lsimages/cceec6e8-29f7-4469-98d1-44131268b88b
rbd: namespace 'cceec6e8-29f7-4469-98d1-44131268b88b' does not exist.
rbd: listing images failed: (2) No such file or directory
# rbd infoimages/cceec6e8-29f7-4469-98d1-44131268b88b
rbd image 'cceec6e8-29f7-4469-98d1-44131268b88b':
size 4 GiB in 512 objects
order 23 (8 MiB objects)
snapshot_count: 1
id: 77979a703ad40e
block_name_prefix: rbd_data.77979a703ad40e
format: 2
features: layering
op_features:
flags:
create_timestamp: Wed Oct 20 13:43:42 2021
access_timestamp: Wed Nov3 11:55:36 2021
modify_timestamp: Wed Oct 20 13:43:42 2021
# rbd flattenimages/cceec6e8-29f7-4469-98d1-44131268b88b
Image flatten: 02021-11-03 12:46:57.994 7f1d249e4b00 -1 librbd::Operations: image has no parent
% complete...failed.
rbd: flatten error: (22) Invalid argument
flatten该克隆:
登录后复制
rbd flatten rbd_pool/test_cloneImage flatten: 100% complete...done.
查看快照的克隆
rbd children {pool-name}/{image-name}@{snapshot-name}
# rbd children rbd_pool/test_snap_clone@test_snaprbd_pool/test_clone
1.
取消快照保护
删除快照前,必须先取消保护。另外,你不可以删除被克隆镜像引用的快照,所以在你删除快照前,必须先摧毁/拍平(flatten)此快照的各个克隆
rbd snap unprotect {pool-name}/{image-name}@{snapshot-name}
# rbd snap unprotect rbd_pool/test_snap_clone@test_snap 2020-10-26 16:07:46.593 7fe6e5ffb700 -1 librbd::SnapshotUnprotectRequest: cannot unprotect: at least 1 child(ren) in pool 'rbd_pool' 2020-10-26 16:07:46.593 7fe6e5ffb700 -1 librbd::SnapshotUnprotectRequest: encountered error: (16) Device or resource busy 2020-10-26 16:07:46.593 7fe6e5ffb700 -1 librbd::SnapshotUnprotectRequest: 0x55588f39c320 should_complete_error: ret_val=-16 rbd: unprotecting snap failed: (16) Device or resource busy 2020-10-26 16:07:46.595 7fe6e5ffb700 -1 librbd::SnapshotUnprotectRequest: 0x55588f39c320 should_complete_error: ret_val=-16
1.
可以看到该快照下有克隆,无法解除保护,需要先flatten:
查看快照的克隆:
rbd children rbd_pool/test_snap_clone@test_snaprbd_pool/test_clone
1.
flatten该克隆:
rbd flatten rbd_pool/test_cloneImage flatten: 100% complete...done.
1.
继续解除保护:
rbd snap unprotect rbd_pool/test_snap_clone@test_snap
1.
拍平克隆镜像
克隆出来的映像仍保留了对父快照的引用。要从子克隆删除这些到父快照的引用,你可以把快照的信息复制给子克隆,也就是“拍平”它。拍平克隆映像的时间随快照尺寸增大而增加。要删除快照,必须先拍平子映像。
rbd flatten {pool-name}/{image-name}
rbd flatten rbd_pool/test_cloneImage flatten: 100% complete...done.
1.
Note:因为拍平的映像包含了快照的所有信息,所以拍平的映像占用的存储空间会比分层克隆要大
页:
[1]