ダウン OSD

ダウンしている OSD を理解してトラブルシューティングします。

OSD が ダウンと見なされると、 ceph health detail コマンドは以下の例のようなエラーを返します。
HEALTH_WARN OSDSの1/3が減少

その意味

サービス障害または他の OSD との通信の問題の可能性があるため、 ceph-osd プロセスの 1 つが使用できません。 結果として、存続している ceph-osd デーモンがこの障害をモニターに報告しました。

ceph-osd デーモンが実行されていない場合、基礎となる OSD ドライブまたはファイル・システムが破損しているか、鍵リングの欠落などの他のエラーが原因でデーモンを開始できません。

通常、ネットワーキングの問題が原因で、 ceph-osd デーモンが実行されているが、まだ downとしてマークされている状態が発生します。

詳しくは、 Stale placement groupsを参照のこと。 ログファイルを有効にするには、 Cephデーモンのログを参照してください。

この問題のトラブルシューティング

  1. ceph health detail コマンドを使用して、どの OSD がダウンしているかを判別します。
    [ceph: root@host01 /]# ceph health detail
    HEALTH_WARN OSDSの1/3が減少
    osd.0 はエポック23以降ダウンしている。 192.168.106.220:6800/11080
  2. ceph-osd デーモンを再始動します。
    systemctl restart ceph-osd@OSD_NUMBER
    OSD_NUMBER を、 down 状態にある OSD の ID に置き換えます。
    [root@host01 ~]# systemctl restart ceph-osd@OSD_NUMBER
    例:
    [ root@host01 ~]# systemctl restart ceph-osd@0

ceph-osd デーモンが開始できない

  1. 複数の OSD (通常は 12 を超える) を含むノードがある場合は、デフォルトの最大スレッド数 (PID カウント) で十分であることを確認してください。 詳しくは、 PIDカウントを増やすを参照。

  2. OSD データおよびジャーナル区画が正しくマウントされていることを確認してください。 ceph-volume lvm list コマンドを使用して、Ceph ストレージ・クラスターに関連付けられているすべての装置およびボリュームをリストし、それらが適切にマウントされているかどうかを手動で検査することができます。 詳しくは、 mount(8) のマニュアル・ページを参照してください。

  3. 以下のものがあるとします。ERROR: missing keyring, cannot use cephx for authenticationエラー・メッセージです。OSD に鍵リングがありません。

  4. 以下のものがあるとします。ERROR: unable to open OSD superblock on /var/lib/ceph/osd/ceph-1エラー・メッセージ。 ceph-osd デーモンは、基礎となるファイル・システムを読み取ることができません。
    • 対応するログ・ファイルを調べて、失敗の原因を判別してください。 デフォルトでは、Ceph はログ・ファイルを /var/log/ceph/ ディレクトリーに保管します。
    • 1 つのEIOエラー・メッセージは、基礎となるディスクの障害を示します。 この問題を修正するには、基礎となる OSD ディスクを交換します。 詳細については、 OSDドライブの交換を参照してください。
    • ログに他のものが含まれている場合FAILED assert以下のようなエラーが発生した場合は、サポート・チケットをオープンしてください。 詳細については、 IBM サポートまでお問い合わせください。
      以下を参照してください。FAILED assertメッセージの例:
      FAILED assert (0 == "ヒット自殺タイムアウト")
  5. チェック・マークを付けるdmesg基礎となるファイル・システムまたはディスクのエラーの出力:
    • このerror -5以下の例のようなエラー・メッセージは、基礎となる XFS ファイル・システムの破損を示しています。
      xfs_log_force: エラー -5 が返されました

      この問題を解決するには、ボリュームをアンマウントしてから、 xfs_repair コマンド・ツール・セットを使用してリカバリーします。 xfs_repair コマンドの使用に関する詳細情報およびヘルプについては、このエラーおよび資料を参照して、 IBM サポートにお問い合わせください。

    • もしdmesg出力にSCSI errorエラーメッセージが表示されたら、 SCSI エラーコード・ソリューション・ファインダーを参照して、問題を解決する最善の方法を判断してください。
    • それでも基礎となるファイル・システムを修正できない場合は、OSD ドライブを交換してください。 詳細については、 OSDドライブの交換を参照してください。
  6. OSD がセグメンテーション障害 (以下の例のような) で失敗した場合は、必要な情報を収集し、サポート・チケットをオープンしてください。 詳細については、 IBM サポートまでお問い合わせください。
    シグナルをキャッチしました (セグメンテーション障害)

ceph-osd は実行されていますが、 down としてマークされています。

対応するログ・ファイルを調べて、失敗の原因を判別してください。 デフォルトでは、Ceph はログ・ファイルを /var/log/ceph/ ディレクトリーに保管します。
  • ログに以下の例のようなエラーメッセージが含まれている場合は、 OSDのフラッピングを参照してください。
    間違って私に印をつけた
        heartbeat_check: back 以降 osd.2 からの応答なし
  • その他のエラー・タイプがある場合は、サポート・チケットをオープンしてください。 詳細については、 IBM サポートまでお問い合わせください。