10.6. BlueStore 管理ツールを使用して RocksDB データベースを再度シャード化する
このリリースでは、BlueStore 管理ツールを使用してデータベースをリシャード化できます。これにより、BlueStore の RocksDB データベースを、OSD を再デプロイせずに、ある形態から別の形態に、さらに複数の列ファミリーに変換します。列ファミリーはデータベース全体と同じ機能がありますが、ユーザーは小規模なデータセットで操作し、異なるオプションを適用することができます。これは、保存されたキーの異なる有効期間を活用します。このキーは、新しいキーを作成したり既存のキーを削除せずに、変換中に移動されます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- オブジェクトストア が BlueStore として設定されている。
- OSD ノードがホストにデプロイされている。
- すべてのホストへ root レベルでアクセスできる。
-
ceph-common
およびcephadm
パッケージがすべてのホストにインストールされている。
手順
cephadm
シェルにログインします。例
[root@host01 ~]# cephadm shell
管理ノードから OSD_ID とホストの詳細を取得します。
例
[ceph: root@host01 /]# ceph orch ps
それぞれのホストに
root
ユーザーでログインし、OSD を停止します。構文
cephadm unit --name OSD_ID stop
例
[root@host02 ~]# cephadm unit --name osd.0 stop
停止中の OSD デーモンコンテナーに入ります。
構文
cephadm shell --name OSD_ID
例
[root@host02 ~]# cephadm shell --name osd.0
cephadm shell
にログインし、ファイルシステムの整合性を確認します。構文
ceph-bluestore-tool --path/var/lib/ceph/osd/ceph-OSD_ID/ fsck
例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-0/ fsck fsck success
OSD ノードのシャーディングのステータスを確認します。
構文
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-OSD_ID/ show-sharding
例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ show-sharding m(3) p(3,0-12) O(3,0-13) L P
ceph-bluestore-tool
コマンドを実行してリシャードします。Red Hat は、コマンドで指定されたパラメーターを使用することを推奨します。構文
ceph-bluestore-tool --log-level 10 -l log.txt --path /var/lib/ceph/osd/ceph-OSD_ID/ --sharding="m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P" reshard
例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ --sharding="m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P" reshard reshard success
OSD ノードのシャーディングのステータスを確認するには、
show-sharding
コマンドを実行します。構文
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-OSD_ID/ show-sharding
例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ show-sharding m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P
cephadm
シェルを終了します。[ceph: root@host02 /]# exit
それぞれのホストに
root
ユーザーでログインし、OSD を起動します。構文
cephadm unit --name OSD_ID start
例
[root@host02 ~]# cephadm unit --name osd.0 start
関連情報
- 詳細については、Red Hat Ceph Storage Installation Guide を参照してください。