GTM如何实现智能解析按地域划分

场景说明

企业应用服务一般会有多个IP,且多个IP地址可能分布于不同国家或地区、不同运营商、不同厂商的数据中心中,在这种情况下,云解析DNS的智能解析,可以简单有效的实现用户就近访问。但是由于DNS本身无法感知IP地址的可用性状态,所以当故障、灾难场景下无法快速有效的将用户的访问请求路由至可用的IP地址。

解决方案

  • 通过云解析DNS的智能解析功能,实现就近访问。

  • 通过全局流量管理的健康检查功能,实现应用多活或容灾切换效果。

所以此文,将帮助您通过云解析DNS+全局流量管理,实现 智能解析+容灾切换效果

场景示例

某企业的应用服务器部署情况

  • 北京 192.0.2.1、 192.0.2.2

  • 上海 192.0.2.3、 192.0.2.4

  • 日本 192.0.2.5 、192.0.2.6

  • 德国 192.0.2.7、 192.0.2.8

  • 新加坡 192.0.2.9、192.0.2.10

预实现的智能解析效果

  • 国内用户访问部署在北京的服务器(192.0.2.1、 192.0.2.2)

  • 日本用户访问部署在日本的服务器(192.0.2.5 、192.0.2.6)

  • 欧洲用户访问部署在德国的服务器(192.0.2.7、 192.0.2.8)

预实现容灾切换效果

  • 北京与上海做主备容灾

  • 日本与新加坡做主备容灾

  • 德国与新加坡做主备容灾

例如当北京的应用服务器故障时,则将访问流量自动切换至部署在上海的应用服务器上,来保障其正常运行。

准备资源

准备域名

本文以api.dns-example.com 做示例说明。

云解析DNS选购指引

  • 因为要使用到智能解析细分,所以需要采购 企业标准版企业旗舰版。企业标准版支持的解析线路,请参考支持线路

  • 需要使用企业标准版实例1个。

如果您的账号下还未有云解析DNS企业标准版,请立即购买

全局流量管理选购指引

在使用一个子域名前提下,主要依据需要设置几条智能解析效果,来决定采买多少个全局流量管理。例如场景示例中分别是对 国内用户、日本用户、欧洲用户,指定返回三个地区的服务器地址,也就是对三种来源用户设定返回不同的IP地址,所以需要使用3个全局流量管理实例来实现配置。

如果您的账号下还未有全局流量管理实例,立即购买

设置方法

  1. 登录云解析DNS控制台

  2. 左侧导航栏点击 全局流量管理,再点击目标实例 操作 列的 配置 按钮

国内用户访问实例配置

  1. 地址池配置 页面下,单击 新增地址池 按钮, 分别创建 北京 和 上海 两个地址池。

    image.png
  1. 健康检查是全局流量管理实现容灾切换的核心功能,所以需要开启 健康检查;如需修改健康检查配置,点击 修改按钮。 健康检查详细配置,您可以参考开启健康检查。本实践开启TCP健康检查。image.png

  1. 基本配置 页面下,访问策略类型 选择基于 地理位置的访问策略,再点击 配置

  1. 单击 新增访问策略 按钮,创建一条访问策略,主地址池集合 选择 北京 地址池,备地址池集合 选择 上海 地址池。

  1. 访问策略中的解析请求来源 选择 全局 即可。

    image.png
  1. 在 基本配置 页面点击 修改实例名称设置为国内用户访问;实例的 业务域名 输入“cloud-example.com”。同时完成CNAME接入域名全局TTL报警通知组报警通知方式等配置。

日本用户访问实例配置

  1. 地址池配置 页面下,单击 新增地址池 按钮, 分别创建 日本 和 新加坡 两个地址池,并开启 健康检查

  1. 基本配置 页面下,访问策略类型 选择基于 地理位置的访问策略,再点击 配置

  1. 单击 新增访问策略 按钮,创建一条访问策略,主地址池集合 选择日本 地址池,备地址池集合 选择新加坡 地址池。

  1. 访问策略中的解析请求来源选项,只需选中 全局 即可。image.png

  2. 在 基本配置 页面点击 修改实例名称 设置为日本用户访问;实例的 业务域名 输入“cloud-example.com”。同时完成CNAME接入域名全局TTL报警通知组报警通知方式等配置。

欧洲用户访问实例配置

  1. 地址池配置 页面下,单击 新增地址池 按钮, 分别创建 德国 和 新加坡 两个地址池,并开启健康检查

  1. 基本配置 页面下,访问策略类型 选择基于 地理位置的访问策略,再点击 配置

  1. 单击 新增访问策略 按钮,创建一条访问策略,主地址池集合 选择 德国 地址池,备地址池集合 选择 新加坡 地址池。

  1. 访问策略中的 解析请求来源 选项,只需选中全局 即可。image.png

  1. 在 基本配置 页面点击 修改实例名称 设置为欧洲用户访问;实例的 业务域名 输入“cloud-example.com”。同时完成CNAME接入域名全局TTL报警通知组报警通知方式等配置。

业务域名接入GTM

  1. 分别在国内用户访问、日本用户访问、欧洲用户访问实例中的 基本配置 页签下,分别复制 CNAME接入域名

    image.png
  1. 左侧导航栏点击 域名解析,在 权威域名页签下点击目标域名 操作 列的 解析设置 按钮。

  2. 单击 添加记录 按钮,在这里我们将要创建三条CNAME记录,分别指向国内用户访问、日本用户访问、欧洲用户访问三个全局流量管理实例的 CNAME接入域名

国内用户访问实例解析记录

  • 记录类型:选择 CNAME

  • 主机记录:场景示例中使用的子域名是 “api.dns-example.com”,所以这里输入 api

  • 解析请求来源默认

  • 记录值:本示例填入全局流量管理中实例名为国内访问用户的CNAME接入域名。配置时请填入实际业务资源信息。

日本用户访问解析记录

  • 记录类型:选择 CNAME

  • 主机记录:场景示例中使用的子域名是 “api.dns-example.com”,所以这里输入 api

  • 解析请求来源境外-亚洲-日本

  • 记录值:本示例填入全局流量管理中实例名为日本访问用户的CNAME接入域名。配置时请填入实际业务资源信息。

欧洲用户访问解析记录

  • 记录类型:选择 CNAME

  • 主机记录:场景示例中使用的子域名是 “api.dns-example.com”,所以这里输入 api

  • 解析请求来源境外-欧洲

  • 记录值:本示例填入全局流量管理中实例名为欧洲访问用户的 CNAME接入域名。配置时请填入实际业务资源信息。

    说明
    • 完成所有配置后,您可以采用拨测的方式查看智能解析线路是否生效。

    • 通过设置服务IP地址的ACL策略,使得健康检查失败,测试GTM健康检查和故障自动切换功能。