加速访问指定IP的后端服务
本章节指导用户使用全球加速服务加速访问指定IP的后端服务,提高用户访问速度和网络稳定性。
场景示例
本文以图1所示的场景为例。
某跨国企业的企业分支遍布全球,新加坡分公司的内部应用系统平台部署在华南-广州区域的两台服务器上,香港分公司的内部应用系统平台部署在中国-香港区域的两台服务器上,各个公司的两台服务器作为负载分担关系各自承担一部分访问流量。
为了获取更稳定的应用访问效果,购买全球加速服务后,各地的企业分支可以就近接入华为云的网络,通过华为云骨干网访问应用服务器。
通过配置全球加速,实现新加坡分公司访问广州服务器的流量通过加速IP(即图1中的Anycast IP)就近从亚太-新加坡接入点进入华为云加速网络,然后通过监听器将客户端的网络访问请求分发至终端节点1和终端节点2,其中终端节点1和终端节点2关联的后端服务器各自分担50%的流量请求。
同理,香港办公室访问香港服务器的流量通过加速IP就近从中国-香港接入点进入华为云加速网络,然后通过监听器将客户端的网络访问请求分发至终端节点3和终端节点4,其中终端节点3关联的后端服务器分担20%的流量请求,终端节点4关联的后端服务器分担80%的流量请求。
配置流程
操作步骤
- 跨境申请(跨中国大陆互通场景必选)
根据中华人民共和国工业和信息化部(简称工信部)相关法律、行政法规规定,中国大陆只有三大运营商具备跨境业务运营资质。所以涉及跨中国大陆访问的业务场景,都需要通过跨境资质审核。
在全球加速服务中,用户所在的加速区域和终端节点组所在区域,如果其中一个属于中国大陆,另一个不属于中国大陆,则必须申请跨境资质。
- 登录管理控制台。
- 单击管理控制台左上角的,选择“网络 > 全球加速”。
进入全球加速服务主页面。
- 在左侧导航中,单击“跨境申请管理”。
- 在跨境申请页面,单击“跨境申请”。
- 在跨境云服务在线申请页面,根据提示配置相关参数,并上传相关材料。
表1 跨境云服务在线申请 参数
客户名称
华为云ID
产品类型
签约带宽(M)
合同生效时间
合同终止时间
客户类型
客户所属国家
客户统一社会信用代码
客户组织机构代码
客户法人
法人证件类型
法人证件号
客户联系人
客户联系人电话
联系人证件类型
联系人证件号
经营范围
客户企业规模(人数)
客户人均带宽
客户境内外分公司所在国家
“华为云ID”指用户在华为云管理控制台的“账号ID”,从控制台获取账号ID的步骤如下:- 登录管理控制台。
- 鼠标悬停在右上角的用户名,选择下拉列表中的“我的凭证”。
图2 我的凭证
- 在“API凭证”页面的项目列表中查看并获取账号ID。
图3 获取账号ID
表2 跨境申请材料 材料名称
签字
盖章(企业公章)
说明
营业执照扫描件
-
√
盖章位置请参考相应的模板文件。
联系人身份证正反面
-
√
盖章位置请参考相应的模板文件。
《华为云服务跨境专线业务服务协议》扫描件
√
√
- 请在签字栏处签字。
- 盖章需覆盖签名。
《中国联通专线业务信息安全承诺书》扫描件
√
√
- 请在签字栏处签字。
- 盖章需覆盖签名。
- 该材料中需要填写公司名称、带宽值,带宽值可按照初始预估值填写。
《跨境业务办理授权书》扫描件
-
√
盖章位置请参考相应的模板文件。
- 单击“立即申请”。
- 创建全球加速实例
全球加速服务为全球化业务用户提供应用加速服务,使用全球加速服务前,用户必须先创建全球加速实例。
- 登录管理控制台。
- 在系统首页,单击管理控制台左上角的,选择“网络 > 全球加速”。
进入全球加速服务主页面。
- 在全球加速服务页面,单击“购买全球加速服务”。
- 根据界面提示配置相关参数,详细请参见表3。
图4 创建全球实例
表3 创建全球加速实例 参数
说明
名称
用户将要创建的全球加速实例的名称。
只能由中文、英文字母、数字、中划线组成。
长度范围:1-64个字符。
企业项目
企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。
您可以使用已有企业项目,也可以新建企业项目。
加速区域
加速区域指需要进行访问加速的区域。
支持选择“中国大陆以外”或“中国大陆”,默认选择“中国大陆以外”。
标签
全球加速的标识,包括键和值。可以为全球加速实例创建20个标签。
标签的命名规则请参考表4。
说明:如果已经通过TMS的预定义标签功能预先创建了标签,则可以直接选择对应的标签键和值。
预定义标签的详细内容,请参见预定义标签简介。
如您的组织已经设定全球加速服务的相关标签策略,则需按照标签策略规则为加速实例添加标签。标签如果不符合标签策略的规则,则可能会导致加速实例创建失败,请联系组织管理员了解标签策略详情。
描述
全球加速实例描述。
长度范围:不超过255个字符。
- 单击“下一步”,进入监听器配置页面。
- 配置监听器
创建全球加速实例后,您需要为全球加速实例配置监听器。监听器负责监听连接请求,并根据流量转发策略将请求流量分发至终端节点。
根据界面提示配置相关参数,详细请参见表5。
图5 添加监听器
表5 添加监听器 类型
参数
说明
基本配置
名称
监听器名称。
只能由中文、英文字母、数字、中划线组成。
长度范围:1-64个字符。
前端协议
客户端与监听器建立流量分发连接的协议。
取值范围:TCP、UDP。
前端端口
客户端与监听器建立流量分发连接的端口。
端口取值在1-65535之间,端口范围用“-”连接,多个端口或端口范围以逗号隔开。
例如:1-10,11-50,51,52-200
客户端亲和性
会话保持。
支持选择“关闭”或“按源IP保持会话”。
TCP和UDP协议仅支持“按源IP保持会话”。
按源IP保持会话:基于源IP地址的简单会话保持,将请求的源IP地址作为散列键(HashKey),从静态分配的散列表中找出对应的服务器。即来自同一IP地址的访问请求会被转发到同一台后端服务器上进行处理。
标签
监听器的标识,包括键和值。可以为监听器创建20个标签。
标签的命名规则请参考表4。
说明:如果已经通过TMS的预定义标签功能预先创建了标签,则可以直接选择对应的标签键和值。
预定义标签的详细内容,请参见预定义标签简介。
如您的组织已经设定全球加速服务的相关标签策略,则需按照标签策略规则为监听器添加标签。标签如果不符合标签策略的规则,则可能会导致监听器创建失败,请联系组织管理员了解标签策略详情。
描述
监听器描述。
长度范围:不超过255个字符。
终端节点组
名称
终端节点组名称。
每个监听器下每个区域只允许关联一个终端节点组。
只能由中文、英文字母、数字、中划线组成。
长度范围:1-64个字符。
区域
终端节点组所属区域。
描述
终端节点组描述。
长度范围:不超过255个字符。
流量调度
配置到不同终端节点组的流量比例。
如果增加流量调度比例,将有更多的请求分发到此终端节点组。
如果将流量调度比例设置为0,则不会将任何请求分发到此终端节点组。
取值范围为:[0-100]。
说明:如果监听器中有多个终端节点组,分配流量时优先选择时延最低的终端节点组,并按照该终端节点组的流量调度值分配流量,然后再向其他终端节点组分配其余流量。
终端节点
终端节点充当客户端的接触点,加速实例跨正常运行的终端节点分发传入流量。
- 终端节点1:选择服务器1关联的公网IP,即88.xx.xx.10。
- 终端节点2:选择服务器2关联的公网IP,即10.xx.xx.11。
终端节点1和终端节点2的权重值配置为相同值,这里配置为1。
健康检查配置
是否开启
开启或者关闭健康检查。
关闭健康检查可能会导致业务请求转发至异常的后端服务器。
前端协议
健康检查目前支持选择TCP协议。
默认:TCP协议。
前端端口
健康检查端口号。
取值范围:[1,65535]。
高级配置
检查间隔(秒)
每次健康检查响应的最大间隔时间。
取值范围:[1-60]。
超时时间(秒)
每次健康检查响应的最大超时时间。
取值范围:[1-60]。
最大重复次数
健康检查最大的重试次数。
取值范围:[1-10]。
表6 标签命名规则 参数
规则
键
- 取值不能为空。
- 取值可以包含任意语种字母、中文、数字、 空格、“_”、“.”、“:”、“=”、“+”、“-”、“@”。
- 首尾不能含有空格。
- 不能以_sys_ 开头。
- 长度不超过128个字符。
值
- 取值可以为空。
- 取值可以包含任意语种字母、中文、数字、空格、“_”、“.”、“:”、“/”、“=”、“+”、“-”、“@”。
- 首尾不能含有空格。
- 长度不超过255个字符。
- 添加终端节点组和终端节点
终端节点组1、终端节点1和终端节点2配置完成后,根据界面提示配置终端节点组2、终端节点3和终端节点4的相关参数信息。
- 单击“添加终端节点组”,根据界面提示配置相关参数。详细请参见表7。
表7 添加终端节点组 类型
参数
说明
终端节点组
名称
终端节点组名称。
每个监听器下每个区域只允许关联一个终端节点组。
只能由中文、英文字母、数字、中划线组成。
长度范围:1-64个字符。
区域
终端节点组所属区域。
描述
终端节点组描述。
长度范围:不超过255个字符。
流量调度
配置到不同终端节点组的流量比例。
如果增加流量调度比例,将有更多的请求分发到此终端节点组。
如果将流量调度比例设置为0,则不会将任何请求分发到此终端节点组。
取值范围为:[0-100]。
说明:如果监听器中有多个终端节点组,分配流量时优先选择时延最低的终端节点组,并按照该终端节点组的流量调度值分配流量,然后再向其他终端节点组分配其余流量。
终端节点
终端节点充当客户端的接触点,加速实例跨正常运行的终端节点分发传入流量。
- 终端节点3:选择服务器3关联的公网IP,即97.xx.xx.159。
- 终端节点4:选择服务器4关联的公网IP,即10.xx.xx.240。
这里将终端节点3的权重值配置为1,终端节点4的权重值配置为4。
健康检查配置
是否开启
开启或者关闭健康检查。
关闭健康检查可能会导致业务请求转发至异常的后端服务器。
前端协议
健康检查目前支持选择TCP协议。
默认:TCP协议。
前端端口
健康检查端口号。
取值范围:[1,65535]。
高级配置
检查间隔(秒)
每次健康检查响应的最大间隔时间。
取值范围:[1-60]。
超时时间(秒)
每次健康检查响应的最大超时时间。
取值范围:[1-60]。
最大重复次数
健康检查最大的重试次数。
取值范围:[1-10]。
在该示例中,对于新加坡用户来说,访问广州服务器的时延要小于访问香港服务器的时延,所以新加坡用户的访问流量优先调度到广州,而对于香港用户来说情况正好相反。
如果将广州区域对应的的终端节点组1和香港区域对应的终端节点组2的流量调度比例同时配置为80%,在时延优先的原则下,新加坡用户和香港用户的访问流量将按照如下情形分配:
- 新加坡用户的访问流量将有80%被分配到终端节点组1,剩余20%被分配到终端节点组2。
- 香港用户的访问流量将有80%被分配到终端节点组2,剩余20%被分配到终端节点组1。
图6 跨国访问流量调度
- 单击“保存”,保存配置信息。
- 单击“下一步”,确认监听器、终端节点组、终端节点信息。
- 单击“提交”。
- 等待页面提示“创建加速器实例xxx成功”后,单击“完成”。
- 单击“添加终端节点组”,根据界面提示配置相关参数。详细请参见表7。
配置验证
在本场景中,全球加速服务的监听器配置的是TCP协议,可以使用curl命令方式,具体如下:
- 配置GA服务之前,在加速区域的电脑上执行curl命令
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<IP>[:<端口>]"
- IP:标识应用的弹性公网IP。
- 端口:应用的http端口号。
- time_connect:连接时间。从开始建立TCP到连接完成所用的时间,单位为秒。
- time_starttransfer:开始传输时间。从客户端发出请求到后端服务器响应第一个字节所用的时间,单位为秒。
- time_total:连接总时间。从客户端发出请求到后端服务器响应会话所用的时间,单位为秒。
- 配置GA服务后,再执行如下curl命令
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http[s]://<IP>[:<端口>]"
命令中的“IP”需要填入全球加速服务提供的Anycast IP。
- 通过对“time_connect”值进行比较,对比加速前后的时延。