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
を共通のノードにコピーします。[root@rbd1-client /]# scp /etc/ceph/ceph.conf root@10.0.67.67:/etc/ceph/c1.conf root@10.0.67.67's password: ceph.conf 100% 263 1.2MB/s 00:00 [root@rbd1-client /]# scp /etc/ceph/ceph.client.admin.keyring root@10.0.67.67:/etc/ceph/c1.keyring root@10.0.67.67's password: ceph.client.admin.keyring
クラスター c2 の
ceph.conf
およびceph.client.admin.keyring
を共通のノードにコピーします。[root@rbd2-client]# scp /etc/ceph/ceph.conf root@10.0.67.67:/etc/ceph/c2.conf ceph.conf 100% 261 864.5KB/s 00:00 [root@rbd2-client]# scp /etc/ceph/ceph.client.admin.keyring root@10.0.67.67:/etc/ceph/c2.keyring root@10.0.67.67's password: ceph.client.admin.keyring
ストレージクラスター内でライブマイグレーションを準備します。
構文
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/SOURCE_IMAGE_NAME
例
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/sourceimage1
OR
ソースイメージの名前を変更する場合は、以下のコマンドを実行します。
構文
rbd migration prepare SOURCE_POOL_NAME/SOURCE_IMAGE_NAME TARGET_POOL_NAME/NEW_SOURCE_IMAGE_NAME
例
[ceph: root@rbd-client /]# rbd migration prepare sourcepool1/sourceimage1 targetpool1/newsourceimage1
この例では、
newsourceimage1
は名前が変更されたソースイメージです。次のコマンドを使用すると、ライブマイグレーションプロセスの現在の状態を確認できます。
構文
rbd status TARGET_POOL_NAME/SOURCE_IMAGE_NAME
例
[ceph: root@rbd-client /]# rbd status targetpool1/sourceimage1 Watchers: none Migration: source: sourcepool1/sourceimage1 (adb429cb769a) destination: targetpool2/testimage1 (add299966c63) state: prepared
重要移行プロセスで、ソースイメージは RBD ゴミ箱に移動され、誤用を回避します。
例
[ceph: root@rbd-client /]# rbd info sourceimage1 rbd: error opening image sourceimage1: (2) No such file or directory
例
[ceph: root@rbd-client /]# rbd trash ls --all sourcepool1 adb429cb769a sourceimage1