Answers:
我一直在对此进行研究,很有趣。
由于最终的一致性,到S3的备份可能会失败,具体取决于您所在的地区。基本警告是,如果您做得足够多,则有时由于Amazon后台的文件系统魔术在服务器之间同步而导致打开或查找文件时出现错误,因此您的备份可能不可靠。
至于是否需要另存它们,这取决于您的风险管理。您是否相信亚马逊可以保存您的数据?
他们可能会丢失某些东西,或者存储系统出现较大故障;他们无疑在合同中有条款规定如果丢失您的数据,那就是您的问题。不是他们的。另外,由于您的数据位于其他地方,因此您不知道他们将如何处理数据。执法部门想要您的数据吗?您甚至可能不知道其他人访问了它。
你相信吗 如果数据不是您业务的关键,并且您愿意承担这种风险,则无需将其下载到异地存储。如果您不愿意冒险将数据放在那里的Amazon存储服务器中是安全的,则应安排将其定期转储到自己的存储中。
换句话说,我认为对此没有直接的答案,因为这取决于您的风险承受能力和业务需求。很多人不会完全相信自己的收入仅靠云存储,我个人对此有些警惕。
为了更好地做到这一点,在讨论和研究中,要考虑的另一种方法是创建一个足以存储数据的EBS卷,将其附加到EC2实例,将数据保存在此处,然后可以卸载该卷并将该数据保存到S3 。我正在研究是否将其保存为将卷文件本身保存到S3或内容中...但是在完成后您可以删除EBS实例以节省存储成本。
编辑我在重新阅读时看到,您正在从S3保存到EC2实例,反之亦然(尽管我不知道最终的一致性问题是否仍然会在那里导致问题)。您正在尝试将数据保存到EC2实例作为备份吗?我认为这不是明智的策略;当您将此类数据以及VM时间一起长期存储时,将内容备份到本地驱动器可能会更便宜。利用驱动器成本,您可以将数据复制到本地磁盘作为备份。
我仍然会保留有关信任Amazon及其存储的警告。如果您希望将所有内容保留在Amazon S3中,但是具有更多的冗余性,请跨区域复制您的S3存储桶,如果它们的中断影响一个区域,则不应将所有存储桶都淘汰掉。你会希望的。一切皆有可能。
这取决于您对数据的重视程度,愿意为数据支付的代价以及要承受的风险。
我已经使用s3cmd s3cmd sync
来做到这一点。它的操作有点像rsync,可以在S3和您选择的另一个linux系统之间推入和拉出整个目录。
我看不到您无法s3cmd sync
运行EC2实例甚至您自己的开发人员工作站(或存储服务器)的任何原因。
您可能要设置一个VPC实例,然后可以在VPC内为备份服务器的角色分配一个小节点,并在Amazon网络内部和本地子网内为其分配IP。
如果可以承受的话(我这样做)是将所有数据存储在服务器上,但可以从Amazon s3中提取数据。因此,如果Amazon由于任何原因(触摸木头)宕机,我可以直接从服务器上立即提取所有数据。我从服务器每月备份到本地驱动器。由于我的网站已超过2TB。
尽管这是一个旧线程,但它是Googling S3备份时出现的第一件事,所以我想我应该补充一下...
我自己对此进行了一些研究,发现了Rclone https://rclone.org/-这是rsync-ish软件,旨在在云文件存储服务之间进行复制并支持其中的大多数服务。没有从属关系,我还没有使用过它,所以我不能说它的好坏,但是我认为这可能对某人有所帮助。
在我看来,托管服务有机会对云托管文件(S3,Google Storage,Rackspace Cloud Files等)进行“异地”备份。