2016-01-28 62 views
-1

我为我的网站创建了2个实例,并将它们连接到Amazon负载均衡器。我已经把负载均衡的DNS nameCNAME,使人们可以从我的域名查看我的网站:负载平衡器行为怪异

*.domain.com 

www.domain.com 

现在,人们可以访问我的网站和它的作品。问题是,如果人们去domain.com那么负载平衡器只显示第一个实例,但如果人们进入www.domain.com那么负载平衡器在完美的实例之间切换。

为什么会发生这种情况,以及如何解决它?

+0

你怎么知道它只从一个实例提供流量? – gregwhitaker

回答

0

在DNS标准下不支持在区域apex中使用CNAME记录,并且可能不会导致下游缓存DNS服务器出现结果出现意外情况的问题。我无法100%肯定地确认这是导致您的问题的原因,但我确信它确实存在,即使不是这样,将DNS配置标准化也是一种很好的做法。

在您的区域顶点记录的Route 53配置中,将记录集名称留空,将类型设置为“A”,并将别名单选框选择为“是”,然后单击别名目标并填充在您的账户下支持的终端列表中,选择“ELB负载均衡器”下显示的负载均衡器。

AWS并没有做出最好的解释,但是当您正确使用CNAME记录从www.domain.com定位ELB时,区域顶点记录需要作为Route 53将会转向的别名来完成转换为标准的“A”记录以返回DNS查询,但是在该时间点将返回ELB实例的IP并且生存时间较短以确保IP更改缓存记录不会导致问题。

我怀疑这可能会解决您的问题,因为您的上游DNS提供商可能会遇到区域顶点CNAME的问题,因此需要使用目标服务器的IP并缓存该区域。完成Route 53配置的更改后,请等待6-24小时,以考虑您的上游DNS提供商缓存记录的时间或手动将您的DNS服务器设置为您之前没有使用的备用DNS服务器的时间,例如Google公共DNS服务器位于8.8.8.8和8.8.4.4。

希望这会有所帮助。