第6章 バグ修正
このセクションでは、Red Hat OpenShift Container Storage 4.8 で導入された主なバグ修正について説明します。
Arbiter と柔軟なスケーリングを同時に有効にすることはできません。
Arbiter と柔軟なスケーリングの両方が有効にされると、ログやエラー arbiter and flexibleScaling both can't be enabled
のメッセージが存在する場合でも、ストレージクラスターは READY
状態のままと表示されませんでした。これは、ストレージクラスター CR の正しくない仕様が原因で発生します。今回の更新により、ストレージクラスターは正しいエラーメッセージを出して ERROR の状態になりました。
バケットは、ライブラリーでクリーンアップが必要な場合に常に削除されます。
以前のバージョンでは、OBC の作成に失敗しました。lib-bucket-provisioner は再試行前にクリーンアップ目的で削除要求をプロビジョナーに送信していました。NooBaa プロビジョナーはオブジェクトバケットの回収ポリシーを確認しますが、場合によっては基礎となるバケットは削除されませんでした。今回の更新により、クリーンアップのシナリオにおいて、基礎となるバケットが回収ポリシーに関係なく削除されるようになりました。
アタッチされた各 OSD の設定の収集
以前のバージョンでは、各 OSD の詳細な設定を特定する方法はありませんでした。今回の更新により、must-gather
は OSD のすべての設定を収集し、デバッグをさらに改善するようになりました。
gRPC メトリクスがデフォルトで無効になりました
以前のバージョンでは、cephcsi
Pod はデバッグ目的でリモートプロシージャーコール (gRPC) メトリクスを公開していました。cephcsi
ノードプラグイン Pod は、cephcsi
ノードプラグイン Pod が実行されているノードで、CephFS のホストポート 9091 と RBD 用のホストポート 9090 を使用していました。そのため、cephcsi
Pod は起動しませんでした。今回の更新により、gRPC メトリクスはデフォルトで無効になり、cephcsi
Pod はノードプラグイン Pod が実行されているノードでポート 9091 および 9090 を使用しなくなりました。
MDS レポートがサイズの大きいキャッシュを報告する
以前のバージョンでは、Rook はアップグレード時に mds_cache_memory_limit を適用していませんでした。つまり、そのオプションが適用されていない OpenShift Container Storage 4.2 クラスターは正しい値 (通常は Pod のメモリー制限のサイズの半分) で更新されませんでした。そのため、standby-replay の MDS は、サイズの大きいキャッシュを報告する可能性があります。
新たに復元された PVC がノードにマウント可能に
以前のバージョンでは、Ceph-CSI ドライバーのバグにより、Red Hat Enterprise Linux バージョンの 8.2 よりも少ないノードで、削除された親スナップショットで新たに復元された PVC をマウントする際に (深いフラット化機能がない)、誤った RBD image not found エラーが発生しました。この問題は、Red Hat Enterprise Linux のバージョンが 8.2 未満のノードにマウントする前に、新たに復元された PVC をフラット化することで修正されました (ディープフラット化機能がない場合)。
信頼性のある mon クォーラム
以前のバージョンでは、mon フェイルオーバー中に Operator が再起動されると、Operator は新しい mon を誤って削除する可能性があります。したがって、Operator が新しい mon を削除した場合、mon のクォーラムはリスクとして必要になります。今回の更新により、Operator は mon フェイルオーバーが進行中の状態を復元し、Operator の再起動後に mon フェイルオーバーを適切に完了するようになりました。ノードのドレインおよび mon フェイルオーバーのシナリオで mon クォーラムがより信頼できるようになりました。