共计 4058 个字符,预计需要花费 11 分钟才能阅读完成。
摘要
亚马逊云科技在 2021 年 2 月正式公布了实用于 Amazon S3 的 Amazon PrivateLink,Amazon PrivateLink 应用虚构网络中的公有 IP 提供 Amazon Simple Storage Service (S3) 与本地资源之间的专用连贯。借助此性能,您当初能够应用 Virtual Private Cloud 中的接口 VPC 终端节点,在平安的虚构网络中间接拜访作为公有终端节点的 Amazon S3。通过容许您应用公有 IP 地址拜访 Amazon S3,这扩大了现有网关终端节点的性能。从本地应用程序向 Amazon S3 收回的 API 申请和 HTTPS 申请会主动通过接口终端节点进行定向,这些终端节点通过 PrivateLink 以平安和私密的形式连贯到 Amazon S3。
- 实用于 Amazon S3 的 Amazon PrivateLink
https://docs.aws.amazon.com/A… - Amazon PrivateLink
https://aws.amazon.com/privat… - Amazon Simple Storage Service (S3)
https://aws.amazon.com/s3/ - Virtual Private Cloud
https://aws.amazon.com/vpc/
本文档介绍的计划是通过利用跨区域间的 VPC 对等连贯和 Amazon S3 的接口终端节点,来实现跨区域公有拜访 Amazon S3。客户能够依据本人的须要,能够通过 Amazon Direct Connect 或 Amazon VPN 提供的平安连贯从本地应用程序公有拜访 Amazon S3。
- Amazon Direct Connect
https://aws.amazon.com/direct… - Amazon VPN
https://aws.amazon.com/vpn/
📢 想要理解更多亚马逊云科技最新技术公布和实际翻新,敬请关注 2021 亚马逊云科技中国峰会!点击图片报名吧~更多精彩内容,敬请期待 8.19-20 北京、9.15 深圳分会吧!
服务介绍
早在 2015 年,Amazon S3 是第一个反对增加 VPC 终端节点的服务;通过 VPC 网关终端节点提供与 Amazon S3 的平安连贯,而不须要网关或 NAT 实例。其原理是在指定的路由表里,创立到 Amazon S3 服务的路由,与路由表相关联的每个子网都能够拜访终端节点,随后通过终端节点将来自这些子网实例的流量路由到 Amazon S3 服务。在下图中,子网 2 中的实例可通过网关终端节点拜访 Amazon S3。
- Amazon S3 是第一个反对增加 VPC 终端节点的服务
https://aws.amazon.com/blogs/…
这种新的灵活性深受客户欢送,然而也有它的局限性 – 不反对跨区域和本地数据中心公有拜访 Amazon S3,最新推出的 Amazon S3 接口终端节点则能够满足这种需要,其通过在抉择的子网中, 应用调配公有 IP 的 ENI 创立 Amazon S3 接口终端节点,从而实现与 Amazon S3 的平安连贯。VPC 内应用程序,或者是通过 Amazon Direct Connect 或Amazon VPN等平安连贯到接口终端节点的本地应用程序,都能够通过接口终端节点公有拜访 Amazon S3。当从本地应用程序连贯到 Amazon S3 时,通过打消配置防火墙规定或互联网网关的须要,接口终端节点可简化您的网络架构。
- Amazon Direct Connect
https://aws.amazon.com/direct… - Amazon VPN
https://aws.amazon.com/vpn/
Amazon S3 两种终端节点的比照:
演示环境整体架构
演示环境的 VPC 设置:
留神:
- VPC 对等连贯的 2 个 VPC 的 CIDR 块不能有重叠
- 应用具备接口 VPC 终端节点的公有 DNS (Amazon PrivateLink),则必须将 enableDnsHostnames
- 和 enableDnsSupport 属性设置为 true
- 在两个 VPC 对等连贯中都须要启用 DNS 解析
- 接口终端节点的平安组必须容许入站 HTTPS(端口 443)流量
演示环境搭建步骤
4.1 创立演示 VPC 环境
在每个区域中通过 VPC Console 的向导创立一个带有私有子网和公有子网的 VPC,同时在 cn-northwest- 1 区域创立 Amazon S3 桶(具体步骤略)。上面是我的演示环境中的截图:
cn-north- 1 区域 VPC 及子网
cn-northwest- 1 区域 VPC 及子网
在两个 VPC 中都启用 DNS hostnames 和 DNS resolution:
cn-northwest- 1 区域 Amazon S3 桶
4.2 搭建跨区域 VPC 对等连贯
把两个区域中的 VPC 创立对等连贯,更新路由表(具体步骤略),上面是我的演示环境中的截图:
VPC 对等连贯
在两个 VPC 对等连贯中都启用 DNS 解析
cn-north- 1 区域路由表
cn-northwest- 1 区域路由表
4.3 验证跨区域 VPC 对等连贯
在 cn-north- 1 私有子网和公有子网各创立一台 EC2 实例,私有子网的 EC2 作为跳板机连贯到公有子网的 EC2。同时在 cn-northwest- 1 的公有子网创立一台 EC2 实例。
cn-north- 1 区域 EC2
cn-northwest- 1 区域 EC2
EC2 平安组入站
EC2 平安组出站
借助于私有子网的 EC2 跳板机,验证从 cn-north- 1 公有子网的 EC2(IP:172.31.30.22)胜利 SSH 到 cn-northwest- 1 的 EC2 实例(IP:10.10.1.94)。
4.4 创立 Amazon S3 接口终端节点
首先为确保亚马逊云科技命令行工具(例如 Amazon CLI)能够通过 HTTPS 从 VPC 中的资源向亚马逊云科技服务发出请求,接口终端节点的平安组必须容许入站 HTTPS(端口 443)流量,所以在 cn-northwest- 1 区域创立一个平安组,入站规定如下:
在 cn-northwest- 1 区域的 VPC 创立 Amazon S3 的接口终端节点,关联对应的 VPC 和子网,来实现跨区域公有拜访 Amazon S3。
接下来给接口终端节点关联之前创立的平安组,而后创立 Amazon S3 的接口终端节点。
创立实现后,会生成两种类型的 Amazon S3 接口终端节点的 DNS:
- Regional DNS – 包含惟一的 VPC 端点 ID、服务标识符、Amazon 区域和 amazonaws.com,本实例中为 vpce-0257c85882d96cc95-vj9syim9.s3.cn-northwest-1.vpce.amazonaws.com.cn
- Zone DNS – 包含可用区,如 vpce-0257c85882d96cc95-vj9syim9-cn-northwest-1a.s3.cn-northwest-1.vpce.amazonaws.com.cn,客户用这种类型的 DNS 来指定可用区,升高跨可用区数据传输老本
Amazon S3 接口终端节点在抉择的子网中, 应用调配公有 IP 的 ENI 创立 Amazon Amazon S3 接口终端节点,从而实现与 Amazon S3 的平安连贯。
4.5 测试验证
首先在 cn-north- 1 创立 EC2 服务的 role,赋予 Amazon S3 读写权限。
把创立的 EC2 服务的 role 赋予 cn-north- 1 公有子网的 EC2(IP:172.31.30.22)。
验证从 EC2 不能间接拜访 cn-northwest- 1 的 Amazon s3 桶,因为 EC2 在公有子网,不能拜访 public 网络拜访 Amazon S3 Endpoint,命令会始终 hung 住直到超时。
留神:须要先把 Amazon CLI 降级到最新版本。
验证通过 VPC 对等连贯和 Amazon S3 接口终端节点 DNS,cn-north- 1 的公有子网的 EC2 能够胜利拜访位于 cn-northwest- 1 的 Amazon s3 桶并上传文件。
应用倡议
Amazon S3 接口终端节点和之前的网关终端节点是能够共存的, 倡议本区域的 VPC 内应用程序通过网关终端节点公有平安 Amazon S3,这种形式不会产生额定的费用。对于其它区域和客户数据中心用接口终端节点,通过 Amazon PrivateLink 以平安和私密的形式连贯到 Amazon S3。举荐的架构如下:
对于本地数据中心拜访 Amazon S3 接口终端节点 DNS,亚马逊云科技 Global 区域能够联合 Route53 Resolver(参考文档 1);亚马逊云科技中国区能够搭建 DNS Proxy 来实现 DNS 解析(参考文档 2)。
总结
本文介绍了利用 Amazon S3 的接口终端节点和跨区域间的 VPC 对等连贯,来实现跨区域公有拜访 Amazon S3,网络流量通过 Amazon PrivateLink 全副放弃在 Amazon 网络上。客户能够依据本人的须要,能够通过 Amazon Direct Connect 或Amazon VPN提供的平安连贯从本地应用程序公有拜访 Amazon S3。从本地应用程序向 Amazon S3 收回的 API 申请和 HTTPS 申请会主动通过接口终端节点进行定向,这些终端节点通过 PrivateLink 以平安和私密的形式连贯到 Amazon S3。
- Amazon Direct Connect
https://aws.amazon.com/direct… - Amazon VPN
https://aws.amazon.com/vpn/
参考文档
- https://docs.aws.amazon.com/z…
- https://aws.amazon.com/blogs/…
- https://aws.amazon.com/cn/blo…
- https://docs.aws.amazon.com/z…
- https://docs.aws.amazon.com/z…
本篇作者
朱士洋
亚马逊云科技技术客户经理
负责企业级客户的架构和老本优化、技术支持等工作,致力于 AdTech 等行业,曾供职于 IBM,领有 15+ 年的产品设计、开发 / 测试、技术支持教训。