【问题标题】:Pull-style cross region replication for S3 bucketsS3 存储桶的拉式跨区域复制
【发布时间】:2019-01-14 15:09:40
【问题描述】:

我需要提取由不同区域的不同组织(因此是不同的 AWS 账户)发布到 S3 存储桶的数据,以便使用 Lambda 进行后续处理。我确实有权阅读它,但不能要求他们设置复制到我的存储桶。

Amazon 的 Cross-Region Replication 看起来像是为从源推送数据而设计的,我什至不确定源组织是否启用了版本控制。

有没有办法提取数据?我只需要单向;我需要在数据到达源 S3 存储桶后不久(大约 10 分钟内)处理该数据。

【问题讨论】:

  • 每 10 分钟运行一次 aws s3 sync 的 cron 作业?我认为,如果您无法从该存储桶中获取发送给您的新对象事件,那么这样的事情将是从 S3 存储桶中提取的最佳方式。
  • 有没有办法将它作为 lambda 运行?我正在考虑运行 EC2 实例只是为了运行同步的成本。谢谢。

标签: amazon-web-services amazon-s3


【解决方案1】:

您可以按计划运行aws s3 sync,例如每 10 分钟一次。如果您想在 AWS Lambda 函数中运行它,it looks like NodeJS 和 Python Lambda 环境已经预装了 AWS CLI 工具。我建议编写一个简短的 Python Lambda 函数,调用 AWS CLI 来运行 s3 sync 命令,并安排该 Lambda 函数每 10 分钟运行一次。

【讨论】:

  • 我会使用 CloudWatch 规则按计划触发 lambda
  • @DavidWebster 是的,这就是您安排 Lambda 函数的方式
  • 谢谢。我会尽快尝试,然后接受答案(提供任何可能对可能访问该页面的其他人有用的详细信息)。
猜你喜欢
  • 1970-01-01
  • 2018-07-02
  • 2015-06-29
  • 1970-01-01
  • 1970-01-01
  • 2014-02-16
  • 1970-01-01
  • 2017-07-19
  • 1970-01-01
相关资源
最近更新 更多