如何将文件从一个EBS复制到另一个EBS

dad*_*ade 8 amazon-ec2 amazon-ebs

问题很简单.

我需要将文件从一个EBS复制到另一个,而不通过我的本地机器传递文件.这可能吗?如果是这样的话?

Eri*_*ond 8

为了将文件从一个EBS卷复制到另一个EBS卷,两个卷(在某些时候)都需要附加到实例,但不一定是同一个实例.如果您允许多个实例和/或临时将文件存储在第三个存储选项上但没有约束,并且假设卷当前未附加到实例,则有很多方法可以执行此操作,一个简单的解决方案是:

  1. 启动临时实例.使用更大的尺寸以获得更高的IO带宽.

  2. 将两个EBS卷连接到实例并将它们安装为/ vol1和/ vol2

  3. 将文件从/ vol1复制到/ vol2(可能使用类似:rsync -aSHAX/vol1// vol2 /)

  4. 卸载卷,分离EBS卷,终止临时实例.

如果您有其他限制,则应更新问题以准确指定您的环境以及您尝试执行的操作.

[根据您看到的错误进行跟进]

EC2实例和EBS卷必须存在于要附加到实例的卷的相同EC2区域和可用区中.如果不是,那么您可能希望在EBS卷的可用区中创建一个临时实例,并使用类似rsync的方法在两个实例之间复制文件.

  • @JavierConstanzo:该解决方案确实使用网络,因为EBS卷通过网络安装.它不会花费您在网络传输上的任何费用,因为EC2可用区内的所有网络传输都是免费的(即使在实例之间).但是,它会在IO操作中花费您的成本,但根据卷的大小可能会忽略不计. (3认同)