繁体   English   中英

运行 S3 Sync 命令的 EC2 实例在数据传输完成之前终止

[英]EC2 instance running S3 Sync command terminates before data transfer is complete

我有一个运行 Linux 的 EC2 实例。此实例用于运行aws s3命令。

我想将过去 6 个月的数据从source同步到target S3 存储桶。 我正在使用具有必要权限的凭据来执行此操作。

最初我只是运行命令:

aws s3 sync "s3://source" "s3://target" --query "Contents[?LastModified>='2022-08-11' && LastModified<='2023-01-11']"

但是,大约 10 分钟后,此命令停止运行,并且只有一小部分数据被同步。

我认为这是因为我的 SSM session 正在终止,并且命令停止执行。

为了解决这个问题,我使用了以下命令来尝试确保即使在我的 SSM 终端 session 关闭后该命令也会继续执行:

nohup aws s3 sync "s3://source" "s3://target" --query "Contents[?LastModified>='2022-08-11' && LastModified<='2023-01-11']" --exclude "*.log" --exclude "*.bak" &

检查 EC2 实例的状态,该命令似乎运行了大约 20 分钟,然后由于某种原因明显停止。

实例监控

--query参数控制在 API 调用的响应中显示的信息。

控制在aws s3 sync命令中复制哪些文件。 aws s3 sync的文档--query参数定义为: “用于过滤响应数据的 JMESPath 查询。”

您的aws s3 sync命令将同步所有文件,除非您使用Exclude 和 Include Filters 这些过滤器对 object 的名称进行操作。无法通过提供日期范围来限制sync命令。

我无法评论为什么命令会在完成之前停止运行。 我建议您将 output 重定向到日志文件,然后查看日志文件以查找任何线索。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM