◆落ちるんですよ
ここのところ、サーバがよく落ちる。でも、落ちているわけじゃない。そこが困るところ。停止してるなら、外部の監視屋さんから連絡がくる。でも、この落ち方だと落ちたと認識されないらしいのだ。それが困るところ。個人鯖なんでいーじゃん。という気楽なそれで6年以上動いてるんだけども、最近は収益も絡んでくるので、困る。Googleさんに落ちてばかりいると嫌われるらしいのでこれも困った。そんな困ったがたくさん集まってわーわーやってる。もう、レンタル鯖に引っ越してしまおうと思っているところだったので、追い打ちを掛ける。
でも、逃げからは何も習得できないので、ちょっと挑戦してみよう。
スポンサードリンク
◆HDDではないらしい
なんで落ちているのかわからないので、再起動を繰り返す。Xen上にいるのでデストロ~イ。。。そんなことばかりやっていられないので、HDD交換。しばらく使いっぱなしだし。
◆メモリ不足らしい?
どうやら反応がなかったり極端に遅くなったときにあらわれるのが、メモリ不足の警告らしい。それが最近よく出てしまう。困った。。。メモリも少なくない割り当てだし、アクセスすは上がっているけど、耐えられないほどじゃない。ちょっとその辺から避けて謎に迫ろう~。ググってもズバリ的な回答がないし。
◆ファイアウォールを最新に
ファイアウォールを最新の状態に書き換えて再起動。でもやっぱダメ。
◆ファイアウォールを停止
じゃぁファイアウォールを停止してみる。でもダメ。
◆topコマンドで様子を見る
いくつが適当かわからない。そういえば最近見かけたCORESERVER観測所というところで、ロードアベレージが云々と書いてあった。それがちょうどこのコマンドにも出ている。しばらく見てみよう。
▲あれ?0.50程度から19、21、31・・・あれれ???
httpdが乱立する。
どの程度が適当かはわからないけど、さすがに30はアレだろってんで、topコマンドから抜ける。すると、みごとに反応が遅い。遅すぎ。
▲とりあえず、Apache再起動で、なんとかなった。
Apacheが原因らしい。ログはよく読もうということかな。
◆Apacheの設定を変えてみる
参考文献にならってとりあえず、以下を変更。KeepAliveTimeout 15 を 10 に変更してみる。
◆やっぱダメなのでApacheの設定を再度見直す
肉眼で監視している状態が続いているけど、2回ほどダメ。1回目は帰ってきたら逝ってる感じだったのでデストロイ。2回目はちょうど見てたところだったので、10超えたところでApache再起動。なので、MaxClientsを半分にしてみる。ついでにファイアウォールの再確認したら更新スクリプトが壊れてた((+_+))けど、大きな問題ではないらしい。
◆やっぱり駄目なので
Apache設定を再度見直し。ログファイルに大量にアクセスしていないかとか。通信内容の圧縮設定をして通信を少なくして見るとか。リファラスパムに対応するとか。SWATCHでクソたったれを遮断するとかしてみる
◆やっぱり駄目なので調べる
スワップファイルもそれほどでもないしなー。そういえばMySQLが変な動きをしてたし、ぶっ壊れそうになったとも出ていた。テストサイトも公開して放置していたので、みてみる。データベースが17000件も登録されてる。あれ?200件以下のはず。。。。
かなり濃厚な線として、WPMUのテストさとにスパム投稿がありまくりだったのかも。。。しかも、ロードアベレージは極端に上昇して耐えられれば乗り切り、そうでなければ落ちる。それが日に何度かしかない(慢性的に高いのならわかるんだけど)
もうphpMyAdminではどうにもならんし、Webminでもダメだ。たぶん処理に時間がかかりすぎるんだろう。SSHで。
mysql> drop database t_wpmu; Query OK, 17844 rows affected (6 min 20.81 sec) |
別のデータベースを操作するにも問題があった=MySQLの応答が待ちきれない状態だったのだが、削除後は動作が戻った。これで解決しそうだ。しばらく様子を見よう。
結局解決した。自己の管理能力のなさが露呈した。
参考文献
- ログ監視ツール導入(SWATCH) – CentOSで自宅サーバー構築 :
ログ監視ツール導入(SWATCH) - CentOSで自宅サーバー構築ログ監視ツール導入(SWATCH) - リファラスパム対策 – CentOSで自宅サーバー構築 :
リファラスパム対策 - CentOSで自宅サーバー構築リファラスパム対策 - Webサーバー間通信内容圧縮(mod_deflate) – CentOSで自宅サーバー構築 :
Webサーバー間通信内容圧縮(mod_deflate) - CentOSで自宅サーバー構築Webサーバー間通信内容圧縮(mod_deflate) - Webサーバー構築(Apache) – CentOSで自宅サーバー構築 :
Webサーバー構築(Apache) - CentOSで自宅サーバー構築Webサーバー構築(Apache) - load averageの値を監視して自動でコマンドを実行するには? – 教えて!goo :
load averageの値を監視して自動でコマンドを実行するには?Redhat Linux で自宅サーバーを運用しています。コマンド top,uptime,w などで見れる load averageについて、load average: 0.77, 2.39, 3.38 (1分、5分、15分の平均数値)この... - 「複数CPUならload averageはCPU数で割れ」は正しいか? – Shoulder.jp :
http://shoulder.jp/archives/006909.php - LinuxサーバにおいてLoadaverageが50以上、つまりサーバが非常に重い状態にあるとします。あなたはどこから原因を調査し、どのようにして解決しますか?(サーバを軽くしま.. – 人力検索はてな :
LinuxサーバにおいてLoadaverageが50以上、つまりサーバが非常に重い状態にあるとします。…LinuxサーバにおいてLoadaverageが50以上、つまりサーバが非常に重い状態にあるとします。あなたはどこから原因を調査し、どのようにして解決しますか?(サーバを軽くしますか?、解決しましたか?、参考になるペー… - アカラボ: apacheのKeepAliveTimeoutを変更してパフォーマンスが劇的にアップ :
http://akalabo.net/archives/2005/09/apachekeepalive.html - LoadAverageを「2.7」から[0.27]へ下げた方法 – ymlabの日記 :
2007-02-23ymlabのブログ - ファイアウォール構築(iptables) – Fedoraで自宅サーバー構築 :
ファイアウォール構築(iptables) - Fedoraで自宅サーバー構築ファイアウォール構築(iptables) - 連載記事 「習うより慣れろ! iptablesテンプレート集」 :
連載記事 「習うより慣れろ! iptablesテンプレート集」 - iptables・設定・ファイアウォール・セキュリティ :
http://penguin.nakayosi.jp/linux/iptables.html - Manpage of IPTABLES :
http://www.linux.or.jp/JM/html/iptables/man8/iptables.8.html - jdk 1.4.2-08-b03, apache 2.0.46, tomcat 5.0.25, mod-jk2 2.0.4,gcc3.2.3の環境において jspの画面を何秒おきかに自動リロードしていて jsp→java→java(jni)→c(jni)→.. – 人力検索はてな :
jdk 1.4.2-08-b03, apache 2.0.46, tomcat 5.0.25, mod-jk2 2.0.4,gcc3.2.3の環境において jspの画面を何秒おきかに自動リロードしていて jsp→java→java(jni)…jdk 1.4.2-08-b03, apache 2.0.46, tomcat 5.0.25, mod-jk2 2.0.4,gcc3.2.3の環境において jspの画面を何秒おきかに自動リロードしていて jsp→java→java(jni)... - aki note ? Apache が落ちる :
302 Found - マルチコア時代のロードアベレージの見方 – naoyaのはてなダイアリー :
マルチコア時代のロードアベレージの見方 - naoyaのはてなダイアリーちょっと煽り気味のタイトルですが、CPU がマルチコアになり 2個、4個と増えていく中 Linux の負荷の指針になるロードアベレージをどう読むべきか、という話です。気になったところを少し調べたのでそのまとめを。 でも書いたとおり、Linu... - CPU使用率とロードアベレージ – 教えて!goo :
CPU使用率とロードアベレージLinuxのtopコマンド等で出力されるCPU使用率とロードアベレージの違いを教えてください。また、ロードアベレージをCPU使用率に換算することは可能でしょうか?可能であれば方法を教えてください。 - UNIX・Linux 解決済 | 教え...
oldId.20090423004906321