更新时间:2024-12-28 gmt 08:00

创建桶-九游平台

功能介绍

创建桶是指按照用户指定的桶名创建一个新桶的操作。

  • 默认情况下,一个用户可以拥有的桶的数量不能超过100个。
  • 用户删除桶后,需要等待30分钟才能创建同名桶和并行文件系统。
  • obs支持在创建桶时指定桶的az类型,您可以开启或关闭多az。关闭多az时,桶内数据默认存储在单个az内;开启多az时,桶内数据冗余存储在多个az内,可靠性更高。旧桶az类型默认为单az。
  • obs支持在创建桶时打开桶级worm开关,打开后可以为桶内的对象设置worm,详见配置桶级默认worm策略。在打开worm开关的时候会默认为桶开启多版本,且多版本状态无法关闭;您无法为一个桶同时开启worm开关和并行文件系统。

新创建桶的桶名在obs中必须是唯一的。如果是同一个用户重复创建同一区域的同名桶时返回成功。除此以外的其他场景重复创建同名桶返回桶已存在。用户可以在请求消息头中加入x-obs-acl等参数,设置要创建桶的权限控制策略。

存储类型

允许用户创建不同默认存储类型的桶。发送创桶请求时携带头域“x-obs-storage-class”来指定桶的默认存储类型。桶内对象的存储类型与桶默认存储类型保持一致。存储类型有4种:standard(标准存储)、warm(低频访问存储)、cold(归档存储)、deep_archive(深度归档存储)。如果没有携带此头域 ,则创建的桶为标准存储类型。

当往桶内上传对象时,如果没有指定对象的存储类别(参考put上传),则该对象的存储类型取桶的默认存储类型。

  • obs标准存储拥有低访问时延和较高的吞吐量,因而适用于有大量热点文件需要频繁访问数据的业务场景,例如:大数据、移动应用、热点视频、社交图片等场景。
  • obs低频访问存储适用于不频繁访问(少于每月一次访问)但在需要时也要求快速访问数据的业务场景,例如:文件同步/共享、企业备份等场景。与标准存储相比,低频访问存储有相同的数据持久性、吞吐量以及访问时延,且成本较低,但是可用性略低于标准存储。
  • obs归档存储适用于很少访问(平均一年访问一次)数据的业务场景,例如:数据归档、长期备份等场景。归档存储安全、持久且成本极低,可以用来替代磁带库。为了保持成本低廉,数据恢复时间可能长达数分钟到数小时不等。
  • 深度归档存储(受限公测)适用于长期不访问(平均几年访问一次)数据的业务场景,其成本相比归档存储更低,但相应的数据恢复时间将更长,一般为数小时。

请求消息样式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
put/http/1.1
host:bucketname.obs.cn-north-4.myhuaweicloud.com
content-length:length
date:date
authorization:authorization
x-obs-az-redundancy:3az
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
location

请求消息参数

该请求消息中不带请求参数。

请求消息头

该操作消息头与普通请求一样,请参见表3,但可以带附加消息头,附加请求消息头如下所示。

表1 附加请求消息头

消息头名称

消息头类型

是否必选

描述

x-obs-acl

string

参数解释:

创建桶时,可以加上此消息头设置桶的权限控制策略,使用的策略为预定义的acl策略。

取值范围:

  • private:桶或对象的所有者拥有完全控制的权限,其他任何人都没有访问权限。
  • public-read:设置在桶上时,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据。
  • public-read-write:设在桶上,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据、上传对象、删除对象、初始化段任务、上传段、合并段、拷贝段、取消多段上传任务。
  • public-read-delivered:设在桶上,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据,可以获取该桶内对象的内容和元数据。
  • public-read-write-delivered:设在桶上,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据、上传对象、删除对象、初始化段任务、上传段、合并段、拷贝段、取消多段上传任务,可以获取该桶内对象的内容和元数据。
  • bucket-owner-full-control:设在对象上,桶和对象的所有者拥有对象的完全控制权限,其他任何人都没有访问权限。

    默认情况下,上传对象至其他用户的桶中,桶拥有者没有对象的控制权限。对象拥有者为桶拥有者添加此权限控制策略后,桶所有者可以完全控制对象。

    例如,用户a上传对象x至用户b的桶中,系统默认用户b没有对象x的控制权。当用户a为对象x设置bucket-owner-full-control策略后,用户b就拥有了对象x的控制权。

