正確にはダウンしたわけではないのだけど、Webサーバが変なリクエストを処理しきれずにサブプロセスをいっぱいつくっちゃって正常なプロセスがまともに動作しなくなっていたようです。
LANケーブルつなげた状態で再起動すると同じ状態になっちゃうので、とりあえず LANケーブルを外して再起動、環境設定で「パーソナルWeb共有」を OFF、LANケーブルを接続、しばらくそのまま放置しておいたらあやしい httpリクエストが(あきらめて? というか bot のタイムアウト?)なくなって「パーソナルWeb共有」を ON にしても大丈夫になったみたいです。
しばらくこのままにして様子をみますが、同じようなことがまた発生するようなら何か対策を考えないと…
追記:どうも Baiduspider+ という検索サイト「百度」の(お行儀が悪いことで有名な)ロボットが原因っぽい。とりあえず User-Agent が Baiduspider だったら拒否するように httpd.conf を設定しました。
あと、リクエストの件数だけなら Googlebot が圧倒的に多いが Googlebot の場合は20秒ぐらい間をおいてリクエストを送ってくる。しかし Baiduspider+ は間をおかずに(1,2秒、最悪の場合は1秒以内に)リクエストを送ってくるようである。
追記2:今回のサーバ高負荷の原因ではないみたいだけど、アクセスログを見ているといろんな IPアドレスと User-Agent(偽装?)でトラックバックのリクエストがたくさん来てます。これは SPAM のボットネットからなんでしょうね。くわばら、くわばら…
Tags: My Sites