什么是全局流量管理3.0

全局流量管理(GTM)3.0GTM服务的全新升级版本,采用图形化编排配置,集成丰富健康探测模板,具备来源就近、权重、顺序、轮询多种负载均衡策略及多类型请求线路的组合能力,旨在为企业提供灵活、高效的容灾调度机制,实现对入口流量的精细化和智能化管理。

前置概念

阅读本文前,您可能需要了解如下概念:

产品概述

全局流量管理(GTM)支持用户就近接入、高并发负载均衡、健康检查与故障切换,可以帮助企业在短时间内构建同城多活与异地灾备的容灾架构。同时GTM支持管理阿里云和非阿里云IP地址,能够方便企业客户快速构建混合云应用的灾备。

GTM属于DNS级别的服务,使用DNS向用户返回特定的服务地址,然后客户端用户直接连接到服务地址。所以GTM本身并不是代理或网关设备,也不是应用接入服务,因此无法查看客户端用户与应用服务之间的网络流量。点击链接立即购买全局流量管理

开通GTM产品实例后,用户通过设置一个CNAME接入域名,一般需要将用户访问的业务域名CNAME至全局流量管理的接入域名,才能最终实现对应用服务进行容灾切换、智能解析。

功能简介

以下是全局流量管理的功能简介。

image

功能

功能描述

参考文档

GTM接入域名

全局流量管理(GTM)的接入域名,即GTM对外提供服务的域名。用户一般将业务域名通过CNAME解析到GTM接入域名以实现业务域名接入GTM。

  • GTM接入域名的前提条件是:本账号下至少存在一个独立托管的主域名或子域名。例如example.com为用户本账号下的主域名。

  • GTM接入域名格式:主机记录.主域名,例如gtm.example.com。如果您的域名已经托管在阿里云解析DNS,接入域名主机记录可以输入您的业务域名主机记录,此时您的GTM接入域名就是您业务域名本身。

接入域名配置方式

地址池

地址池是GTM对应用服务地址(IP或域名)进行管理的功能。一个地址池,代表一组提供相同应用服务,即具备相同运营商或地区属性的IP地址或域名地址。一个GTM实例,可以配置多个地址池,便于实现不同地区的用户访问不同的地址池,并达到就近接入的效果。同时当地址池整体不可用时,可以做备份切换。

地址池配置

地址

是应用的服务地址,也是GTM经过解析和决策流程后得出的应答结果。地址包含服务IP地址或域名名称。服务端口是执行健康检查校验服务可用性探测的重要参数地址。

地址配置

负载均衡策略

负载均衡策略是一种动态资源调度机制,它根据特定算法和策略,实现接入域名选择合适的地址池以及在地址池内部选择合适的地址。负载策略主要包括以下几种方法:

  1. 来源就近:即智能解析功能,依据客户端的地理位置或网络运营商,实现请求来源的精准识别,并据此将流量导向距离用户地理位置最近或相同运营商环境下的服务地址,从而优化网络延迟,提升服务响应速度;

  2. 顺序:按照地址池或地址的预设顺序逐个选择,确保可用服务器有序访问;

  3. 轮询:地址池和地址全部循环地分配,确保所有可用服务器得到相对均匀的访问量,实现整体负载的均衡分布。具体来说,多个地址池之间轮询是按照轮询机制选中单个地址池,地址池内多个地址之间轮询是以轮询方式全部应答;

  4. 权重(Weighted Distribution):根据不同服务器的处理能力或性能表现设定权重值,依据权重比例进行地址分配,使高权重服务器承担更多请求,达到高效利用系统资源的目的。

通过上述灵活的负载均衡策略,可以实现对网络入口流量的合理分发与优化管理。

为了满足企业复杂的调度场景,GTM3.0 支持两级访问策略调度。两级访问策略调度逻辑:

  • 第一级调度:从域名选择合适的地址池,域名通过负载均衡策略选择合适的地址池。具体信息请参考地址池间负载均衡策略配置参数

  • 第二级调度:从地址池选择合适地址,地址池通过负载均衡策略选择可用的地址,并最终应答给客户。具体信息请参考地址负载均衡策略配置

健康探测模板

