3.4. ライブマイグレーションプロセスの準備
同じ Red Hat Ceph Storage クラスター内にある RBD イメージのデフォルトのライブマイグレーションプロセスを作成できます。rbd migration prepare コマンドでは、rbd create コマンドと同じレイアウトオプションをすべて使用できます。rbd create コマンドでは、イミュータブルイメージのオンディスクレイアウトに変更を加えることができます。ディスク上のレイアウトのみを変更し、元のイメージ名を維持する場合は、migration_target 引数を省略します。ライブマイグレーションを準備する前に、ソースイメージを使用するクライアントをすべて停止する必要があります。読み取り/書き込みモードでイメージが開いている稼働中のクライアントが検出された場合には、prepare の手順は失敗します。prepare 手順が完了したら、新しいターゲットイメージを使用してクライアントを再起動することができます。
ソースイメージを使用してクライアントは再起動できないため、結果は失敗となります。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- ブロックデバイスプール 2 つ。
- ブロックデバイスイメージ 1 つ。
クローンされたイメージは、インポート中に暗黙的にフラット化され (--import-only パラメーターを使用)、別の Ceph クラスターに移行されると、ソースクラスター内のすべての親チェーンとの関連付けが解除されます。
手順
オプション: イメージをある Ceph クラスターから別の Ceph クラスターに移行する場合は、両方のクラスターの
ceph.confとceph.client.admin.keyringを共通ノードにコピーします。これにより、クライアントノードが移行のために両方のクラスターにアクセスできるようになります。例
クラスター c1 の
ceph.confおよびceph.client.admin.keyringを共通のノードにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスター c2 の
ceph.confおよびceph.client.admin.keyringを共通のノードにコピーします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ストレージクラスター内でライブマイグレーションを準備します。
構文
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/SOURCE_IMAGE_NAME
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/SOURCE_IMAGE_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/sourceimage1
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/sourceimage1Copy to Clipboard Copied! Toggle word wrap Toggle overflow OR
ソースイメージの名前を変更する場合は、以下のコマンドを実行します。
構文
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/NEW_SOURCE_IMAGE_NAME
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/NEW_SOURCE_IMAGE_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/newsourceimage1
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/newsourceimage1Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、
newsourceimage1は名前が変更されたソースイメージです。次のコマンドを使用すると、ライブマイグレーションプロセスの現在の状態を確認できます。
構文
rbd status TARGET_POOL_NAME/SOURCE_IMAGE_NAME
rbd status TARGET_POOL_NAME/SOURCE_IMAGE_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要移行プロセスで、ソースイメージは RBD ゴミ箱に移動され、誤用を回避します。
例
[ceph: root@rbd-client /]# rbd info sourceimage1 rbd: error opening image sourceimage1: (2) No such file or directory
[ceph: root@rbd-client /]# rbd info sourceimage1 rbd: error opening image sourceimage1: (2) No such file or directoryCopy to Clipboard Copied! Toggle word wrap Toggle overflow 例
[ceph: root@rbd-client /]# rbd trash ls --all sourcepool1 adb429cb769a sourceimage1
[ceph: root@rbd-client /]# rbd trash ls --all sourcepool1 adb429cb769a sourceimage1Copy to Clipboard Copied! Toggle word wrap Toggle overflow