如何从 Elastic Beanstalk 环境中删除 RDS 数据库?
似乎没有这样做的选项。我知道我可以创建一个 EB 环境并让它用它创建一个 RDS 服务器,我们做到了。现在我们只想自己获取 RDS 服务器的 raid,但让应用服务器保持运行。除非我只是从 RDS GUI 中删除它,否则我不知道我们应该如何执行此操作,但我认为正确的方法是将其从 EB 环境中删除。
如何从 Elastic Beanstalk 环境中删除 RDS 数据库?
似乎没有这样做的选项。我知道我可以创建一个 EB 环境并让它用它创建一个 RDS 服务器,我们做到了。现在我们只想自己获取 RDS 服务器的 raid,但让应用服务器保持运行。除非我只是从 RDS GUI 中删除它,否则我不知道我们应该如何执行此操作,但我认为正确的方法是将其从 EB 环境中删除。
根据亚马逊 aws 论坛上的这个答案:
目前无法从 Elastic Beanstalk 配置中删除 RDS。您需要创建一个不包括 RDS 配置的新 Elastic Beanstalk 应用程序配置,在这个新环境中启动您的应用程序,然后更改 DNS 以指向新环境。
现在是 2019 年,仍然无法从 Elastic Beanstalk 环境中删除 RDS 数据库。我希望我早点知道这一点。
无论如何......以下是在没有托管 RDS 数据库的情况下创建新环境所需的一般步骤(基于 AWS 论坛中的同一线程):
创建 RDS 数据库的快照并从中创建新的 RDS 数据库。这不会保留数据库的安全组、参数组或选项。因此,最好创建一个新的空 RDS 数据库,您可以在其中配置所有内容,然后从数据库转储中恢复内容,例如mysqldump
.
保存您的 Elastic Beanstalk 环境的配置并从您的 S3 EBS 存储桶中下载它resources/templates/<your-app-name>/
。
修改配置以删除对 RDS 的所有引用,并将修改后的文件上传到您的 S3 存储桶。
从保存的配置创建一个新环境。您现在应该有一个没有托管 RDS 数据库的环境。在此过程中可能不会保留某些设置。例如,我必须为我的新环境重新配置负载均衡器。
在新环境中一切正常后,您可以使用“交换环境 URL”或将您的 DNS 记录指向新的负载均衡器。
现在您可以将数据库与您的环境分离。
然后它将遵循您为其设置的数据保留策略。
https://aws.amazon.com/premiumsupport/knowledge-center/decouple-rds-from-beanstalk/