Amazon web services 我可以在AWS Elastic Beanstalk上配置Linux交换空间吗?

Amazon web services 我可以在AWS Elastic Beanstalk上配置Linux交换空间吗?,amazon-web-services,amazon-elastic-beanstalk,swapfile,Amazon Web Services,Amazon Elastic Beanstalk,Swapfile,我可以为AWS Elastic Beanstalk环境配置Linux交换空间吗 我在控制台中看不到它的选项。在我的环境中运行的实例上查看/proc/meminfo,MemAvailable看起来很低,尽管有很高的非活动的值。我怀疑有一些休眠的后台进程,它不会对分页造成伤害,并且会释放我正在使用的t2.nano上有限的物理内存中的一部分。我在Tomcat web应用程序中使用.ebextensions配置文件夹找到了如何做到这一点 添加文件.ebextensions/swap.config: co

我可以为AWS Elastic Beanstalk环境配置Linux交换空间吗


我在控制台中看不到它的选项。在我的环境中运行的实例上查看
/proc/meminfo
MemAvailable
看起来很低,尽管有很高的
非活动的
值。我怀疑有一些休眠的后台进程,它不会对分页造成伤害,并且会释放我正在使用的
t2.nano
上有限的物理内存中的一部分。

我在Tomcat web应用程序中使用
.ebextensions
配置文件夹找到了如何做到这一点

添加文件
.ebextensions/swap.config

container_commands:
  add-swap-space:
    command: "/bin/bash .ebextensions/scripts/add-swap-space.sh"
    ignoreErrors: true
添加文件
.ebextensions/scripts/Add swap space.sh

#!/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
更多文档:

运行一段时间后,这允许在我的
t2.nano
实例上交换150MiB,该实例使用默认堆选项运行Elastic Beanstalk Java Tomcat平台。据我所见,在应用程序运行时,没有正在进行的分页。看起来有些休眠数据被推到了交换位置,页面缓存明显变大了(从30MiB增加到180MiB)