我们使用机器学习技术将英文博客翻译为简体中文。您可以点击导航栏中的“中文(简体)”切换到英文版本。
使用 Amazon Route 53 配置文件简化亚马逊云科技私有链接部署的 DNS 管理
导言
对于采用 Amazon PrivateLink 接口终端节点的大型企业而言,关键挑战围绕着简化部署流程、最大限度地减少终端节点数量以及大规模优化成本。应对这些挑战的一种行之有效的方法是使用 Amazon Transit Gateway 和 Amazon Route 53 解析器,从而在多个亚马逊虚拟私有云(VPC)和本地环境中高效共享 Amazon PrivateLink 接口终端节点。它使企业能够最大限度地减少所需的接口端点的数量,从而节省成本并降低运营开销。
PrivateLink 可促进您的 VPC 与支持的亚马逊云科技服务、云软件服务 (SaaS) 应用程序或亚马逊云科技或本地托管的第三方服务之间的私有连接。PrivateLink 使用 VPC 接口终端节点,在您的 VPC 和目标服务之间建立安全连接。但是,随着组织扩展和引入更多 VPC 和账户,在数千个 VPC 上部署这些接口端点,尤其是在多账户环境中,可能会变得越来越复杂和昂贵。
Amazon Route 53 Profiles 为重新审视这一架构并进一步增强它提供了一个新的机会。集成 Route 53 配置文件允许您简化和集中管理多个亚马逊云科技账户中大量 VPC 的 DNS 管理,从而使您的 PrivateLink 部署更具可扩展性。
在这篇文章中,我们将向您展示 PrivateLink 如何在您的 VPC 之间实现安全的私有连接,无论它们位于同一个账户内、跨多个账户,还是与本地环境和亚马逊云科技服务集成。无论您是扩展基础架构还是优化架构,这篇文章都为掌握 PrivateLink 部署提供了实用的分步指南。
解决方案概述
在中心辐射模式中集中部署 PrivateLink 可以解决与在众多 VPC 和账户上扩展 PrivateLink 相关的挑战。在图 1 所示的设置中,PrivateLink VPC 终端节点集中部署在共享服务 VPC 中。开发和生产账户中的分支 VPC 可以通过传输网关或亚马逊云科技云广域网连接到共享服务 VPC 来访问这些集中式终端节点。本地数据中心可以通过 Amazon Direct Connect 或亚马逊云科技站点间 VPN 与亚马逊云科技环境建立混合连接,访问这些集中式私有链接 VPC 终端节点。

图 1:共享服务 VPC 中的集中式 VPC 终端节点
在实施集中部署模型时,DNS 管理是关键组成部分。为任何启用 PrivateLink 的服务创建 VPC 接口终端节点时,您可以选择在终端节点设置过程中选择"启用 DNS 名称"选项来启用私有 DNS。启用此功能会创建亚马逊云科技管理的,它将亚马逊云科技服务的公有 DNS 名称解析为 VPC 终端节点的私有 IP 地址。但是,这个托管的 PHZ 只能在托管 VPC 终端节点的中心 VPC 内访问,不能与其他分支 VPC 共享。为了克服这个问题,我们使用自定义 PHZ,我们将在下一节中对此进行讨论。
用于私有链接 DNS 解析的自定义 PHZ
对于 VPC 到 VPC 和本地连接,我们首先禁用 VPC 终端节点的私有 DNS。
- 在 VPC 控制台中,选择终端节点并选择终端节点。
- 选择"操作",然后选择"修改私有 DNS 名称"。
- 在"修改私有 DNS 名称设置"下,取消选中"为此端点启用"。
- 选择"保存更改"。

图 2:修改私有 DNS 名称
禁用"启用私有 DNS 名称"后,您可以创建 Route 53 PHZ。您可以使用服务终端节点名称并配置指向亚马逊云科技服务的 VPC 终端节点名称的别名记录。

图 3:创建 Route 53 别名记录
在此示例中,我们在 us-east-1 亚马逊云科技区域为 Amazon Lambda 创建一个端点,因此该终端节点以 lambda.us-east-1.vpce.amazonaws.com 结尾。
在中心 VPC 中创建此自定义 PHZ 时,您可以将其与其他分支 VPC 关联。这种方法确保所有分支 VPC 都能将亚马逊云科技服务的公有 DNS 名称解析为终端节点的私有 IP 地址,从而实现多个 VPC 之间的无缝连接。
通常,要为多个 VPC 的 VPC 终端节点启用 DNS 解析,您需要手动将每个 VPC 终端节点的 PHZ 与每个分支 VPC 关联起来。如果中心和分支 VPC 位于同一亚马逊云科技账户中,则可以通过亚马逊云科技管理控制台执行此关联。但是,如果 VPC 位于不同的账户中,则您需要使用亚马逊云科技命令行接口 (亚马逊云科技 CLI) 或软件开发工具包来完成关联。Route 53 开发者指南中描述了此过程。

图 4:使用跨账户 PHZ 关联的共享服务 VPC 中的集中式 VPC 终端节点
为了简化此流程并使其更具可扩展性,可以使用 Route 53 配置文件。在下一节中,我们将探讨如何使用 Route 53 解析器配置文件来增强现有解决方案。
使用 Route 53 配置文件解析 VPC 到 VPC 私有链接 DNS
图 5 中的架构图显示了单区域工作负载。我们在开发账户中部署了名为 Dev VPC 的亚马逊 VPC,在 Prod 账户中部署了名为 Prod VPC。如前所述,这些 VPC 使用 Transit Gateway 或亚马逊云科技云广域网进行连接。该架构便于亚马逊弹性计算云(Amazon EC2)实例在共享服务 VPC 中使用 VPC 终端节点。这些实例位于开发 VPC 或 Prod VPC 中,可以私下访问 Amazon Kinesis 和 Lambda。