默认取值:

private

x-obs-storage-class

string

参数解释:

创建桶时,可以加上此消息头设置桶的默认存储类型。

取值范围:

  • standard(标准存储)
  • warm(低频访问存储)
  • cold(归档存储)
  • deep_archive(深度归档存储)

默认取值:

standard

x-obs-grant-read

string

参数解释:

授权read权限给指定domain下的所有用户。允许列举桶内对象、列举桶中多段任务、列举桶中多版本对象、获取桶元数据。

示例:x-obs-grant-read:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-write

string

参数解释:

授权write权限给指定domain下的所有用户,允许创建、删除、覆盖桶内所有对象,允许初始化段、上传段、拷贝段、合并段、取消多段上传任务。

示例:x-obs-grant-write:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-read-acp

string

参数解释:

授权read_acp权限给指定domain下的所有用户,允许读桶的acl信息。

示例:x-obs-grant-read-acp:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-write-acp

字符串

参数解释:

授权write_acp权限给指定domain下的所有用户,允许修改桶的acl信息。

示例:x-obs-grant-write-acp:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-full-control

字符串

参数解释:

授权full_control权限给指定domain下的所有用户。

示例:x-obs-grant-full-control:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-read-delivered

string

参数解释:

授权read权限给指定domain下的所有用户,并且在默认情况下,该read权限将传递给桶内所有对象。

示例:x-obs-grant-read-delivered:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-grant-full-control-delivered

string

参数解释:

授权full_control权限给指定domain下的所有用户,并且在默认情况下,该full_control权限将传递给桶内所有对象。

示例:x-obs-grant-full-control-delivered:id=租户id

约束限制:

取值范围:

id=租户id,获取方式请参考获取账号、iam用户、项目、用户组、区域、委托的名称和id

默认取值:

x-obs-az-redundancy

string

参数解释:

创建桶时带上此消息头设置桶的数据冗余策略。

约束限制:

用户携带该头域指定新创的桶的数据冗余策略,存在一种情况是当该区域如果不支持多az存储,则该桶的存储类型仍为单az。

取值范围:

  • 3az:多az

默认取值:

不指定头域,默认为单az。

x-obs-fs-file-interface

string

参数解释:

创建桶时可以带上此消息头以创建并行文件系统。

示例:x-obs-fs-file-interface:enabled

取值范围:

enabled

默认取值:

指定头域时必须为enabled,无默认取值。

x-obs-epid

string

参数解释:

企业项目id。开通企业项目的用户可以从企业项目服务获取,格式为uuid,默认项目传“0”或者不带该头域,未开通企业项目的用户可以不带该头域。

示例:x-obs-epid:9892d768-2d13-450f-aac7-ed0e44c2585f

约束限制:

取值范围:

填写正确的企业项目id或者为id为0。

默认取值:

0

x-obs-bucket-type

string

参数解释:

创建桶时可以带上此消息头指定创建的桶类型,桶类型包括obs桶和文件桶。

示例:x-obs-bucket-type:object

约束限制:

取值范围:

  • object:对象存储桶。
  • posix:并行文件系统。

默认取值:

指定头域时必须手动指定取值,无默认取值。不指定头域时,默认为object。

x-obs-bucket-object-lock-enabled

string

参数解释:

创建桶时可以带上此消息头来开启worm开关。

示例:x-obs-bucket-object-lock-enabled:true

约束限制:

只支持对象桶。

取值范围:

true:开启worm开关

默认取值:

指定头域时必须为true,无默认取值。不指定头域时,不开启worm。

x-obs-server-side-encryption

string

参数解释:

创建桶时可以带上此头域来指定桶加密配置的加密模式。

示例:x-obs-server-side-encryption: kms

约束限制:

取值范围:

  • kms
  • obs

默认取值:

