创建Notebook实例
功能介绍
创建Notebook实例接口用于根据指定的参数创建一个新的Notebook实例。该接口适用于以下场景:用户需要为特定任务或项目创建Notebook实例时,可通过此接口指定实例规格、AI引擎镜像和存储配置。使用该接口的前提条件是用户已登录系统并具有创建Notebook实例的权限,同时需提供有效的创建参数。调用该接口后,系统将异步创建Notebook实例,用户可通过查询接口获取实例状态。创建完成后,用户可通过网页或SSH客户端访问Notebook实例。若用户无权限创建实例或参数无效,接口将返回相应的错误信息。异常情况包括:若系统资源不足,或创建操作失败,接口将返回相应的错误提示。
接口约束
暂无约束。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v1/{project_id}/notebooks
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
参数解释:用户项目ID, 获取方法请参见获取项目ID和名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
description |
否 |
String |
参数解释:实例描述信息。 约束限制:不涉及。 取值范围:长度限制为512字符,且不能包含字符&<>"'/。 默认取值:不涉及。 |
duration |
否 |
Long |
参数解释:以当前时刻为起点,运行的时长(到期后自动停止),推荐该属性在leaseReq中配置,若此处有值则忽略leaseReq的值,且实例自动停止类型为定时停止。 单位:毫秒。 约束限制:不涉及。 取值范围:3600000-259200000。 默认取值:3600000。 |
endpoints |
否 |
Array of EndpointsReq objects |
参数解释:仅在本地IDE(如PyCharm、VS Code)或SSH客户端接入Notebook。 约束限制:仅在本地IDE(如PyCharm、VS Code)或SSH客户端,通过SSH远程接入Notebook实例时需要的相关配置。 |
feature |
否 |
String |
参数解释:实例类别。 约束限制:不涉及。 取值范围:
默认取值:NOTEBOOK。 |
flavor |
是 |
String |
参数解释:实例的机器规格。如下规格仅供参考,实际支持的规格以具体区域为准。
约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
image_id |
是 |
String |
参数解释:待创建Notebook实例的镜像,需要指定镜像ID。ID格式为通用唯一识别码(Universally Unique Identifier,简称UUID)。镜像的ID可通过调用查询支持的镜像列表接口获取。 约束限制:不涉及。 取值范围:调用查询支持的镜像列表接口获取的合法镜像ID列表。 默认取值:不涉及。 |
name |
是 |
String |
参数解释:实例名称。 约束限制:不涉及。 取值范围:长度限制为128个字符,支持大小写字母、数字、中划线和下划线,名称可重复。 默认取值:不涉及。 |
pool_id |
否 |
String |
参数解释:专属资源池ID,若需要指定专属资源池创建实例时必填。专属资源池ID可通过查询资源池列表接口获取。 约束限制:不涉及。 取值范围:调用查询资源池列表接口获取的合法资源池ID列表。 默认取值:不涉及。 |
volume |
是 |
VolumeReq object |
参数解释:存储配置。 约束限制:不涉及。 |
workspace_id |
否 |
String |
参数解释:工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 约束限制:不涉及。 取值范围:0或32位仅包含字符0-9或小写字母a-z的字符串。 默认取值:0。 |
hooks |
否 |
CustomHooks object |
参数解释:自定义启动脚本钩子配置。 约束限制:不涉及。 |
lease |
否 |
LeaseReq object |
参数解释:实例租约配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
allowed_access_ips |
否 |
Array of strings |
参数解释:允许远程接入的公网IP地址列表,最多5个。 约束限制:不涉及。 |
service |
否 |
String |
参数解释:支持的服务。 约束限制:不涉及。 取值范围:枚举类型,取值如下:
默认取值:不涉及。 |
key_pair_names |
否 |
Array of strings |
参数解释:SSH密钥对名称,可以在云服务器控制台(ECS)“密钥对”页面创建和查看。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
capacity |
否 |
Integer |
参数解释:存储容量,单位GB。 约束限制:该属性在category选择EVS时生效。 取值范围:5-4096。 默认取值:5。 |
category |
是 |
String |
参数解释:支持的存储类型。不同存储类型的差异,详见开发环境中如何选择存储。 约束限制:不涉及。 取值范围:枚举类型,取值如下:
默认取值:EVS。 |
ownership |
是 |
String |
参数解释:资源所属。 约束限制:不涉及。 取值范围:枚举类型,取值如下:
默认取值:不涉及。 |
uri |
否 |
String |
参数解释:EFS专属存储盘uri或OBS并行文件系统路径。查看方式如下:
约束限制:只有当category为EFS或OBS或OBSFS,同时ownership为DEDICATED时必填。 取值范围:不涉及。 默认取值:不涉及。 |
id |
否 |
String |
参数解释:EFS专属存储盘ID,参数值获取方式如下:登录弹性文件服务控制台,在文件系统列表中,单击文件系统名称进入详情页。其中,“ID”即为此参数的参数值。 约束限制:只有当category为EFS,同时ownership为DEDICATED时必填。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
post_start |
否 |
Config object |
参数解释:启动服务后脚本配置。 约束限制:不涉及。 |
pre_start |
否 |
Config object |
参数解释:启动服务前脚本配置。 约束限制:不涉及。 |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
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 |
参数解释:实例状态。 取值范围:枚举类型,取值如下:
|
token |
String |
参数解释:Notebook鉴权使用的token信息。 取值范围:不涉及。 |
url |
String |
参数解释:实例访问的URL。 取值范围:不涉及。 |
volume |
VolumeRes object |
参数解释:实例存储信息。 |
workspace_id |
String |
参数解释:工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 取值范围:不涉及。 |
feature |
String |
参数解释:实例类别。 取值范围:枚举类型,取值如下:
|
billing_items |
Array of strings |
参数解释:计费资源类型。枚举类型,取值如下:
|
user |
user object |
参数解释:账号信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
notebook_id |
String |
参数解释:实例ID。 取值范围:不涉及。 |
status |
String |
参数解释:任务某个步骤的状态。 取值范围:枚举类型,取值如下:
|
step |
Integer |
参数解释:任务的步骤。 取值范围:枚举类型,取值如下:
|
step_description |
String |
参数解释:任务某个步骤的描述。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
allowed_access_ips |
Array of strings |
参数解释:允许通过SSH协议访问Notebook的公网IP地址白名单列表,默认都可以访问。当配置指定IP后,则仅允许IP所在的客户端实现对Notebook的访问。 |
dev_service |
String |
参数解释:访问Notebook的途径。 取值范围:枚举类型,取值如下:
|
ssh_keys |
Array of strings |
参数解释:SSH密钥对名称列表,允许设置多个密钥对实现同时对SSH实例的访问。 |
service |
String |
参数解释:访问Notebook的途径。 取值范围:枚举类型,取值如下:
|
uri |
String |
参数解释:实例私有IP地址。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
arch |
String |
参数解释:该镜像所支持处理器架构类型。 取值范围:枚举类型,取值如下:
|
create_at |
Long |
参数解释:镜像创建的时间,UTC毫秒。 取值范围:不涉及。 |
description |
String |
参数解释:该镜像所对应的描述信息。 取值范围:长度限制512个字符。 |
dev_services |
Array of strings |
参数解释:镜像支持的服务。 取值范围:枚举类型,取值如下:
|
id |
String |
参数解释:待创建Notebook实例的镜像,需要指定镜像ID,ID格式为通用唯一识别码(Universally Unique Identifier,简称UUID)。预置镜像的ID参考查询支持的镜像列表获取。 取值范围:不涉及。 |
name |
String |
参数解释:镜像名称。 取值范围:长度限制512个字符,支持小写字母、数字、中划线、下划线和点。 |
namespace |
String |
参数解释:镜像所属组织,可以在SWR控制台“组织管理”创建和查看。 取值范围:不涉及。 |
origin |
String |
参数解释:指定镜像来源。 取值范围:枚举类型,取值如下:
|
resource_categories |
Array of strings |
参数解释:镜像支持的规格。枚举类型,取值如下:
|
service_type |
String |
参数解释:镜像支持服务类型。 取值范围:枚举类型,取值如下:
|
size |
Long |
参数解释:镜像大小(单位KB)。 取值范围:不涉及。 |
status |
String |
参数解释:镜像状态。 取值范围:枚举类型,取值如下:
|
status_message |
String |
参数解释:镜像保存操作过程中,构建信息展示。 取值范围:不涉及。 |
support_res_categories |
Array of strings |
参数解释:镜像支持的规格。 枚举类型,取值如下:
|
swr_path |
String |
参数解释:SWR镜像地址。 取值范围:不涉及。 |
tag |
String |
参数解释:镜像Tag。 取值范围:不涉及。 |
type |
String |
参数解释:镜像类型。 取值范围:枚举类型,取值如下:
|
update_at |
Long |
参数解释:镜像最后更新的时间,UTC毫秒。 取值范围:不涉及。 |
visibility |
String |
参数解释:镜像可见度。 取值范围:枚举类型,取值如下:
|
workspace_id |
String |
参数解释:工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 取值范围:不涉及。 |
flavor_type |
String |
参数解释:镜像的资源类型。 取值范围:枚举类型,取值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
create_at |
Long |
参数解释:实例创建的时间,UTC毫秒。 取值范围:不涉及。 |
duration |
Long |
参数解释:实例运行时长,以创建时间为起点计算,即“创建时间+duration > 当前时刻”时,系统会自动停止实例。 取值范围:不涉及。 |
enable |
Boolean |
参数解释:是否启用自动停止功能。 取值范围:布尔类型:
|
type |
String |
参数解释:自动停止类别。 取值范围:枚举类型,取值如下:
|
update_at |
Long |
参数解释:实例最后更新(不包括探活心跳)的时间,UTC毫秒。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
capacity |
Integer |
参数解释:存储容量。 取值范围:EVS默认5G,EFS默认50G,最大限制4096G。 |
category |
String |
参数解释:支持的存储类型。不同存储类型的差异,详见开发环境中如何选择存储。 取值范围:枚举类型,取值如下:
|
mount_path |
String |
参数解释:存储挂载至Notebook实例的目录,当前固定在/home/ma-user/work/下。 取值范围:不涉及。 |
ownership |
String |
参数解释:资源所属。 取值范围:枚举类型,取值如下:
|
status |
String |
参数解释:EVS扩容状态,扩容时的状态为RESIZING,此时实例可以正常使用。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
domain |
domain object |
参数解释:账号domain信息。 |
id |
String |
参数解释:IAM用户ID。获取方法请参见获取用户ID和名称。 取值范围:不涉及。 |
name |
String |
参数解释:IAM用户名。 取值范围:不涉及。 |
状态码:201
Created。
请求示例
创建Notebook实例。设置实例规格为“modelarts.vm.cpu.2u”,存储类型为“EVS”,资源所属为“MANAGED”,存储容量为50G。
{ "name" : "notebooks_test", "feature" : "NOTEBOOK", "workspace_id" : "0", "description" : "api-test", "flavor" : "modelarts.vm.cpu.2u", "image_id" : "e1a07296-22a8-4f05-8bc8-e936c8e54090", "volume" : { "category" : "evs", "ownership" : "managed", "capacity" : 50 } }
响应示例
状态码:200
OK。
{ "description" : "api-test", "feature" : "NOTEBOOK", "flavor" : "modelarts.vm.cpu.2u", "id" : "f9937afa-4451-42db-a76b-72d624749f66", "image" : { "description" : "description", "id" : "e1a07296-22a8-4f05-8bc8-e936c8e54090", "name" : "notebook2.0-mul-kernel-cpu-cp36", "swr_path" : "swr.xxxxx.com/atelier/notebook2.0-mul-kernel-cpu-cp36:3.3.2-release_v1", "tag" : "3.3.2-release_v1", "type" : "BUILD_IN" }, "lease" : { "create_at" : 1638841744515, "duration" : 3600000, "enable" : true, "type" : "TIMING", "update_at" : 1638841744515 }, "name" : "notebooks_test", "status" : "CREATING", "token" : "3eff13f2-3d70-5456-6dc7-e3f99f562022", "workspace_id" : "0" }
状态码
状态码 |
描述 |
---|---|
200 |
OK。 |
201 |
Created。 |
401 |
Unauthorized。 |
403 |
Forbidden。 |
404 |
Not Found。 |
错误码
请参见错误码。