【问题标题】:AWS splitting resources between UAT and PRODAWS 在 UAT 和 PROD 之间拆分资源
【发布时间】:2015-02-13 07:57:28
【问题描述】:

我正在使用 AWS Elastic Beanstalk 部署系统。这一切都很好。如果我想要一个 UAT 和 PROD 环境,我可以设置 2 个不同的弹性 beanstalk 应用程序,这也可以正常工作。现在我的问题是:假设我的应用程序使用 dynamoDB 或 S3 存储桶(EB 部署之外的东西),我如何为 UAT 和 PROD 提供不同的版本?

使用 dynamo:您有 一个 dynamo 数据库实例,而不是每个 EB 部署一个。我的代码将写入“用户”表,但是如果只有一个 dynamoDB,您如何使用相同的用户表停止 UAT 和 PROD?

与 S3 存储桶相同吗?你理想中想要的是 prod.mybucket.xxx 和 uat.my bucket.xxx

我显然错过了什么,你能告诉我什么吗? :)

【问题讨论】:

    标签: amazon-web-services uat


    【解决方案1】:

    您可以使用Elastic Beanstalk environment variables(此示例适用于java,但在其他语言中类似)。使用一个来跟踪环境类型(例如 PARAM1=dev 或 PARAM1=uat),然后使用该前缀命名您的其他资源(存储桶/发电机表)

    s3 存储桶 -> prod-myapp-bucket / uat-myapp-bucket

    在您的代码中,只需在引导程序中获取 param1 并以这种方式调出您的 aws 资源。这就是 beanstalk 让您的应用程序知道要连接到哪个数据库的方式(在 Java 中它是 JDBC_CONNECTION_STRING)。

    您可以使用 AWS api 查询实际的 Elastic Beanstalk 环境名称以执行类似操作(取决于您使用的语言,类似于“描述环境”)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-13
      • 2021-04-16
      • 2018-04-21
      • 1970-01-01
      • 2021-09-27
      • 2011-04-08
      • 2021-10-31
      相关资源
      最近更新 更多