5.11. ブロックデバイススナップショットのクローン作成
ブロックデバイスのスナップショットを複製すると、データを重複させずに既存のブロックデバイスのスナップショットの書き込み可能なコピーを効率的に作成できます。
要件に応じて、単一のブロックデバイスのスナップショットまたはグループブロックデバイスのスナップショットを複製できます。
5.11.1. 単一のブロックデバイススナップショットのクローン作成
ブロックデバイスのスナップショットのクローンを作成して、同じプール内または別のプール内に、スナップショットの子イメージ (読み取りまたは書き込みイメージ) を作成します。ユースケースの例として、読み取り専用のイメージおよびスナップショットをプールでテンプレートとして維持し、別のプールで書き込み可能なクローンとして維持します。
クローン v2 では、スナップショットの保護は必要ありません。
前提条件
始める前に、次の前提条件が満たされていることを確認してください。
- 稼働中の Red Hat Ceph Storage クラスターがある。
- ノードへのルートレベルのアクセス。
手順
スナップショットのクローンを作成するには、親プール、スナップショット、子プール、およびイメージ名を指定する必要があります。
構文
rbd clone --pool POOL_NAME --image PARENT_IMAGE --snap SNAP_NAME --dest-pool POOL_NAME --dest CHILD_IMAGE_NAME rbd clone POOL_NAME/PARENT_IMAGE@SNAP_NAME POOL_NAME/CHILD_IMAGE_NAME
例
[root@rbd-client ~]# rbd clone --pool pool1 --image image1 --snap snap1 --dest-pool pool1 --dest childimage1 [root@rbd-client ~]# rbd clone pool1/image1@snap1 pool1/childimage1
5.11.2. ブロックデバイスグループのスナップショットのクローン作成
rbd clone
コマンドの最新の --snap-id
オプションを使用して rbd group snap create
コマンドで作成されたグループスナップショットから新しいグループを複製できます。
前提条件
始める前に、次の前提条件が満たされていることを確認してください。
- Red Hat Storage Ceph クラスターを実行している。
- ノードへの root レベルのアクセス。
- グループのスナップショット。
グループスナップショットからのクローン作成は、clone v2 --rbd-default-clone-format 2
でのみサポートされます。
例
[root@rbd-client]# ] rbd clone --snap-id 4 pool1/image1 pool1/i1clone1 --rbd-default-clone-format 2
手順
グループスナップショットのスナップ ID を取得します。
構文
rbd snap ls --all POOL_NAME/PARENT_IMAGE_NAME
次の例では、
SNAPID
が4
とNAMESPACE
がグループとして一覧表示されているgroup
スナップショットがあります。例
[root@rbd-client] # rbd snap ls --all pool1/image1 SNAPID NAME SIZE PROTECTED TIMESTAMP NAMESPACE 3 snap1 10 GiB yes Thu Jul 25 06:21:33 2024 user 4 .group.2_39d 10 GiB Wed Jul 31 02:28:49 2024 group (pool1/group1@p1g1snap1)
--snap-id
オプションを使用して、グループスナップショットのクローンを作成します。構文
rbd clone --snap-id SNAP_ID POOL_NAME/IMAGE_NAME POOL_NAME/CLONE_IMAGE_NAME --rbd-default-clone-format 2
例
[root@rbd-client]# rbd clone --snap-id 4 pool1/image1 pool2/clone2 --rbd-default-clone-format 2
検証手順
rbd ls
コマンドを使用して、グループスナップショットのクローンイメージが正常に作成されたことを確認します。例
[root@rbd-client]# rbd ls -p pool2 clone2