文档首页 > > API参考> 开发环境> 创建开发环境实例

创建开发环境实例

分享
更新时间:2020/11/16 GMT+08:00

功能介绍

创建开发环境实例,用于代码开发。

该接口为异步操作,创建开发环境实例的状态请通过查询开发环境实例详情接口获取。

URI

POST /v1/{project_id}/demanager/instances

参数说明如表1所示。
表1 参数说明

参数

是否必选

参数类型

说明

project_id

String

用户项目ID。获取方法请参见获取项目ID

请求消息

请求参数如表2所示。
表2 请求参数

参数

是否必选

参数类型

说明

name

String

实例名称,长度限制为64个字符,

支持大小写字母、数字、中划线和下划线。

profile_id

String

配置ID,当前支持:

  • Multi-Engine 1.0 (python2)-cpu
  • Multi-Engine 1.0 (python2)-gpu
  • Multi-Engine 1.0 (python3)-cpu
  • Multi-Engine 1.0 (python3)-gpu
  • Multi-Engine 2.0 (python3)

description

String

实例说明,长度限制为512字符,不可包含特殊字符&<>"'/,缺省值为空。

flavor

String

实例的机器规格。现在支持的有:

  • modelarts.vm.cpu.2u
  • modelarts.vm.cpu.8u
  • modelarts.vm.gpu.p100
  • modelarts.vm.cpu.free
  • modelarts.vm.gpu.free

以上规格仅供参照,实际支持规格以具体区域为准。如果您需要使用默认规格之外的其他规格,请提交工单修改规格。

spec

Object

实例定义,当前仅支持Notebook,如表3所示。

workspace

Object

工作空间,默认id为0的工作空间,如表7所示。

表3 notebook定义数据结构说明

参数

是否必选

参数类型

说明

storage

Object

存储路径,如表4所示

auto_stop

Object

自动停止参数,如表6 auto_stop定义数据结构说明所示。

annotations

Object

注解信息,可扩展字段,缺省值为“NULL”

表4 storage定义数据结构说明

参数

是否必选

参数类型

说明

type

String

存储类型,当前只支持“obs”“evs”

location

Object

存储位置,如果type为“obs”类型,该参数必须填写,如表5所示数据结构,如缺省值为“NULL”

表5 location定义数据结构说明

参数

是否必选

参数类型

说明

path

String

存储路径。

  • 如果type为“obs”类型,该值必须填写,需为有效的OBS桶路径,且以“/”结束。不能指定为OBS桶的根目录,需指定为OBS桶下的具体目录。
  • 如果type为“evs”类型,该值不需要填写。

volume_size

Integer

EVS存储盘大小,最小为5GB,最大为4096GB,缺省值为5GB;如果type为OBS类型,该值不需要填写。

表6 auto_stop定义数据结构说明

参数

是否必选

参数类型

说明

enable

Boolean

是否开启自动停止功能, true表示开启,则会在运行时长到达之后自动停止实例,false表示关闭,默认为false。

duration

Integer

运行时长,单位为秒,取值范围为3600-86400,该参数配置之后,每次启动均有效。如果enable为true时,该参数是必须的。

prompt

Boolean

是否需要再次提醒,该参数提供给前台console,用于让console判断是否需要再次弹出弹出框对用户进行提醒,默认是true。

表7 workspace定义结构说明

参数

是否必选

参数类型

说明

id

String

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

响应消息

响应参数如表8所示。
表8 响应参数

参数

参数类型

说明

id

String

实例ID。

name

String

实例名称。

description

String

实例说明。

status

String

实例状态。

creation_timestamp

String

实例的创建时间。

latest_update_timestamp

String

实例的更新时间。

profile

Object

配置信息,如表9所示。

flavor

String

机器规格。

flavor_details

Object

机器规格详情,如表13所示。

pool

Object

专属资源池,如表14所示。

spec

Object

实例定义。Notebook类型实例,数据结构如表13 notebook字段数据结构说明所示。

workspace

Object

工作空间,如表19所示。

