我が家のネットワーク環境には、3ware 9650SE-4LPML で RAID 運用しているサーバが 2 台ある。そのうち 1 台、この blog 用の MySQL も稼動しているマシンの 3DM2 から以下のようなメールが来た。
May 24, 2012 02:02.03PM - Controller 0 ERROR - Drive timeout detected: port=1
タイムアウトしただけでデグレードはしていないので HDD の故障というわけではない。そこで、smartmontools で S.M.A.R.T. 情報を取得してみた。
通常、ハードウェア RAID カードの場合、RAID カード上のプロセッサが各 HDD にデータを読み書きする仕様になっている。そのため、ホスト側の CPU からはドライバがなくても RAID アレイが 1 台のディスクドライブに見えるしブートも可能となる反面、実ドライブにアクセスすることはできない。だが、3ware や LSI の RAID カードの場合、smartctl
にオプション -d 3ware,N
を追加することで実ドライブの S.M.A.R.T. 情報を取得することができる。N はポート番号で、デバイスファイルは /dev/twaX
を指定する。X はコントローラ番号となる。