将 dd 标准输出从 ec2 流式传输到 s3



试图在 EBS 快照上节省资金,因此我们的想法是手动复制文件系统(使用dd(并在 S3 中手动存储到 IA 和 Glacier 的生命周期。

以下内容适用于较小的文件(使用 1GB 测试(,但在较大的文件(~800GB(上,大约 40GB 后,一切都会变慢,永远不会完成

sudo dd if=/dev/sdb bs=64M status=progress | aws s3 cp - s3://my-bucket/sdb_backup.img --sse AES256 --storage-class STANDARD_IA

从 m4.4xlarge 实例(16 vcpu,64GB RAM(运行此实例

不确定为什么它会停止,或者这是否是解决此问题的最佳方法(在 s3 不频繁访问存储类上手动存储文件系统(

有什么想法吗?

谢谢!!

这不是一个好主意,因为快照是增量的,因此您将从接下来的几个手工快照开始花费更多。

如果您仍然想要这种方式,请考虑分段上传(最大 5GB 的块(。

您可以使用goofys之类的东西将输出重定向到S3。我亲自测试过高达 1TB 的文件。

首先考虑大尺寸的分段上传。

第二次使用压缩版本,

dd if=/dev/sdX | gzip -c | aws s3 cp - s3://bucket-name/desired_image_name.img

如果您希望将文件复制到 Amazon S3,最简单的方法是使用 AWS 命令行界面 (CLI(:

aws s3 sync dir s3://my-bucket/dir

作为标准不频繁访问的替代方法,您可以在 S3 存储桶上创建生命周期策略以将文件移动到 Glacier。(这对于长期存储是值得的,但由于请求费用较高,因此对于短期存储则不值得。

最新更新