ai_project

Object

AI项目。

error_code

String

错误码。请参考错误码

queuing_info

Object

排队信息,如表20所示。

user

Object

用户信息,如表21所示。

repository

Object

Git仓库信息。该字段不支持使用,在调用接口时会自动返回。

表9 profile字段数据结构说明

参数

参数类型

说明

id

String

配置ID。

name

String

配置名称。

description

String

配置说明。

de_type

String

开发环境类型,当前仅支持Notebook。

flavor_type

String

硬件类型。支持CPU,GPU,Ascend。

provision

Object

部署信息,如表10所示。

labels

Dict

配置标签。

表10 provision字段数据结构说明

参数

参数类型

说明

type

String

部署类型,当前仅支持Docker。

spec

Object

部署详情,如表11所示。

annotations

Object

注解信息,可扩展字段,缺省值为NULL。

表11 spec字段数据结构说明

参数

参数类型

说明

engine

String

部署引擎,当前仅支持CCE。

params

Object

部署参数,当前仅支持Docker,如表12所示。

表12 Docker部署参数数据结构说明

参数

参数类型

说明

namespace

String

SWR组织名称,全局唯一。

image_name

String

镜像名称。

image_tag

String

镜像标签。

annotations

Object

注解信息,可扩展字段,缺省值为“NULL”

表13 flavor_details参数说明

参数

是否必选

参数类型

描述

name

String

规格名称。

status

String

规格销售状态。当前支持:

  • onSale
  • soldOut

queuing_num

Integer

“promo_type”“Free”“status”“soldOut”时,该参数必选。

queue_left_time

Integer

排到队的剩余时间,单位为秒。

“promo_type”“Free”“status”“soldOut”时,该参数必选。

storage_list

List< storageType >

支持的存储类型。默认为全部。

  • obs
  • evs
  • efs

is_permitted

String

当前用户是否有权限使用该规格。

type

String

规格状态。当前支持:

  • GPU
  • CPU
  • ASCEND

params

Dict

描述规格的参数。

promo_type

String

促销类型。包括:

  • Free
  • NoDiscount

instance_num

Integer

当前用户创建地该规格实例的数量。

duration

Integer

启动后设置的自动停止时间,单位为秒。

store_time

Integer

该规格实例处于非活跃状态,在数据库最长保存的时长。单位为小时。

默认为“-1”, 表示可以无限制保存。

billing_flavor

String

计费规格。当该字段为空时,使用规格名称计费。

billing_params

Integer

计费倍率。当billing_flavor不为空时,该字段必选。

表14 pool参数说明

参数

是否必选

参数类型

描述

id

String

资源池ID。

name

String

资源池名称。

type

String

资源池类型。主要区分类型:USER_DEFINED,表明为专属资源池。

owner

Dict

“type”“USER_DEFINED”时是必选项。如表15所示。

表15 owner参数说明

参数

是否必选

参数类型

描述

project_id

String

项目ID。

表16 notebook字段数据结构说明

参数

参数类型

说明

log_path

String

自定义镜像日志存储路径。

custom_script_path

String

Notebook启动时的自定义初始化脚本路径。

storage

Object

存储路径。

credential

Object

访问OBS的AK/SK。

resource_reserved_timestamp

Integer

资源预留时间戳。

auto_stop

Object

自动停止参数,如表14 auto_stop字段数据结构说明所示。

failed_reasons

Object

创建、启动失败失败原因,如表17所示。

annotations

Dict

注解信息。

其中,生成的url信息,不可直接访问使用。

extend_params

Dict

扩展参数。

表17 failed_reasons字段数据结构说明

参数

参数类型

说明

code

String

错误码。

message

String

错误信息。

detail

Dict

错误详情。

表18 auto_stop字段数据结构说明

参数

参数类型

说明

enable

Boolean

是否开启自动停止功能。

duration

Integer

运行时长,单位为秒。

prompt

Boolean

是否需要再次弹框提醒,提供给console使用。

stop_timestamp

Integer

实例停止时间点, 13位时间戳。

