如何在AWS EC2上增加我的根磁盘大小以便与Elastic Beanstalk一起使用?

Pau*_*lor 5 amazon-ec2 amazon-web-services amazon-elastic-beanstalk

在部署时,我将数据文件从S3复制到我的根驱动器以供Tomcat应用程序使用.这是完美的工作,麻烦是根磁盘只有8GB,我的数据文件将很快大于那个.我想稍微增加根磁盘的大小(15GB应该可以再使用一年)而无需转移到更大的更昂贵的EC2实例,我现在正在使用m3.medium.

由于EB使用我需要正确的EC2配置以根据需要启动,我无法通过手动添加另一个磁盘来修改已在运行的实例.我正在使用EB负载平衡,因此实例可能会来满足需求.

Roh*_*nga 16

这可以使用以下ebextension片段完成.

Resources:
    AWSEBAutoScalingLaunchConfiguration:
        Type: AWS::AutoScaling::LaunchConfiguration
        Properties:
            BlockDeviceMappings:
               - DeviceName: /dev/sda1
                 Ebs:
                     VolumeSize:
                        15
Run Code Online (Sandbox Code Playgroud)

将此代码段添加到路径中文件中的应用程序源代码中.ebextensions/01-change-root-volume-size.config.您可以根据需要为文件命名,但它应该在.ebextensions目录中,并且后缀应为.config.

使用此新的应用来源更新您的环境.这将终止您当前的实例并开始一个您想要的大小的实例.

阅读更多有关使用Elastic Beanstalk自定义AWS资源的信息.有关您可以为启动配置执行的其他自定义的更多详细信息,请参见此处.这里有关于ebextensions的更多文档.

要记住的另一件事是/ dev/sda1适用于m3.medium如果您使用的是HVM实例或GPU实例,如c3.large,g2.2xlarge,i2.xlarge等,那么您需要将DeviceName用作/ dev/xvda而不是.