3.3. HCI の Ceph 設定のオーバーライド
標準形式の初期化ファイルは、Ceph クラスター設定のオプションです。この初期化ファイルは、cephadm bootstap --config <file_name>
または openstack overcloud ceph deploy --config <file_name>
コマンドで Ceph クラスターを設定するために使用されます。
ハイパーコンバージドノードに Ceph OSD と Compute サービスを配置すると、Red Hat Ceph Storage と Compute サービスの間でリソースの競合が発生するリスクがあります。これは、サービスがコロケーションを認識していないために発生します。リソースの競合によってサービスが低下し、ハイパーコンバージェンスの利点が相殺される可能性があります。
リソースの割り当ては、初期化ファイルを使用して調整し、リソースの競合を管理できます。以下では、initial-ceph.conf
という初期化ファイルを作成し、openstack overcloud ceph deploy
コマンドを使用して HCI デプロイメントを設定します。
$ cat <<EOF > initial-ceph.conf [osd] osd_memory_target_autotune = true osd_numa_auto_affinity = true [mgr] mgr/cephadm/autotune_memory_target_ratio = 0.2 EOF $ openstack overcloud ceph deploy --config initial-ceph.conf
osd_memory_target_autotune
オプションが true
に設定されているため、OSD デーモンは osd_memory_target
オプションに基づいてメモリー消費を調整します。autotune_memory_target_ratio
のデフォルトは 0.7
です。これは、システム内の合計 RAM の 70% が、自動調整されていない Ceph デーモンによって消費されるメモリーが差し引かれる開始点であることを示しています。次に、すべての OSD で osd_memory_target_autotune
が true
に設定されていると仮定して、残りのメモリーを OSD で分割します。HCI デプロイメントの場合、mgr/cephadm/autotune_memory_target_ratio
を 0.2 に設定して、Compute サービスでより多くのメモリーを使用できるようにします。0.2
という値は慎重な開始点です。デプロイ後、必要に応じて ceph
コマンドを使用してこの値を変更します。
2 つの NUMA ノードシステムは、レイテンシーの影響を受けやすい Nova ワークロードを 1 つの NUMA ノードでホストし、Ceph OSD ワークロードを別の NUMA ノードでホストできます。Compute ワークロードで使用されていない特定の NUMA ノードを使用するように Ceph OSD を設定するには、次の Ceph OSD 設定のいずれかを使用します。
-
osd_numa_node
が numa ノードへのアフィニティーを設定する -
osd_numa_auto_affinity
がストレージとネットワークが一致する NUMA ノードにアフィニティーを自動的に設定する
両方の NUMA ノードにネットワークインターフェイスがあり、ディスクコントローラーが NUMA ノード 0 である場合、ストレージネットワーク用に NUMA ノード 0 のネットワークインターフェイスを使用し、NUMA ノード 0 で Ceph OSD ワークロードをホストします。NUMA ノード 1 で Nova ワークロードをホストし、NUMA ノード 1 のネットワークインターフェイスを使用します。この設定を実現するには、osd_numa_auto_affinity
を true
に設定します。または、osd_numa_node
を直接 0
に設定し、osd_numa_auto_affinity
に値を設定せず、デフォルトで false
に設定することもできます。
OSD がオフラインになった結果、ハイパーコンバージドクラスターがバックフィルされると、バックフィルプロセスが遅くなる可能性があります。回復が遅くなる代わりに、バックフィルアクティビティーは、コロケーションされたコンピューティングワークロードに与える影響が少なくなります。Red Hat Ceph Storage には、バックフィルアクティビティーのレートを制御するための以下のデフォルトがあります。
-
osd_recovery_op_priority = 3
-
osd_max_backfills = 1
-
osd_recovery_max_active_hdd = 3
osd_recovery_max_active_ssd = 10
注記これらのデフォルトはデフォルト値であるため、初期化ファイルで渡す必要はありません。初期設定にデフォルト以外の値が必要な場合は、デプロイメント前に必要な値を使用して初期化ファイルに追加します。デプロイ後、コマンド ceph config set osd を使用します。