【问题标题】:Restoring an Elastic Beanstalk RDS恢复 Elastic Beanstalk RDS
【发布时间】:2018-08-19 19:51:17
【问题描述】:

重建弹性 beanstalk 环境时,EB 会自动重新创建新的关联 RDS 实例。

一旦关联,RDS 实例就无法与 EB 环境分离。

我有一个重建前 RDS 的快照。

您无法将 RDS 快照还原到现有 RDS 实例。

那么,我怎样才能在附加了所需快照的情况下重建环境?或者,我如何使用现有快照,或者如何将现有快照数据迁移到新数据库(我尝试使用创建模式导出数据,但缺少导入权限)。任何合适但理想的简单选项都可以。

【问题讨论】:

标签: amazon-web-services amazon-elastic-beanstalk amazon-rds


【解决方案1】:

如果您有 RDS 数据库的快照,则可以使用它创建新环境。为此,您需要指定DBSnapshotIdentifier 选项设置。

  1. 在项目的根目录中创建一个文件.ebextensions/rds_builder.config
  2. 添加以下内容:

    option_settings:
      aws:rds:dbinstance:
        DBSnapshotIdentifier: <snapshot ID here>
    

编辑:

您还可以使用当前环境的saved configuration template 创建新环境。这个保存的模板很可能包含aws:rds:dbinstance 中的信息(因为您已将当前环境与 RDS 相关联),因此您需要基本上修改此位以指向您的快照。这应该可行,并且可能是更好的方法。

【讨论】:

  • 从现有环境“创建新环境”是否微不足道?这与重建有何不同?您的答案看起来像是我会参考的内容,但由于我缺乏上下文,因此不会立即有用。我选择了stackoverflow.com/a/19483247/4682556
  • 有了应用程序代码(也包含上面提到的.ebextension来指定快照ID),我就新建一个环境。您还可以使用已保存的当前配置模板创建新环境。这个保存的模板很可能包含aws:rds:dbinstance 中的信息(因为您已将当前环境与 RDS 相关联),因此您基本上需要修改此位以指向您的快照。这应该可行,并且可能是更好的方法,但我从未尝试过。
  • 有没有办法在没有代码项目的情况下做到这一点?我只能通过 aws web 控制台管理它...
猜你喜欢
  • 2013-12-01
  • 2015-12-09
  • 2014-07-25
  • 2011-09-06
  • 2014-12-12
  • 2014-07-21
  • 2013-08-12
  • 2014-07-03
  • 2016-08-24
相关资源
最近更新 更多