2

我创建了一个 Azure 流量管理器配置文件,它使用故障转移作为负载平衡方法。主要端点是本地网站 test.company.com。另一个端点是具有自定义域名的 Azure 网站应用程序xxx.mysite.com。当我将端点添加到流量管理器时,它指向mysite.azurewebsites.net.

我在 ISP 处创建了一条 CNAME 记录以xxx.mysite.com指向mycompany.trafficmanager.net.

当我停止主网站以模拟故障转移到第二个网站时,我得到Error 404 - Web App Not Found. 如果我直接访问mycompany.trafficmanager.net它会按预期工作并显示该xxx.mysite.com网站。

我在配置中遗漏了什么,以便在我进行故障转移时显示xxx.mysite.com网站?

4

2 回答 2

2

Azure 流量管理器是 DNS 路由系统,而不是负载均衡器。使用 DNS 总是会有变化的延迟。默认情况下,流量管理器使用 300 的 TTL,即 5 分钟(300 秒)。

这意味着任何客户端(如 Web 浏览器)只会每 5 分钟检查一次新地址,前提是它们实际上遵循 TTL 值并且不再缓存 DNS 条目。还有许多 DNS 代理和缓存(例如在您的 ISP 中)仍然可以缓存旧的 DNS 条目。在客户端进入故障转移站点之前,任何更新至少需要几分钟时间。

您可以降低 TTL,尽管这会增加查询数量(以及由此产生的成本)并且可能会降低性能。如果您绝对不能有任何停机时间,那么您将不得不考虑运行一个实际的负载均衡器,该负载均衡器将直接处理流量并将其发送到正确的位置。

截至 2020 年,Azure 现在拥有 Front Door 服务,这是一个全局负载均衡器,将无缝处理请求和故障转移。试试那个。更多信息:https ://azure.microsoft.com/en-us/services/frontdoor/

于 2015-12-26T08:01:36.397 回答
0

您能否检查一下自定义域是否也添加到 Web 应用程序中?例如,something.mysite.com 在 mysite.azurewebsites.net 中注册为自定义主机名。

如果未完成该步骤,那么当请求被路由到 azurewebsites 应用程序时,它将失败,因为没有任何明智的配置可以表明 something.mysite.com 确实是 mysite.azurewebsites.net。

于 2015-11-05T22:08:36.187 回答