Index: [Article Count Order] [Thread]

Date:  Sun, 13 Apr 2003 20:42:21 +0900
From:  TAKAHASHI Motonobu <monyo@home.monyo.com>
Subject:  [2003/02/25] サーバ停止について
To:  monyo-com-announce@monyo.com
Message-Id:  <20030413204221E.monyo@home.monyo.com>
In-Reply-To:  <20030225231711N.monyo@home.monyo.com>
References:  <20030225231711N.monyo@home.monyo.com>
X-Mail-Count: 00006

たかはしもとのぶです。

2003.02.25 11:00頃〜12:30頃まで、monyo-com のサーバが高負荷により実質
的に停止していました。ただいまは復旧しています。

(1) アクセスができなかった時間帯
  2003.02.25 11:00頃〜2003.02.25 12:30頃まで

(2) 原因
  昨日より、以下の URL

  http://damedame.monyo.com/?date=20030221#p07

  へのアクセスが輻輳していることに加え、毎時 0 分に「なつみかん」など
  非常に CPU を使用するソフトウェアが自動実行されたことによる CPU の過
  負荷が原因により、上記 URL へのアクセスを処理する多数のプロセス(ruby
  のスクリプト)が滞留し、結果としてプロセステーブルが枯渇してしまうこ
  とが原因と推定。

(3) 対応
  ルータの設定を一時的に変更し、ayaka.monyo.com の 80 番ポートへのアク
  セスを一時遮断し、ある程度負荷が下がりログインが可能になった時点で、
  ログインの上、設定を変更して再度 80 番ポートを解放。

(4) 経緯
  2003.02.25 11:30頃
    サーバにアクセスできないことを確認
    ssh 経由で接続しようとしたが、タイムアウトで接続できず。
    Apache などが動作しているらしいことは確認。

  2003.02.25 11:40頃
    ルータの設定を変更し、ayaka.monyo.com のポート 80 への通信を遮断
    # その後 kitaj さまのところに対処策を聞きにいく。

  2003.02.25 12:05頃
    ログインに成功。httpd.conf の以下の設定を変更する。

    MaxClients 150 → 10

    「なつみかん」などの自動機能を一時停止するように設定変更を依頼

    負荷軽減のため、tdiary の ruby スクリプトを mod_ruby で起動するよ
    うに設定を行うが、途中で挫折

  2003.02.25 12:25
    ポート 80 への通信を再度解放

  2003.02.25 12:30
    CPU 使用率が 50% 程度、ロードが 2.x 程度だったため、httpd.conf で

    MaxClients 10 → 12
    Timeout 300 → 60

    のように変更

  2003.02.25. 12:35
    CPU 使用率 80% 程度、ロード 3.x 程度で安定していることを確認
    
(5) 今後
  現状のトラヒックを支えるには、マシンパワーが不足していることは明白な
  ため、以下の対処を行う予定です。

  o CPU 交換
    Pentium II 233MHz → Pentium III 500MHz
  o メモリ増設
    64MB → 192MB
  o NIC交換
    歴史的経緯により、現在 ayaka.monyo.com では ISA バスの 3c509 を使っ
    て通信が行われています。その一方で本体内蔵の Intel EEpro は使われ
    ていません。
    そのため、3c509 の使用を止め、Intel EEpro の方を利用するように変更
    します。
  o mod_ruby の導入
    ruby を別プロセスで起動する代わりに、Apache 内部で動作させることで、
    負荷を軽減します。

  とりあえず、明日早朝にハードウェアの交換を行う予定です。

-----
TAKAHASHI, Motonobu (たかはしもとのぶ)         monyo@home.monyo.com
                                               http://www.monyo.com