适用于跨区域复制的S3存储区的CloudFront CDN

时间:2017-03-02 02:31:50

标签: amazon-web-services amazon-s3 replication amazon-cloudfront

鉴于昨天的us-east-1 S3中断,我如何最好地构建使用S3存储桶作为源的CloudFront CDN,并将存储桶设置为复制到另一个区域?

  1. 我是否设置了两个单独的CloudFront CDN,一个以us-east-1中的存储区作为源,另一个CloudEront CDN以us-east-2中的复制存储区作为源,然后使用一个Route53记录访问两个CDN?
    1. 我可以设置一个包含两个Origins的CloudFront CDN(一个在us-east-1中,另一个在us-east-2中),CloudFront会自动从S3区域中提取内容吗?
    2. 还有其他解决方案吗?

      非常感谢您的见解和评论。

      干杯 伯尼

3 个答案:

答案 0 :(得分:5)

事实证明,我的提案都不起作用,Cloudfront不支持S3复制和开箱即用的故障转移。

下面的架构应该能够幸免于2/28/17北弗吉尼亚S3中断(感谢帮助@ Michael-sqlbot)。

虽然AWS没有为这种相当常见的场景提供更简单的解决方案,但我感到很惊讶...... S3 Failover With Cloudfront

答案 1 :(得分:1)

  1. 您可以使用S3跨区域复制。要执行此操作,请按照aws博客中的说明进行操作:s3 cross-region replication- how to
  2. 不幸的是,目前CloudFront不支持多区域复制。但是,由于CloudFront使用多个缓存或边缘位置,因此可以确保您的数据安全。
  3. 我个人会选择你的第一选择,因为S3具有99.99耐久性并且具有很高的可用性。因此,这是确保您的复制数据保持高可用性的理想解决方案。此外,如果您的数据量很高,您可以使用Amazon Glacier存储旧的复制数据。但是,这是在您的数据的重要程度和您考虑恢复这些有价值数据的时间之间的权衡;因为Amazon Glacier可能需要几个小时才能恢复您的存档数据以供使用。

答案 2 :(得分:1)

您可以创建跨区域复制并使用具有多个来源的CloudFront。

此外,您还需要编写明确的规则,以及如何使用多个来源路由您的内容。

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern