第6章 バグ修正
このセクションでは、Red Hat OpenShift Data Foundation 4.19 で導入された重要なバグ修正を説明します。
6.1. Multicloud Object Gateway リンクのコピーリンクがクリップボードにコピーされました!
環境変数を介して PostgresSQL を使用する
以前は、PostgresSQL 接続の詳細が環境変数として渡されたため、PostgresSQL 接続の詳細が公開されるリスクがありました。
この修正により、Postgres シークレットは環境変数ではなくボリュームマウントとして渡されるようになりました。
IO エラーのため、バッキングストアが Rejected フェーズでスタックする
以前は、Multicloud Object Gateway (MCG) がバッキングストアのデータにアクセス中にエラーを検出すると、MCG はバッキングストアを切断し、強制的にリロードして問題を解決していました。この結果、バックストアは rejected 状態となり、誤検知により機能しなくなりました。
この修正により、バッキングストアの切断動作が微調整され、誤検知が回避されるようになりました。
noobaa-operator コードに "ap-southeast-7" リージョンがない
以前は、新しい
ap-southeast-7
およびmx-central-1
AWS リージョンにデプロイされたときに、これらのリージョンが MCG Operator のsupported regions
になかったため、デフォルトのバッキングストアは作成されませんでした。この修正により、サポートされる機能のリストに 2 つのリージョンが追加されました。
Multicloud Object Gateway Prometheus タグがバケット作成後に更新されない
以前は、更新されたバケットのタグ付けは、MCG のエクスポートされた Prometheus メトリクスに反映されませんでした。
この修正により、メトリクスの収集中に行われる更新タグ付けが Prometheus に公開されるようになりました。
Multicloud Object Gateway のバッキングストア PV プールが拒否される - /noobaa_storage の権限設定が原因
以前は、
noobaa_storage
ディレクトリーの下に多くのブロックがあったため、Pod を再起動するたびに Pod の起動に長い時間がかかっていました。これは、MCG PV プール Pod が、Pod を起動する前に、PV の下のnoobaa_storage
ディレクトリーへの権限を再帰的に変更しようとしていたことが原因です。この修正により、権限を変更する必要がなくなったため、権限変更の要件は削除されました。
オブジェクトメタデータとデータブロックに対する Postgres クエリーの完了に時間がかかりすぎる
以前は、MCG DB が大きい場合、MCG の
Agent Blocks Reclaimer
が MCG DB 内の削除された未回収ブロックを探すため、システム全体の速度が低下し、操作が失敗していました。また、使用されたクエリーはインデックス化されていませんでした。この修正により、クエリーを最適化するために MCG DB に新しいインデックスが追加されています。
MCG の長いクエリーが原因でエンドポイントでタイムアウトが発生する
以前は、オブジェクトリクレイマーによる短い遅延と、その処理に最適化されたインデックスが存在しなかったため、MCG DB を使用するすべてのフローで低速化が見られました。これにより、MCG DB に余分な負荷が発生しました。
この修正により、オブジェクト回収処理のタイムアウト間隔と、クエリー用のインデックスが変更されます。その結果、MCG DB を使用するフローで速度低下が見られなくなりました。