全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

镜像回源

最近更新时间:2023-05-12 15:58:34

使用场景

KS3提供同步镜像回源功能,用于数据无缝迁移到KS3的场景,在迁移数据的同时,同时保证业务的正常进行。

当用户向KS3请求的文件不存在时,KS3会向回源地址请求这个文件,返回给用户。镜像回源有两种请求方式,完整文件的请求和部分文件的请求(Range请求)。

  • 对于完整文件的请求,KS3会同时请求全部数据返回给用户,并将该文件存入KS3;
  • 对于Range请求,KS3会同时请求部分数据返回给用户,然后异步拉取全部数据存储至KS3。

使用限制

  1. 您最多可以配置20条回源规则,系统将按照规则顺序依次执行。

  2. KS3镜像回源单个文件最大支持50GB。

  3. 该功能目前支持北京、上海地区。

  4. 使用该功能需相应的权限,可联系商务或提交工单申请权限。

特别说明:

  1. 拉取到KS3的数据默认以标准存储类型存储。

  2. 拉取到KS3的文件不支持用KS3提供的设置文件名功能来修改文件名。

  3. 源站拉取完成后,KS3不感知源站的文件变化。

  4. 若用户设置了原图保护,在同步回源时失效。

  5. 若用户设置了文件服务端加密/客户端传输密钥加密,在同步回源时失效。

费用说明:

使用镜像回源功能可能会产生以下费用:

  • 用户向KS3请求资源会产生请求次数费用
  • 从源站拉取的内容写入到KS3会产生存储费用
  • KS3将指定资源返回给客户端会产生外网下行流量费用

有关收费标准的详细信息,请参见对象存储KS3详细价格

镜像方式

同步镜像回源流程

当您的客户向Bucket请求的某个Object不存在时,KS3会向回源地址请求这个Object,并且,为了避免等待整个文件需要较长时间,KS3会向源站流式拉取部分数据 ,源站返回数据后,KS3返回给用户,并且存在对应Bucket中。具体流程如下图所示。

1.完整文件请求流程

红色镜像回源.png

2.部分(range)文件请求流程:
红色部分(range)文件请求流程.png

配置镜像回源

1.登录KS3控制台,点击左侧存储空间,单击目标Bucket名称。

2.空间设置 > 镜像 > 镜像回源

3.单击添加规则,出现如下添加规则弹窗。


