AWS Elastic Beanstalk - 增加实例磁盘容量

dsw*_*w88 7 amazon-ec2 amazon-web-services amazon-elastic-beanstalk

我正在尝试将ElasticBeanstalk用于具有一些大的初始空间要求的应用程序.它超过了EC2实例上EBS磁盘的默认8GB容量.

我试图通过使用更大的EC2实例类型来增加磁盘容量.例如,我使用了m3.large,AWS告诉我应该为我提供1x32GB的存储空间.

但是,当Beanstalk环境启动时,它仍然只显示8GB.我试图在实例上运行"resize2fs"命令,但它没有将卷扩展到8GB以上的任何内容.

有谁知道如何在ElasticBeanstalk环境中获得更大的实例存储?

sme*_*tek 10

带有 ebextensions 配置的 Elastic Beanstalk 解决方案示例:

application-root-dir/.ebextensions/001-filesystem.config

option_settings:
  aws:autoscaling:launchconfiguration:
    RootVolumeType: gp2
    RootVolumeSize: "64"
Run Code Online (Sandbox Code Playgroud)


And*_*y P 8

现在,在aws:autoscaling:launchconfiguration中使用RootVolumeType和RootVolumeSize是一种更好的方法。详细信息在[这里]。1个

以下是我的cloudformation脚本中的相关部分以创建弹性beantalk

  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "RootVolumeType",
    "Value": "gp2"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "RootVolumeSize",
    "Value": 25
  },
Run Code Online (Sandbox Code Playgroud)

这也可以通过前伸容易达到。

  • 我认为现在应该将其标记为正确答案。 (2认同)

Joh*_*one 2

您看到的 8 GB 磁盘是安装在 上的 EBS 根卷/。无论您使用什么实例类型,这都是一样的,这就是为什么它仍然只显示 8 GB。32 GB 存储是附加到实例的临时存储(不是 EBS)。它可能不会自动安装,但它肯定在那里。

两种选择供您选择:

  1. 您可以尝试安装 32 GB 临时存储。

  2. 您可以创建并安装所需大小的单独 EBS 卷: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-volume.html http://docs.aws.amazon。 com/AWSEC2/latest/UserGuide/ebs-using-volumes.html

无论哪种方式,您都需要进行任何所需的更改以指向这个新存储,无论您将其安装在文件系统中的何处。这可以通过更改配置或创建从旧位置到新文件系统的符号链接来实现。