7.5. PG 数の増加
配置グループ(PG)数は、Ceph クラスターおよびデータ分散のパフォーマンスに影響します。これは、nearfull osds
エラーメッセージの主な原因の 1 つです。
1 OSD あたり 100 から 300 PG の推奨比率は、以下のようになります。この比率は、OSD をクラスターに追加する際に減少する可能性があります。
pg_num
パラメーターおよび pgp_num
パラメーターにより、PG 数が決まります。これらのパラメーターは各プールごとに設定されるため、PG の数が別々に低く、各プールを調整する必要があります。
PG 数を増やすことができます。これは、Ceph クラスターで実行できる最も集約型プロセスです。このプロセスは、速度が遅い方法で行われない場合に、パフォーマンスに深刻な影響を与える可能性があります。pgp_num
を増やすと、プロセスを停止したり元に戻したりすることはできず、完了する必要があります。
ビジネスの重要なプロセス時間割り当て外にある PG 数を増やし、パフォーマンスに影響を与える可能性のある可能性のあるクライアントをすべて警告することを検討してください。
クラスターが HEALTH_ERR
状態にある場合は、PG 数を変更しないでください。
手順: PG 数の追加
個別の OSD および OSD ホストでのデータ再分配および復旧の影響を減らします。
osd max backfills
、osd_recovery_max_active
、およびosd_recovery_op_priority
パラメーターの値を減らします。# ceph tell osd.* injectargs '--osd_max_backfills 1 --osd_recovery_max_active 1 --osd_recovery_op_priority 1'
シャローおよびディープスクラビングを無効にします。
# ceph osd set noscrub # ceph osd set nodeep-scrub
-
Ceph Placement Groups(PGs)per Pool Calculator
を使用して、pg_num パラメーターおよび
パラメーターの最適値を計算します。pgp_num
必要な値に達するまで、
pg_num
の値を少し増やします。- 開始の増分値を決定します。2 の累乗の値が非常に低い値を使用し、クラスターへの影響を決定する際にこの値を増やします。optimal の値は、プールサイズ、OSD 数、クライアント I/O 負荷により異なります。
pg_num
の値を増やします。ceph osd pool set <pool> pg_num <value>
プール名と新しい値を指定します。例を以下に示します。
# ceph osd pool set data pg_num 4
クラスターのステータスを監視します。
# ceph -s
PG の状態は、
creating
からactive+clean
に変わります。すべての PG がactive+clean
の状態になるまで待ちます。
必要な値に達するまで、
pgp_num
の値を少し増やします。- 開始の増分値を決定します。2 の累乗の値が非常に低い値を使用し、クラスターへの影響を決定する際にこの値を増やします。optimal の値は、プールサイズ、OSD 数、クライアント I/O 負荷により異なります。
pgp_num
の値を増やします。ceph osd pool set <pool> pgp_num <value>
プール名と新しい値を指定します。例を以下に示します。
# ceph osd pool set data pgp_num 4
クラスターのステータスを監視します。
# ceph -s
PG の状態は、
peering
、wait_backfill
、backfilling
、recover
などによって変わります。すべての PG がactive+clean
の状態になるまで待ちます。
- PG 数が十分にないすべてのプールに対して直前の手順を繰り返します。
osd max backfills
、osd_recovery_max_active
、およびosd_recovery_op_priority
をデフォルト値に設定します。# ceph tell osd.* injectargs '--osd_max_backfills 1 --osd_recovery_max_active 3 --osd_recovery_op_priority 3'
シャローおよびディープスクラビングを有効にします。
# ceph osd unset noscrub # ceph osd unset nodeep-scrub
関連項目
- 「Nearfull OSD」
- 『Administration Guide for Red Hat Ceph Storage 3』の「Monitoring Placement Group States 」セクション