使用场景
CDN加速功能将存储在OBS中的数据缓存到终端用户附近的CDN节点上,让身处各地的终端用户都可以快速访问存储在OBS中的数据。当用户需要更新OBS中存储的数据时,CDN中缓存的过时数据也需要进行更新,可以使用CDN自动刷新功能来自动通知CDN去更新数据。因此,通过配置自动刷新策略,可以保证CDN节点上的缓存数据和源站(OBS)的数据一致。
约束与限制
- 已开启或开启后暂停多版本功能的桶不支持该功能。
- 不支持自动刷新文件夹缓存。
- 不支持跨租户的CDN自动刷新。
- 不支持联邦身份认证的账号的CDN自动刷新。
- 如果配置的CDN域名变成非加速域名(停止加速),5分钟内同一个非加速域名触发消息超过10 次,则取消自动刷新订阅。
- CDN加速域名异常的情况下,会取消自动刷新订阅;加速域名恢复正常后,再次配置正常的自动刷新策略,可重新订阅自动刷新。
- 为桶的CDN加速域名配置自动刷新策略需要拥有Tenant Administrator权限,建议使用IAM服务对用户进行授权,如何授权参见创建IAM用户并授权使用OBS。
前提条件
已在OBS管理控制台配置加速域名(域名已开启加速)。
操作步骤
OBS支持通过管理控制台方式为桶的加速域名配置CDN自动刷新策略,分为以下步骤:
步骤一:创建用于自动刷新CDN缓存的委托
如果要正常使用CDN自动刷新功能,需要使用IAM委托功能创建委托,用于给OBS授予查看加速域名信息权限和刷新缓存权限,以委托OBS处理您的数据。如果您已有合适的委托,可跳过该步骤。
- 登录控制台“统一身份认证服务”页面。
- 在统一身份认证服务的左侧导航栏中,选择“委托”页面,单击右上方的“创建委托”。
图1 创建委托
- 设置用于自动刷新CDN缓存的委托相关的参数,其他参数保持默认。
表1 参数说明
|
参数名称 |
说明 |
|
委托名称 |
创建的委托名称。
委托名称不能为空。 |
|
委托类型 |
选择将账号内资源的操作权限委托给其他账号或云服务。
创建用于自动刷新CDN缓存的委托,此处选择“云服务”。 |
|
云服务 |
选择将账号内资源的操作权限委托给某个云服务。当“委托类型”选择“云服务”时,需配置该参数。
创建用于自动刷新CDN缓存的委托,此处选择“对象存储服务 OBS”。 |
- 单击“完成”,并在“创建成功”弹窗单击“暂不授权”。在委托列表页面可以看到新创建的委托,即表示委托创建成功。
- 创建自定义策略,用来给委托授予CDN相关权限。
- 在IAM控制台左侧导航栏选择“权限管理 > 权限”。
- 在权限页面右上角单击“创建自定义策略”。
- 在创建自定义策略页面,按照如下设置参数内容,其他参数保持默认。
图2 自定义策略设置
- 策略名称:根据需要设置简单易于记忆的名称。
- 云服务:选择“CDN (CDN)”。
- 操作:在“只读”类操作中选择查看加速域名信息权限“cdn:configuration:queryDomains”,在“写”类操作中选择刷新缓存权限“cdn:configuration:refreshCache”。
- 资源:目前仅支持选择“所有资源”。
- 单击“确定”,在权限列表页面可以看到新创建的自定义策略,即表示创建成功。
- 给创建的委托授予CDN相关权限。
- 在IAM控制台左侧导航栏选择“委托”。
- 单击2创建的委托操作列的“授权”。
- 在“选择策略”页面,选择5创建的自定义策略,单击“下一步”。
- 在“设置最小权限范围”页面选择“所有资源”,单击“确定”。
如果要正常使用该功能,授权范围方案仅支持选择“所有资源”,在此处表示,OBS可以根据权限使用账号中所有资源,包括企业项目、区域项目和全局服务资源。
- 在“权限生效时间提醒”弹窗,单击“知道了”。
- 在“完成”页面,单击“完成”。
步骤二:创建刷新策略
配置完加速域名且CNAME域名解析生效后,需要配置CDN自动刷新策略,来自动刷新缓存数据,保证CDN节点上的缓存数据和源站(OBS)的数据一致。
- 登录OBS管理控制台。
- 单击待操作的桶,进入“对象”页面。
- 在左侧导航栏选择“基础配置>域名管理”,进入“域名管理”界面。
- 在域名管理列表,找到需要创建自动刷新缓存的域名卡片,在“自动刷新缓存”的右侧单击“配置”,弹出“自动刷新缓存”弹窗。
图3 自动刷新缓存
- 在“自动刷新缓存”弹窗,配置相关参数。
表2 事件触发器参数说明
|
参数 |
说明 |
|
自动刷新缓存 |
选择是否启用自动刷新缓存。
此处打开开关,表示启用自动刷新缓存。 |
|
事件 |
自动刷新策略生效的事件类型。目前,OBS支持以下事件类型:
|
|
前缀 |
自动刷新策略生效的对象范围(指定前缀的对象),即指定前缀的对象更新后,会触发自动刷新策略执行,保证CDN节点上的该对象和OBS桶中的对象一致。
|
|
后缀 |
自动刷新策略生效的对象范围(指定后缀的对象),即指定后缀的对象更新后,会触发自动刷新策略执行,保证CDN节点上的该对象和OBS桶中的对象一致。
|
|
IAM委托 |
如果要正常使用CDN自动刷新功能,需要使用IAM委托功能创建委托,用于给OBS授予查看加速域名信息权限和刷新缓存权限,以委托OBS处理您的数据。详情请参见步骤一:创建用于自动刷新CDN缓存的委托。 |
如果配置了自动刷新缓存,在CNAME域名状态变为“已开启”后,还需要等待最长约5分钟,自动刷新缓存配置才生效。