Azure 流量管理器 - 使用自定义域进行故障转移

Azure 流量管理器 - 使用自定义域进行故障转移

我正在尝试做一些我认为应该很简单的事情,但我遗漏了一些东西。你能看一下吗?

我在 Azure 云中,在不同区域的不同服务计划中运行两个 Web 应用。这两个应用是彼此的副本。

如果主区域出现故障,我正在尝试使用 Azure Traffic Manager 从主区域故障转移到辅助区域。

我希望能够使用相同的域名,即使网站发生故障转移也是如此。以下是我目前的情况:

域名是“example.com”

  1. 设置流量管理器配置文件,监控两个端点。检查。
  2. 为 wwww.example.com 设置指向 exampledotcom.trafficmanager.net 的 CNAME DNS 记录。检查。
  3. 浏览 exampledotcom.trafficmanager.net,我得到了预期的路由。检查。
  4. 如果我连接到 www.example.com,流量管理器似乎会将我路由到一个实例,但我收到以下 Azure 错误:

“错误 404 - 未找到 Web 应用。您尝试访问的 Web 应用在此 Microsoft Azure 应用服务区域中不可用。”

发生这种情况是因为我没有将域名映射到 Azure Web App。当我尝试将自定义域映射到不同区域的两个实例(用于故障转移目的)时,Azure 抱怨该域已注册到另一个 Web 应用程序。

如何使用流量管理器将自定义域映射到两个 Web 应用程序以实现故障转移?

答案1

我与 Azure 支持人员进行了交流。事实上,在这种情况下,您可以将同一个域名绑定到两个不同的 WebApp,前提是:

  1. 它们是不同的地区
  2. 您首先使用 TrafficManager 端点定位它们。

如果您没有将自定义域名绑定到两个 WebApp,则故障转移后您将无法访问您的网站。如果未绑定域名,WebApp 将拒绝流量。

这就是我被告知的以及最终奏效的方法:

  1. 创建流量管理器配置文件并将两个 WebApp 添加为端点。这会将XXXX.trafficmanager.net域绑定到每个 Web App。

  2. 等待域通过 Azure 系统传播并显示在 WebApps 的“自定义域”菜单中。

  3. 照常去绑定自定义域名,但一定要选择XXXX.trafficmanager.net如图所示的地址:

在此处输入图片描述

答案2

当我尝试将自定义域映射到不同区域的两个实例(出于故障转移目的)时,Azure 抱怨该域已注册到另一个 Web 应用程序。

所有这些都是设计行为。并且它应该以这种方式工作。

如果你想通过流量管理器实现故障转移,有需要设置两个网站的名称相同。在 Azure 中,我们添加不同的域名到流量管理器端点,完成配置后,我们应该编辑权威DNS服务器上的DNS记录,将您的公司域名指向流量管理器域名,然后我们就可以使用公司域名访问流量管理器后面的网站。

流量管理器的工作原理如下: 在此处输入图片描述

如何使用流量管理器将自定义域映射到两个 Web 应用程序以实现故障转移?

两个 Web 应用,你的意思是这些 Web 应用是 Azure Web APP 服务,由 Azure 创建吗?如果是,我们可以将这两个网站添加到流量管理器的端点,如下所示:

在此处输入图片描述

配置完成后我们就可以使用贵公司的域名来测试连接了。

顺便一提,Azure 流量管理器充当负载均衡器(DNS 级别),这样我们就可以将自定义域名用于不同地区的多个网站。

相关内容