【问题标题】:How to manually add dns entries to hosted zone managed by AWS ECS service discovery?如何手动将 dns 条目添加到 AWS ECS 服务发现管理的托管区域?
【发布时间】:2019-11-07 14:37:08
【问题描述】:

我正在为 AWS ECS 中的容器使用服务发现,用于私有托管区域 staging.example.com.

现在,在容器旁边,我想将 AWS RDS 数据库映射到 db.staging.example.com。但是,我无法修改 Route53 托管区域,因为 AWS 拒绝我访问,因为该区域由服务发现管理

AccessDenied: The resource hostedzone/*** can only be managed through servicediscovery.amazonaws.com (***)

非常感谢任何有关如何完成我的自定义子域的建议。还有 Cloud Map 和 App Mesh 作为 AWS 服务,它们在 dns 管理方面具有类似的目标,但我找不到任何关于我的场景的文档。

【问题讨论】:

    标签: amazon-web-services


    【解决方案1】:

    事实证明,AWS Service Discovery 使用 Cloud Map API 来完成其服务。它通过添加SRV 条目在托管区域中注册容器,这些条目引用A 条目和特定端口。这意味着,您的客户需要了解这些 SRV 条目,因为他们在执行 dns 查找时不会立即获得 A 条目。例如,Curl 是 not understand SRV entries

    因此,我重新使用 ECS 和自动负载均衡器注册。然后,ECS 将在先前映射到负载均衡器侦听器中的目标组中注册新服务。然后,通过添加一些指向负载均衡器的别名条目,DNS 条目完全独立地进行管理,而其他类似 db.staging.example.com 条目的别名则为 RDS 数据库端点。

    由于您可以让 ECS 服务在多个目标组中注册自己,因此您也可以使用多个负载均衡器,例如一个供公共访问,一个只能在您的 VPC 内访问。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-08
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      • 2019-07-11
      • 2019-10-02
      • 1970-01-01
      • 2014-10-05
      相关资源
      最近更新 更多