跨多个 Stacks 共享 AWS RDS 实例的最佳方法是什么?

跨多个 Stacks 共享 AWS RDS 实例的最佳方法是什么?

我想创建一个更大的 RDS 实例并在 OpsWorks 堆栈之间共享它,这样我就可以在多个应用程序之间集中数据库资源。以下是 OpsWorks 文档中有关为应用程序配置数据源的参考:

http://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html#workingapps-all-app-types

我尝试使用 RDS 选项(在数据源下)选择现有的 RDS 实例。但是,Opsworks 仅显示当前未附加到另一个堆栈的实例。

我能想到的唯一选项是在数据源下选择无,然后手动配置数据库设置的部署 JSON。这种方法的一个缺点是连接不是“自动”的,所以我不确定是否会丢失任何功能。此外,我必须将数据库用户和密码存储在 Stack JSON 中,这可能比自动连接更不安全。

任何建议都值得感激。

答案1

这是我最终使用的解决方案。

  1. 对于应用数据源类型,选择“无”。

  2. 将以下部署自定义 JSON 数据库设置添加到每个应用程序的堆栈设置中:

 
  {
    “部署”: {
        “你的应用”:{
          “数据库”: {
            “适配器”:“mysql2”,
            “主机”:“主机”,
            “端口”:“3306”,
            “数据库”:“数据库”,
            “用户名”:“用户名”,
            “密码”:“密码”,
            “重新连接”:“false”
          }
        }
      }
    }

相关内容