文档首页/ 魔坊(ModelArts)模型训推平台/ API参考/ 动态挂载/ 动态挂载Notebook存储 - AttachDynamicStorage
更新时间:2026-05-19 GMT+08:00
分享

动态挂载Notebook存储 - AttachDynamicStorage

功能介绍

动态挂载Notebook存储接口支持将存储动态挂载到运行中的Notebook实例的指定文件目录。调用该接口后,系统将在Notebook实例中异步挂载指定的存储实例,挂载完成后用户可在容器中以文件系统方式读写存储实例中的文件。若用户无权限访问指定实例或Notebook实例未运行,接口将返回相应的错误信息。

支持的存储类型:

  • 对象存储 OBS:适合直接使用OBS桶作为持久化存储进行AI开发和探索场景,但小文件频繁读写性能较差,模型训练,大文件解压等场景慎用,此类场景可能会导致Notebook文件操作卡顿

  • 并行文件系统 PFS:高性能对象存储文件系统,存储成本低,吞吐量大,能够快速处理高性能计算(HPC)工作负载,但小文件频繁读写较弱。小文件频繁读写场景可能会导致Notebook文件操作卡顿

  • 高性能弹性文件服务SFS Turbo:仅支持专属资源池实例挂载,挂载前需要在资源池网络管理界面中进行网络关联,支持多个环境使用,可以在多个开发环境、开发环境和训练之间共享。适合探索、实验等非正式生产场景,但不适合重IO读写模型。

接口约束

暂无约束。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。

  • 如果使用角色与策略授权,具体权限要求请参见权限和授权项
  • 如果使用身份策略授权,当前API调用无需身份策略权限。

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和名称

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

category

String

参数解释:动态挂载存储类型。

约束限制:不涉及。

取值范围:枚举类型,取值如下:

  • OBS:对象存储服务

  • OBSFS:并行文件系统PFS

  • EFS:高性能弹性文件服务SFS Turbo

默认取值:无。

mount_path

String

参数解释:在Notebook实例中挂载的路径。

约束限制:必须是/data目录的子目录。

取值范围:限制长度为256个字符,必须在Notebook的/data/的子目录下。

默认取值:无。

uri

String

参数解释:存储路径,示例:obs://modelarts/notebook/ 或 da669f6e-5591-4c10-b2a7-18d053a75677.sfsturbo.internal:/notebook。

约束限制:并行文件系统PFS 或 高性能弹性文件服务SFS Turbo中合法的挂载路径。

取值范围:限制长度为256个字符。

默认取值:不涉及。

efs_id

String

参数解释:高性能弹性文件服务SFS Turbo实例id。

约束限制:若category字段为EFS,则此字段必填。

取值范围:合法UUID类型。

默认取值:无

响应参数

状态码:200

表3 响应Body参数

参数

参数类型

描述

category

String

参数解释:存储类型。可选值为OBS/OBSFS/EFS。

取值范围:不涉及。

id

String

参数解释:动态挂载实例ID。

取值范围:不涉及。

mount_path

String

参数解释:在Notebook实例中挂载的路径。

取值范围:不涉及。

status

String

参数解释:动态挂载状态。

取值范围:枚举类型,取值如下:

  • MOUNTING:挂载中

  • MOUNT_FAILED:挂载失败

  • MOUNTED:已挂载

  • UNMOUNTING:卸载中

  • UNMOUNT_FAILED:卸载失败

  • UNMOUNTED:卸载完成

uri

String

参数解释:存储路径。

取值范围:不涉及。

failure_reason

String

参数解释:挂载失败原因,动态挂载状态为MOUNT_FAILED时返回。

取值范围:不涉及。

efs_id

String

参数解释:EFS存储实例ID。

取值范围:不涉及。

mount_type

String

参数解释:存储挂载类型。

取值范围:枚举类型,取值如下:

  • STATIC:不支持在实例运行期间挂载以及卸载的存储

  • DYNAMIC:支持在实例运行期间挂载以及卸载的存储

状态码:201

Created。

请求示例

  • 动态挂载并行文件系统PFS。将并行文件系统PFS “pfs-name”中的“/dir/to/mount/”目录挂载到实例中指定的文件目录“/data/mnt/pfs/”。

    POST /v1/{project_id}/notebooks/{instance_id}/storage
    
    {
      "category" : "OBSFS",
      "mount_path" : "/data/mnt/pfs/",
      "uri" : "obs://pfs-name/dir/to/mount/"
    }
  • 动态挂载高性能弹性文件服务SFS Turbo。将高性能弹性文件服务SFS Turbo实例“efa18c35-72f1-48a3-b2f7-7615da361f1a”中的“/dir/to/mount/”目录挂载到实例中指定的文件目录“/data/mnt/efs/”。

    POST /v1/{project_id}/notebooks/{instance_id}/storage
    
    {
      "category" : "EFS",
      "mount_path" : "/data/mnt/efs/",
      "uri" : "efa18c35-72f1-48a3-b2f7-7615da361f1a.sfsturbo.internal:/dir/to/mount/",
      "efs_id" : "efa18c35-72f1-48a3-b2f7-7615da361f1a"
    }

响应示例

状态码:200

OK。

{
  "id" : "91dd2d3f-2d92-475f-a375-04636af26cc9",
  "category" : "OBSFS",
  "mount_path" : "/data/mnt/pfs/",
  "uri" : "obs://pfs-name/dir/to/mount/",
  "status" : "MOUNTING"
}

状态码

状态码

描述

200

OK。

201

Created。

401

Unauthorized。

403

Forbidden。

404

Not Found。

错误码

请参见错误码

相关文档