降低处理 NAT 网关数据的成本

Posted

技术标签:

【中文标题】降低处理 NAT 网关数据的成本【英文标题】:Reduce cost of NAT Gateway data processed 【发布时间】:2020-09-29 14:21:27 【问题描述】:

“EC2:NAT 网关 - 数据处理”的成本很高,因为每天传输的数据约为 15TB,我可以理解 NAT 网关对数据输入或输出的收费。我试着做一些谷歌,他们中的大多数人都在回答,比如使用 VPC 端点。但是,如果我们有内部 aws 服务,VPC 端点就很有用。我们的场景就像“来自第三方 SFTP 服务器(显然也在 AWS 中)的大量数据,每周 7 天,直到全部传输”。请提出一种降低成本的方法。我们使用 EMR 集群来产生数据,emr ec2 盒子在私有子网中。

【问题讨论】:

您是说您从外部 SFTP 服务器提取大量数据,是吗?是否尽可能压缩?您是否无意中重复提取相同的数据(可以通过缓存进行优化,也许在 S3 中)?您是否有任何选项可以从 S3 获取此数据(如果在同一区域,这将是零网络成本)?另请注意,有一个 AWS Transfer for SFTP 服务可能是相关的。 是的,外部 SFTP 服务器,是压缩的,不同的数据,它的第三方,所以我们需要从那里获取 SFTP 位置 我会鼓励您找到一种将这些数据推送到 S3 的方法。也许数据提供者可以将其镜像到 S3,或者您可以在 AWS 之外运行从 SFTP 拉取然后推送到 S3 的进程。数据传输到 S3 是免费的。当实例与 S3 存储桶位于同一 AWS 区域时,从 S3 传输到 EC2 实例(例如在 EMR 中)的数据是免费的。 @jarmod 我和开发人员谈过进程,就像他有一个 sftp 网址一样ec2 box,处理它> 复制到我们的S3 bucket,他不能直接从STP复制到s3,因为他需要对ec2 box做一些数据分析。 我建议您将文件从 SFTP 服务器镜像到 S3(在 AWS 之外执行此操作),然后将这些镜像文件从 S3 下载到同一区域的 EMR/EC2,进行处理,然后将结果发送回 S3。 【参考方案1】:

在没有 Nat 网关的情况下移至 EC2 盒子,是的,存在安全风险,因为它将在 Internet 上打开,或者您应该尝试按照 Jarmod 的建议直接在 S3 上复制。如果处理大文件,Nat Gateway 费用非常高。 AWS 明智地收费,根据文档,如果 EC2 和 S3 相同的区域,不应该有任何 S3 输出成本,但这需要 S3 端点,否则 EC2 盒子将被视为公共 IP 或 Nat 网关(如果你有的话)。创建了 S3 端点并降低了内部处理成本。

【讨论】:

以上是关于降低处理 NAT 网关数据的成本的主要内容,如果未能解决你的问题,请参考以下文章

MQTT透传和MQTT网关的区别

京东API网关实践之路

某司API网关实践之路

京东大型API网关实践之路

linux 做gw(nat)详细配置

边缘计算网关的多功能智慧路灯杆应用