我很难为我的s3静态网站提供一个蓝绿色。我在给定的存储桶中发布了网站的一个版本,它在以下位置公开:
Cloudfront发行版
然后在53号公路上
还有另一个CDN (公司,它解析DNS)到达因特网。
我尝试过一些“计算”解决方案,比如ALB,但我不成功。
我的困难的主要问题是,当我使用新地址更新CloudFront时,DNS复制时间很长,这使得我很难将未来的版本回滚到旧的版本(考虑对此发布使用不同的存储桶)。
有没有人经历过这个问题,或者知道如何解决这个问题?
发布于 2020-02-03 05:32:58
亚马逊网络服务建议您为每个蓝色/绿色变体创建不同的CloudFront发行版,每个发行版都有自己的DNS。
从
在AWS上托管静态网站
说明性指导:
不同的CloudFront发行版可以指向相同的亚马逊S3存储桶,因此不需要有多个S3存储桶。每种变体
A/B或蓝色/绿色
将其资产存储在同一S3存储桶中的不同文件夹下。将CloudFront行为配置为指向每个A/B或蓝色/绿色变体各自的亚马逊S3文件夹。
该策略的另一个关键部分是Amazon Route 53功能,称为加权路由。加权路由允许您将多个资源与单个DNS名称相关联,并根据其相对分配的权重动态解析DNS。因此,如果您希望在A/B测试中将流量分割为70/30,请将相对权重设置为70和30。对于蓝色/绿色部署,自动化脚本可以调用Amazon Route 53 API,在自动测试验证绿色版本健康后,逐渐将相对权重从蓝色转移到绿色。
发布于 2021-03-02 15:12:52
在AWS上托管静态网站- 2016年白皮书。它依赖于不起作用的非工作示例。您不能仅仅设置两个cloudfront发行版来为同一个CNAME提供dns交换服务。
另一种方法是在lambda edge中执行绿色/蓝色逻辑。
https://stackoverflow.com/questions/60030262
复制相似问题