创建端点
功能介绍
创建端点。用户可使用该接口在工作空间下创建端点,输入名称、描述、类型、资源配置、cap配置等信息,返回端点信息。此接口为异步接口,配套使用接口ShowEndpoint查询端点详情,无特殊场景。
URI
POST /v1/workspaces/{workspace_id}/endpoints
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
workspace_id |
是 |
String |
参数解释:工作空间ID,获取方法,请参见获取工作空间ID。 约束限制:不涉及。 取值范围:长度为[1,36]的英文字符、数字和中划线(-)的组合。 默认取值:不涉及。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
否 |
String |
参数解释:租户Token。用于调用接口的认证。获取方法,请参见认证鉴权。 约束限制:不涉及。 取值范围:长度不超过65534个字符。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
参数解释:Endpoint名称。 约束限制:不涉及。 取值范围:长度为[1,128]包含中文、字母、数字、下划线、中划线、半角句号(.)、空格的组合。 默认取值:不涉及。 |
description |
否 |
String |
参数解释:描述信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
type |
是 |
String |
参数解释:Endpoint的类型。 约束限制:不涉及。 取值范围:
默认取值:不涉及。 |
reserved_resource |
否 |
ReservedResource object |
参数解释:通用预留资源。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
ray_resource |
否 |
RayResourceInput object |
参数解释:创建Ray集群的资源配置。 约束限制:不涉及。 |
cap |
否 |
CapRef object |
参数解释:镜像包信息。 约束限制:不涉及。 |
config |
否 |
EndpointConfig object |
参数解释:端点的配置。 约束限制:不涉及。 |
cache_list |
否 |
Array of CacheConfig objects |
参数解释:分布式缓存配置。 约束限制:不涉及。 |
public_access |
否 |
Boolean |
参数解释:是否开启公网访问。 约束限制:不涉及。 取值范围:开启true,关闭false。 默认取值:false。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apu |
否 |
ResourceDef object |
参数解释:资源定义信息。 约束限制:不涉及。 |
dpu |
否 |
SqlResourceDef object |
参数解释:Sql资源定义信息。 约束限制:不涉及。 |
mu |
否 |
ResourceDemand object |
参数解释:资源需求量配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
spec_code |
是 |
String |
参数解释:Endpoint状态。 约束限制:资源规格编码,从查询规格列表ListSpecs接口获取。 取值范围:不涉及。 默认取值:不涉及。 |
warm_up_num |
是 |
Integer |
参数解释:预热资源量。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
max_num |
否 |
Integer |
参数解释:最大资源量,不填默认为预热资源量,即不使用弹性资源。 约束限制:不涉及。 取值范围:最小值为1,最大值为1000。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
spec_code |
是 |
String |
参数解释:Endpoint状态。 约束限制:资源规格编码,从查询规格列表ListSpecs接口获取。 取值范围:不涉及。 默认取值:不涉及。 |
warm_up_num |
是 |
Integer |
参数解释:预热资源量。 约束限制:不涉及。 取值范围:最小值为1,最大值为5000。 默认取值:不涉及。 |
max_num |
否 |
Integer |
参数解释:最大资源量,不填默认为预热资源量,即不使用弹性资源。 约束限制:不涉及。 取值范围:最小值为1,最大值为5000。 默认取值:不涉及。 |
use_public_resource |
否 |
Boolean |
参数解释:是否使用公共资源。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
head_node_resource |
是 |
HeadNodeResourceDemand object |
参数解释:headNode资源需求量配置。 约束限制:不涉及。 |
work_node_resources |
是 |
Array of WorkNodeResourceDemand objects |
参数解释:工作节点资源配置。 约束限制:不涉及。 取值范围:[1,10]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
spec_code |
是 |
String |
参数解释:资源规格。 约束限制:不涉及。 取值范围:从规格列表查询获取。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
参数解释:资源配置名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
resource |
是 |
ResourceDemand object |
参数解释:资源需求量配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
spec_code |
是 |
String |
参数解释:资源规格。 约束限制:不涉及。 取值范围:从规格列表查询获取。 默认取值:不涉及。 |
min |
是 |
Integer |
参数解释:最小数。 约束限制:不涉及。 取值范围:最小值为0。 默认取值:不涉及。 |
max |
是 |
Integer |
参数解释:最大数。 约束限制:不涉及。 取值范围:最小值为1。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
cap_id |
否 |
String |
参数解释:镜像包ID。 约束限制:不涉及。 取值范围:长度为[32,36]的英文、数字、中划线(-)的组合。 默认取值:不涉及。 |
version_id |
否 |
String |
参数解释:镜像包版本ID。 约束限制:不涉及。 取值范围:长度为[32,36]的英文、数字、中划线(-)的组合。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
ray_service_config |
否 |
RayServiceConfig object |
参数解释:RayService类型端点的配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
ray_serve_config |
是 |
RayServeConfig object |
参数解释:RayServe配置。 约束限制:不涉及。 |
ray_cluster_config |
是 |
RayClusterConfig object |
参数解释:Ray集群配置。 约束限制:不涉及。 |
log_config |
否 |
RayServiceLogConfig object |
参数解释:RayService日志配置。 约束限制:不涉及。 |
data_infos |
否 |
Array of DataBriefInfo objects |
参数解释:数据信息。 约束限制:不涉及。 取值范围:[0,1]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
applications |
否 |
Array of ServeApplication objects |
参数解释:Application。 约束限制:不涉及。 取值范围:[0,5]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
参数解释:Application的名称。 约束限制:不涉及。 取值范围:长度为[1,64]的中文、字母、数字、下划线、中划线、半角句号(.)、空格的组合。 默认取值:不涉及。 |
import_path |
是 |
String |
参数解释:输入路径。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
deployments |
是 |
Array of Deployment objects |
参数解释:Deployment列表。 约束限制:不涉及。 取值范围:[1,5]。 默认取值:不涉及。 |
runtime_env |
是 |
ServeRuntimeEnv object |
参数解释:Serve的运行时环境配置。 约束限制:不涉及。 取值范围:可选参数有:working_dir:代码将在其中运行的工作目录。必须是远程URI,如s3或本地路径;env_vars:要设置的环境变量。 默认取值:不涉及。 |
route_prefix |
否 |
String |
参数解释:路由前缀。 约束限制:要求在RayServe中具有唯一性,不能跟其他的Application的前缀重复。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
参数解释:Deployment的名称。 约束限制:不涉及。 取值范围:长度为[1,64]的中文、字母、数字、下划线、中划线、半角句号(.)、空格的组合。 默认取值:不涉及。 |
ray_actor_options |
否 |
RayActorOptions object |
参数解释:RayActor配置。 约束限制:不涉及。 |
autoscaling_config |
否 |
AutoscalingConfig object |
参数解释:自动扩缩的配置。 约束限制:不涉及。 |
num_replicas |
否 |
Integer |
参数解释:副本数量。 约束限制:不涉及。 取值范围:[0,1000]。 默认取值:不涉及。 |
user_config |
否 |
Object |
参数解释:用户自定义配置。 约束限制:不涉及。 |
max_replicas_per_node |
否 |
Integer |
参数解释:每个节点允许的最大副本数。 约束限制:不涉及。 取值范围:[1,100]。 默认取值:1。 |
max_ongoing_requests |
否 |
Integer |
参数解释:每个副本可接受的最大并发请求数。 约束限制:不涉及。 取值范围:[1,100000]。 默认取值:不涉及。 |
max_queued_requests |
否 |
Integer |
参数解释:deployment可接受的排队的最大请求数。-1时表示无限制。 约束限制:不涉及。 取值范围:[-1,100000]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
num_cpus |
否 |
Double |
参数解释:CPU数量。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
memory |
否 |
Double |
参数解释:内存数量。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
resources |
否 |
String |
参数解释:资源配置。 约束限制:不涉及。 取值范围:长度[0,1024]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
target_ongoing_requests |
否 |
Integer |
参数解释:每个副本单位时间能提供的平均请求数。 约束限制:不涉及。 取值范围:[1,1000]。 默认取值:不涉及。 |
min_replicas |
否 |
Integer |
参数解释:最小副本数。 约束限制:不涉及。 取值范围:[0,1000]。 默认取值:不涉及。 |
max_replicas |
否 |
Integer |
参数解释:最大副本数。 约束限制:不涉及。 取值范围:[0,1000]。 默认取值:不涉及。 |
initial_replicas |
否 |
Integer |
参数解释:初始副本数。 约束限制:不涉及。 取值范围:[0,1000]。 默认取值:不涉及。 |
upscale_delay_s |
否 |
Integer |
参数解释:扩容之前的等待时间。 约束限制:不涉及。 取值范围:[0,86400]。 默认取值:不涉及。 |
downscale_delay_s |
否 |
Integer |
参数解释:缩容之前的等待时间。 约束限制:不涉及。 取值范围:[0,86400]。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
working_dir |
否 |
String |
参数解释:代码将在其中运行的工作目录。 约束限制:必须是远程URI,如s3或本地路径。 取值范围:不涉及。 默认取值:不涉及。 |
env_vars |
否 |
Map<String,String> |
参数解释:要设置的环境变量。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
enable_custom |
否 |
Boolean |
参数解释:是否开启资源自定义。 约束限制:不涉及。 取值范围:开启true,关闭false。 默认取值:false。 |
head_group_spec |
是 |
HeadGroupSpecV2 object |
参数解释:HeadGroup的配置。 约束限制:不涉及。 |
worker_group_specs |
是 |
Array of WorkerGroupSpecV2 objects |
参数解释:Worker Group的配置。 约束限制:[1,1000]。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
limits |
否 |
ResourceSpec object |
参数解释:资源配置。 约束限制:不涉及。 |
requests |
否 |
ResourceSpec object |
参数解释:资源配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
参数解释:名称。 约束限制:不涉及。 取值范围:长度[0,128]字母、数字、下划线(_)、中划线(-)的组合。 默认取值:不涉及。 |
min_replicas |
否 |
Integer |
参数解释:最小副本数。 约束限制:不涉及。 取值范围:[0,10000]。 默认取值:不涉及。 |
max_replicas |
否 |
Integer |
参数解释:最大副本数。 约束限制:不涉及。 取值范围:[1,10000]。 默认取值:不涉及。 |
limits |
否 |
ResourceSpec object |
参数解释:资源限制。 约束限制:不涉及。 |
requests |
否 |
ResourceSpec object |
参数解释:最小资源数。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
spec_code |
否 |
String |
参数解释:资源规格。 约束限制:不涉及。 取值范围:从规格列表查询获取。 默认取值:不涉及。 |
cpu_resource |
否 |
Integer |
参数解释:cpu核数量。 约束限制:不涉及。 取值范围:[0,192]。 默认取值:null。 |
memory_resource |
否 |
Integer |
参数解释:内存大小。 约束限制:不涉及。 取值范围:[0,1536]。 默认取值:null。 |
npu_resource |
否 |
Integer |
参数解释:昇腾卡数量。 约束限制:不涉及。 取值范围:[0,8]。 默认取值:null。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
lts |
否 |
RayServiceLogLtsConfig object |
参数解释:RayService日志配置。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
enabled |
否 |
Boolean |
参数解释:是否开启RayService日志转储到LTS。 约束限制:不涉及。 取值范围:true,false。 默认取值:false。 |
log_group_id |
否 |
String |
参数解释:RayService日志转储到的LTS日志组id。 约束限制:需要是已经存在的LTS日志组id。 取值范围:不涉及。 默认取值:不涉及。 |
log_stream_id |
否 |
String |
参数解释:RayService日志转储到的LTS日志流id。 约束限制:需要是已经存在的LTS日志流id。 取值范围:不涉及。 默认取值:不涉及 |
响应参数
状态码:202
查询endpoint详情的响应。
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:错误码。 约束限制:不涉及。 取值范围:长度为[8,36]个字符。 默认取值:不涉及。 |
error_msg |
String |
参数解释:错误描述。 约束限制:不涉及。 取值范围:长度为[2,512]个字符。 默认取值:不涉及。 |
solution_msg |
String |
参数解释:解决方案描述。 约束限制:不涉及。 取值范围:长度为[0,4096]个字符。 默认取值:不涉及。 |
状态码:401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:错误码。 约束限制:不涉及。 取值范围:长度为[8,36]个字符。 默认取值:不涉及。 |
error_msg |
String |
参数解释:错误描述。 约束限制:不涉及。 取值范围:长度为[2,512]个字符。 默认取值:不涉及。 |
solution_msg |
String |
参数解释:解决方案描述。 约束限制:不涉及。 取值范围:长度为[0,4096]个字符。 默认取值:不涉及。 |
状态码:408
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:错误码。 约束限制:不涉及。 取值范围:长度为[8,36]个字符。 默认取值:不涉及。 |
error_msg |
String |
参数解释:错误描述。 约束限制:不涉及。 取值范围:长度为[2,512]个字符。 默认取值:不涉及。 |
solution_msg |
String |
参数解释:解决方案描述。 约束限制:不涉及。 取值范围:长度为[0,4096]个字符。 默认取值:不涉及。 |
状态码:500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:错误码。 约束限制:不涉及。 取值范围:长度为[8,36]个字符。 默认取值:不涉及。 |
error_msg |
String |
参数解释:错误描述。 约束限制:不涉及。 取值范围:长度为[2,512]个字符。 默认取值:不涉及。 |
solution_msg |
String |
参数解释:解决方案描述。 约束限制:不涉及。 取值范围:长度为[0,4096]个字符。 默认取值:不涉及。 |
请求示例
创建端点。具体规格如样例展示。
POST https://{endpoint}/v1/workspaces/{workspace_id}/endpoints { "name" : "endpoint1", "description" : "description", "type" : "job", "reserved_resource" : { "apu" : { "spec_code" : "dpu.d1x", "warm_up_num" : 1, "max_num" : 100 }, "dpu" : { "spec_code" : "dpu.d1x", "warm_up_num" : 4, "max_num" : 100 }, "mu" : { "spec_code" : "string", "min" : 0, "max" : 1 } }, "ray_resource" : { "head_node_resource" : { "spec_code" : "string" }, "work_node_resources" : [ { "name" : "cpuGroup1", "resource" : { "spec_code" : "string", "min" : 0, "max" : 1 } } ] }, "cap" : { "cap_id" : "0b5633ba2b904511ad514346f4d23d4b", "version_id" : "0b5633ba2b904511ad514346f4d23d4b" }, "config" : { "ray_service_config" : { "log_config" : { "lts" : { "enabled" : true, "log_group_id" : "string", "log_stream_id" : "string" } }, "ray_serve_config" : { "applications" : [ { "name" : "string", "import_path" : "string", "deployments" : [ { "name" : "string", "ray_actor_options" : { "num_cpus" : 0, "memory" : 0, "resources" : "string" }, "autoscaling_config" : { "target_ongoing_requests" : 1000, "max_ongoing_requests" : 1000, "min_replicas" : 1000, "max_replicas" : 1000, "initial_replicas" : 1000, "upscale_delay_s" : 86400, "downscale_delay_s" : 86400 }, "num_replicas" : 1000, "user_config" : { }, "max_replicas_per_node" : 1 } ], "runtime_env" : { "working_dir" : "string", "env_vars" : { "additionalProp1" : "string", "additionalProp2" : "string", "additionalProp3" : "string" } }, "route_prefix" : "string" } ] }, "ray_cluster_config" : { "head_group_spec" : { "limits" : { "spec_code" : "string" }, "requests" : { "spec_code" : "string" } }, "worker_group_specs" : [ { "name" : "string", "min_replicas" : 10000, "max_replicas" : 10000, "limits" : { "spec_code" : "string" }, "requests" : { "spec_code" : "string" } } ] }, "data_infos" : [ { "input_path" : "OBS://bucket/dir/" } ] } }, "cache_list" : [ { "mnt_path" : "string", "cache_ins_id" : "string" } ] }
响应示例
状态码:202
查询endpoint详情的响应。
{ "visibility" : "PRIVATE", "id" : "0b5633ba2b904511ad514346f4d23d4b", "name" : "endpoint1", "type" : "job", "status" : "CREATING", "description" : "description", "create_time" : "2023-05-30T12:24:30.401Z", "update_time" : "2023-05-30T12:24:30.401Z", "owner" : { "domain_name" : "string", "domain_id" : "0b5633ba2b904511ad514346f4d23d4b", "user_name" : "string", "user_id" : "0b5633ba2b904511ad514346f4d23d4b" }, "cap" : { "cap_id" : "0b5633ba2b904511ad514346f4d23d4b", "version_id" : "0b5633ba2b904511ad514346f4d23d4b" }, "reserved_resource" : { "apu" : { "spec_code" : "dpu.d1x", "warm_up_num" : 1, "max_num" : 100 }, "dpu" : { "spec_code" : "dpu.d1x", "warm_up_num" : 1, "max_num" : 100, "use_public_resource" : false }, "mu" : { "spec_code" : "string", "min" : 0, "max" : 1 } }, "ray_resource" : { "head_group_spec" : { "spec_code" : "string" }, "worker_group_spec" : [ { "name" : "string", "spec_code" : "string", "min_replicas" : 10000, "max_replicas" : 10000 } ] }, "caches" : [ { "mnt_path" : "string", "cache_ins_id" : "string" } ], "error_code" : "string", "error_msg" : "string", "urls" : [ { "name" : "string", "address" : "string", "type" : "PRIVATE", "token" : "string" } ], "business_engine_instance_ids" : [ "string" ], "tokens_quota" : { "total" : 0, "used" : 0, "expire_time" : "2025-01-17T01:12:24.663Z" }, "runtime_env_type" : "RELEASE", "config" : { "ray_service_config" : { "log_config" : { "lts" : { "enabled" : true, "log_group_id" : "string", "log_stream_id" : "string" } }, "ray_serve_config" : { "applications" : [ { "name" : "string", "import_path" : "string", "deployments" : [ { "name" : "string", "ray_actor_options" : { "num_cpus" : 0, "memory" : 0, "resources" : "string" }, "autoscaling_config" : { "target_ongoing_requests" : 1000, "max_ongoing_requests" : 1000, "min_replicas" : 1000, "max_replicas" : 1000, "initial_replicas" : 1000, "upscale_delay_s" : 86400, "downscale_delay_s" : 86400 }, "num_replicas" : 1000, "user_config" : { }, "max_replicas_per_node" : "" } ], "runtime_env" : { "working_dir" : "string", "env_vars" : { "additionalProp1" : "string", "additionalProp2" : "string", "additionalProp3" : "string" } }, "route_prefix" : "string" } ] }, "ray_cluster_config" : { "head_group_spec" : { "limits" : { "spec_code" : "string" }, "requests" : { "spec_code" : "string" } }, "worker_group_specs" : [ { "name" : "string", "min_replicas" : 10000, "max_replicas" : 10000, "limits" : { "spec_code" : "string" }, "requests" : { "spec_code" : "string" } } ] }, "data_infos" : [ { "input_path" : "OBS://bucket/dir/", "output_path" : "OBS://bucket/dir/", "env_var_name" : "string" } ] } } }
状态码:400
BadRequest
{ "error_code" : "common.01000001", "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException" }
状态码:401
Unauthorized
{ "error_code" : "APIG.1002", "error_msg" : "Incorrect token or token resolution failed" }
状态码:403
Forbidden
{ "error" : { "code" : "403", "message" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" }, "error_code" : 403, "error_msg" : "X-Auth-Token is invalid in the request", "title" : "Forbidden" }
状态码:408
Request Time-out
{ "error_code" : "common.00000408", "error_msg" : "timeout exception occurred" }
状态码:500
InternalServerError
{ "error_code" : "common.00000500", "error_msg" : "internal error" }
状态码
状态码 |
描述 |
---|---|
202 |
查询endpoint详情的响应。 |
400 |
BadRequest |
401 |
Unauthorized |
403 |
Forbidden |
408 |
Request Time-out |
500 |
InternalServerError |
错误码
请参见错误码。