今朝、またLoadの上昇をWatchdogが検知して自動リブートがかかってた。
今まで散々Movabletypeのコメント/トラックバックスパム対策をしてきたが、サーバのリソース監視用グラフを見てたら、MTのバックエンドになってるMysqlは現在は暇そうなことがわかった。
でもスワップアウトはそれなりの頻度で発生してる...。次にあやしいサービスはairproxyか?自分用にしか使ってないので、認証がかなりザルなのがいけなかっただろうか...しかしairproxyのログも取っていなかったので詳細不明。。。とにかく対策
・認証情報を変更
・airproxyの動いてるポートをデフォルト8080から変更
・ログを取るようにする
とりあえずこれだけ。
問題の根本はスパム等の不正アクセスにやられそうなサービスで対策をしないと解決しないが、現象としては スワップ発生→Disk I/O増加 → 負荷上昇 →アボーン(´・ェ・`) なので、スワップを使わないことにしてみる。
・スワップが起きた後
# free
total used free shared buffers cached
Mem: 2068128 2015676 52452 0 5484 524528
-/+ buffers/cache: 1485664 582464
Swap: 2650684 1425136 1225548
# swapoff -a
swapoff: /dev/hda5: メモリを確保できません
(;゚Д゚)(゚Д゚;(゚Д゚;)ナ、ナンダッテー!!
swapが大きすぎるらしい。サービスを再起動するなりしてswapを減らした後
# free
total used free shared buffers cached
Mem: 2068128 636600 1431528 0 4860 528492
-/+ buffers/cache: 103248 1964880
Swap: 2650684 57260 2593424
kinopio:/home/bippo# swapoff -a
kinopio:/home/bippo# free
total used free shared buffers cached
Mem: 2068128 868008 1200120 0 5036 531584
-/+ buffers/cache: 331388 1736740
Swap: 0 0 0
たいしたサービスも提供していない自宅サーバだから、メモリ2GBとか余裕過ぎるはず。
これで問題が起きなければ、恒久的にswapナシにするか...というのはクールではない...