プールの問題やファイルシステムの使用不能がハードウェアの問題 (障害のあるシステムボード、メモリー、デバイス、HBA、または構成ミスなど) に関連しているかどうかを判定するには、次のセクションを確認してください。
たとえば、ビジー状態の ZFS プール上にエラーや障害の発生したディスクがあると、システム全体のパフォーマンスが低下します。
最初に簡単に検出できるハードウェアの問題を診断して特定し、すべてのハードウェアを確認すれば、この章で説明するプールおよびファイルシステムの問題の診断に進むことができます。ハードウェア、プール、およびファイルシステムの構成に問題がない場合は、一般により複雑で解明しにくく、このガイドでは取り上げていないアプリケーションの問題を診断することを検討してください。
Oracle Solaris Fault Manager は、エラーログ内の具体的な兆候を示すエラー遠隔監視情報を特定し、エラーの兆候が実際の障害になったときに実際の障害診断を報告することにより、ソフトウェア、ハードウェア、および特定のデバイスの問題を追跡します。
次のコマンドは、ソフトウェアまたはハードウェア関連の障害を特定します。
$ fmadm faulty
障害が発生したサービスまたはデバイスを特定するには、上記のコマンドを定期的に使用します。
ハードウェアまたはデバイス関連のエラーを特定するには、次のコマンドを定期的に使用します。
$ fmdump -eV | more
このログファイルのエラーメッセージは、vdev.open_failed、checksum、または io_failure の問題を示しており、fmadm 障害コマンドで表示される実際の障害に発展する可能性があるため、注意が必要です。
上記によってデバイスに障害が発生していることが示された場合は、交換用デバイスが用意されているかどうかを確認することをお勧めします。
iostat コマンドを使用して、その他のデバイスエラーを追跡することもできます。エラー統計のサマリーを確認するには、次の構文を使用します。
$ iostat -en ---- errors --- s/w h/w trn tot device 0 0 0 0 c0t5000C500335F95E3d0 0 0 0 0 c0t5000C500335FC3E7d0 0 0 0 0 c0t5000C500335BA8C3d0 0 12 0 12 c2t0d0 0 0 0 0 c0t5000C500335E106Bd0 0 0 0 0 c0t50015179594B6F11d0 0 0 0 0 c0t5000C500335DC60Fd0 0 0 0 0 c0t5000C500335F907Fd0 0 0 0 0 c0t5000C500335BD117d0
上記の出力では、内部ディスク c2t0d0 のエラーが報告されています。より詳細なデバイスエラーを表示するには、次の構文を使用します。
再試行またはリセットについて言及する永続的な SCSI トランスポートエラーは、ダウン改訂ファームウェア、不良ディスク、不良ケーブル、または障害が発生したるハードウェア接続によって引き起こされる可能性があります。一部の一時的なトランスポートエラーは、HBA またはデバイスファームウェアをアップグレードすることで解決することがあります。トランスポートエラーがファームウェアの更新後も持続し、すべてのデバイスが作動していると思われる場合は、ハードウェアコンポーネント間に不良ケーブルまたはほかの障害が発生した接続がないか調べます。
プール内のエラーを永続的に追跡することに加えて、ZFS は対象となるイベントが発生したときに syslog メッセージを表示します。次のシナリオは通知イベントを生成します。
デバイス状態の移行 – デバイスが FAULTED になると、プールの耐障害性が危殆化する可能性があることを示すメッセージがログに記録されます。あとでデバイスがオンラインになり、プールの健全性が復元した場合にも、同様のメッセージが送信されます。
データの破壊 – データの破壊が検出された場合には、破壊が検出された日時と場所を示すメッセージがログに記録されます。このメッセージがログに記録されるのは、はじめて検出されたときだけです。それ以降のアクセスについては、メッセージは生成されません。
プールの障害とデバイスの障害 - プールの障害またはデバイスの障害が発生した場合には、障害マネージャーデーモンが syslog メッセージおよび fmdump コマンドを使用してこれらのエラーを報告します。
ZFS がデバイスエラーを検出してそれを自動的に回復した場合には、通知は行われません。このようなエラーでは、プールの冗長性またはデータの完全性の障害は発生しません。また、このようなエラーは通常、ドライバの問題が原因で発生しており、ドライバ自身のエラーメッセージも出力されます。