通过CDN加速域名访问桶
使用场景
现在越来越多的行业使用OBS存储图片、视频、软件包等静态资源文件,并将OBS作为网站、论坛、APP、游戏等业务的存储源。在需要获取这些静态资源时,用户会通过URL直接从OBS请求数据,但一般情况下文件只存储在一个区域,距离文件存储区域较远的用户访问OBS时,响应速度可能会比较慢。同时,在需要频繁访问的场景下,直接访问OBS来获取相应文件,还会消耗大量的流量费用。
如果您希望提高访问静态资源文件的速度和稳定性,可以使用CDN加速。如果您已为桶配置自定义域名,那么可以直接为自定义域名开启CDN加速;如果您还未为桶配置自定义域名,那么可以配置CDN加速域名。
CDN加速适用的场景如下:
原理介绍
客户端直接访问OBS:由于文件只存储在一个区域,距离文件存储区域较远的用户访问OBS时,响应速度可能会比较慢。
客户端使用CDN加速访问OBS:当客户端发起访问请求时,会首先通过CDN查找对此域名响应速度最快的CDN节点,并查询此节点是否有缓存客户端请求的内容。如果有缓存,则由CDN节点直接返回数据;如果无缓存,则由CDN节点从OBS获取数据后返回给客户端并将数据缓存至CDN节点上。
由此可见,通过内容分发网络(CDN)提供的加速服务,可以加快响应速度,降低成本,提高终端用户使用感受。
客户端直接访问OBS和使用CDN加速访问OBS的请求过程如下所示:
客户端直接从OBS获取数据的请求过程如图1所示。
客户端发起访问请求时,会首先通过CDN查找对此域名响应速度最快的CDN节点,同时查询到此节点没有缓存客户端请求的内容,然后由CDN节点从OBS获取数据后返回给客户端并将数据缓存至该CDN节点上。请求流程如图2所示。
客户端发起访问请求时,会首先通过CDN查找对此域名响应速度最快的CDN节点,同时查询到此节点有缓存客户端请求的内容,然后由CDN节点直接返回数据给客户端,而无需再从OBS获取数据。请求流程如图3所示。
约束与限制
只有桶版本号为3.0及以上的桶支持该功能。桶版本号可以在OBS控制台上,进入桶概览页面后,在“基本信息”中查看。
操作步骤
使用OBS控制台配置加速域名分为两步:
步骤一:配置加速域名
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在OBS管理控制台桶列表中,单击待操作的桶,进入“对象”页面。
- 在左侧导航栏选择“域名管理”,进入“域名管理”界面。
图4 域名管理界面
- 单击页面上方的“配置加速域名”,如果没有绑定自定义域名也可以在页面下方的配置加速域名卡片中单击“配置加速域名”,弹出“配置加速域名”页面。
如果还没有开通CDN服务,单击“配置加速域名”后会出现弹窗,根据弹窗提示,单击开通CDN服务。
图5 配置加速域名
- 添加加速域名,按照以下说明配置加速域名参数,然后单击“确定加速”。
表1 参数说明 参数
参数分类
说明
取值样例
源站信息
-
客户端通过加速域名访问的源站信息,为被访问资源所在的OBS桶默认域名。
该参数默认显示,无需配置。
-
服务范围
中国大陆
如果您仅选择中国大陆,所有用户的访问都会被调度到中国大陆的CDN节点,加速域名还需要到工信部备案,详见备案流程。
全球
中国大陆境外
如果您仅选择中国大陆境外,所有用户的访问都会调度到中国大陆境外的节点,此时不需要到工信部备案。
全球
如果您选择全球,全球各地用户的访问都会调度到附近最优的CDN节点,加速域名需要到工信部备案,详见备案流程。
业务类型
网站加速
门户网站、电商平台、资讯APP等静态资源(如:图片、文件)遇到访问量较大或访问用户分布在全球各地的情况,使用加速功能可以加快响应速度。
网站加速
文件下载加速
对于有文件下载业务的网站、下载工具、游戏客户端、APP商店等,加速功能可提供更高带宽和传输速度,减少下载时间。
点播加速
对于提供音视频点播服务的场景,如在线教育、在线视频分享、音乐/视频点播等,加速功能可降低播放缓冲时间,提高观看体验。
加速域名
-
需要加速的自定义域名。
如果您在填写加速域名时,需要OBS控制台为您呈现已有华为云域名,便于您在下拉列表中直接点选,则您需要拥有域名注册服务(Domains)的Domains:domains:getDetails权限,请联系管理员使用统一身份认证服务(IAM)为您授权。
- 请填写可以正常使用的域名。
- 支持一次性添加5个域名。
static.example.com
静态网站托管
-
- 如果您的OBS桶配置了静态网站托管功能,请勾选此参数,这样在您访问桶中的单个静态文件时就不会列出桶中所有文件列表。
同时,请在CDN域名的源站配置页面勾选“静态网站托管”。具体请参见为什么OBS桶接入CDN后,访问域名会列出所有文件列表?。
- 如果您的OBS桶未配置静态网站托管功能,请勿勾选此参数,勾选后会导致业务异常。
-
步骤二:解析CNAME
配置解析CNAME,将加速域名映射为被绑定桶的默认域名。
- 如果填写的用户域名为华为云域名,请单击“一键解析”。云解析DNS会根据填写的域名自动添加一条CNAME记录。
如果填写的用户域名非华为云域名,那么忽略本步骤而执行2手动配置解析规则。
- 手动配置解析CNAME。
不同DNS服务商的CNAME配置方式不同,此处以华为云云解析服务为例。其他DNS服务商的CNAME配置方法可参考配置CNAME域名解析。
如果您使用的是DNS服务商为华为云,您可通过如下步骤配置CNAME记录。- 登录华为云控制台,在控制台首页选择“网络 > 云解析服务 DNS”,进入云解析服务页面。
- 在左侧菜单栏中,选择“公网域名”,进入域名列表页面。
- 在待添加记录集的域名(为桶绑定的自定义域名)所在行,单击“域名”列的域名名称。
- 进入“解析记录”页面,单击“添加记录集”,进入“添加记录集”页面。
- 根据界面提示填写参数配置,参数信息如下所示。下表中未提到的参数可保持默认值。更多参数配置请参见添加CNAME类型记录集。
表2 参数说明 参数
参数说明
取值样例
主机记录
解析域名的前缀。
例如创建的域名为“example.com”,其“主机记录”设置包括:
置空
类型
记录集的类型,此处为CNAME类型。
添加记录集时,如果提示解析记录集已经存在,说明待添加的记录集与已有的记录集存在限制关系或者冲突。
详细内容请参见为什么会提示解析记录集已经存在?。
CNAME-将域名指向另外一个域名
别名
用于是否将此记录集关联至云服务资源实例。
该类型记录集仅支持设置为“否”。
否
线路类型
解析的线路类型用于DNS服务器在解析域名时,根据访问者的来源,返回对应的服务器IP地址。
默认值为“全网默认”。
仅支持为公网域名的记录集配置此参数。
全网默认
TTL(秒)
解析记录在本地DNS服务器的缓存时间,以秒为单位。
默认值为“300秒”。取值范围为:1~2147483647
如果您的服务地址经常更换,建议TTL值设置相对小些,反之,建议设置相对大些。
更多TTL相关内容请参见什么是TTL值?。
默认为“5分钟”,即300s。
值
填写您要指向的别名,只能填写一个域名。
说明:- 如果没有使用CDN加速,该值为桶访问域名;
- 如果使用CDN加速后,该值为CDN分配的CNAME域名。
webserver01.example.com
- 单击“确定”,完成添加。
- 验证CNAME配置是否生效。
nslookup -qt=cname 桶配置的自定义域名
- 没有使用CDN加速:如果回显OBS桶域名,则表示CNAME配置已经生效。
- 使用CDN加速:如果回显CDN分配的CNAME域名,则表示CNAME配置已经生效,如下图所示。
图6 使用CDN加速
CDN加速非实时生效,配置域名后请刷新域名管理列表查看状态。只有当CNAME域名状态为“已开启”时,才表示CDN加速生效。
使用OBS控制台开启加速分为以下两步:
步骤一:开启加速
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在OBS管理控制台桶列表中,单击待操作的桶,进入“对象”页面。
- 在左侧导航栏选择“域名管理”,进入“域名管理”界面。
图7 域名管理界面
- 在域名管理列表,找到已绑定的域名卡片,单击“开启加速”。
图8 加速域名
- 按照以下说明配置加速域名参数,并单击“确定加速”。
表3 参数说明 参数
参数分类
说明
取值样例
源站信息
-
客户端通过加速域名访问的源站信息,为被访问资源所在的OBS桶默认域名。
该参数默认显示,无需配置。
-
服务范围
中国大陆
如果您仅选择中国大陆,所有用户的访问都会被调度到中国大陆的CDN节点,加速域名还需要到工信部备案,详见备案流程。
全球
中国大陆境外
如果您仅选择中国大陆境外,所有用户的访问都会调度到中国大陆境外的节点,此时不需要到工信部备案。
全球
如果您选择全球,全球各地用户的访问都会调度到附近最优的CDN节点,加速域名需要到工信部备案,详见备案流程。
业务类型
网站加速
门户网站、电商平台、资讯APP等静态资源(如:图片、文件)遇到访问量较大或访问用户分布在全球各地的情况,使用加速功能可以加快响应速度。
网站加速
文件下载加速
对于有文件下载业务的网站、下载工具、游戏客户端、APP商店等,加速功能可提供更高带宽和传输速度,减少下载时间。
点播加速
对于提供音视频点播服务的场景,如在线教育、在线视频分享、音乐/视频点播等,加速功能可降低播放缓冲时间,提高观看体验。
加速域名
-
需要加速的自定义域名。
该参数默认显示,无需配置。
static.example.com
静态网站托管
-
- 如果您的OBS桶配置了静态网站托管功能,请勾选此参数,这样在您访问桶中的静态文件时就不会列出桶中所有文件列表。
同时,请在CDN域名的源站配置页面勾选“静态网站托管”。具体请参见为什么OBS桶接入CDN后,访问域名会列出所有文件列表?。
- 如果您的OBS桶未配置静态网站托管功能,请勿勾选此参数,勾选后会导致业务异常。
-
- 如果您的OBS桶配置了静态网站托管功能,请勾选此参数,这样在您访问桶中的静态文件时就不会列出桶中所有文件列表。
步骤二:解析CNAME
配置解析CNAME,将加速域名映射为被绑定桶的默认域名。
- 如果填写的用户域名为华为云域名,请单击“一键解析”。云解析DNS会根据填写的域名自动添加一条CNAME记录。
如果填写的用户域名非华为云域名,那么忽略本步骤而执行2手动配置解析规则。
- 手动配置解析CNAME。
不同DNS服务商的CNAME配置方式不同,此处以华为云云解析服务为例。其他DNS服务商的CNAME配置方法可参考配置CNAME域名解析。
如果您使用的是DNS服务商为华为云,您可通过如下步骤配置CNAME记录。- 登录华为云控制台,在控制台首页选择“网络 > 云解析服务 DNS”,进入云解析服务页面。
- 在左侧菜单栏中,选择“公网域名”,进入域名列表页面。
- 在待添加记录集的域名(为桶绑定的自定义域名)所在行,单击“域名”列的域名名称。
- 进入“解析记录”页面,单击“添加记录集”,进入“添加记录集”页面。
- 根据界面提示填写参数配置,参数信息如下所示。下表中未提到的参数可保持默认值。更多参数配置请参见添加CNAME类型记录集。
表4 参数说明 参数
参数说明
取值样例
主机记录
解析域名的前缀。
例如创建的域名为“example.com”,其“主机记录”设置包括:
置空
类型
记录集的类型,此处为CNAME类型。
添加记录集时,如果提示解析记录集已经存在,说明待添加的记录集与已有的记录集存在限制关系或者冲突。
详细内容请参见为什么会提示解析记录集已经存在?。
CNAME-将域名指向另外一个域名
别名
用于是否将此记录集关联至云服务资源实例。
该类型记录集仅支持设置为“否”。
否
线路类型
解析的线路类型用于DNS服务器在解析域名时,根据访问者的来源,返回对应的服务器IP地址。
默认值为“全网默认”。
仅支持为公网域名的记录集配置此参数。
全网默认
TTL(秒)
解析记录在本地DNS服务器的缓存时间,以秒为单位。
默认值为“300秒”。取值范围为:1~2147483647
如果您的服务地址经常更换,建议TTL值设置相对小些,反之,建议设置相对大些。
更多TTL相关内容请参见什么是TTL值?。
默认为“5分钟”,即300s。
值
填写您要指向的别名,只能填写一个域名。
说明:- 如果没有使用CDN加速,该值为桶访问域名;
- 如果使用CDN加速后,该值为CDN分配的CNAME域名。
webserver01.example.com
- 单击“确定”,完成添加。
- 验证CNAME配置是否生效。
nslookup -qt=cname 桶配置的自定义域名
- 没有使用CDN加速:如果回显OBS桶域名,则表示CNAME配置已经生效。
- 使用CDN加速:如果回显CDN分配的CNAME域名,则表示CNAME配置已经生效,如下图所示。
图9 使用CDN加速
CDN加速非实时生效,配置域名后请刷新域名管理列表查看状态。只有当CNAME域名状态为“已开启”时,才表示CDN加速生效。
后续操作
CDN加速功能将存储在OBS中的数据缓存到终端用户附近的CDN节点上,让身处各地的终端用户都可以快速访问存储在OBS中的数据。当用户需要更新OBS中存储的数据时,CDN中缓存的过时数据也需要进行更新,可以使用CDN自动刷新功能来自动通知CDN去更新数据。具体操作请参见为桶的CDN加速域名配置自动刷新策略。