4.6. RADOS
bluestore_cache_trim_max_skip_pinned
を 10000
に設定すると、オブジェクトのメタデータのトリミングが可能になる
最も最近使用された (LRU) キャッシュは、オブジェクトのメタデータに使用されます。キャッシュのトリムは、最近アクセスしたオブジェクトから実行します。固定 (ピン止め) されたオブジェクトは削除が免除されます。つまり、これらは Bluestore で引き続き使用されます。
以前のバージョンでは、設定変数 bluestore_cache_trim_max_skip_pinned
が、アクセスされた固定オブジェクトの数を制御していました。これにより、スクラブプロセスにより、オブジェクトが長時間固定されていました。LRU メタデータキャッシュの下部に固定されているオブジェクトの数が bluestore_cache_trim_max_skip_pinned
よりも大きくなると、キャッシュのトリミングは完了しませんでした。
このリリースでは、bluestore_cache_trim_max_skip_pinned
を 10000
に設定できるようになりました。これはメタデータキャッシュの数よりも大きくなります。これにより、トリミングが有効になり、メタデータのキャッシュサイズが設定に準拠します。
ストレージクラスターを Red Hat Ceph Storage 4 から 5 にアップグレードすると、HEALTH_WARN 状態で完了する
Red Hat Ceph Storage クラスターを以前のサポートされているバージョンから Red Hat Ceph Storage 5 にアップグレードすると、モニターがセキュアでない global_id
の再要求を許可していると記載の HEALTH_WARN 状態のままアップグレードが完了します。これは、CVE のパッチ適用が原因で、詳細は CVE-2021-20288 を確認してください。
ヘルスに関する警告をオフにすることを推奨します。
-
AUTH_INSECURE_GLOBAL_ID_RECLAIM
の警告のceph ヘルス詳細
の出力を確認して、更新されていないクライアントを特定します。 - すべてのクライアントを Red Hat Ceph Storage 5.0 リリースにアップグレードします。
すべてのクライアントが即座にアップグレードされない場合は、正常性アラートを一時的にミュートします。
構文
ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM 1w # 1 week ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM_ALLOWED 1w # 1 week
すべてのクライアントが更新され、AUTH_INSECURE_GLOBAL_ID_RECLAIM 警告がクライアントに表示されなくなったことを確認してから、
auth_allow_insecure_global_id_reclaim
をfalse
に設定します。構文
ceph config set mon auth_allow_insecure_global_id_reclaim false
-
AUTH_INSECURE_GLOBAL_ID_RECLAIM
の警告が表示されているクライアントがないことを確認してください。
RocksDB のフラッシュと圧縮のトリガー条件が期待どおりに機能する
BlueStore は、デフォルトで 64K というデータを Blob と呼ばれるチャンクに編成します。書き込みが大きい場合は、64K blob の書き込みシーケンスに分割されます。
以前は、遅延サイズが blob サイズ以上の場合は、すべてのデータが遅延になり、L 列ファミリーの下に置かれていました。通常、HDD 設定の場合は、値が bluestore_prefer_deferred_size_hdd
パラメーターおよび bluestore_max_blob_size_hdd
パラメーターの両方で 64K になります。これにより、L のコラムがより迅速に消費され、RocksDB フラッシュ数と圧縮が頻繁に行われるようになります。このシナリオのトリガー状態は、data size in blob
⇐ minimum deferred size
でした。
このリリースでは、遅延トリガー条件は、ディスク上のエクステントのサイズをチェックし、Blob はチェックしません。deferred_size
よりも小さいエクステントは、遅延メカニズムに送られ、大きいエクステントはすぐにディスクに書き込まれます。トリガー条件は、data size in extent
< minimum deferred size
に変更されています。
小さな書き込みは L 列の下に置かれ、この列の成長は遅く、余分な圧縮はありません。
bluestore_prefer_deferred_size
パラメーターは、Blob サイズに干渉なしの遅延を制御します。このサイズよりも小さい書き込みの説明に従って機能します。
pg_num
および pgp_num
が大幅に増加しても、Ceph Manager がクラッシュしなくなる
以前のリリースでは、配置グループを調整するコードは pg_num
パラメーターおよび pgp_num
パラメーターへの大規模な増加を正しく処理せず、Ceph Manager がクラッシュする可能性のある整数のアンダーフローが発生していました。
今回のリリースにより、配置グループを調整するコードが修正されました。その結果、配置グループを大幅に増やしても、Ceph Manager がクラッシュすることはありません。