24.2. FileStore から BlueStore への OSD の移行
FileStore から BlueStore に移行するのに、director は Ansible を使用してノード上のすべての OSD を削除して再作成します。director は、移行プロセスの前に容量の確認を行います。最後に、director は BlueStore バックエンドを使用して OSD を再デプロイします。
前提条件
正常な稼働中の Red Hat Ceph Storage (RHCS) 4 クラスター。コントローラーノードまたはスタンドアロンの Ceph MON ノード上の ceph MON コンテナーにおいて、以下のコマンドを入力してクラスターを確認することができます。
[root@overcloud-controller-1 ~]# podman exec -it ceph-mon-overcloud-controller-1 sh -c "ceph -s"
手順
CephAnsibleDisksConfig
パラメーターのosd_objectstore
がfilestore
にデフォルト設定されないようにします。いずれかのカスタム heat 環境ファイルにosd_objectstore
パラメーターが存在する場合は、bluestore
の値を明示的に定義する必要があります。parameter_defaults: CephAnsibleDisksConfig: devices: - /dev/sdb - /dev/sdc - /dev/sdd osd_scenario: lvm osd_objectstore: bluestore
注記ジャーナル等に対する特定の FileStore 設定がある場合は、適切に設定を更新するようにしてください。高度な設定についての詳しい情報は、コンテナー化された Red Hat Ceph を持つオーバークラウドのデプロイの Ceph Storage ノードのディスクレイアウトのマッピング を参照してください。
-
アンダークラウドに
stack
ユーザーとしてログインします。 ceph_fstobs
タグを指定してopenstack overcloud external-upgrade run
コマンドを入力します。<NODE_NAME>
は、アップグレードする Ceph OSD ノードの名前に置き換えてください。openstack server list
コマンドを使用してノード名を探すことができます。[stack@undercloud ~] $ openstack overcloud external-upgrade run --tags ceph_fstobs -e ceph_ansible_limit=<NODE_NAME> | tee oc-fstobs.log
Ceph MON サービスが実行されているノードにログインし、Ceph クラスターにクエリーを行いアップグレードしたノードの OSD のステータスを確認します。次の OSD ノードの移行を開始する前に、アップグレードしたノードが正常に移行されていることを確認する必要があります。
[heat-admin@overcloud-controller-1 ~]$ sudo -i [root@overcloud-controller-1 ~]# podman exec -it ceph-mon-overcloud-controller-1 sh -c "ceph -f json osd metadata" | jq -c '.[] | select(.hostname == "<NODE_NAME>") | ["host", .hostname, "osd_id", .id, "objectstore", .osd_objectstore]' [root@overcloud-controller-1 ~]# exit
<NODE_NAME> を移行したノードの名前に置き換えます。出力結果を確認し、OSD が BlueStore を使用することが示されていれば、移行は正常に完了しています。
(オプション) 特定の OSD に関する追加情報を表示するには、以下のコマンドを入力します。
[root@overcloud-controller-1 ~]# podman exec -it ceph-mon-overcloud-controller-1 sh -c "ceph osd metadata <ID>"
<ID> はクエリーを行う OSD の ID に置き換えてください。
次のノードで移行プロセスを開始する前に、クラスターが同期するのを待つ必要があります。
[root@overcloud-controller-1 ~]# podman exec -it ceph-mon-overcloud-controller-1 sh -c "ceph -s"
Review the command output and ensure that the health of the cluster is `HEALTH_OK` and the PGs are in the `active+clean` state.
次のノードで移行プロセスを開始する前に、クラスターのリバランスプロセスが完了するまで待つ必要があります。ステータスを確認するには、以下のコマンドを実行します。
[heat-admin@overcloud-controller-0 ~]$ sudo podman exec ceph-mon-<NODE_NAME> ceph -w
<NODE_NAME> を移行したノードの名前に置き換えます。
- ストレージクラスター内の各ノードに対して移行プロセスを繰り返します。
FileStore から BlueStore への移行に関する詳細は、Red Hat Ceph Storage の管理ガイドの BlueStore を参照してください。