Menu Close

1.8. OSD メモリーターゲット

BlueStore は、osd_memory_target 設定オプションを使用して、OSD ヒープメモリーの使用を指定されたターゲットサイズで保持します。

osd_memory_target オプションは、システムで利用可能な RAM に基づいて OSD メモリーを設定します。TCMalloc がメモリーアロケーターとして設定されており、BlueStore の bluestore_cache_autotune オプションが true に設定されている場合、このオプションを使用します。

Ceph OSD のメモリーキャッシングは、ブロックデバイスが低速である場合に重要となります (例えば、従来のハードドライブの場合)。キャッシュヒットのメリットがソリッドステートドライブの場合よりもはるかに大きいからです。ただし、ハイパーコンバージドインフラストラクチャー (HCI) や他のアプリケーションなど、他のサービスと OSD を共存させる場合には、この点を考慮する必要があります。

1.8.1. OSD メモリーターゲットの設定

ストレージクラスター内のすべての OSD、または特定の OSD に最大メモリーしきい値を設定するには、osd_memory_target オプションを使用します。osd_memory_target オプションを 16 GB に設定した OSD は、最大 16 GB のメモリーを使用することができます。

注記

個々の OSD の設定オプションは、すべての OSD に対する設定よりも優先されます。

前提条件

  • 実行中の Red Hat Ceph Storage クラスター。
  • ストレージクラスター内のすべてのホストへの root レベルのアクセス

手順

  • ストレージクラスター内のすべての OSD に osd_memory_target を設定するには、以下を実行します。

    構文

    ceph config set osd osd_memory_target VALUE

    VALUE は、ストレージクラスター内の各 OSD に割り当てるメモリーのギガバイト数です。

  • ストレージクラスター内の特定の OSD に osd_memory_target を設定するには、以下を実行します。

    構文

    ceph config set osd.id osd_memory_target VALUE

    .id は OSD の ID で、VALUE は特定の OSD に割り当てるメモリーのギガバイト数です。たとえば、ID 8 の OSD が最大 16 ギガバイトのメモリーを使用するように設定するには、以下を実行します。

    [root@mon ~]# ceph config set osd.8 osd_memory_target 16G

  • ある個別の OSD がある最大量のメモリーを使用するように設定し、残りの OSD が別の量を使用するように設定するには、まず個別の OSD を指定します。

    [root@mon ~]# ceph config set osd osd_memory_target 16G
    ceph config set osd.8 osd_memory_target 8G