如何让Azure Traffic Manager作为两个Web应用程序的故障转移工作?

时间:2017-03-26 17:04:24

标签: azure azure-traffic-manager

我在Azure中设置了两个网络应用程序。我现在只是用这个来测试流量管理器,然后才开始生产,所以我创建了两个"假的"试用它的应用程序。

我在以下网址的门户网站添加了一个流量管理器:

http://mbfakesite.trafficmanager.net

我将端点1列为第一个Web应用程序,将端点2列为第二个,我使用的是Priority方法。

当我在Azure中停止第一个Web应用程序并转到trafficmanager URL时,我会收到403错误页面。我想要发生的是默认为第二个端点。

最终目标是让MVC应用程序在与生产网站不同的服务器上运行。当生产服务器关闭时(备份和所有)它应该默认为这个" failsafe"应用程序在单独的服务器上运行,就像最糟糕的场景类型一样。

如果它有所不同,用于测试的两个Web应用程序都托管在azurewebsites.net和Traffic Manager中,一个列为Azure端点(第一个),另一个列为外部端点。

我也尝试添加到web.config,正如有人在我发现的另一篇文章中建议的那样,但它没有改变任何内容。

任何人都有任何想法,或者我们可以使用的交通管理器的替代品吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

虽然另一个答案中给出的时间表大多是正确的,但它忽略了交通管理器如何运作的一些基本方面。

由于Traffic Manager仅更改DNS规则,因此仅在您的浏览器实际检查该规则时才有效。不幸的是,现代网络通信有许多快捷方式,其中一个被称为" keep-alive"。

在我走得更远之前,我找到的症状解决方案是

  1. 远程登录您的节点
  2. 打开IIS管理器
  3. 打开" HTTP响应标头"在" IIS"
  4. 点击"设置常用标题"在右侧,取消选中keep-alive选项
  5. 预先警告,这将导致流量管理器的点击次数增加。基本上这需要浏览器检查DNS规则并在每个连接上打开新连接。这是必需的,因为这些打开的连接可以在PTL持续时间和任何DNS缓存破坏后存活。实际上,通过点击刷新可以进一步扩展这些开放连接。与你想要的完全相反。

    我知道这个答案对你来说可能太迟了,所以我道歉。但是,我认为值得回答。

答案 1 :(得分:0)

根据官方文档,它应该路由到最接近(在延迟方面)可用的DC。

https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-manager-routing-methods

您可以尝试这里描述的测试故障转移: https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-manager-testing-settings

答案 2 :(得分:0)

  

当我在Azure中停止第一个Web应用程序时,请转到流量管理器   URL,我得到403错误页面。我想要发生的是它默认为   第二个终点。

Azure流量管理器作为DNS级别负载均衡器工作。 Azure Traffic Manager包括内置端点监控和自动端点故障转移,它会定期检查每个端点的运行状况,包括不健康的端点。这些 DNS缓存效果对于所有基于DNS的流量路由系统都是通用的,因此DNS级负载均衡器无法立即切换到其他可用站点。

此外,流量管理器监控设置将影响切换到另一个可用站点的时间 以下时间表是流量管理器监控过程的详细说明。

enter image description here

有关azure流量管理器监视器的更多信息,请参阅此link