更新时间:2024-05-30 GMT+08:00

更新Notebook实例

功能介绍

该接口用于更新开发环境实例,包括名称、描述信息、规格、镜像ID,该接口仅可以在Notebook实例停止状态下使用。

接口约束

暂无约束

调试

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

URI

PUT /v1/{project_id}/notebooks/{id}

表1 路径参数

参数

是否必选

参数类型

描述

id

String

Notebook实例ID

project_id

String

用户项目ID,获取方法请参见获取项目ID和名称

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

description

String

支持更新实例描述信息,长度限制为512字符,不可包含特殊字符&<>"'/。

endpoints

Array of EndpointsReq objects

本地IDE(如PyCharm、VS Code)或SSH客户端,通过SSH远程接入Notebook实例时需要的相关配置。

flavor

String

支持变更实例规格,支持变更的规格可以通过本章节的查询支持可切换规格列表的API获取。

image_id

String

支持更新镜像ID,镜像ID参考查询支持的镜像列表获取。

name

String

支持更新实例名称,长度限制为128个字符, 支持大小写字母、数字、中划线和下划线。

storage_new_size

Integer

EVS实例支持动态扩充的容量,单位GB。只允许扩容,不允许缩容,最大允许扩容至4096GB。

hooks

CustomHooks object

支持更新实例启动脚本。

表3 EndpointsReq

参数

是否必选

参数类型

描述

allowed_access_ips

Array of strings

允许远程接入的公网IP地址列表,最多5个。

dev_service

String

支持的服务,枚举值如下:

  • NOTEBOOK:可以通过https协议访问Notebook。

  • SSH:可以通过SSH协议远程连接Notebook。

ssh_keys

Array of strings

SSH密钥对名称,可以在云服务器控制台(ECS)“密钥对”页面创建和查看。

表4 CustomHooks

参数

是否必选

参数类型

描述

container_hooks

ContainerHooks object

容器相关的钩子配置。

表5 ContainerHooks

参数

是否必选

参数类型

描述

post_start

Config object

启动服务后脚本配置。

pre_start

Config object

启动服务前脚本配置。

表6 Config

参数

是否必选

参数类型

描述

script

String

自定义脚本内容(base64编码)或脚本绝对路径。

type

String

脚本类型:

  • COMMAND script中需要指定脚本内容(base64编码)。

  • SCRIPT 默认值,script中需要指定脚本路径。

响应参数

状态码: 200

表7 响应Body参数

参数

参数类型

描述

action_progress

Array of JobProgress objects

实例初始化进度。

description

String

实例描述。

endpoints

Array of EndpointsRes objects

本地IDE(如PyCharm、VS Code)或SSH客户端,通过SSH远程接入Notebook实例时需要的相关配置。

fail_reason

String

实例失败原因。

flavor

String

实例规格。

id

String

实例ID。

image

Image object

实例镜像信息。

lease

Lease object

实例自动停止的倒计时信息。

name

String

实例名称。

pool

Pool object

专属池的基本信息,在专属池中创建的实例会返回该字段。

status

String

实例状态。枚举值如下:

  • INIT:初始化

  • CREATING:创建中

  • STARTING:启动中

  • STOPPING:停止中

  • DELETING:删除中

  • RUNNING:运行中

  • STOPPED:已停止

  • SNAPSHOTTING:快照中(保存镜像时的状态)

  • CREATE_FAILED:创建失败

  • START_FAILED:启动失败

  • DELETE_FAILED:删除失败

  • ERROR:错误

  • DELETED:已删除

  • FROZEN:冻结

token

String

Notebook鉴权使用的token信息。

url

String

实例访问的URL。

volume

VolumeRes object

实例存储信息。

workspace_id

String

工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。

feature

String

实例类别。枚举值:

  • DEFAULT:CodeLab免费规格实例,每个用户最多只能创建一个。

  • NOTEBOOK:计费规格实例。

表8 JobProgress

参数

参数类型

描述

notebook_id

String

实例ID。

status

String

任务某个步骤的状态。枚举值如下:

  • WAITING:等待中

  • PROCESSING:处理中

  • FAILED:任务失败

  • COMPLETED:任务完成

step

Integer

任务的步骤。枚举值如下:

  • 1:准备存储

  • 2:准备计算资源

  • 3:配置网络

  • 4:初始化实例

step_description

String

任务某个步骤的描述。

表9 EndpointsRes

参数

参数类型

描述

allowed_access_ips

Array of strings

允许通过SSH协议访问Notebook的公网IP地址白名单列表,默认都可以访问。当配置指定IP后,则仅允许IP所在的客户端实现对Notebook的访问。

dev_service

String

支持的服务,枚举值如下:

  • NOTEBOOK:可以通过https协议访问Notebook。

  • SSH:可以通过SSH协议远程连接Notebook。

