2016-03-20 23 views
3

AWS Elastic Beanstalk環境用にLinuxスワップスペースを設定できますか?AWS Elastic BeanstalkでLinuxスワップスペースを設定できますか?

コンソールにオプションが表示されません。私の環境で実行中のインスタンスの/proc/meminfoを見ると、Inactiveの値がかなり高いにもかかわらず、かなり低い値になっています。私はページアウトに害を及ぼさないいくつかの休止状態のバックグラウンドプロセスが存在し、私が使用しているt2.nanoの制限された物理メモリのほんの一部を解放するだろうと思う。

答えて

5

Tomcat Webアプリケーションの.ebextensions設定フォルダを使用してこれを行う方法を知りました。

ファイル.ebextensions/swap.config追加:

#!/bin/bash 

set -o xtrace 
set -e 

if grep -E 'SwapTotal:\s+0+\s+kB' /proc/meminfo; then 
    echo "Positively identified no swap space, creating some." 
    dd if=/dev/zero of=/var/swapfile bs=1M count=512 
    /sbin/mkswap /var/swapfile 
    chmod 000 /var/swapfile 
    /sbin/swapon /var/swapfile 
else 
    echo "Did not confirm zero swap space, doing nothing." 
fi 

その他のドキュメント:これは150MiBが私のt2.nanoにスワップアウトすることが許可され実行されているしばらくhttp://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

ファイル.ebextensions/scripts/add-swap-space.shを追加

container_commands: 
    add-swap-space: 
    command: "/bin/bash .ebextensions/scripts/add-swap-space.sh" 
    ignoreErrors: true 

をこのインスタンスは、デフォルトのヒープオプションを持つElastic Beanstalk Java Tomcatプラットフォームを実行します。私が見ることのできるところからは、アプリケーションの実行中に進行中のページングは​​ありません。一部の休止データがスワップにプッシュされ、ページキャッシュが大幅に(30MiBから180MiBまで)大きくなっているようです。

関連する問題