安物のRAID装置は禍の元

 サーバの記憶装置では通常RAID構成がされていますよね。

 以前の職場で、なぜかRocketRAIDアダプタが乗っているサーバがあって、RAID5構成になっていました。 予算をケチって安く売っているカードを買って自前で組んだのでしょう。

 そのサーバであるときファイルが読めなくなりました。 アレイマネージャを確認すると何もエラー無し。
論理エラーかとも思ったのですが、システムが異常停止したわけでもない状態のサーバ機で論理エラーが発生することはあまりありません(主記憶やバスはECCで保護されているので)
OSのシステムログを確認するとデバイスドライバの応答停止エラーが発生していました。
しかし、他のファイルのアクセスは全く問題なく、システムの再起動を実行してもそのファイルだけアクセス不能。
システムを落として、別マシンで個別ドライブをフルリードスキャンしてみた結果、1台のドライブで読み込み不能セクタが発生していました(アクセスすると数十秒応答停止して、SMARTを確認すると再配置待ちセクタなどの値が変化する状態)
どうやら、このRAIDアダプタはドライブがデバイスタイムアウトした場合の扱いがしっかり実装されておらず、ドライブが応答しないときにアダプタもタイムアウトしてしまうお粗末な物だったようです。
結局、該当のドライブを外した状態で電源投入すると、Critical状態でシステムが起動して、該当ファイルは読み込めました。

 確かに、RAID5の仕様である、ストライピング&パリティ書き込みを実行して、高速化と1デバイスが喪失された状態でデータ復元は出来ましたが、冗長構成はエラーが発生しても処理を継続し、かつ正常にエラーが検出できなければ実用に耐えません。 このアダプタの存在によって、障害の切り分けが困難になったという点は特に問題ですね。

 やはり、価格差はあってもメジャーブランドの製品を選択するべきだと認識させられました。 予算的にハードウェアRAID構成が難しい場合は、無理にRAIDアダプタを搭載せずソフトウェアRAIDで構成しておく方がベターでしょう。

(116)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP]   パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です