指定头域时必须指定对应的值,无默认值。不指定头域时不开启桶加密。

x-obs-server-side-data-encryption

string

参数解释:

创建桶时带上此头域来指定服务端加密配置的加密算法。

示例:x-obs-server-side-data-encryption: aes256

约束限制:

取值范围:

  • aes256
  • sm4

当携带了x-obs-server-side-encryption:kms,该头域可选 aes256、sm4;

当携带了x-obs-server-side-encryption:obs,该头域可选 aes256。

默认取值:

x-obs-server-side-encryption-kms-key-id

string

如果携带了x-obs-server-side-encryption: kms,该头域可选。

参数描述:

当加密方式为sse-kms且使用指定密钥加密时,需输入密钥id。密钥id获取方法请参见查看密钥

类型:string

约束限制:

当您设置了x-obs-server-side-encryption头域且赋值为“kms”,即选择kms加密方式时,才能使用该头域指定加密密钥。

默认取值:

当您选择使用kms加密方式,但未设置此头域时,默认的主密钥将会被使用。如果默认主密钥不存在,系统将默认创建并使用。

x-obs-sse-kms-key-project-id

string

如果未携带x-obs-server-side-encryption-kms-key-id,则不能携带该头域。

参数解释:

sse-kms加密方式下kms主密钥所属的项目id(非企业项目id)。

约束限制:

取值范围:

与x-obs-server-side-encryption-kms-key-id指定的kmsmasterkeyid相匹配的项目id(非企业项目id)。

默认取值:

请求消息元素

该操作可以带附加请求消息元素,附加请求消息元素的具体描述如表2所示。

表2 附加请求消息元素

元素名称

元素类型

是否必选

描述

location

string

参数解释:

指定bucket在哪个区域被创建。

  • 使用华北-北京一的终端节点创桶时
    • 不携带location,桶将默认创建在华北-北京一(cn-north-1)
    • 在location中指定其它区域,例如华北-北京四(cn-north-4),桶将创建在指定区域
  • 使用华北-北京一以外其它区域的终端节点创桶时,必须携带location,并且location只能指定为该终端节点对应的区域。

    例如使用obs.cn-north-4.myhuaweicloud.com终端节点创桶时,必须指定location为cn-north-4。

约束限制:

该参数定义了桶将会被创建在哪个区域,如果使用的终端节点是obs.myhuaweicloud.com,可以不携带此参数;如果使用的终端节点不是obs.myhuaweicloud.com,则必须携带此参数。

取值范围:

有关obs区域和终端节点的更多信息,请参考。

默认取值:

终端节点为obs.myhuaweicloud.com且用户未设定区域时,默认为华北-北京一(cn-north-1)。

响应消息样式

1
2
3
4
http/1.1status_code
location:location
date:date
content-length:length

响应消息头

该请求的响应消息使用公共消息头,具体请参考表1

响应消息元素

该请求的响应中不带有响应元素。

错误响应消息

无特殊错误,所有错误已经包含在表2中。

请求示例:创建桶

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
put/http/1.1
user-agent:curl/7.29.0
host:examplebucket.obs.cn-north-4.myhuaweicloud.com
accept:*/*
date:wed,01jul201502:25:05gmt
authorization:obsh4ipjx0tqththebqqcec:75/y4ng1izvzc1ntgxpmxte6ynw=
content-length:157
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
cn-north-4

响应示例:创建桶

1
2
3
4
5
6
7
http/1.1200ok
server:obs
x-obs-request-id:bf260000016435ce298386946ae4c482
location:/examplebucket
x-obs-id-2:32aaaqaaeaabsaagaaeaabaaaqaaeaabct9w2tcvlmmj plfdopad62s0npbaruz
date:wed,01jul201502:25:06gmt
content-length:0

请求示例:创建指定acl和存储类型的桶

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
put/http/1.1
user-agent:curl/7.29.0
host:examplebucket.obs.cn-north-4.myhuaweicloud.com
accept:*/*
date:wed,01jul201502:25:05gmt
x-obs-acl:public-read
x-obs-storage-class:standard
authorization:obsh4ipjx0tqththebqqcec:75/y4ng1izvzc1ntgxpmxte6ynw=
content-length:157
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
cn-north-4

