第4章 バグ修正


本セクションでは、今回リリースされた Red Hat Ceph Storage で修正されたユーザーに大きな影響を及ぼすバグを説明します。また、セクションでは、以前のバージョンで見つかり修正された既知の問題を説明します。

4.1. Cephadm ユーティリティー

PID 制限が削除され、コンテナー内のワークロードがクラッシュしなくなります。

以前の Red Hat Enterprise Linux 9 デプロイメントでは、コンテナー内で実行できるプロセスの数を制限する pid 制限が適用されていました。このため、Ceph Object Gateway 同期などの特定の操作がクラッシュします。

今回の修正により、すべての Ceph コンテナーで pid limitunlimited に設定され、コンテナー内のワークロードがクラッシュするのを防ぎます。

(BZ#2165644)

Cephadm は設定ファイルとキーリングファイルを無作為に一時削除しなくなりました。

以前のリリースでは、クライアント設定とキーリングを計算するタイミングが正しくなかったため、cephadm はどのホストにも設定とキーリングが配置されるべきではないと計算して、その後はそれらをすべて削除していました。

今回の修正により、計算のタイミングが変更され、計算の最新情報が保証されます。Cephadm は無作為でなくなり、管理対象の設定ファイルとキーリングファイルを一時的に削除します。

(BZ#2125002)

Ceph Object Gateway デーモンがループバックアドレスに正しくバインドされるようになりました

以前は、Ceph Object Gateway デーモンをバインドするためにホスト上で有効な IP アドレスを探すときに、cephadm がループバックインターフェイスを除外していたため、デーモンがループバックアドレスにバインドされませんでした。

今回の修正により、Ceph Object Gateway デーモンは、明示的なチェックを実行することでループバックアドレスにバインドできるようになりました。ループバックインターフェイスが検出された場合、IPv4 の場合は 127.0.0.1 アドレスが使用され、IPv6 の場合は ::1 がループバックアドレスとして使用されます。

(BZ#2018245)

Cephadm は、Ceph モニターストアのサイズ制限を超えた後、デバイス情報を複数のエントリーに分割するようになりました

以前は、cephadm はホストを更新できず、デバイス情報がモニターストアのデフォルトの最大サイズ制限である 64K を超えると、ほとんどの操作を完了できませんでした。これにより、エントリーサイズのエラーが発生しました。その結果、ディスクが多数あるホストがある場合には、デフォルトの制限を引き上げる必要がありました。

今回の修正により、cephadm は、サイズ制限よりも多くの領域を取得する場合に、デバイス情報を複数のエントリーに分割するようになりました。多数のディスクを持つホストがある場合は、モニターストアのエントリーサイズ制限を増やす必要がなくなりました。

(BZ#2053276)

クラッシュデーモンがクラッシュイベントを正しく記録し、ストレージクラスターに報告するようになりました

以前は、クラッシュレポートをストレージクラスターに送信するときにクラッシュデーモンが適切に認証されなかったため、クラッシュイベントを正しく記録してクラスターに送信できませんでした。

今回の修正により、クラッシュデーモンはクラッシュレポートの送信時に認証情報を適切に使用するようになりました。クラッシュイベントが正しく記録され、クラスターに報告されるようになりました。

(BZ#2062989)

cephadm.log のログローテーションで問題が発生しなくなりました。

以前は、/var/log/ceph ディレクトリーが cephadm 以外のもの (ceph-commonceph-ansible など) によって作成された場合、logrotate コマンドで問題が発生していました。その結果、cephadm.log をローテーションできませんでした。

今回の修正により、root ユーザーとしてローテーションするために su root root が logrotate 設定に追加されました。logrotate コマンドで var/log/ ceph ディレクトリーの所有権に関する問題が発生しなくなったため、cephadm.log は期待どおりにローテーションされます。

(BZ#2099670)

Cephadm のログ設定が更新されました。

以前は、cephadm スクリプトはすべての出力を stderr に記録していました。その結果、デプロイメントの成功を示す cephadm ブートストラップログも stdout ではなく stderr に送信されていました。

今回の修正により、cephadm スクリプトは特定のコマンドに対して異なるロギング設定を持つようになり、ブートストラップに使用されるものはエラーのみを stderr に記録するようになりました。

(BZ#2103707)

ネットワークチェックにより、ホストが監視ネットワークから除外されなくなりました

以前は、cephadm がホストネットワークと設定済みのパブリックネットワークの一部との正確な一致を探すため、ネットワークチェックが失敗していました。これにより、有効なネットワーク設定を持つホスト (public_network に属するインターフェイスを持つホスト) が監視ネットワークから除外されました。

今回の修正により、完全一致を探す代わりに、ホストネットワークが設定済みのパブリックネットワークと重複しているかどうかがチェックされるため、有効なホストが監視ネットワークから除外されなくなりました。

(BZ#2104947)

cephadm は、ホストレベルで osd_memory_target 設定を削除しなくなる

以前は、osd_memory_target_autotune がグローバルにオフになっていた場合、cephadm はユーザーがホストレベルで osd_memory_target に設定した値を削除していました。さらに、FQDN 名を持つホストの場合、クラッシュマップで短い名前が使用されていても、cephadm は FQDN を使用して設定オプションを設定します。このため、ユーザーは osd_memory_target をホストレベルで手動で設定できず、osd_memory_target 自動チューニングは FQDN ホストでは機能しませんでした。

今回の修正により、osd_memory_target_autotunefalse に設定されている場合、osd_memory_target 設定はホストレベルで cephadm から削除されません。また、ホストレベル osd_memory_target を設定するときは、常にホストの短い名前を使用します。ホストレベルで osd_memory_target_autotunefalse に設定されている場合、ユーザーは手動で osd_memory_target を設定し、オプションが cephadm によって削除されないようにすることができます。さらに、FQDN 名で cephadm に追加されたホストで自動調整が機能するようになりました。

(BZ#2107849)

cephadm は Ceph OSD 設定ファイルを書き換えます

以前は、OSD の再デプロイ中に、cephadm は Ceph OSD に使用される設定を書き込まないため、Ceph モニターデーモンが追加または削除されたときに、OSD はその設定ファイルで更新されたモニター設定を取得しませんでした。

今回の修正では、OSD を再デプロイするときに cephadm が設定ファイルを自動的に書き換え、ユーザーの介入なしにモニターが追加または削除されると、OSD 設定ファイルが更新されてモニターの新しい場所が表示されます。

(BZ#2061697)

ユーザーは、明示的な配置にリストされているホストをドレインできるようになりました

以前は、明示的配置の一部としてリストされたホストを排出すると、ホストが適切に排出されず、排出が停止されるかホストが明示的配置から削除されるまで、トレースバックがログに記録されていました。

今回の修正により、明示的な配置の処理が内部的に実装され、cephadm はホストからデーモンを削除する必要があるかどうかを判断できるようになりました。その結果、ユーザーは最初に配置からホストを削除することなく、明示的な配置の一部としてリストされているホストを排出できるようになりました。

ただし、ユーザーは、ホストを完全に削除する前に明示的な配置からホストを削除する必要があります。そうしないと、ホストを明示的にリストする仕様を適用できません。

(BZ#2112768)

--apply -spec オプションがブートストラップ中に失敗すると、cephadm がゼロ以外のコードを返します

以前は、操作が完了した場合、cephadm ブートストラップは常にコード 0 を返しました。--apply-spec オプションを使用したデプロイでエラーが発生した場合、リターンコードにエラーが反映されませんでした。

今回の修正により、ブートストラップ中に仕様の適用が失敗した場合、cephadm はゼロ以外の値を返します。

(BZ#2061697)

複雑な OSD のデプロイメントや共有 DB デバイスとの交換を一度に行う必要がなくなりました。

以前のリリースでは、cephadm が OSD を作成するときに、以前の OSD の db デバイスとしてすでに使用されていたデバイスが、使用できないデバイスとして除外されました。その結果、全 OSD が DB としてデバイスを使用すべきであるにも拘らず、一度にデプロイされなかった複雑な OSD デプロイメントは、機能しなくなります。これは、OSD の仕様には沿っていませんが、後続の OSD を作成するときに DB デバイスがフィルタリングされてしまうためです。

今回の修正により、共有 DB デバイスを使用した複雑な OSD デプロイメントを一度に行う必要がなくなりました。OSD 仕様を更新して、仕様にすでにリストされている db デバイスとペアになる追加のデータデバイスを含める場合に、cephadm はこれらの新しい OSD を作成できるはずです。

(BZ#2119715)

cephadm によって無効な tuned-profile 仕様が検出された場合、適切なエラーが発生します

以前のリリースでは、cephadmtuned-profile の YAML 仕様を検証しないため、無効な tuned-profile 仕様に無効なデータや欠落データを適用しても、エラーや警告が返されませんでした。

今回の修正により、tuned-profile 仕様を検証するためのいくつかのチェックが追加されました。cephadm によって無効な tuned-profile 指定が検出された場合、適切なエラーが発生するようになりました:

  • YAML 仕様の設定の下に、無効なチューナブルが記載されています。
  • YAML 仕様の設定セクションは空です。
  • 無効な配置が検出されました。

(BZ#2061697)

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat