3.10. Ceph Object Gateway のガベージコレクションの最適化

新規データオブジェクトがストレージクラスターに書き込まれると、Ceph Object Gateway はこれらの新規オブジェクトのストレージを即時に割り当てます。ストレージクラスター内のデータオブジェクトを削除または上書きした後に、Ceph Object Gateway はバケットインデックスからこれらのオブジェクトを削除します。その後、Ceph Object Gateway はオブジェクトをストレージクラスターに保存するために使用した領域をパージします。ストレージクラスターから削除されたオブジェクトデータをパージするプロセスは、GC(Garbage Collection)と呼ばれます。

通常、ガベッジコレクション操作はバックグラウンドで実行されます。これらの操作は、継続的に実行するか、低アクティビティーおよび軽量なワークロードの間隔でのみ実行されるように設定できます。デフォルトでは、Ceph Object Gateway は GC 操作を継続的に実行します。GC 操作は Ceph Object Gateway 操作の通常の部分であるため、ガベージコレクションの対象となっているオブジェクトはほぼ存在します。

3.10.1. ガベッジコレクションキューの表示

削除および上書きされたオブジェクトをストレージクラスターからパージする前に、radosgw-admin を使用して、ガベージコレクションを待機しているオブジェクトを表示します。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスター
  • Ceph Object Gateway へのルートレベルのアクセス。

手順

  1. ガベージコレクションを待機しているオブジェクトのキューを表示するには、以下を実行します。

    [root@rgw ~] radosgw-admin gc list

注記

有効期限が切れていないエントリを含む、キュー内のすべてのエントリを表示するには、--include-all オプションを使用します。

3.10.2. 削除負荷のガベージコレクションの調整

一部のワークロードは、ガベージコレクションアクティビティーの速度を一時的に停止するか、または永続的に不足する可能性があります。これは特に、削除負荷に該当します。この場合、多数のオブジェクトは短期間保存され、削除されます。このようなワークロードでは、他の操作に関してガベージコレクションの操作の優先度を上げることを検討してください。Ceph Object Gateway ガベージコレクションに関する追加の質問は、Red Hat サポートにお問い合わせください。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスター
  • ストレージクラスター内のすべてのノードへの root レベルのアクセス。

手順

  1. /etc/ceph/ceph.conf を開いて編集します。
  2. rgw_gc_max_concurrent_io の値を 20 に設定し、rgw_gc_max_trim_chunk の値を 64 に設定します。

    rgw_gc_max_concurrent_io = 20
    rgw_gc_max_trim_chunk = 64
  3. Ceph Object Gateway を再起動して、変更した設定を反映できるようにします。
  4. GC アクティビティー中にストレージクラスターを監視し、増加した値がパフォーマンスに悪影響を与えないことを確認します。
重要

実行中のクラスターの rgw_gc_max_objs オプションの値を変更しないでください。この値は、RGW ノードをデプロイする前にのみ変更する必要があります。