Amazon S3上用户上传文件的备份策略?

时间:2011-01-07 14:23:20

标签: amazon-s3

我们正在从将所有用户上传的文件存储在我们的服务器上,转而使用Amazon S3。这是约。 300 GB的文件。

保留所有文件备份的最佳方法是什么?我看到了一些不同的建议:

  • 将存储桶复制到不同S3位置的存储桶
  • 版本
  • 使用EC2备份到EBS

优点/缺点?最佳做法?

4 个答案:

答案 0 :(得分:1)

  

备份所有文件的最佳方法是什么?

理论上,你不需要。这些年来,S3从未失去过一点。您的数据已存储在多个数据中心中。

如果您真的担心意外删除文件,请使用IAM密钥。对于每个IAM用户,禁用删除操作。和/或启用版本控制并删除IAM用户执行实际删除的功能。

如果您仍想要备份,EBS或S3实现起来非常简单:只需运行S3 Sync实用程序即可在存储桶之间或EBS驱动器之间进行同步。 (它们中有很多,写起来很简单。)请注意,您需要为EBS驱动器上的未使用空间付费,因此如果您正在增长,它可能会更昂贵。我不会使用EBS,除非您真的可以使用本地访问文件。

S3存储桶同步的优点是您可以快速将应用切换为使用其他存储桶。

您也可以使用Glacier备份文件,但这有一些严重的限制。

答案 1 :(得分:0)

恕我直言,备份到另一个可用区域(因此Bucket)中的另一个S3存储桶是最好的方法:

  • 您已经拥有操纵S3的基础架构,因此几乎没有任何变化
  • 这将确保在S3发生灾难性故障时,您的备用AZ不会受到影响

其他解决方案都有缺点:

  • 版本控制不是灾难性的失败证明
  • EBS备份需要特定的实施才能直接在磁盘上操作这些备份。

答案 2 :(得分:0)

我自己没有尝试,但亚马逊有一个可以解决备份恐惧的版本控制功能 - 请参阅:http://aws.amazon.com/about-aws/whats-new/2010/02/08/versioning-feature-for-amazon-s3-now-available/

答案 3 :(得分:0)

  1. 将存储桶复制到不同S3位置的存储桶: 这可能不是必要的,因为S3已经通过冗余备份实现了六个“9”可靠性。想要在全球范围内实现数据访问性能的人可能会在不同的数据中心复制存储桶。因此,除非您想避免像“911”这样的不可能发生的灾难,否则您可以在东京数据中心为纽约的存储桶制作副本。 但是,在同一数据中心内,将数据桶复制到不同的存储桶可以在灾难发生在同一数据中心时提供很少的帮助。
  2. 版本 它可以通过节省冗余来帮助您实现存储效率,并有助于更快地恢复。绝对是一个不错的选择。
  3. 使用EC2备份到EBS 您可能永远不会这样做,因为与S3相比,EBS是AWS中昂贵/更快的存储。它的主要目的是备份EC2映像以加快启动速度。 EC2是与存储或S3无关的计算实例。这完全无关紧要,我无法确定您是否将EC2引入数据备份。