我们试图使用aws对javascript代码进行一些渐进的部署测试,但似乎失败了。
我们使用CF发行版创建了2个S3存储桶:
a.example.net -> aaa.cloudfront.net
b.example.net -> bbb.cloudfront.net
而不是我们在route53中创建了一个加权循环DNS条目。
test.example.net -> (名称) -> aaa.cloudfront.net (5)
test.example.net -> (名称) -> bbb.cloudfront.net (95)
在S3桶中,我们为每个桶放置了一个具有CF对应域名的文件:
http://test.example.net/dns-test/test.txt
我期待的是得到95%的时间血脑屏障和5%的时间d3nrwpaeicu4xy。我们真正得到的是aaa 100%的时间:
我打开了一张route53团队的票,以检查这是否是dns配置的问题,但是他们已经向我展示了,我自己也看到了dns查询在两个存储桶之间分离。
希望这已经足够清楚了。
发布于 2015-06-01 04:01:28
不幸的是,你想要做的事情是不可能的。CloudFront,或者任何HTTP服务器,只需查看test.example.com的主机头。它不知道你是怎么做到的,不管是WRR DNS还是主机文件,它只看到主机头。我不知道如何在两个CloudFront发行版上配置相同的CNAME,这是不可能的。
要使其工作,您需要使用两种不同的服务,例如S3和CloudFront。为test.example.net创建一个桶,并创建一个用test.example.net配置的CloudFront发行版。然后您可以使用WRR,因为这两个服务都将为test.example.net提供您的内容。
发布于 2015-06-09 05:04:16
不要忘记,您的DNS记录将被所有DNS解析器缓存。然后,您的负载共享几乎没有机会反映您配置的权重。DNS不是为此而设计的。
https://stackoverflow.com/questions/30557480
复制相似问题