503エラーが頻発していたIDEA*IDEAが安定するまでにしたこと

SPONSORED LINK

Pocket

503

さてちょっと前ですが、このブログで503エラーが出まくって不安定だったのですが(ごめんなさい・・・)、なんとかいろいろ施して安定したようです。

そのときにいろいろしたのでメモ的に残しておきたいと思います。参考になる人もいるかもしれないので・・・(主に自分用ですが)。興味のない方はスルーの方向でお願いいたします。

なお、今回の作業ではまたしても青い人赤松さんに大変お世話になりました。感謝感激です。

■ サーバー構成

ちなみにサーバー構成ですが、ざっくり次のような感じです。

server

LucidCart使ってみた。微妙に使いにくいぞ・・・。

■ やったこと

時系列でやったことをば。

  • 何かがおかしい!
  • IDEA*IDEAで503が頻発。ちなみにその時期のPVは1日3万+ぐらい(Google Analyticsで)。

  • まずはtop
  • まずはロードアベレージやSwapなんかをtopで調査。見てみるとLAも1以下だし、Swapもしていないので「あれれ?」という感じ。

  • MaxClientsを変更
  • そこでリクエストが裁き切れていないのだろう、ということでリバースプロキシーサーバーとIDEA*IDEAのサーバーのMaxClientsを変更。ざっくり1024にまであげてみる(← 横暴)。

  • error_logを調査
  • それでもまださばききれていないようで503が頻発。おかしいなぁ、ということでエラーログを調査。次のようなエラーがずらずらと。

    [Sun Feb 22 11:11:17 2009] [error] (113)No route to host: proxy: HTTP: attempt to connect to 192.168.0.12:80 (192.168.0.12) failed
    

    あと、今はなきMovableTypeのスクリプトにbotが来まくり。でもまぁ、エラーなんでこれは無視することに。

  • IPの重複を調査
  • ここで青い人から「IPが重複していたりとかないですか?」と言われる。まさかそんなうっかりミスは!と思って調べてみたけどやっぱり大丈夫でした。でもよくあるミスらしい。

  • ProxyPassのオプション?
  • 次に赤松さんに「ProxyPassのオプション変えてみたらどうですか?」と助言され、ここらへんを参考にProxyPassを変更。ざっくり次のような値に。

    ProxyPass / http://192.168.0.12 smax=5 max=20 ttl=120 retry=300
    

    なんだか良くわからないけど、このぐらいでいいかな、としばらく様子見・・・だけどすぐに503発生。

  • [P]モードへ
  • 次に赤松さんから「ではmod_rewriteをPモードで動かしましょう」と助言される。mod_rewriteでリバースプロクシー的な動きをさせるためのものらしい。次のように変更。

    <VirtualHost *:80>
      ServerName www.ideaxidea.com
      ServerAlias ideaxidea.com
      RewriteEngine On
      RewriteRule (.*)  http://192.168.0.12$1 [P]
      ProxyPassReverse / http://192.168.0.12
    </VirtualHost>
    

    ちなみに参考にしたのは以下のサイト。

    » mod_rewriteでのreverse proxyとRedirect動作 ありえるえりあ

以上までの作業が先週ぐらいかな。それ以来安定しているので、最後のPモードが利いたのかな、と思ってはいるのですがあまり細かいことはいまだにわからず(詳しい人教えてください・・・)。

なお、全部のサーバーを再起動しちゃえばきれいになるのでは、という思いが一瞬あたまをよぎりましたが、まだやっていません(← Windows的発想)。

それにしてもサーバーまわりは奥が深いですね・・・。こうした経験を積みつつ、今後に活かしたいと思います。上記を読んで「ここがおかしくね?」という貴重なご意見をいただける方は是非コメントなどを(優しく)残していただければと切に願います。

ツイッターもやっています!

SPONSORED LINK

  1. 今僕のサイトも503エラーが、でまくりで、、、これを参考に
    がんばります。。
    サーバーって聞くと拒否反応が、、、汗;

  1. No trackbacks yet.