# 动态挂载OBS - AttachObs
#### 功能介绍
动态挂载OBS接口用于将OBS并行文件系统挂载到运行中的Notebook实例的指定文件目录。该接口适用于以下场景：用户需要在Notebook实例中直接操作OBS存储中的文件时，可通过此接口将OBS实例挂载到指定目录，实现文件系统的读写操作。使用该接口的前提条件是用户已登录系统并具有访问目标Notebook实例和OBS实例的权限，同时Notebook实例必须处于运行状态。调用该接口后，系统将在Notebook实例中挂载指定的OBS实例，用户可在容器中以文件系统方式读写OBS中的对象。若用户无权限访问指定实例或Notebook实例未运行，接口将返回相应的错误信息。
#### 接口约束
暂无约束。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=AttachObs)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。获取该接口关联的CLI示例： [hcloud ModelArts AttachObs](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/cli?api=AttachObs)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                             | 访问级别  | 资源类型（\*为必须） | 条件键                   | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | modelarts:notebook:mountStorage | Write | notebook \* | -                     | -  | -      |
  | modelarts:notebook:mountStorage | Write | -           | g:EnterpriseProjectId | -  | -      |
     
  
 
#### URI
POST /v1/{project_id}/notebooks/{instance_id}/storage
表1路径参数 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| instance_id | 是    | String | **参数解释**：Notebook实例ID。ID格式为通用唯一识别码（Universally Unique Identifier，简称UUID），可通过调用查询Notebook实例列表接口获取。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。          |
| project_id  | 是    | String | **参数解释** ：用户项目ID，获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
   
#### 请求参数
表2请求Body参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| category   | 否    | String | **参数解释**：动态挂载存储类型。 **约束限制**：不涉及。 **取值范围**：枚举类型，取值如下： - OBS：对象存储服务    **默认取值**：OBS。 |
| mount_path | 否    | String | **参数解释**：在Notebook实例中挂载的路径。 **约束限制**：不涉及。 **取值范围**：限制长度为256个字符，必须在Notebook的/data/的子目录下。 **默认取值**：/home/ma-user/work/。                                                                                                                                                                                                                                |
| uri        | 否    | String | **参数解释**：OBS对象路径，示例：obs://modelarts/notebook/。 **约束限制**：OBS并行文件系统中合法的对象路径。 **取值范围**：限制长度为256个字符。 **默认取值**：不涉及。                                                                                                                                                                                                                                       |
   
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| category   | String | **参数解释**：存储类型。可选值为OBSFS。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| id         | String | **参数解释**：动态挂载实例ID。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| mount_path | String | **参数解释**：在Notebook实例中挂载的路径。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| status     | String | **参数解释**：动态挂载OBS状态。 **取值范围**：枚举类型，取值如下： - MOUNTING：挂载中   - MOUNT_FAILED：挂载失败   - MOUNTED：已挂载   - UNMOUNTING：卸载中   - UNMOUNT_FAILED：卸载失败   - UNMOUNTED：卸载完成    |
| uri        | String | **参数解释**：OBS对象路径。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   
**状态码：201**
Created。
#### 请求示例
动态挂载OBS。将"OBS并行文件系统"挂载到实例中指定的文件目录"/data/wang/"。
```
{
  "category" : "OBS",
  "mount_path" : "/data/wang/",
  "uri" : "obs://authoring-test/wang/"
}
```
#### 响应示例
**状态码：200**
OK。
```
{
  "id" : "91dd2d3f-2d92-475f-a375-04636af26cc9",
  "category" : "OBSFS",
  "mount_path" : "/data/wang/",
  "uri" : "obs://authoring-test/wang/",
  "status" : "MOUNTING"
}
```
#### 状态码
| 状态码 | 描述            |
|:---|:---|
| 200 | OK。           |
| 201 | Created。      |
| 401 | Unauthorized。 |
| 403 | Forbidden。    |
| 404 | Not Found。    |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
