将 RBD 转换为格式 V2

转载

简单的导入/导出

在同步和重命名 rbd 之前,请记住停止 IO。

1
2
3
$ rbd export rbd/myrbd - | rbd import --image-format 2 - rbd/myrbd_v2
$ rbd mv rbd/myrbd rbd/myrbd_old
$ rbd mv rbd/myrbd_v2 rbd/myrbd

检查

1
2
3
4
5
6
7
$ rbd info rbd/myrbd
$ rbd image 'myrbd':
  size 102400 KB in 25 objects
  order 22 (4096 KB objects)
  block_name_prefix: rbd_data.24f72ae8944a
  format: 2
  features: layering

使用 DIFF

对于第一次同步,您不需要停止设备上的 IO。创建快照,并同步到该快照。

1
2
3
$ rbd snap create rbd/myrbd@snap1
$ rbd export rbd/myrbd@snap1 - | rbd import --image-format 2 - rbd/myrbd_v2
$ rbd snap create rbd/myrbd_v2@snap1

检查快照

1
$ rbd snap ls rbd/myrbd_v2

同步差异:在最后一次同步之前停止 IO

1
2
$ rbd snap create rbd/myrbd@snap2
$ rbd export-diff --from-snap snap1 rbd/myrbd@snap2 - | rbd import-diff - rbd/myrbd_v2