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