Jus*_*tin 1 amazon-s3 amazon-web-services fault-tolerance
由于最近东海岸发生了 S3 宕机事件,我想问一下社区实施容错 S3 网站托管解决方案的最佳方法是什么?
根据我的理解,您需要以您的域(例如 example.com)命名一个存储桶。但是这个存储桶是特定于区域的,并且存储桶名称是全局唯一的,因此我无法在另一个区域创建相同的存储桶。因此,如果该区域因 S3 存储桶而关闭,是否意味着我的网站已关闭?
简短的回答是:如果不使用额外的逻辑或服务器,我找不到让 S3 托管的静态网站在区域故障中幸存下来的好方法。如果其他人能想出办法,我真的很感兴趣。
您可以将 CloudFront 放在 S3 网站的前面。如果存储桶出现故障,即使内容已经过时,也会从缓存中提供。这当然依赖于最接近客户的端点的缓存中的内容。
您可以使用 S3跨区域复制将 S3 数据移动到另一个区域。最初我认为您可以使用 Route53故障转移路由从工作桶中进行选择,但这行不通。跨区域复制必须使用不同名称的存储桶,使用 S3 网站托管,您只能从以域命名的存储桶托管网站。我想知道是否有手动解决方案,但您无法重命名存储桶,如果第一个区域已关闭,您可能无法删除带有网站名称的存储桶。
我认为 CloudFront 和 Route53 的组合可能会起作用,但这将依赖于创建两个为同一域提供内容的 CloudFront 分配。这似乎是不可能的。
这并不理想,但我认为您可以使用 EC2 和 Route53 做到这一点。在两个或更多区域创建服务器,让它们使用 Nginx 或类似工具手动代理 S3 内容,并使用 Route53 在它们之间进行平衡。这违背了 S3 托管的意义,总体而言是一个糟糕的主意,但如果绝对必须这样做,它可能会起作用。
| 归档时间: |
|
| 查看次数: |
493 次 |
| 最近记录: |