awslabs / amazon-s3-data-replication-hub-plugin

The Amazon S3 Transfer Plugin for Data Transfer Hub(https://github.com/awslabs/data-transfer-hub). Transfer objects from S3(in other partition), Alibaba Cloud OSS, Tencent COS, Qiniu Kodo into Amazon S3.
Apache License 2.0
47 stars 16 forks source link

费用问题 #24

Closed yjghddp closed 3 years ago

yjghddp commented 3 years ago

空跑了2个星期,产生了950RMB费用。其中有18,803,179.000 个S3 PUT, COPY, POST, or LIST requests 为什么会有这么多请求,我都是在空跑的,没有传输任何S3对象

JoeShi commented 3 years ago

您好,感谢提交 Issue

  1. 是否可以提供过去两周 CloudWatch 的截图么?创建任务后,可以在CloudWatch 看到有一个Dashboard.
  2. 程序会定时(默认为1小时,可通过 CloudWatch Rule 修改)比较两端S3的文件是否有差异,在比较获得差异后才进行数据传输。比较文件会使用 List requests来获取两端的文件列表。因此会产生S3的费用。如果您的目标端和源端文件已经一致,建议删除复制任务。
  3. 如果您在源端仅含有少量文件产生,建议开启 S3 Event 模式(启动CloudFormation的时候有该参数,仅支持在源端账户部署),同时去CloudWatch手动关闭定时比较文件的任务。即可降低两端比较产生的费用。
yjghddp commented 3 years ago

不好意思,是我的问题。需求是两边相互同步,导致部署了两次这套方案,即: 第一次部署:A bucket ==> B bucket 第二次部署:B bucket==> A bucket 从而死循环了。我已通过增加C==>D来解决这个问题。

另外想请教一下,如果部署在第三方账号C上,令A bucket ==> B bucket,那么C账号必须有A和B的创建SQS、CW等权限,这些权限怎么给到C呢?通过模板中aksk参数?

daixba commented 3 years ago

如果同步的是A,B 账号, 但是solution 部署在C 账号, 只会在C账号会生成 SQS,CW 等resource, 并且相关权限都配置好了,不需要你做任何操作。 A,B账号不会创建任何resource, 但是你需要提供对A,B账号相关的桶 有读或写的权限 (通过提供AK SK,并维护在System Manager里)

daixba commented 3 years ago

Close this issue.