AWS PrivateLink - 构建可扩展且安全的多VPC AWS 网络基础架构

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS PrivateLink

AWS PrivateLink在 VPC、AWS 服务和您的本地网络之间提供私有连接,而不会将您的流量暴露给公共互联网。由 AWS PrivateLink提供支持的接口 VPC 终端节点可以轻松地跨不同的账户 AWS 和 VPC 连接到其他服务,从而显著简化您的网络架构。这允许那些可能希望私下向其他 VPC(服务提供商)公开位于一个 VPC 中的服务/应用程序的客户(使用者),其方式是 AWS 区域 只有使用者 VPC 才能启动与服务提供商 VPC 的连接。例如,您的私有应用程序能够访问服务提供商 API。

要使用 AWS PrivateLink,请在您的 VPC 中为您的应用程序创建一个 Network Load Balancer,然后创建指向该负载均衡器的 VPC 终端节点服务配置。然后,服务使用者为您的服务创建接口终端节点。这将在使用者子网中创建一个弹性网络接口 (ENI),其私有 IP 地址用作发往该服务的流量的入口点。消费者和服务不必位于同一 VPC 中。如果 VPC 不同,则消费者和服务提供商 VPC 的 IP 地址范围可能会重叠。除了创建接口 VPC 终端节点以访问其他 VPC 中的服务外,您还可以创建接口 VPC 终端节点以通过私密访问支持的 AWS 服务 AWS PrivateLink,如下图所示。

将 Application Load Balancer (ALB) 作为 NLB 的目标,您现在可以将 ALB 的高级路由功能与。 AWS PrivateLink有关参考架构和详细配置,请参阅 Network Load Balancer 的应用程序负载均衡器类型的目标组

描述 AWS PrivateLink 与其他 VPC 和 AWS 服务的连接的示意图

AWS PrivateLink 用于连接到其他 VPC 和 AWS 服务

Transit Gateway、VPC 对等互连和 AWS PrivateLink 之间的选择取决于连接情况。

  • AWS PrivateLink— AWS PrivateLink 在您的客户端/服务器设置中要允许一个或多个使用者 VPC 单向访问服务提供商 VPC 或某些服务中的特定服务或一组实例时使用。 AWS 只有在使用者 VPC 中具有访问权限的客户端才能发起与服务提供商 VPC 或 AWS 服务中的服务的连接。当两个 VPC 中的客户端和服务器的 IP 地址重叠时,这也是一个不错的选择,因为在客户端 VPC 中 AWS PrivateLink 使用 ENI 的方式可以确保与服务提供商没有 IP 冲突。您可以通过 VPC 对等互连、VPN、Transit Gateway、Cloud WAN 和 AWS Direct Connect访问 AWS PrivateLink 终端节点。

  • VPC 对等互连和 Transit Gateway — 如果要在 VPC 之间启用第 3 层 IP 连接,请使用 VPC 对等互连和 Transit Gateway。

    您的架构将混合使用这些技术,以满足不同的用例。所有这些服务都可以相互组合和操作。例如, AWS PrivateLink 处理 API 风格的客户端-服务器连接、VPC 对等以处理区域内可能仍需要置放群组或区域间连接的直接连接需求,以及 Transit Gateway 来简化 VPC 的大规模连接,以及用于混合连接的边缘整合。