使用 AWS RAM 实现跨账户资源共享 - VPC 子网与 Transit Gateway 共享

在账户间共享 VPC 子网和 Transit Gateway,实现 IP 地址空间统一管理并减少 VPC 对等连接。

RAM 概述

RAM(Resource Access Manager)是一项可在多个账户间共享 AWS 资源的服务。在多账户环境中,各账户拥有独立资源,但网络资源(VPC 子网、Transit Gateway)、DNS 资源(Route 53 Resolver 规则)和安全资源(Network Firewall 策略)可以采用在账户间共享使用的配置。通过 RAM 共享,各账户无需重复创建相同的资源。共享资源可从消费方账户直接引用和使用,无需跨账户 IAM 角色切换或 API 调用中转。资源所有权保留在共享元账户,共享目标账户仅获得使用权限。

VPC 子网共享

VPC 子网共享是由网络账户拥有 VPC 和子网,工作负载账户在共享子网中创建资源(EC2、RDS、Lambda、ECS 任务)的模式。各账户无需拥有独立 VPC,IP 地址空间也不会按账户分散。网络账户统一管理 CIDR 块,并可结合 IPAM 分配不重叠的地址。安全组按账户独立管理,即使在共享子网中也能维持账户间的网络隔离。但需注意 NACL 以子网为单位,仅由所有者账户管理。共享子网内的资源可通过私有 IP 与同一 VPC 内其他资源直接通信,无需 VPC 对等连接或 Transit Gateway。

可共享资源与设计模式

RAM 可共享的资源包括 VPC 子网、Transit Gateway、Route 53 Resolver 规则、License Manager 配置、Aurora DB 集群、CodeBuild 项目、AWS Network Firewall 策略、Verified Access 组、IPAM 池、Capacity Reservations、Outposts 等。Organizations 内的共享自动批准,与 Organizations 外账户的共享需基于邀请批准。RAM 托管权限可细粒度控制消费方账户的操作权限(仅读取、可创建、可关联)。创建自定义托管权限可定义比默认更受限的访问级别。

Organizations 集成与自动化

RAM 与 AWS Organizations 集成,可在组织单位 (OU) 级别自动化资源共享。启用 Organizations 内共享后,共享目标账户无需批准邀请即可自动访问资源。新账户加入 OU 时,自动获得该 OU 已共享资源的访问权。结合 CloudFormation StackSets 可自动化新账户创建、OU 配置、资源共享设置和初始资源部署。结合 Service Control Policies (SCP) 和 RAM 共享策略,可在组织级别控制哪些资源共享给哪些 OU。RAM 共享资源的使用情况可通过 CloudTrail 审计,追踪谁访问了哪些资源。

设计最佳实践与常见陷阱

VPC 子网共享的设计中,为子网 CIDR 大小预留充足空间。多个账户在同一子网中创建资源,IP 地址耗尽会影响所有账户。根据工作负载规模,/24(256 个地址)不够,可以采用确保 /20~/22 范围的配置。常见陷阱是:取消资源共享时,如果消费方账户在共享子网中仍有资源(如 ENI),取消操作会被阻止。取消共享前,先盘点子网内的资源。Transit Gateway 共享中,路由表设计决定通信的控制。工作负载账户间通信的允许或阻止通过路由表关联控制,因此先整理分段需求。此外,RAM 共享按区域配置,多区域部署时在各区域单独创建 Resource Share。

与 VPC 对等连接的比较

VPC 子网共享和 VPC 对等连接都能实现跨账户网络连接,但架构思路不同。VPC 对等连接是各账户拥有独立 VPC,通过对等连接相互路由。10 个账户的全网状连接需要 45 条对等连接,需要管理的路由表设置也会增加。而 VPC 子网共享将 VPC 本身集中为一个,无需为跨账户通信建立对等连接。但 VPC 子网共享中子网级 NACL 对所有账户共用,如果需要为不同账户应用不同网络 ACL,则需要 VPC 对等连接或 Transit Gateway。与 Transit Gateway 比较,RAM 共享的 Transit Gateway 以低成本实现中心辐射型连接,但数据处理费(按 GB 计费)会根据跨账户流量产生,大流量场景下也可以采用 VPC 子网共享。

RAM 定价

RAM 本身不收取额外费用。成本取决于共享资源的使用费(共享目标账户的使用量)。VPC 子网共享中,共享目标账户创建的资源(EC2、RDS)费用由该账户承担。Transit Gateway 共享中,附件费用(按小时计费)和数据处理费(按 GB 计费)由共享目标账户承担。Route 53 Resolver 规则共享中,规则本身的共享免费,但 Resolver 端点的 ENI 费用由所有者账户承担。定期盘点资源共享,删除不再需要的共享。

总结

RAM 是在多账户环境中高效共享资源的服务。通过 VPC 子网共享统一管理 IP 地址空间,减少 VPC 对等连接数量。通过 Transit Gateway 共享可集中网络连接。Organizations 集成实现 OU 级别自动共享,CloudFormation StackSets 可自动化配置,CloudTrail 审计共享资源访问。提前确定子网 CIDR 大小规划和资源盘点的步骤,可避免取消共享时被阻止。

参考资料(AWS 官方)

本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。

如本页内容与官方文档不一致,请以官方文档为准。

分享