ssh_keys

Array of strings

SSH密钥对名称列表,允许设置多个密钥对实现同时对SSH实例的访问。

service

String

支持的服务,枚举值如下:

  • NOTEBOOK:可以通过https协议访问Notebook。

  • SSH:可以通过SSH协议远程连接Notebook。

uri

String

实例私有IP地址。

表10 Image

参数

参数类型

描述

arch

String

该镜像所支持处理器架构类型。枚举值如下:

  • X86_64:x86处理器架构。

  • AARCH64:ARM体系架构。

create_at

Long

镜像创建的时间,UTC毫秒。

description

String

该镜像所对应的描述信息,长度限制512个字符。

dev_services

Array of strings

镜像支持的服务。枚举值如下:

  • NOTEBOOK:镜像支持通过https协议访问Notebook。

  • SSH:镜像支持本地IDE通过SSH协议远程连接Notebook。

id

String

待创建开发环境实例的镜像,需要指定镜像ID,ID格式为通用唯一识别码(Universally Unique Identifier,简称UUID)。预置镜像的ID参考查询支持的镜像列表获取。

name

String

镜像名称,长度限制512个字符,支持小写字母、数字、中划线、下划线和点。

namespace

String

镜像所属组织,可以在SWR控制台“组织管理”创建和查看。

origin

String

指定镜像来源,可选项,默认自定义构建镜像为CUSTOMIZE。枚举值如下:

  • CUSTOMIZE:用户自定义构建镜像。

  • IMAGE_SAVE:开发环境实例保存镜像。

resource_categories

Array of strings

镜像支持的规格。枚举值如下:

  • CPU

  • GPU

  • ASCEND

service_type

String

镜像支持服务类型。枚举值如下:

  • COMMON:通用镜像。

  • INFERENCE: 建议仅在推理部署场景使用。

  • TRAIN: 建议仅在训练任务场景使用。

  • DEV: 建议仅在开发调测场景使用。

  • UNKNOWN: 未明确设置的镜像支持的服务类型。

size

Long

镜像大小(单位KB)。

status

String

镜像状态。枚举值如下:

  • INIT:初始化。

  • CREATING:镜像保存中,此时Notebook不可用。

  • CREATE_FAILED:镜像保存失败。

  • ERROR:错误。

  • DELETED:已删除。

  • ACTIVE:镜像保存成功,保存的镜像可以在SWR控制台查看,同时可以基于保存的镜像创建Notebook实例。

status_message

String

镜像保存操作过程中,构建信息展示。

support_res_categories

Array of strings

镜像支持的规格。 枚举值如下:

  • CPU

  • GPU

  • ASCEND

swr_path

String

SWR镜像地址。

tag

String

镜像Tag。

type

String

镜像类型。枚举值如下:

  • BUILD_IN:系统内置镜像。

  • DEDICATED:用户保存的镜像。

update_at

Long

镜像最后更新的时间,UTC毫秒。

visibility

String

镜像可见度。枚举值如下:

  • PRIVATE:私有镜像。

  • PUBLIC: 所有用户可以根据ImageId来进行只读使用。

workspace_id

String

工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。

表11 Lease

参数

参数类型

描述

create_at

Long

实例创建的时间,UTC毫秒。

duration

Long

实例运行时长,以创建时间为起点计算,即“创建时间+duration > 当前时刻”时,系统会自动停止实例。

enable

Boolean

是否启用自动停止功能。

type

String

自动停止类别。

update_at

Long

实例最后更新(不包括保活心跳)的时间,UTC毫秒。

表12 Pool

参数

参数类型

描述

id

String

专属资源池ID。

name

String

专属资源池名称。

表13 VolumeRes

参数

参数类型

描述

capacity

Integer

存储容量,EVS默认5G,EFS默认50G,最大限制4096G。

category

String

支持的存储类型。不同存储类型的差异,详见开发环境中如何选择存储。枚举值如下:

  • SFS:弹性文件服务

  • EVS:云硬盘

mount_path

String

存储挂载至Notebook实例的目录,当前固定在/home/ma-user/work/下。

ownership

String

资源所属,枚举值如下:

  • MANAGED:托管,即资源在服务上。

  • DEDICATED:非托管,即资源在用户账号上,只有在category为EFS时支持。

status

String

EVS扩容状态,扩容时的状态为RESIZING,此时实例可以正常使用。

请求示例

{
  "description" : "update"
}

响应示例

状态码: 200

OK

{
  "description" : "test",
  "flavor" : "modelarts.vm.cpu.8u",
  "name" : "notebook-1111",
  "endpoints" : [ {
    "allowed_access_ips" : [ "1.1.1.1" ]
  } ]
}

状态码

状态码

描述

200

OK

201

Created

401

Unauthorized

403

Forbidden

404

Not Found

错误码

请参见错误码