对象存储BOS

    PutBucketReplication

    接口描述

    本接口用来创建数据同步。每个id唯一确定一条replication规则,对一个id首次put会认为是创建一条replication规则,对同一个id的再次put认为是覆盖,如果原先status是enable,则不允许覆盖成disable;如果原先是enable,再次put成enable,replication会重新开始执行;不允许两个replication规则除了id一致以外其他项均一致。

    说明:

    • 用户必须是源Bucket的owner且拥有FULL_CONTROL权限,且有目标Bucket的写权限。
    • 目标Bucket和源Bucket必须存在。
    • 目标Bucket和源Bucket可以是同region下的Bucket,也可以是不同Region下的Bucket。
    • 目标Bucket和源Bucket可以是同账户下的bucket,也可以是不同账户下的bucket,但是源账户需要有目的bucket的写权限
    • 整个配置的大小不能超过128k,当前bucket下所有规则长度不得超过200KB
    • 数据同步暂时不支持归档类型文件的同步,进行数据同步时会忽略归档类型文件。
    • 用户最多配置10条replication规则
    • 单个规则,最多20个resource
    • id 由数字字母 - _ 组成,不得超过20个字符

    请求(Request)

    • 请求语法

      PUT /?replication&id=sample-bucket HTTP/1.1
      Host: <BucketName>.bj.bcebos.com
      x-bce-date: date
      Content-Length: request-body length
      Content-Type: application/json; charset=utf-8
      Authorization:<AuthorizationString>
      
      {
         "status": "enabled",
         "resource": [
             "src-bucket-name/abc",
             "src-bucket-name/cd*"
         ],
         "destination": {
             "bucket": "dst-bucket-name",
             "storageClass": "COLD"
         },
         "replicateHistory": {
             "storageClass": "COLD"
         },
         "replicateDeletes": "enabled",
         "id": "sample-bucket"
      }
    • 请求头域

      无特殊参数

    • 请求参数

      参数 是否必须 描述
      id replication规则名,id 由数字字母 - _ 组成,不得超过20个字符
      status 是否生效
      resource replication生效前缀,resource的配置形式为{$bucket_name/<生效的对象前缀>},必须要以$bucket_name+/开头
      destination 复制的目的端配置
      +bucket 目的Bucket name
      +storageClass 目的Object的存储类型。如果保持和源Bucket的存储类型一致,则该参数不需要配置;如果需要单独指定存储类型可以为STANDARDSTANDARD_IACOLD
      replicateHistory 历史文件复制,有该项则认为是开启。开启历史文件复制后,存量的全部Object都同步复制到目的Bucket,复制范围共用resource。
      +storageClass 目的Object的存储类型。如果保持和源Bucket的存储类型一致,则该参数不需要配置;如果需要单独指定存储类型可以为STANDARDSTANDARD_IACOLD
      replicateDeletes 是否开启删除同步,可以为enabled,disabled

    响应(Response)

    • 响应元素

      无特殊参数

    • 响应头域

      无特殊参数

    示例

    • 请求示例

        PUT /?replication&id=sample-bucket HTTP/1.1
        Host: BucketName.bj.bcebos.com
        x-bce-date: date
        Content-Length: xxx
        Content-Type: application/json; charset=utf-8
        Authorization: AuthorizationString
        
          {
              "status": "enabled",
              "resource": [
                  "src-bucket-name/abc",
                  "src-bucket-name/cd*"
              ],
              "destination": {
                  "bucket": "dst-bucket-name",
                  "storageClass": "COLD"
              },
              "replicateHistory": {
                  "storageClass": "COLD"
              },
              "replicateDeletes": "enabled",
              "id": "sample-bucket-replication-config"
          }
    • 响应示例

        HTTP/1.1 200 OK
        x-bce-request-id: xxxx-xxxx-xxxx
        Date: Wed, 12 May 2017 17:50:00 GMT
        Content-Length: 0
        Connection: keep-alive
        Server: BceBos
    上一篇
    回收站
    下一篇
    GetBucketReplication