7.10. クラスタ内の問題の診断と修正

クラスタ内の問題を適切に診断するには、イベントロギングを有効にする必要があります。また、クラスタ内で問題が発生した場合は、クラスタデーモンの重要度レベルを必ずDEBUGに設定してください。 これにより、問題の解決に役立つ詳細なメッセージがログに記録されます。

注意注記
 

問題がすべて解決したら、デバッグレベルをデフォルト値のWARN に戻して大量のログメッセージファイルが生成されないようにしてください。 詳細については、項7.6を参照してください。

クラスタ内の問題をトラブルシュートするには、表7-3を使用します。

問題症状解決策
SCSIバスがターミネートされていないSCSIエラーがログファイルに表示される

各SCSIバスは、バスの先頭と終端でだけターミネートされている必要があります。バス構成によっては、ホストバスアダプタ、RAIDコントローラ、およびストレージのケースでターミネーションを有効または無効にする必要がある かもしれません。ホットプラグインをサポートするには、SCSIバスをターミネートする には外部ターミネーションが必要です。
また、SCSIバスに接続しているデバイスのスタブが10cm以下であることを確認してください。
各種SCSIバスのターミネート方法についての詳細は、項1.4.4および項B.3を参照してください。

SCSIバス長が最大長を超えているSCSIエラーがログファイルに表示される

各タイプのSCSIバスは、項B.4で説明している長さ制限に従っている必要があります。
また、LVD SCSIバスにシングルエンドデバイスが接続されていないことを確認してください。シングルエンドデバイスが接続されていると、バス全体が、ディファレンシャルバスよりも長さ制限が厳しいシングルエンドバスになります。

SCSI ID番号が固有でないSCSIエラーがログファイルに表示されるSCSIバス上の各デバイスのID番号が固有な値になっている必要があります。詳細については、項B.5参照してください。
完了前にSCSIコマンドがタイムアウトになったSCSIエラーがログファイルに表示される

SCSIバスの優先順位による競合解決方法により、優先順位の低いデバイスが特定期間除外されることがあります。ディスクなどの優先順位の低いストレージデバイスが、競合で勝つことができず、ホストがキューしたコマンドを完了することができなかった場合、コマンドがタイムアウトになります。 なかには、優先順位の低いSCSI ID番号をホストバスアダプタに割り当てることにより、 この問題を回避できるワークロードもあります。
詳細については、項B.5を参照してください。

マウント済みのquorumパーティションquorumパーティションにチェックサムエラーがあることを示すメッセージがログファイルに表示される

quorumパーティションのrawデバイスは、クラスタ状態情報用にだけ使用してください。クラスタサービスまたはクラスタ以外の目的では使用できず、ファイルシステムを含むことはできません。詳細については、項1.4.4.3を参照してください。
これらのメッセージは、quorumパーティションの基礎を成しているブロックデバイス特殊ファイルが誤ってクラスタ以外の目的で使われたことを示していることもあります。

サービスファイルシステムがクリーンではない無効にしたサービスを有効にできない

fsckなどの確認用プログラムを手動で実行して、サービスを有効にしてください。
クラスタインフラストラクチャは、デフォルトで-pオプションを指定してfsckコマンドを実行し、ファイルシステムの不整合を自動的に修復します。エラーがひどい場合は、ファイルシステムの修復オプションを手動で起動する必要があるかもしれません。

quorumパーティションが正しく設定されていないquorumパーティションにアクセスできないことを示すメッセージがログファイルに表示される/sbin/shutil -tコマンドを実行して、quorumパーティションにアクセスできることを確認します。 コマンドが成功した場合は、両方のクラスタシステムでshutil -pコマンドを実行します。 出力が異なる場合は、quorumパーティションが両方のシステムで同じデバイスを指していない ことになります。rawデバイスが存在し、/etc/sysconfig/rawdevicesファイルに正しく指定されていることを確認します。 詳細については、項1.4.4.3を参照してください。
クラスタサービス操作が失敗する操作が失敗したことを示すメッセージがコンソールまたはログファイルに表示されるサービスの動作(例、サービスの停止や起動など)の障害は、数多くの原因によって発生します。 問題の原因を特定するには、詳細なメッセージをログに記録するために クラスタデーモンの重要度レベルをDEBUGに設定します。 それから、動作を再度実行して、ログファイルを確認します。詳細については、項7.6を参照してください。
ファイルシステムをアンマウントできないためにクラスタサービスを停止できない操作が失敗したことを示すメッセージがコンソールまたはログファイルに表示される

fuserコマンドとpsコマンドを使用して、ファイルシステムにアクセスしているプロセスを特定します。killコマンドを使用してプロセスを停止します。lsof -t file_systemコマンドを使用して、特定のファイルシステムにアクセスしているプロセスのID番号を表示します。必要に応じて、killコマンドの出力をパイプします。
この問題を防止するには、クラスタ関連のプロセスだけが共有ストレージデータにアクセスできるように設定されていることを確認します。また、サービスを変更して、ファイルシステムの強制アンマウントを有効にします。これにより、クラスタサービスは、アプリケーションまたはユーザーがファイルシステムにアクセスしている場合でも、ファイルシステムをアンマウントできるようになります。

クラスタデータベースに不正なエントリがあるクラスタ操作でエラーが発生するクラスタステータスツールを使用して、サービスの設定を確認および変更できる。また、クラスタ設定ツールを使用して、 クラスタのパラメータを変更する。
クラスタデータベースまたは/etc/hostsファイルに正しくないEthernetハートビートエントリがあるインターフェイスが有効であるにもかかわらず、EthernetハートビートチャネルがOFFLINEになっているとクラスタのステータスに示される

項7.4で説明しているように、 クラスタ設定ツールを実行してクラスタ構成を確認および変更し、 問題を修正する。
また、必ず、pingコマンドを使用して、クラスタ内で使用されているすべてのネットワークインターフェイスにパケットを送信すること。

電源スイッチへのケーブルがしっかりと接続されていないclufenceを使用した電源スイッチのステータスがエラーかハングを返してくるシリアルケーブル接続を確認してください。
クラスタデータベースで電源スイッチのシリアルポートが正しく指定されていないclufenceを使用した電源スイッチのステータスが問題があることを示している現在の設定を確認して、項7.4で説明しているように、 クラスタ設定ツールを実行してクラスタ構成を変更し、 問題を修正する。

表 7-3. クラスタ内の問題の診断と修正