图 5:使用 Route 53 配置文件进行 DNS 解析的共享服务 VPC 中的集中式 VPC 终端节点
以下步骤介绍了部署过程,展示了 Route 53 配置文件如何简化此流程。
- 在共享服务 VPC 中,我们创建了 VPC 接口终端节点,以便使用 PrivateLink 安全地访问 Kinesis 和 Lambda。
- 我们为每个端点配置 PHZ。
- 我们在共享服务账户中创建了 Route 53 配置文件。创建配置文件后,我们必须将其与共享服务 VPC 关联。
- 将 Kinesis 和 Lambda 的 PHZ 与此 Route 53 配置文件关联起来。
- 为了将这个新创建的 Route 53 配置文件扩展到开发和生产账户,我们使用 Amazon Resource Access Manager (Amazon RAM) 与两个账户共享该配置文件。
- 共享后,您可以导航到 Dev 和 Prod 账户,并将 Route 53 配置文件与相应账户中的每个 VPC 关联起来。
为 Kinesis 和 Lambda 实施 VPC 终端节点意味着所有 VPC 都可以将这些服务的公有 DNS 名称解析为各自的 VPC 终端节点的相应私有 IP 地址。因此,这些分支 VPC 中的所有资源现在都可以通过 Transit Gateway 或亚马逊云科技云广域网安全地访问 Kinesis 和 Lambda 服务。然后通过共享服务 VPC 中的 VPC 终端节点执行此操作,无需穿越公共互联网。
展望未来,当您为任何其他支持的亚马逊云科技服务创建新的 VPC 终端节点时,唯一需要的步骤是将每个 VPC 终端节点的 PHZ 与集中式 Route 53 配置文件关联起来。建立此关联后,与此 Route 53 配置文件关联的所有 VPC 都可以将 DNS 名称解析为这些新创建的 VPC 终端节点。
同样,当您在现有或新账户中配置新的 VPC 时,您会将这些 VPC 与共享的 Route 53 配置文件关联起来。您还可以使用 Transit Gateway 或亚马逊云科技云广域网提供与共享服务 VPC 的第三层连接。因此,所有新 VPC 会自动与共享服务账户中的所有 PHZ 相关联,从而为相应的 VPC 终端节点提供无缝的 DNS 解析。
本地网络的 PrivateLink DNS 解析
在图 6 所示的场景中,我们在亚马逊云科技环境和外部网络之间建立了第 3 层连接。本地资源需要访问亚马逊云科技服务,例如 Kinesis 和 Lambda,因此我们必须实施本地 DNS 解析解决方案。

图 6:使用 Route 53 配置文件在本地进行 DNS 解析的共享服务 VPC 中的集中式 VPC 终端节点
- 使用直接连接或点对点 VPN 与现有的 Transit Gateway 或亚马逊云科技云广域网建立第 3 层连接。
- Route 53 解析器入站终端节点部署在共享服务 VPC 中。
- 本地 DNS 解析器配置了转发规则,用于将 Kinesis 和 Lambda 的 DNS 查询发送到 Route 53 解析器入站终端节点的 IP 地址。
- 在解析查询时,与创建 Route 53 解析器入站终端节点的共享服务 VPC 直接关联的 PHZ 优先于与 VPC 关联的 Route 53 配置文件。
注意事项和优秀实践
- VPC 终端节点应跨越多个可用区 (AZ),最好是两个或更多,以实现高可用性。同样,Route 53 Resolver 入站端点应配置为在多个可用区上运行,从而减轻可用区级别故障的潜在影响。
- 当您将 PHZ 与 Route 53 配置文件关联且该配置文件关联到您的 VPC 时,您无需明确将 PHZ 与这些 VPC 关联起来。
- 您可以与特定组织单位 (OU) 或整个组织共享 Route 53 配置文件,而不是与个人账户共享。如果您的 Route 53 配置文件与某个 OU 或整个组织共享,则该范围内每个现有和新创建的帐户将自动访问此 Route 53 个人资料。这样就无需手动与每个亚马逊云科技账户共享 Route 53 配置文件。
- 如 Route 53 定价页面所述,VPC 配置文件按每个 Profile-VPC 关联的小时费率收费。创建大量配置文件可能会导致更高的成本。
- 如果 VPC 同时与 PHZ 和 Route 53 配置文件相关联,则 Route 53 解析器会优先考虑并首先使用直接 PHZ 关联。有关如何对 Route 53 配置文件设置进行优先排序的文档中对此进行了概述。
- 如 Amazon PrivateLink 配额文档中所述,每个接口终端节点目前都支持为每个可用区的持续和突发流量提供特定的带宽。考虑使用此解决方案来支持更高的带宽需求。
结论
在这篇文章中,我们讨论了使用 Amazon Transit Gateway 或亚马逊云科技云广域网进行亚马逊云科技私有链接部署的集中式模型时,如何轻松集成 Amazon Route 53 配置文件以帮助进行 DNS 管理。要开始使用,请访问 Amazon PrivateLink 和 Amazon Route 53 配置文件页面。
作者简介
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您发展海外业务和/或了解行业前沿技术选择推荐该服务。


