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

创建DevServer

功能介绍

创建DevServer。

接口约束

暂无约束

调试

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

URI

POST /v1/{project_id}/dev-servers

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

admin_pass

String

用于登录服务器密码。注意admin_pass和key_pair_name必须二选一。密码规则:

  • 长度为8至26个

  • 至少包含大写字母、小写字母、数字及特殊符号(!@%-_=+[{}]:,./?)中的3种

  • 不能与用户名或倒序的用户名相同

  • 不能包含root或administrator及其逆序

arch

String

服务器规格架构类型。

  • ARM

  • X86

availability_zone

String

可用区。

charging_info

ChargingInfo object

服务器计费模式信息。

count

Integer

单次购买的服务器数量。

enterprise_project_id

String

企业ID。

flavor

String

服务器规格名称。

image_id

String

服务器镜像ID。

key_pair_name

String

服务器登录密钥对名称。注意admin_pass和key_pair_name必须二选一。

name

String

服务器名称。

network

ServerNetwork object

服务器网络信息。

root_volume

EvsVolume object

服务器系统盘信息。

server_type

String

服务器类型。枚举值如下:

  • BMS:裸金属服务

  • ECS:弹性云服务

userdata

String

创建服务器时,用户自己定义数据。

表3 ChargingInfo

参数

是否必选

参数类型

描述

charging_mode

String

付费类型。枚举值如下:

  • COMMON:预付费和后付费

  • POST_PAID:后付费

  • PRE_PAID: 预付费

is_auto_pay

Boolean

is auto pay

is_auto_renew

Boolean

is auto renew

period_num

Integer

period num

period_type

String

period type

  • ABSOLUTE

  • DAY:天

  • HOUR:小时

  • MONTH:月

  • WEEK:周

  • YEAR:年

表4 ServerNetwork

参数

是否必选

参数类型

描述

ipv6_enable

Boolean

创建服务器是否启用IPV6。

roce_id

String

服务器RoCE网络ID。

security_group_id

String

服务器所在的安全组ID。

subnet_id

String

服务器所在子网ID。

vpc_id

String

服务器所在虚拟私有云ID。

表5 EvsVolume

参数

是否必选

参数类型

描述

size

Integer

系统盘大小。

type

String

系统盘类型。

  • ESSD;

  • GPSSD;

  • SAS;

  • SATA;

  • SSD。

响应参数

状态码: 200

表6 响应Body参数

参数

参数类型

描述

create_at

Long

创建时间。

update_at

Long

更新时间。

charging_mode

String

计费模式。

  • COMMON:同时支持包周期和按需;

  • POST_PAID:按需模式;

  • PRE_PAID:包周期。

cloud_server

CloudServer object

云服务信息。

endpoints_response

Array of Endpoints objects

实例私有IP信息。

flavor

String

实例规格名称。

id

String

实例ID。

key_pair_name

String

密钥对名称。

name

String

实例名称。

order_id

String

订单ID。

server_image_response

ServerImageResponse object

实例镜像信息。

status

String

实例状态。

  • CREATE_FAILED:创建失败;

  • CREATING:创建中;

  • DELETED:已删除;

  • DELETE_FAILED:删除失败;

  • DELETING:删除中;

  • ERROR:错误;

  • RUNNING:运行中;

  • STARTING:启动中;

  • START_FAILED:启动失败;

  • STOPPED:已停止;

  • STOPPING:停止中;

  • STOP_FAILED:停止失败。

vpc_id

String

实例所在虚拟私有云ID。

endpoints

Array of EndpointsRes objects

服务器的私有IP信息。

image

ServerImageResponse object

服务器镜像信息。

表7 CloudServer

参数

参数类型

描述

id

String

服务器资源id。

type

String

DevServer服务器类型。枚举值如下:

  • BMS:裸金属服务器

  • ECS:弹性云服务器

表8 Endpoints

参数

参数类型

描述

allowed_access_ips

Array of strings

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

dev_service

String

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

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

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

  • AI_FLOW

  • MA_STUDIO

  • TENSOR_BOARD

  • WEB_IDE

extensions

Map<String,String>

通过应用专属URL直接打开应用进入远程开发模式。

ssh_keys

Array of strings

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

表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 ServerImageResponse

参数

参数类型

描述

arch

String

服务器镜像架构类型。

  • ARM

  • X86

image_id

String

服务器镜像ID。

name

String

服务器镜像名称。

server_type

String

服务器类型。枚举值如下:

  • BMS:裸金属服务器

  • ECS:弹性云服务器

请求示例

POST https://{endpoint}/v1/{project_id}/dev-servers

{
  "name" : "EI-evs-1107",
  "flavor" : "Si2.large.4",
  "image_id" : "c90fb553-2cdb-4b81-b56a-ef68812c6cf7",
  "network" : {
    "security_group_id" : "150a2c76-1334-45f6-b28f-419f9b1d1742",
    "subnet_id" : "38cf274a-98f9-4f6f-b622-5ed0e4a3db54",
    "vpc_id" : "05982b48-a70f-43a1-a2b0-1fe36a236172"
  },
  "admin_pass" : "@DevServer"
}

响应示例

状态码: 200

OK

{
  "charging_mode" : "PRE_PAID",
  "cloud_server" : {
    "type" : "ECS"
  },
  "create_at" : 1699348284990,
  "flavor" : "Si2.large.4",
  "id" : "62383738-e52a-450a-9f84-f9e705402be8",
  "image" : {
    "arch" : "X86",
    "image_id" : "c90fb553-2cdb-4b81-b56a-ef68812c6cf7",
    "name" : "Ubuntu18.04_x86_64_CPU",
    "server_type" : "ECS"
  },
  "name" : "EI-evs-1107",
  "status" : "CREATING",
  "update_at" : 1699348285077
}

状态码

状态码

描述

200

OK

错误码

请参见错误码