remain_time

Integer

实际停止剩余时间,单位为秒。

表19 workspace字段数据结构说明

参数

参数类型

说明

id

String

工作空间ID。

表20 queuing_info参数说明

参数

是否必选

参数类型

描述

id

String

实例ID。

name

String

实例名称。

de_type

String

开发环境类型,缺省时返回全部类型。

当前仅支持Notebook。

flavor

String

实例的机器规格,缺省时返回全部类型。现在支持的有:

  • modelarts.vm.cpu.free
  • modelarts.vm.gpu.free

flavor_details

Object

规格详情,用于展示规格信息,以及查询规格是否售罄。请参见表13

status

String

实例状态,缺省时返回全部类型。包括:

  • CREATE_QUEUING
  • START_QUEUING

begin_timestamp

Integer

实例排队的开始时间,13位时间戳。

remain_time

Integer

排到队的剩余时间,单位为秒。

end_timestamp

Integer

实例排队的预计停止时间,13位时间戳。

rank

Integer

实例在队列中的排位。

表21 user字段数据结构说明

参数

参数类型

说明

id

String

用户ID。

name

String

用户名。

示例

如下以创建名为“notebook-instance”,配置ID为“Python3-gpu”的实例为例。

  • 请求示例
    {
        "name": "notebook-instance",
        "description": "",
        "profile_id": "Multi-Engine 1.0 (python3)-gpu",
        "flavor": "modelarts.bm.gpu.v100NV32",
        "spec": {
            "storage": {
                "location": {
                    "volume_size": 5
                },
                "type": "evs"
            },
            "auto_stop": {
                "enable": true,
                "duration": 3600
            }
        },
        "workspace": {
            "id": "0"
        }
    }
  • 成功响应示例
    {
        "ai_project": {
            "id": "default-ai-project"
        },
        "creation_timestamp": "1594887749962",
        "description": "",
        "flavor": "modelarts.bm.gpu.v100NV32",
        "flavor_details": {
            "name": "modelarts.bm.gpu.v100NV32",
            "params": {
                "CPU": 8,
                "GPU": 1,
                "gpu_type": "v100NV32",
                "memory": "64GiB"
            },
            "status": "onSale",
            "type": "GPU"
        },
        "id": "DE-7d558ef8-c73d-11ea-964c-0255ac100033",
        "latest_update_timestamp": "1594887749962",
        "name": "notebook-c6fd",
        "profile": {
            "de_type": "Notebook",
            "description": "multi engine, gpu, python 3.6 for notebook",
            "flavor_type": "GPU",
            "id": "Multi-Engine 1.0 (python3)-gpu",
            "name": "Multi-Engine 1.0 (python3)-gpu",
            "provision": {
                "annotations": {
                    "category": "Multi-Engine 1.0",
                    
                    "type": "system"
                },
                "spec": {
                    "engine": "CCE",
                    "params": {
                        "image_name": "mul-kernel-gpu-cuda-cp36",
                        "image_tag": "2.0.5-B003",
                        "namespace": "atelier"
                    }
                },
                "type": "Docker"
            }
        },
        "spec": {
            "annotations": {
                "target_domain": "https://modelarts-notebook-2.cn-north-4.myhuaweicloud.com",
                "url": ""
            },
            "auto_stop": {
                "duration": 3600,
                "enable": true,
                "prompt": true
            },
            "extend_params": null,
            "failed_reasons": null,
            "repository": null,
            "storage": {
                "location": {
                    "path": "/home/ma-user/work",
                    "volume_size": 5,
                    "volume_unit": "GB"
                },
                "type": "evs"
            }
        },
        "status": "CREATING",
        "user": {
            "id": "15dda26361214ca2a5953917d2f48ffb",
            "name": "ops_dev_env"
        },
        "workspace": {
            "id": "0"
        }
    }
    
  • 失败响应示例
    {
        "error_msg": "The param path needs to end with /.",
        "error_code": "ModelArts.6318"
    }

状态码

状态码请参见状态码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问