如何使两个Elastic Beanstalk环境共享一个数据库实例

时间:2013-05-03 21:23:11

标签: ruby-on-rails amazon-web-services elastic-beanstalk

我有一个rails弹性beanstalk应用程序,有两个环境,分段和生产。使用eb init创建应用程序和登台环境时,我创建了一个数据库实例。我使用eb控制台创建生产环境并创建了一个新的数据库实例,我认为这显然是一个错误的举动。

如何让我的两个环境共享同一个数据库实例?如果发生这种情况,我在应用程序中更新数据库迁移并部署到暂存时会如何;这意味着我的用户会看到它,因为登台环境使用了相同的数据库。

如何处理此问题?

我还注意到git aws.push没有覆盖我的数据库,但它不会删除回滚迁移。我错过了什么吗?

1 个答案:

答案 0 :(得分:4)

我建议您使用以下选项:在弹性beanstalk环境之外创建rds实例。为生产和登台创建单独的模式。将连接字符串传递给EBS应用程序。 EBS环境之间的共享rds实例将对您有所帮助:

  1. 降低环境成本,因为运行多个rds实例非常昂贵。

  2. 帮助您隔离生产和登台环境。