应用场景
某AIGC客户需要从海外访问火山引擎豆包及对象存储TOS等产品的API接口(使用TCP/UDP/HTTP/HTTPS协议)。因API服务器部署在中国内地,海外跨境访问情形下存在延时高、网络波动等问题。
火山引擎全球加速(GA)提供合规跨境专线服务(支持中国内地-中国香港、中日、中韩、中欧专线线路),能够解决跨境数据传输的延时高和网络波动问题。
方案架构图
跨境专线时延测试数据
说明
下方表格介绍了火山引擎对跨境专线时延的测试数据,供您作为参考。
跨境专线线路 | 中国内地POP点 | 海外POP点 | 时延(测试数据) |
---|---|---|---|
中国内地-中国香港 | 深圳 | 香港 | 2-3ms |
中日 | 上海 | 日本东京 | 23-25ms |
中韩 | 上海 | 韩国首尔 | 21-22ms |
中欧 | 北京 | 德国法兰克福 | 113-117ms |
在本方案中,您需要开通的火山引擎云资源及计费说明如下表所示。
说明
GA加速器和公网带宽也支持后付费方式。如果您有相关需求,请提交工单联系我们。
资源 | 规格 | 数量 | 计费说明 |
---|---|---|---|
GA加速器 | 标准型加速器 | 1 | 预付费(包月),详情参见预付费加速器。 |
公网带宽包 | 标准公网带宽包 | 1 | 预付费(包月),详情参见标准公网带宽包。 |
跨域带宽包 | 联通跨域带宽包 | 1 | 预付费(包月),详情参见跨域带宽包-包月。 |
您已注册火山引擎账号并完成企业实名认证。具体操作,请参见账号注册和实名认证。
说明
确保您的火山引擎账号未欠费。
您的火山引擎账号已开通以下云服务:
您已通过跨境合规信息审核-中国联通版。
根据中华人民共和国工业和信息化部(简称工信部)相关法律、行政法规规定,中国内地只有三大运营商具备跨境业务运营资质。火山引擎联合运营商提供跨境合规专线。要使用跨境合规专线,您必须先提交跨境合规申请;运营商审核通过您提交的信息后,您才可以使用跨境合规专线。具体操作,请参见合规跨境申请。
注意
完成跨境合规信息审核后,默认只可以使用中国内地-中国香港专线。如果您需要使用中日、中韩、中欧跨境合规专线,请提交工单联系我们。
如果您使用火山引擎IAM子用户账号,请联系主账号管理员为您授予相关云服务的权限。需要授予以下系统预设策略:
GAFullAccess
:全球加速管理权限CRBFULLAccess
:跨域带宽管理权限更多信息,请参见使用子用户访问GA。
本教程包含以下步骤:
购买一个标准型加速器,同时购买公网外宽包与加速器绑定。
登录火山引擎全球加速控制台。
在左侧导航栏,选择 加速器管理 > 标准型加速器。
单击 购买加速器。
在 购买标准型加速器 页面,完成订单配置。
区域 | 配置项 | 说明 |
---|---|---|
加速器 | 名称 | 设置加速器的显示名称。 |
付费方式 | 默认仅支持 预付费。 说明 GA加速器也支持后付费方式。如需购买后付费加速器,请提交工单联系我们。 | |
规格 | 选择加速器的实例规格。关于不同规格的介绍,请参见预付费加速器。 | |
购买时长 | 选择加速器的订阅时长。 | |
自动续费 | 选择是否在实例到期前自动续费实例。 | |
项目组 | 设置加速器归属的火山引擎项目。关于项目的介绍,请参见项目资源管理。 | |
标签 | 为加速器附加标签。 | |
公网带宽包 | 是否购买 | 勾选 购买公网带宽包。 |
公网类型 | 选择 标准公网。 说明 关于精品公网带宽包的介绍,请参见精品公网带宽包。 | |
带宽峰值 | 无需修改。默认与实例规格支持的带宽处理上限一致。 | |
绑定加速器实例 | 开启此特性。 |
单击 提交订单,然后完成支付。
(可选)复制加速器CNAME。
在加速器列表找到您购买的加速器,复制它的 CNAME。
说明
加速器CNAME用于业务流量接入。如果使用CNAME接入GA,您需要在步骤四中将目标API访问域名的DNS指向加速器CNAME。
您需要为GA加速器配置监听和终端节点组,并添加加速区域。
在左侧导航栏,选择 加速器管理 > 标准型加速器。
在 标准型加速器 页面,找到您的加速器,单击 操作 列的 配置监听。
在 监听 标签页,单击 创建监听。
完成 创建监听 配置向导。
配置向导包含三个步骤。在每个步骤中需要完成相关配置:
(1)配置监听
配置项 | 说明 |
---|---|
名称 | 设置监听的显示名称。 |
协议 | 选择要监听的连接请求类型。可选项:TCP、UDP。本教程以 TCP 为例。 |
端口 | 输入监听端口范围。输入要求如下:
|
客户端亲和性 | 禁用此特性。 |
(2)配置终端节点组
配置项 | 说明 |
---|---|
节点组名称 | 设置节点组的显示名称。 |
区域 | 选择后端服务器所在区域。 |
流量调配权重 | 设置为 100。 |
保持客户端源IP | 禁用此特性。 |
节点类型 | 选择 公网。 |
节点 | 添加后端服务的访问地址。
|
健康检查 | 启用此特性,并完成相关配置:
|
(3)确认配置
确认前两步的配置无误后,单击 完成。
完成配置向导后,可以在监听列表看到刚刚创建的监听。等待监听配置完成。当监听配置完成后,状态将变为 运行中。
添加加速区域。
加速区域表示客户端的接入区域。您需要将业务用户的主要分布区域添加为加速区域,以使业务流量在就近的接入点接入全球加速。
说明
根据加速器实例的规格,允许添加的加速区域数量不同。例如,小型加速器实例只可以仅支持添加一个加速区域。更多信息,请参见预付费加速器。
(可选)获取加速IP。
在加速区域列表找到您添加的加速区域,复制它的 加速IP。
说明
加速IP是加速器在特定区域的接入点IP。如果使用加速IP接入GA,您需要在步骤四中将目标API访问域名的DNS指向加速IP。
本教程的业务场景涉及中国内地与海外之间的跨境数据传输。使用标准公网的GA加速器必须绑定跨域带宽包,才能实现跨境数据传输。接下来,我们将购买一个中国联通版跨域带宽包。
注意
进行以下操作前,确保您已经开通跨域带宽服务,并且已通过跨境合规信息审核-中国联通版。更多信息,请参见合规跨境申请。
说明
注意将 绑定产品 设置为 全球加速。其余配置项可根据需要调整。更多信息,请参见购买跨域带宽包。
假设从位于海外的云服务器调用豆包API(API访问域名为ark.cn-beijing.volces.com
),则需要将云服务器的API调用请求引导到GA,才可以实现跨境加速访问。要将API访问请求引导到GA,需要修改云服务器的localDNS记录,将目标域名(第三方API访问域名)指向“加速器CNAME”或“加速IP”。
注意
推荐您使用加速器CNAME,因为加速IP可能变化。如果您使用加速IP,需要随时关注加速IP的变化,确保域名指向的加速IP始终是有效的。
根据要使用的接入方式,获取GA接入地址:
要实现CNAME接入,必须修改云服务器的localDNS设置,使目标API访问域名的DNS指向加速器CNAME。
根据云服务器的网络环境,您可以选择不同的方法来修改localDNS设置。例如,如果云服务器启用了私网解析PrivateZone,您可以在私网解析中修改域名的CNAME解析;您也可以为云服务器搭建并配置本地DNS服务器(如使用BIND等软件),并在本地DNS服务器中修改域名的CNAME解析。
在私网DNS服务商处或本地DNS服务器上添加如下DNS CNAME记录:
参数 | 说明 |
---|---|
主机记录 | 设置为目标API访问域名,如 |
记录类型 | 设置为 CNAME |
线路类型 | 保持默认。 |
记录值 | 填写 |
TTL | 保持默认。 |
添加CNAME记录后,在云服务器上使用nslookup或dig命令验证解析是否生效。等待解析生效即完成接入。
方法一:使用curl命令
在云服务器终端运行以下curl命令:
curl -v https://ark.cn-beijing.volces.com:443 --resolve ark.cn-beijing.volces.com:443:<加速IP>
方法二:修改hosts文件
在云服务器的hosts文件中增加以下记录:
说明
Windows的hosts文件在%Windir%\System32\drivers\etc
目录中。macOS和Linux的hosts文件在/etc
目录中。
<加速IP> ark.cn-beijing.volces.com
您可以在位于海外加速区域的计算机上,使用命令行工具执行以下curl
命令来访问API访问域名。在本教程中,云产品API服务器位于中国内地。使用这个命令可以测试跨境数据传输的时延。
curl -s -o /dev/null -w "time_connect: %{time_connect} time_starttransfer: %{time_starttransfer} time_total: %{time_total} " <API访问域名>[:<端口>]
以上命令的作用是向指定的URL发送一个HTTP请求,并输出三个关键的性能指标:
time_connect
:建立TCP连接所用的时间,单位:秒。time_starttransfer
:从发送请求到收到响应头的时间,单位:秒。这个指标包括了建立连接、发送请求、服务器处理请求、返回响应头等所有步骤的耗时。time_total
:整个请求过程的总时间,单位:秒。这个指标包括了收到响应头之后,下载响应体的时间。您需要将<API访问域名>[:<端口>]
替换成API服务URL。
使用举例:
curl -s -o /dev/null -w "time_connect: %{time_connect} time_starttransfer: %{time_starttransfer} time_total: %{time_total} " ark.cn-beijing.volces.com:443