绑定后端存储 - CreateBackendTarget
功能介绍
为SFS Turbo 文件系统绑定后端存储
接口约束
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
POST /v1/{project_id}/sfs-turbo/shares/{share_id}/targets
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 项目ID |
| share_id | 是 | String | 文件系统ID |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 账号的token |
| Content-Type | 是 | String | MIME类型 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| file_system_path | 是 | String | 联动目录名称,SFS Turbo会在文件系统根目录下以该名称创建一个子目录,该目录用于绑定后端存储。必须是文件系统根目录下不存在的目录名。限制如下: |
| obs | 是 | ObsDataRepository object | OBS类型后端存储 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| bucket | 是 | String | OBS桶名称 |
| endpoint | 是 | String | OBS桶所在的区域域名 |
| policy | 否 | ObsDataRepositoryPolicy object | 后端存储自动同步策略 |
| attributes | 否 | ObsTargetAttributes object | 后端存储属性。2024年6月30日及之前创建,且未升级的文件系统版本不支持该参数,请提工单处理。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| auto_export_policy | 否 | AutoExportPolicy object | 后端存储自动导出策略。当文件系统发生数据更新时,将自动导出到OBS桶。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| file_mode | 否 | Integer | 导入的文件权限。取值范围是0到777。 第一位表示文件所有者的权限,取值范围是0到7;第二位表示文件所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。文件所有者由uid指定,文件所属用户组由gid指定,不是文件所有者且不在文件所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该文件所有者对该文件具有读、写、执行权限;第二位5代表该文件所属用户组对该文件具有读、执行权限;第三位0代表其他用户对该文件无权限。 |
| dir_mode | 否 | Integer | 导入的目录权限。取值范围是0到777。 第一位表示目录所有者的权限,取值范围是0到7;第二位表示目录所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位0代表其他用户对该文件无权限。 |
| uid | 否 | Integer | 导入对象所有者的用户id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 |
| gid | 否 | Integer | 导入对象所属用户组id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 |
响应参数
状态码:202
| 参数 | 参数类型 | 描述 |
|---|---|---|
| X-request-id | String | 请求ID |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| target_id | String | 绑定关系ID |
| creation_time | String | 绑定关系创建时间 |
| failure_details | FailureDetailsMessage object | 绑定错误信息 |
| file_system_path | String | 联动目录名称 |
| lifecycle | String | 绑定状态。 如果返回状态为CREATING,您需要通过获取后端存储详细信息接口去轮询绑定完成状态。 如果返回状态为AVAILABLE,代表绑定后端存储成功。 如果返回状态MISCONFIGURED,代表绑定后端存储失败。DELETING状态暂不支持。 枚举值: |
| obs | ObsDataRepository object | OBS类型后端存储 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| bucket | String | OBS桶名称 |
| endpoint | String | OBS桶所在的区域域名 |
| policy | ObsDataRepositoryPolicy object | 后端存储自动同步策略 |
| attributes | ObsTargetAttributes object | 后端存储属性。2024年6月30日及之前创建,且未升级的文件系统版本不支持该参数,请提工单处理。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| auto_export_policy | AutoExportPolicy object | 后端存储自动导出策略。当文件系统发生数据更新时,将自动导出到OBS桶。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| file_mode | Integer | 导入的文件权限。取值范围是0到777。 第一位表示文件所有者的权限,取值范围是0到7;第二位表示文件所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。文件所有者由uid指定,文件所属用户组由gid指定,不是文件所有者且不在文件所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该文件所有者对该文件具有读、写、执行权限;第二位5代表该文件所属用户组对该文件具有读、执行权限;第三位0代表其他用户对该文件无权限。 |
| dir_mode | Integer | 导入的目录权限。取值范围是0到777。 第一位表示目录所有者的权限,取值范围是0到7;第二位表示目录所属用户组的权限,取值范围是0到7;第三位表示其他用户的权限,取值范围是0到7。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。 数字4、2、1分别表示读、写、执行权限,这些数字相加,即可得到所需的权限组合。例如:750中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位0代表其他用户对该文件无权限。 |
| uid | Integer | 导入对象所有者的用户id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 |
| gid | Integer | 导入对象所属用户组id,默认值是0,取值范围是0到4,294,967,294(即2^32-2)。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| errCode | String | 错误码 |
| errMsg | String | 错误描述 |
状态码:500
| 参数 | 参数类型 | 描述 |
|---|---|---|
| errCode | String | 错误码 |
| errMsg | String | 错误描述 |
请求示例
-
绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName。
POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com" } } -
绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpointobs.region.example.com,联动目录名称为sfsturboDirName,指定导入的文件在文件系统的权限为750,指定导入的目录在文件系统的权限为640。
POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "attributes" : { "file_mode" : 750, "dir_mode" : 640 } } } -
绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName,指定导入的文件在文件系统的权限为750,指定导入的目录在文件系统的权限为640,指定导入的文件及目录在文件系统的uid为0、gid为0。
POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "attributes" : { "file_mode" : 750, "dir_mode" : 640, "uid" : 0, "gid" : 0 } } } -
绑定后端存储,文件系统ID为"630509b1-ded4-476e-8d06-dbbc3dc23900",待绑定的OBS桶名为myBucket,待绑定的OBS桶endpoint为obs.region.example.com,联动目录名称为sfsturboDirName,指定自动导出策略为"NEW"、"CHANGED"、"DELETED"。
POST HTTPS://{endpoint}/v1/{project_id}/sfs-turbo/shares/630509b1-ded4-476e-8d06-dbbc3dc23900/targets { "file_system_path" : "sfsturboDirName", "obs" : { "bucket" : "myBucket", "endpoint" : "obs.region.example.com", "policy" : { "auto_export_policy" : { "events" : [ "NEW", "CHANGED", "DELETED" ] } } } }
响应示例
状态码:202
任务下发成功
{
"target_id" : "00000334-xxxx-402d-a5d4-bxxxxx87b939",
"creation_time" : "2023-11-19T04:02:03",
"file_system_path" : "sfsturboDirName",
"lifecycle" : "CREATING",
"obs" : {
"bucket" : "myBucket",
"endpoint" : "obs.region.example.com"
}
} 状态码:400
错误响应
{
"errCode" : "SFS.TURBO.0001",
"errMsg" : "request path/body parameters invalid"
} 状态码:500
错误响应
{
"errCode" : "SFS.TURBO.0005",
"errMsg" : "internal server error"
} 状态码
| 状态码 | 描述 |
|---|---|
| 202 | 任务下发成功 |
| 400 | 错误响应 |
| 500 | 错误响应 |
错误码
请参见错误码。