4.根据下表参数说明填写规则:
参数 是否必选 说明
回源条件 1、HTTP状态码404(默认项,必选)
2、文件名前缀(可选项):通过请求的文件名前缀触发回源规则,例如:设置文件名前缀”/abc”,则访问带有/abc前缀的文件会触发这个规则(如:http://bucketname.ks3-endpoint.com/abc/image.jpg)
注意:文件名前缀不支持通配符(?*),如果您配置包含,会当作普通字符处理。
每条规则只能添加一个前缀。
回源地址 用户需在此设置回源的源地址信息。
第一列:支持选择HTTP或HTTPS,用户可以根据源站支持的访问类型进行选择。
第二列:填写源站域名或IP地址,支持配置端口。
第三列:填写目标文件所在目录信息,多级目录需以正斜线(/)隔开。例如abc/123,代表abc文件路径下的123文件夹,非必填,不填默认根目录。
注意:回源地址不支持KS3自有服务域名,包括:
1,bucektName.endpoint/path .
2.endpoint/bucektName/…
每条规则只能添加一个回源地址。
访问控制 用户可选择将源站资源自动平滑迁移到KS3的Object的权限设置为公开或私密,默认为私密
回源参数 客户可选择是否将对KS3请求中的queryString传递到源站,默认为不透传
3XX跟随策略 默认选中”是”,即跟随源站3XX重定向请求获取到资源,并且将资源保存到KS3上。若用户选择”否”,KS3会透传3XX响应给客户端,而非跟随3XX地址。
3XX包含301和302。
设置HTTP Header传递规则 默认不传递任何HTTP Header到源站,客户可以通过设置HTTP Header传递规则进行自定义透传、过滤或修改。
1.允许传递:用户可以选择“传递所有HTTP Header参数”或自定义“传递指定HTTP Header参数”(最多支持10个配置项)
2.禁止传递:用户可以选择“禁止传递指定HTTP Header参数”并且填写需要过滤的HTTP Header(最多支持10个配置项)
3.修改参数:用户可以选择“设置指定HTTP Header参数”并且填写需要修改的HTTP Header(最多支持10个配置项)

HTTP Header传递规则设置举例:

  • 允许:传递指定HTTP header参数:reponse-content-type
  • 禁止:禁止传递指定HTTP header参数:If-Modified-Since
  • 设置:设置指定HTTP header参数:c-header:111

根据以上配置,若您发送到KS3的请求(HTTP Header的部分)如下:

GET /object
host : bucketname. ks3-cn-beijing.ksyuncs.com
response-content-type :String
If-Modified-Since : Fri, 26 Dec 2014 06:48:46 GMT
c-header : ccc

则触发镜像回源后,KS3发给源站的请求如下:

GET /object
host : source.com
response-content-type :String
c-header : 111 

注意:

  • 规则优先级:设置>禁止>允许。
    例如:Header x-age,用户同时配置规则允许x-age,禁止x-age,且设置了header:x-age 值为1,则传递源站为x-age值为1的header。

  • 以下HTTP header类型不支持设置HTTP header传递规则:

以下前缀开头的header:

  • x-kss-
  • x-ks3-

所有标准HTTP header,例如:

  • content-length
  • authorization2
  • authorization
  • range
  • date

5.单击确定,完成规则的添加。

编辑镜像回源规则

1.登录KS3控制台,单击左侧存储空间 > 单击目标Bucket名称。

2.空间设置 > 镜像 > 镜像回源

3.找到需要编辑的镜像回源规则,单击右侧的编辑

4.出现弹窗,进行编辑。

删除镜像回源规则

1.登录KS3控制台,单击左侧存储空间 > 单击目标Bucket名称。

2.空间设置 > 镜像 > 镜像回源

3.找到需要编辑的镜像回源规则,单击右侧的删除

4.出现弹窗,单击确定

调整回源规则顺序

用户可以对镜像回源规则的顺序进行上移/下移操作,KS3将按照用户配置的规则展示顺序匹配规则的优先级。正常情况下,匹配到规则一,则不再匹配规则二,但是,若遇到规则一中源站不可以用时,KS3会按照第二条规则作为备源重新请求,因为规则最多配置20条,所以,我们最多有19个备站。

1.登录KS3控制台,单击左侧存储空间 > 单击目标Bucket名称。

2.空间设置 > 镜像 > 镜像回源

3.找到需要编辑的镜像回源规则,单击右侧的上移/下移更多 > 上移/下移

细节说明

1.同步回源规则触发条件

当客户端Get Object请求的文件不存在时,且用户配置了该文件的同步镜像回源规则,并且该文件满足规则时,触发同步镜像回源。

2.请求失败返回规则

  • 如果镜像源也不存在此文件,即镜像源返回给KS3的HTTP状态码为404,那么KS3也将返回404给用户。
  • 如果镜像源返回给KS3的HTTP status为其他非200的状态码(包括因为网络原因等获取不到文件的错误情况),KS3将返回424给用户,错误码为MirrorFailed。
  • 如果源站返回3xx(3XX包含302与301),根据用户的回源规则配置,决定是否follow源站3xx重定向请求获取到资源。

3.同步回源文件更新规则

如果文件通过镜像回源,存储到了KS3中,之后源站里该文件发生了变化,KS3不会更新已存在于KS3上的该文件。

4.同步回源文件元信息

Content-Type
Content-Disposition 
Cache-Control 
Expires

5.HTTP请求规则

传给KS3的Header信息不会传递给源站,QueryString信息是否会传递给源站取决于控制台回源规则中的配置。

如果源站是chunked编码返回,那么KS3首次回源时返回给用户的也是chunked编码。

多条规则匹配情况举例:

当客户存在多条规则且回源条件相同与部分重叠时:

规则一:回源条件全部文件404时回test.com

规则二:回源条件全部文件404时回141.0.0.12

规则三:回源条件文件名前缀为333的文件404时回back.com

KS3的处理说明:

1.请求优先匹配到规则一,同时test.com可以正常拉取数据,则不再匹配规则二。

2.请求优先匹配到规则一,但是KS3回源服务前往 test.com时,该源站不可用,则KS3再去前往规则二配置的141.0.0.12站点。

3.若规则二配置的141.0.0.12也恰巧不可用时,如果文件名符合前缀为333,则KS3继续前往规则三配置back.com;如果文件名前缀不是333,则KS3给用户返回404。

操作方式

API操作方式:

操作方式 参考文档
API
文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