ただつらつらと日記が書かれていくようです。

タグ: HP SmartArray RAID

HP製SmartArrayのRAID Arrayの監視とか。

古くからのHP Proliantユーザーにはアタリマエのことかもしれないが、新参者のProliantユーザーにはよくわかんないことが割とある。例えば、SmartArrayカードで組んだRAID Arrayの監視だ。

RAIDの管理コマンドを使えば、RAIDの設定などが割と簡単にできることはわかったけれども、どうも監視についてはどうもピンと来ていないたぶん、ドキュメントは存在している感じだが、まとまった形でドキュメントが用意されていないような気がするのが原因ではないか(*1)。どうやら、IMAなるものをインストールすれば、ハードウェアの監視を一括で引き受けてくれるっぽい。で、何か起こったら、rootへのメールと、/var/log/messageへの書き込みを行なってくれるらしい実際にメッセージを書きだすのはIMAの構成モジュールのASRらしいが(*2)。

ただ、なんとなくここまで大掛かりに監視したくないような気もする。監視用のエージェントがメモリとかCPUとか食わないだろうかといった心配もあるし、単にRAIDがコケてないことを確認したい場合の選択肢がないか、と探してみたら、SourceForgeにccissドライバと共に公開されている「cciss_vol_status」ってアプリケーションを使って、RAID Arrayのステータスを取得して、そのメッセージをどうにかすれば監視ができそうだ。

例えば、「cciss_vol_status」を実行しつつ、メッセージを取得して、取得した結果がおかしなことになっていたらアラートを上げるみたいなシェルスクリプトをcronで定期実行するのもありかなぁという気もする。

で、試しに「cciss_vol_status」をビルドして実行してみようとしたら、「/dev/cciss/c*d0」なんてデバイスが存在しないのだった(汗)Scientific Linux6を使っている関係で、ccissドライバではなく、hpsaドライバが使われているせいだろうけれど。。。で、ドキュメントを読んでみたら、hpsaドライバを使っている場合は、scsi genericデバイスが割当てられるらしく、「cciss_vol_status /dev/sg0」とかやると、RAID Arrayのステータスが返ってきた。ま、あとはシェルスクリプトを書くだけ、と。

*1:たぶん、ドキュメントは存在している感じだが、まとまった形でドキュメントが用意されていないような気がするのが原因ではないか、と

*2:実際にメッセージを書きだすのはIMAの構成モジュールのASRらしいが

SmartArrayで使ってたHDDの再利用。

どうでもいいメモ。

RAIDコントローラーの下で管理していたHDDは、そのどこかにRAIDの管理情報が書かれているので、RAIDコントローラーの配下から外して、そのままHDDを再利用しようとすると何かと怒られることが多い。

試しに、HPのRAIDカード、SmartArray P212の下にぶら下がってたHDDを、そのまま、別のサーバのSmartArray P212で構成サれているRAID Arrayのホットスペアにしようとすると、下記のように怒られた。

Error: Drive 1:3 can not be added to the array as a spare. This drive is not an
       existing spare, is not an unassigned drive or is in a state that is
       preventing the operation from completing. Use the "show" command to
       check the status of the drive you are attempting to use.

ddとか使ってデータを飛ばすのも面倒だったので、試しに、このドライブを1物理ドライブ=1論理ドライブにしてみた(SmartArray的には、物理ドライブ1個のRAID0って扱いだったかと)。で、そのあと、論理ドライブをぶっ壊して、そのまま、ホットスペアに指定してみると、今度は怒られずに設定することができた。

前のサーバのRAID Arrayの構成情報が記録されているHDDも、ホットスペアに指定するとエラーが上がって、論理ドライブにするとエラーが出てこないということと、論理ドライブからホットスペアに変更するのもノーエラーってことらしい。…ま、そういうことだという理解をするしかないか。

HPのccissドライバがなんとなく怪しい。

最近、HP製Proliantを複数台導入してみたわけだが、これまたなんだか調子がよろしくない。ちなみに、使っているOSは「CentOS5.5のX86_64」で、RAIDカードは、HP製SmartArray(/dev/cciss/c0d0…みたいな。)

発生した事象としては、以下のような感じ。

  • いきなり平均負荷率が急上昇(Gangliaのレポートによると)
  • CPUのiowaitが100%。(これまた、Gangliaのレポート)
  • SSHでログイン不可。
  • Pingには応答あり。
  • トリガー不明。

なんとなくだけど、OSとかアプリケーションは起動状態だけど、Diskにアクセスしようとしてアクセスできなくて、そのまま、プロセスが待っている(待っているプロセス分、平均負荷率が上昇するような感じ)SSHでログインしようとするけれど、応答がない(おそらく、パスワード認証のためにファイルを参照しようとするがファイルが見られないんだろうなぁ)

そんなわけで、現地まで赴いてみたが、コンソールからもログインできない。ま、出来ることといえば、電源の長押しくらいなので、素直にぽちっと押して強制再起動してきた。(現地に到着してから、ProliantにはiLOがあったことを思い出すが、マネジメントポートにLANケーブルを刺すことから忘れてるわけで。orz)

…とまぁ、そんなことがあったけれど、トリガーが何だったのかがよくわかんない。思い出したようにサーバのサーバの負荷が上がり出すしたようにしか見えないので、とりあえず原因不明。まぁ、でも、ディスクにアクセスできない感じなので、CCISSドライバとか、RAIDカードのファームウェアとか、ext3とか…なんかその辺が怪しそうな気がする。

んで、RedHatのBugzillaを覗いていたら、治ってるのも含めて、ccissドライバ関連のバグをいくつか見つけた。RHEL4の頃から、ccissドライバ関連でバグがちらほら見られるようだ。ま、もうちょっと調べてみるか、と。