Red Hat Training

A Red Hat training course is available for Red Hat Ceph Storage

3.4.4. バケットインデックスの動的再シャーディング

動的バケットの再シャーディングのプロセスは、すべての Ceph Object Gateway バケットを定期的にチェックし、再シャーディングを必要とするバケットを検出します。バケットが rgw_max_objs_per_shard パラメーターで指定された値よりも大きい場合、Ceph Object Gateway はバックグラウンドでバケットを動的に再シャードします。rgw_max_objs_per_shard のデフォルト値は、シャードごとに 100k オブジェクトです。

重要

現在、Red Hat は、マルチサイト設定で動的バケットの再シャーディングをサポートしていません。このような設定でシャードバケットのインデックスを再作成するには、マルチサイトを使用した手動によるバケットのリシャード化 を参照してください。

前提条件

手順

  • バケットインデックスの動的再シャーディングを有効にするには、以下を実行します。

    1. Ceph 設定ファイルの rgw_dynamic_resharding 設定を true (デフォルト値) に設定します。
    2. 任意です。必要に応じて、Ceph 設定ファイルの以下のパラメーターを変更します。

      • rgw_reshard_num_logs: 再シャードログのシャードの数。デフォルト値は 16 です。
      • rgw_reshard_bucket_lock_duration: リシャード中にバケットのロックの期間。デフォルト値は 120 秒です。
      • rgw_dynamic_resharding: 動的リシャードを有効または無効にします。デフォルト値は true です。
      • rgw_max_objs_per_shard: シャードごとのオブジェクトの最大数。デフォルト値は、シャードごとに 100000 オブジェクトです。
      • rgw_reshard_thread_interval: 再シャード処理のラウンド間の最大時間。デフォルト値は 600 秒です。
  • バケットを再シャーディングキューに追加するには、以下を実行します。

    radosgw-admin reshard add --bucket BUCKET_NAME --num-shards NUMBER

    以下を置き換えます。

    • 再シャードするバケットの名前を含む BUCKET_NAME
    • 新しいシャード数の NUMBER

    以下に例を示します。

    $ radosgw-admin reshard add --bucket data --num-shards 10

  • 再シャーディングキューを一覧表示するには、以下を実行します。

    $ radosgw-admin reshard list
  • バケットの再シャーディングステータスを確認するには、以下のコマンドを実行します。

    radosgw-admin reshard status --bucket BUCKET_NAME

    以下を置き換えます。

    • 再シャードするバケットの名前を持つ BUCKET_NAME

    以下に例を示します。

    $ radosgw-admin reshard status --bucket data

    注記

    radosgw-admin reshard status コマンドは、次のステータス識別子のいずれかを表示します。

    • not-resharding
    • in-progress
    • done
  • 再シャーディングキューのエントリーを即座に処理するには、以下を実行します。

    $ radosgw-admin reshard process
  • 保留中のバケットの再シャーディングをキャンセルするには、以下を実行します。

    radosgw-admin reshard cancel --bucket BUCKET_NAME

    以下を置き換えます。

    • 保留中のバケットの名前を持つ BUCKET_NAME

    以下に例を示します。

    $ radosgw-admin reshard cancel --bucket data

    重要

    保留中 の再シャード操作のみをキャンセルできます。継続中 のリシャード操作をキャンセルしないでください。

  • Red Hat Ceph Storage 3.1 およびそれ以前のバージョンを使用している場合は、再シャーディング後の古いインスタンスのクリーニング のセクションで説明されているように、古いバケットエントリーを削除します。