更新时间:2024-08-21 GMT+08:00
分享

绑定后端存储

功能介绍

为SFS Turbo 文件系统绑定后端存储

接口约束

该接口仅适用于SFS Turbo 20MB/s/TiB、40MB/s/TiB、125MB/s/TiB、250MB/s/TiB、500MB/s/TiB、1000MB/s/TiB、HPC缓存型文件系统。请求体参数file_system_path必须是文件系统根目录下不存在的目录名。

调用方法

请参见如何调用API

URI

POST /v1/{project_id}/sfs-turbo/shares/{share_id}/targets

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目id

share_id

String

文件系统id

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

账号的token

Content-Type

String

MIME类型

表3 请求Body参数

参数

是否必选

参数类型

描述

file_system_path

String

联动目录名称,SFS Turbo会在文件系统根目录下以该名称创建一个子目录,该目录用于绑定后端存储。

必须是文件系统根目录下不存在的目录名,长度不能超过255个字符,子目录名称不能是“.”或“..”。

不支持多层目录,不能包含字符'/'。

obs

ObsDataRepository object

OBS类型后端存储

表4 ObsDataRepository

参数

是否必选

参数类型

描述

bucket

String

OBS桶名称

endpoint

String

OBS桶所在的区域域名

attributes

ObsTargetAttributes object

OBS桶属性

表5 ObsTargetAttributes

参数

是否必选

参数类型

描述

file_mode

Integer

导入的对象权限。取值范围是0到777。

第一位表示目录所有者的权限,第二位表示目录所属用户组的权限,第三位表示其他用户的权限。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。

例如:755中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位5代表其他用户对该目录具有读、执行权限。

dir_mode

Integer

导入的目录权限。取值范围是0到777。

第一位表示目录所有者的权限,第二位表示目录所属用户组的权限,第三位表示其他用户的权限。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。

例如:755中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位5代表其他用户对该目录具有读、执行权限。

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

表6 响应Header参数

参数

参数类型

描述

X-request-id

String

请求ID

表7 响应Body参数

参数

参数类型

描述

target_id

String

绑定关系id

creation_time

String

绑定关系创建时间

failure_details

FailureDetailsMessage object

绑定错误信息

file_system_path

String

联动目录名称

lifecycle

String

绑定状态。

如果返回状态为CREATING,您需要通过获取后端存储详细信息接口去轮询绑定完成状态。

如果返回状态为AVAILABLE,代表绑定后端存储成功。

如果返回状态MISCONFIGURED,代表绑定后端存储失败。DELETING 状态暂不支持。

枚举值:

  • CREATING
  • AVAILABLE
  • MISCONFIGURED
  • DELETING

obs

ObsDataRepository object

OBS类型后端存储

表8 FailureDetailsMessage

参数

参数类型

描述

message

String

错误信息

表9 ObsDataRepository

参数

参数类型

描述

bucket

String

OBS桶名称

endpoint

String

OBS桶所在的区域域名

attributes

ObsTargetAttributes object

OBS桶属性

表10 ObsTargetAttributes

参数

参数类型

描述

file_mode

Integer

导入的对象权限。取值范围是0到777。

第一位表示目录所有者的权限,第二位表示目录所属用户组的权限,第三位表示其他用户的权限。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。

例如:755中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位5代表其他用户对该目录具有读、执行权限。

dir_mode

Integer

导入的目录权限。取值范围是0到777。

第一位表示目录所有者的权限,第二位表示目录所属用户组的权限,第三位表示其他用户的权限。目录所有者由uid指定,目录所属用户组由gid指定,不是目录所有者且不在目录所属用户组的用户为其他用户。

例如:755中第一位7代表该目录所有者对该目录具有读、写、执行权限;第二位5代表该目录所属用户组对该目录具有读、执行权限;第三位5代表其他用户对该目录具有读、执行权限。

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

表11 响应Body参数

参数

参数类型

描述

errCode

String

错误码

最小长度:8

最大长度:36

errMsg

String

错误描述

最小长度:2

最大长度:512

状态码: 500

表12 响应Body参数

参数

参数类型

描述

errCode

String

错误码

最小长度:8

最大长度:36

errMsg

String

错误描述

最小长度:2

最大长度:512

请求示例

{
  "file_system_path" : "sfsturboDirName",
  "obs" : {
    "bucket" : "myBucket",
    "endpoint" : "obs.cn-north-7.ulanqab.example.com"
  }
}

响应示例

状态码: 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.cn-north-7.ulanqab.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

错误响应

错误码

请参见错误码

相关文档