Amazon EC2 microインスタンスでOut of Memory Killerが発生したとき

Tsukasa OISHI

kaeruspoonはAmazon EC2上で稼働しているのですが、bundle installしただけでOOM Killerが発動してしまい困っていました。リソース的には自宅サーバ時代よりも上のはずなので、どうもおかしいなあと悩んでいたのですが、freeコマンドの結果をよくよく見てみるとswap領域の容量がないではありませんか。つまり、613MBのメモリ空間を使い切ると容赦なくOOM Killerの嵐が吹き荒れることに……。今まで気づいてなかったけど、いつwebサーバが落ちてもおかしくなかったですね。
そういえば何日か前にkaeruspoonがレスポンスを返さなくなってsshでもログインできなくなってインスタンスを再起動したことがあったのですが、これも今思えばOOM Killerのせいだったのかもしれません。

というわけでswap領域を増やします。同じような目に遭った人もいるようで、
Amazon EC2のMicro Instanceにswapを追加
というようなサイトも見つかりました。
仕事でwebサイトを扱っていると、swapが発生したら負けみたいなところがありますが、貧弱マシンではまだまだ大事な機能ですね。