質問: swap領域が使えないvps(osはcentos)でアプリケーションを動かしたいのですが、 すぐにメモリが足りなくなって落ちてしまいます。 ファイル管理のswapも試してみましたが、swaponコマンドを叩くと権限がない(rootで実行しても)と言われるのでお手上げ状態です。 このような環境で上手く運用する方法はないでしょうか。 ちなみにメモリは1Gで、アプリケーション自体はswapが使える環境で問題なく動きます。
回答: おそらく、OpenVzやVirtuozzoなどのコンテナ型VPSを利用しているのだと思います。 これらのVPSでは単一のOS上で「他のユーザが見えない」機能が提供されているだけ、雑に言ってしまえば「すごいchroot機能が提供されている共用ホスティング」なので、OSそのものの設定を変更できるように設計されていません。また、他のユーザの影響を受ける可能性が高くなります。(その代わり、1台のハードウェアに多くのユーザを詰め込めるので安めに提供されています。) このような状態でアプリケーションを安定して動作させるには、割り当てられたメモリの範囲内 (さらに言えば保証された範囲内) で動作するように開発・設定するしかありません。 求めている回答では無いかもしれませんが、完全仮想化・準仮想化で提供されているサービスに乗り換えるのが良いと思います。