健康检查机制主要针对地址池中的地址,进行实时探测并评估应用服务的运行状态与可用性,涉及的监控方式包括ICMP Ping监控、TCP连接性监控、HTTP/HTTPS端点响应监测。

GTM 3.0提供了健康检查模板,允许用户配置多维度的协议检测模板,综合判断应用服务地址的可用状态。

产品原理

例如网站业务域名是www.example.com

  1. GTM的地址池添加3个服务器IP地址1.1.XX.XX2.2.XX.XX3.3.XX.XX,并开启健康检查。

  2. 根据您的实际解析场景完成访问策略配置。

  3. 开通GTM实例并完成基本配置,会根据您的配置生成一个CNAME接入域名,例如: gtm.example.com

  4. 将网站业务域名www.example.com通过CNAME记录指向gtm.example.com

原理流程图解

image

原理流程说明

  • 终端向本地递归DNS系统查询应用服务域名www.example.com

  • 假设本地递归DNS系统没有www.example.com的缓存,那么本地递归DNS会向DNS根服务器发送此域名的DNS查询请求。同时DNS根服务器会根据查询域名的后缀,向本地递归DNS服务器响应.com所在的DNS服务器。

  • 本地递归DNS收到DNS根响应的.comDNS服务器地址后,会向.comDNS服务器发起www.example.com的域名查询请求。同时,.comDNS服务器收到请求后,会向本地递归DNS服务器响应example.com所在的DNS服务器,如果域名使用了云解析服务,那么这个DNS服务器就是云解析的DNS服务器。

  • 本地递归DNS收到.comDNS服务器响应的云解析DNS服务器地址后,再次向云解析DNS服务器发起www.example.com查询请求,同时云解析DNS服务器收到DNS查询请求后,在自己的数据库中发现www.example.com通过CNAME指向了GTM接入域名gtm.example.com,因此云解析DNS服务器会向本地递归DNS响应gtm.example.com

  • 本地递归DNS收到云解析DNS响应的gtm.example.com域名后,会再次向全局流量管理的DNS服务器发起gtm.example.com查询,同时,全局流量管理在收到请求后,会根据运行机制和预配置策略向本地递归DNS响应最终应用服务的地址。

  • 本地递归DNS服务器将最后一次查询获得的IP地址作为www.example.com的最终地址,返回给终端用户,同时缓存在本地,方便下次用户查询时可以直接返回结果。

  • 终端用户收到本地递归DNS服务器响应的IP地址后,直接向应用服务发起网络连接,开始进行业务通信。

产品架构

image

产品架构图说明:

  • GTM系统中的DNS模块,是实现将终端用户访问解析到应用服务的地址池中的地址。其中,假如中国内地用户访问地址池A中的应用服务、境外用户访问地址池B的应用服务,并且两个地址池负载均衡策略设定为顺序。

  • GTM系统中的HealthCheck模块,会从多个地区对地址池内的多个应用服务地址发起健康探测,健康探测可以使用ping、tcp、http(s)三种方式。

  • 当地址池A中有一个应用服务地址出现故障时,HealthCheck模块会准确的检测到异常情况,同时HealthCheck模块会和DNS模块进行交互,最终是通过DNS模块将异常地址从向用户返回的应用服务地址列表中暂时删除;如果HealthCheck模块检测到应用服务的地址恢复正常,则DNS模块会将此地址恢复至应用服务的地址列表中并返回给用户。

因此,终端用户访问时可以通过全局流量管理系统自动获取最佳的应用服务,并保障用户访问的连续不中断。

系统架构

全局流量管理是由管控层和解析层两部分组成:

  • 管控层:管控层通过控制台和OpenAPI对外提供服务,主要实现了域名解析数据、配置数据、监控数据、日志数据等的增删改查功能和存储功能。管控层位于【中国内地-华北3(张家口)】。

  • 解析层:解析层通过部署在全球范围内的解析服务器集群对外提供服务,解析层接收来自于管控层分发的域名解析记录数据,主要实现了对域名解析记录数据的查询请求的应答功能。解析层在全球主要大洲和地区均有节点覆盖。

联系我们

钉钉群:79530043379