Home > Tech > サーバの謎な挙動

サーバの謎な挙動

December 20th, 2007

どうも。こんちわ。

今日はあまり役にたたない情報をひとつ。

私は先日の早朝、まだ眠い目をこすっているときに、我々が契約しているアラートサービス(サーバの監視を代行してくれる)よりサーバの異常検知のメール&電話をもらった。通知された異常の内容はCPU利用率の高負荷。私はセオリーどおりにさっそくサーバにログインして、おもむろにtopコマンドをたたいた。

ん?why?

しかし、topコマンドの示す結果はおよそ高負荷とは言いがたい値を示している。もう危機的状況(大げさだな)は過ぎ去ったのか?

でも、そうこうしている途中に、また通報メールと、携帯が鳴った。内容は早朝と一緒だよ。まだ状況は継続しているようだ。

でもずっとtopの出力結果を睨んでいたが1秒たりとも異常な値を示さない。継続してmuninで取得しているMRTGにもCPU負荷の異常なグラフは出現していない。

いったいなんなんだ?アラートサービスのやつら僕をからかっているのか?

ほかに、サーバの状態を知るコマンドはいくつかあり、使用しているシステムコールも違う(詳しくはソースを見て)。そこで私はvmstatとsarコマンドをたたいてみた。

ビンゴ。vmstatはきわめてノーマルな値を示したが、sarでは異常な値を示していた。異常な値を示す前後を下記に提示すると

[nice_code]CPU %user %nice %system %iowait %idle
03:30:01 AM all 0.12 0.00 0.13 0.19 99.56
03:40:01 AM all 0.92 0.00 0.61 1.06 97.41
03:50:01 AM all 28.17 0.00 22.93 48.91 0.00
04:00:01 AM all 28.74 0.00 24.07 47.20 0.00
04:10:01 AM all 85.32 0.03 5.62 9.03 0.00
[/nice_code]

3:40と3:50でidleの値が99から0になっている。idleが0になって、userが28~85と高くなっている。これでは高負荷だと判定されても仕方が無いだろう。でも、なぜ、他のstatusコマンドでは取れないのだろう?

さらに、CPU一個ずつの負荷状態を取得するため、sar -P ALLとタイプすると、期待していたのとは違い、奇妙な(?)結果が出た。

[nice_code]03:50:01 AM CPU %user %nice %system %iowait %idle
04:00:01 AM all 28.74 0.00 24.07 47.20 0.00
04:00:01 AM 0 0.12 0.00 0.10 0.19 99.59
04:00:01 AM 1 0.09 0.00 0.07 0.16 99.68
[/nice_code]

allで見ると、たしかにidleは0でUserが28。

でもCPU0とCPU1でとパラで見ると、 余裕があるように見える。

いったいこれはOrz?

次回に続く。。。。

Categories: Tech Tags: , , , ,
Comments are closed.
Theme by NeoEase. Valid XHTML 1.1 and CSS 3.