响应示例:创建指定acl和存储类型的桶

1
2
3
4
5
6
7
http/1.1200ok
server:obs
x-obs-request-id:bf260000016435ce298386946ae4c482
location:/examplebucket
x-obs-id-2:32aaaqaaeaabsaagaaeaabaaaqaaeaabct9w2tcvlmmj plfdopad62s0npbaruz
date:wed,01jul201502:25:06gmt
content-length:0

请求示例:创建桶时选择az

1
2
3
4
5
6
7
8
9
put/http/1.1
host:examplebucket.obs.cn-north-4.myhuaweicloud.com
content-length:length
date:date
authorization:authorization
x-obs-az-redundancy:3az
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
cn-north-4

响应示例:创建桶时选择az

1
2
3
4
5
6
7
http/1.1200ok
server:obs
x-obs-request-id:bf260000016435ce298386946ae4c482
location:/examplebucket
x-obs-id-2:32aaaqaaeaabsaagaaeaabaaaqaaeaabct9w2tcvlmmj plfdopad62s0npbaruz
date:wed,01jul201502:25:06gmt
content-length:0

请求示例:创建并行文件系统

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
put/http/1.1
user-agent:curl/7.29.0
host:examplebucket.obs.cn-north-4.myhuaweicloud.com
accept:*/*
date:wed,01jul201502:25:05gmt
authorization:obsh4ipjx0tqththebqqcec:75/y4ng1izvzc1ntgxpmxte6ynw=
content-length:157
x-obs-fs-file-interface:enabled
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
cn-north-4

响应示例:创建并行文件系统

1
2
3
4
5
6
7
http/1.1200ok
server:obs
x-obs-request-id:bf260000016435ce298386946ae4c482
location:/examplebucket
x-obs-id-2:32aaaqaaeaabsaagaaeaabaaaqaaeaabct9w2tcvlmmj plfdopad62s0npbaruz
date:wed,01jul201502:25:06gmt
content-length:0

请求示例:创建桶时打开worm开关

put / http/1.1
user-agent: curl/7.29.0
host: examplebucket.obs.cn-north-4.myhuaweicloud.com
accept: */*
date: wed, 01 jul 2015 02:25:05 gmt
authorization: obs h4ipjx0tqththebqqcec:75/y4ng1izvzc1ntgxpmxte6ynw=
x-obs-bucket-object-lock-enabled:true
content-length: 0

响应示例:创建桶时打开worm开关

http/1.1 200 ok
server: obs
x-obs-request-id: 00000184c11ac7a6809f881341842c02
x-reserved-indicator: unauthorized
location: /examplebucket
x-obs-id-2: 32aaaqaaeaabsaagaaeaabaaaqaaeaabct9w2tcvlmmj plfdopad62s0npbaruz
date: wed, 01 jul 2015 02:25:06 gmt
content-length: 0

请求示例:创建桶并显式配置访问权限

put / http/1.1
authorization: obs h4ipjx0tqththebqqcec:iqspeubl66pwxdapxjrkk6hlcn4=
x-obs-grant-read: id=783fc6vz2cf2442c096evxxxxxxxxxxxx
x-obs-grant-write: id=3u3fc6vz2cf24mc830fhsxxxxxxxxxxxx
x-obs-grant-read-acp: id=902su2vz2cf2vire.239caxxxxxxxxxxxx
user-agent: curl/7.29.0
host: examplebucket.obs.region.myhuaweicloud.com
date: wed, 01 jul 2015 02:37:22 gmt
content-type: application/xml
 

    region

响应示例:创建桶并显式配置访问权限

x-obs-id-2: 32aaaqaaeaabaaaqaaeaabaaaqaaeaabcteau73dlkth4wpyzozf5w3kacolerp4
x-obs-request-id: 0000018a2a22b72447cf01a99f32e2b0
server: obs
content-length: 0
date: wed, 01 jul 2015 02:37:22 gmt
location: /examplebucket

相关文档

网站地图