本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
解决方案 1:在中央网络账户中为单个区域创建 VPC 终端节点
使用案例
您的应用程序映射到不同的业务部门, AWS 区域 出于计费和隔离目的,您希望将它们迁移到同一个业务部门的不同 AWS 目标账户。
挑战
要通过私有网络实现这一目标,您必须在每个目标账户中创建多个 VPC 接口终端节点。这增加了管理开销和维护端点的成本。(参见AWS PrivateLink 定价
解决方案
在中央 AWS 网络账户中创建 VPC 终端节点,然后使用 Transit Gateway 连接到目标应用程序账户。
架构
下图说明了此解决方案的架构。
在图中,这些数字表示以下交通流:
-
需要通过位于中央网络账户 VPC 中的接口终端节点连接到亚马逊简单存储服务 (Amazon S3)、MGN 或 Amazon EC2 的亚马逊弹性计算云 (Amazon EC2) 实例或 MGN 复制服务器首先需要通过查询 VPC+2 解析器来解析域名。终端节点私有托管区域与同一区域中的 MGN 暂存 VPC 关联以完成域解析。
注意
对于您与 VPC 关联的每个私有托管区域,解析器都会创建一个规则并将其与 VPC 关联。如果您将私有托管区域与多个 VPC 关联,则解析器会将该规则与所有 VPC 关联。
-
当实例知道要连接的私有 IP 时,它会将流量发送到传输网关 ENI。根据中转网关路由表,流量将发送到中转网关并转发到共享资源 VPC。
-
共享资源 VPC 中的传输网关 ENI 将流量转发到相应的接口终端节点。
-
VPC 终端节点将响应发送回中转网关 ENI。
-
流量被转发到中转网关。按照传输网关路由表中的指定,流量将发送到分支 MGN 分段 VPC。响应由传输网关 ENI 发送到目的地,即 EC2 实例或 MGN 复制服务器。
-
位于公司数据中心的客户端应用程序解析表单中的域名
<aws_service>.<aws_region>.amazonaws.com(例如,mgn.us-east-1.amazonaws.com)。它将查询发送到其预配置的 DNS 解析器。公司数据中心的 DNS 解析器有一个转发规则,该规则将对amazonaws.com域的任何 DNS 查询指向 Route 53 解析器入站终端节点。Transit Gateway 将查询转发到共享资源 VPC,后者在 Route 53 解析器入站终端节点上转发 DNS 查询。Route 53 解析器入站终端节点使用 VPC+2 解析器。与共享资源 VPC 关联的终端节点私有托管区域保存的 DNS 记录
amazonaws.com,因此 Route 53 解析器可以解析查询。 -
Route 53 解析器出站终端节点将 DNS 查询响应返回到本地客户端应用程序。
实现步骤
要设置上图所示的架构,请执行以下步骤:
-
AWS 通过 AWS Direct Connect 或将您的公司数据中心连接到中央网络帐户 AWS Site-to-Site VPN。
-
在网络账户中,使用 Transit Gateway 在 VPC 之间提供连接。传输网关 AWS 账户 由使用共享 AWS RAM,并通过 VPC 连接进一步连接到目标应用程序账户暂存子网。
注意
Target AWS 账户 不必是同一个 AWS 组织的一部分。有关更多信息,请参阅 AWS RAM 文档中的可共享资源。
-
在中央网络账户中为亚马逊 EC2、MGN 和 Amazon S3 创建 VPC 接口终端节点,无需启用私有 DNS 名称。
注意
在创建 VPC 终端节点时 AWS 服务,您可以启用私有 DNS。启用后,该设置将为您创建托管 Route 53 私有托管区域。 此托管区域解析 VPC 内的 DNS 名称。但是,它在 VPC 之外不起作用。这就是使用私有托管区域共享和 Route 53 解析器来帮助共享 VPC 终端节点获得统一名称解析的原因。
-
为每个终端节点(MGN、Amazon EC2、Amazon S3)创建一个私有托管区域。例如,对于该
us-east-1地区的 MGN:-
使用域名创建私有托管区域
mgn.us-east-1.amazonaws.com。 -
创建类型为 A 的主机记录,该记录将域名指向端点 IP。
-
-
创建 Route 53 Resolver 入站和出站规则以简化混合 DNS 解析,并与同一区域 AWS 账户 的所需规则共享这些规则。