绑定后端存储
功能介绍
为SFS Turbo 文件系统绑定后端存储
接口约束
- 
    
该接口仅适用于SFS Turbo 20MB/s/TiB、40MB/s/TiB、125MB/s/TiB、250MB/s/TiB、500MB/s/TiB、1000MB/s/TiB文件系统。
 - 
    
请求体参数file_system_path必须是文件系统根目录下不存在的目录名。
 - 
    
绑定OBS桶作为后端存储时,仅支持OBS存储桶,不支持OBS并行文件系统。
 - 
    
创建 OBS后端存储库,依赖的服务是对象存储服务 OBS。用户需要额外配置OBS Adminstrator权限。
 - 
    
该接口仅适用于NFS文件系统共享协议。
 
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桶。  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        events  | 
      
        否  | 
      
        Array of strings  | 
      
        后端存储自动导出到OBS桶的数据更新类型。 
 枚举值: 
  | 
     
| 
        prefix  | 
      
        否  | 
      
        String  | 
      
        后端存储内对象匹配前缀  | 
     
| 
        suffix  | 
      
        否  | 
      
        String  | 
      
        后端存储内对象匹配后缀  | 
     
| 
        参数  | 
      
        是否必选  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|---|
| 
        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桶。  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        events  | 
      
        Array of strings  | 
      
        后端存储自动导出到OBS桶的数据更新类型。 
 枚举值: 
  | 
     
| 
        prefix  | 
      
        String  | 
      
        后端存储内对象匹配前缀  | 
     
| 
        suffix  | 
      
        String  | 
      
        后端存储内对象匹配后缀  | 
     
| 
        参数  | 
      
        参数类型  | 
      
        描述  | 
     
|---|---|---|
| 
        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  | 
      
        错误响应  | 
     
错误码
请参见错误码。