AWS常见架构的网络数据流量传输成本概述

2 分钟阅读
内容级别:中级
2

AWS提供了跨多个可用区和区域部署的能力。通过几次点击,您可以创建一个分布式工作负载。随着您在AWS上的部署范围的扩大,了解可能产生的各种数据传输费用将有所帮助。本文提供了相关信息,帮助您做出明智的决策,并探索不同的架构模式以节省数据传输成本。

在AWS上设计解决方案时,数据传输费用常常被忽视。然而,在做出架构决策时考虑数据传输费用,可以帮助节省成本。本文将帮助您识别在AWS上运行工作负载时可能遇到的潜在数据传输费用。服务费用不在本文讨论范围内,但在设计任何架构时应仔细考虑。

AWS与互联网之间的数据传输

所有区域的所有服务的入站数据传输都是免费的。从AWS到互联网的数据传输按服务收费,费用根据发起传输的区域而有所不同。有关详细信息,请参考每个服务的定价页面,例如:Amazon Elastic Compute Cloud (Amazon EC2)定价页面

AWS内部的数据传输

AWS内部的数据传输可能是从您的工作负载到其他AWS服务,或者是在您工作负载的不同组件之间进行数据传输。

工作负载与其他AWS服务之间的数据传输

当您的工作负载访问AWS服务时,可能会产生数据传输费用。

访问同一AWS区域内的服务

如果使用互联网网关访问同一区域内AWS服务的公共端点(图1 - 模式1),则不会产生数据传输费用。如果使用NAT网关访问相同服务(图1 - 模式2),则会对通过网关传输的数据按每GB收取数据处理费用。

Enter image description here

图1. 访问同一区域内的AWS服务

跨AWS区域访问服务

如果您的工作负载访问不同区域的服务(图2),则会产生跨区域数据传输费用。费用取决于源区域和目标区域(如Amazon EC2数据传输定价页面所述)。

Enter image description here

图2. 访问不同区域的AWS服务

工作负载不同组件之间的数据传输

如果您的工作负载的不同组件之间存在数据传输,则可能会产生费用。这些费用因组件部署的位置而有所不同。

同一AWS区域内的工作负载组件

同一可用区内的数据传输是免费的。实现工作负载高可用性的一种方法是在多个可用区部署。

考虑一个工作负载,其中有两个在Amazon EC2上运行的应用服务器和一个在Amazon Relational Database Service (Amazon RDS) for MySQL上运行的数据库(图3)。为了实现高可用性,每个应用服务器部署在不同的可用区中。在这里,EC2实例之间的跨可用区通信会产生数据传输费用。Amazon EC2和Amazon RDS之间的数据传输也会产生费用。有关更多信息,请参阅Amazon RDS for MySQL定价指南

Enter image description here

图3. 跨可用区的工作负载组件

为了最小化数据库实例故障的影响,可以在Amazon RDS中启用多可用区配置,在不同的可用区部署一个备用实例。主实例和备用实例之间的复制不会产生额外的数据传输费用。但是,来自当前主实例可用区之外的任何消费者的数据传输将产生费用。有关更多详细信息,请参阅Amazon RDS定价页面

在您的AWS网络中,跨多个VPC部署工作负载是一种常见模式。实现VPC到VPC通信的两种方法是VPC对等连接和AWS Transit Gateway。在同一可用区内保持的VPC对等连接上的数据传输是免费的。跨可用区的VPC对等连接上的数据传输将产生入站/出站流量的数据传输费用(图4)。

Enter image description here

图4. VPC对等连接

Transit Gateway可以互连数百或数千个VPC(图5)。Transit Gateway的成本要素包括每个附加VPC、AWS Direct ConnectAWS Site-to-Site VPN的每小时费用。对于从VPC、Direct Connect或VPN发送到Transit Gateway的每GB数据,都会产生数据处理费用。

Enter image description here

图5. 同一区域内使用Transit Gateway的VPC对等

不同AWS区域中的工作负载组件

如果工作负载组件使用VPC对等连接或Transit Gateway跨多个区域通信,将产生额外的数据传输费用。如果VPC跨区域对等,将适用标准的跨区域数据传输费用(图6)。

Enter image description here

图6. 跨区域VPC对等

对于对等的Transit Gateway,您只会在对等的一侧产生数据传输费用。从对等附件发送到Transit Gateway的数据不收取数据传输费用。此跨区域对等连接的数据传输费用是其他附件的数据传输费用之外的附加费用(图7)。

Enter image description here

图7. 跨区域Transit Gateway对等

AWS与本地数据中心之间的数据传输

当您的工作负载需要访问本地数据中心中的资源时,将会发生数据传输。实现此连接有两种常见选择:站点到站点VPN和Direct Connect。

通过AWS站点到站点VPN的数据传输

将工作负载连接到本地网络的一种选择是使用一个或多个站点到站点VPN连接(图8 - 模式1)。这些费用包括连接的每小时费用和从AWS传输的数据费用。有关更多详细信息,请参阅站点到站点VPN定价。另一种连接多个VPC到本地网络的选择是使用站点到站点VPN连接到Transit Gateway(图8 - 模式2)。站点到站点VPN将被视为Transit Gateway上的另一个附件。适用标准Transit Gateway定价

Enter image description here

图8. 站点到站点VPN模式

通过AWS Direct Connect的数据传输

Direct Connect可用于将AWS中的工作负载连接到本地网络。Direct Connect对使用连接端口的每小时收取费用,并对从AWS流出的数据收取数据传输费用。在所有位置,数据传入AWS的费用为每GB $0.00。数据传输费用取决于源区域和Direct Connect提供商位置。如果需要连接多个VPC,Direct Connect还可以通过Direct Connect Gateway连接到Transit Gateway(图9)。Direct Connect被视为Transit Gateway上的另一个附件,适用标准Transit Gateway定价。有关更多详细信息,请参阅Direct Connect定价页面

Enter image description here

图9. Direct Connect模式

Direct Connect Gateway可以用于跨多个区域共享Direct Connect。在使用Direct Connect Gateway时,将根据源区域和Direct Connect位置收取出站数据费用(图10)。

Enter image description here

图10. Direct Connect Gateway

常规建议

数据传输费用根据源、目标和流量大小而有所不同。以下是开始规划架构时的一些常规建议:

  • 避免通过互联网路由流量,使用VPC端点连接到AWS服务:
    • VPC网关端点允许与Amazon S3和Amazon DynamoDB进行通信,而不会在同一区域内产生数据传输费用。
    • VPC接口端点可用于某些AWS服务。这种端点会产生每小时的服务费用和数据传输费用。
  • 使用Direct Connect而不是互联网将数据发送到本地网络。
  • 跨越可用区边界的流量通常会产生数据传输费用。尽可能使用本地可用区的资源。
  • 跨区域边界的流量通常会产生数据传输费用。除非业务需要,否则避免跨区域数据传输。
  • 使用AWS免费套餐。在某些情况下,您可以免费测试您的工作负载。
  • 使用AWS定价计算器来帮助估算您的解决方案的数据传输成本。
  • 使用仪表板更好地可视化数据传输费用——这个研讨会将展示如何实现。

结论

AWS提供了跨多个可用区和区域部署的能力。通过几次点击,您可以创建一个分布式工作负载。随着您在AWS上的部署范围的扩大,了解可能产生的各种数据传输费用将有所帮助。本文提供了相关信息,帮助您做出明智的决策,并探索不同的架构模式以节省数据传输成本。

本文翻译自:Overview of Data Transfer Costs for Common Architectures

profile pictureAWS
支持工程师
Tim
已​发布 2 个月前2891 查看次数