创建资源池
功能介绍
创建资源池接口用于在系统中创建新的资源池。该接口适用于以下场景:当需要为新业务分配资源、优化资源管理或进行资源隔离时,用户可通过此接口创建新的资源池,用于管理计算、存储、网络等资源。使用该接口的前提条件是用户具有管理员权限,并且系统中具备足够的资源支持新资源池的创建。创建操作完成后,新的资源池将被成功添加到系统中,并处于可用状态,可支持后续的资源分配和管理。若用户无权限、系统资源不足或输入参数有误,接口将返回相应的错误信息。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2/{project_id}/pools
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
参数解释:用户项目ID。获取方法请参见获取项目ID和名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-ModelArts-User-ID |
否 |
String |
参数解释:实际的外部租户ID,如果有的话,工作空间鉴权以该ID为准。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apiVersion |
是 |
String |
参数解释:API版本。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
kind |
是 |
String |
参数解释:资源类型。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
metadata |
是 |
PoolMetadataCreation object |
参数解释:资源池的metadata信息。 约束限制:不涉及。 |
spec |
否 |
PoolSpecCreation object |
参数解释:资源池的描述信息。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
labels |
是 |
PoolLabelsCreation object |
参数解释:资源池的标签信息。 约束限制:不涉及。 |
annotations |
否 |
PoolAnnotationsCreation object |
参数解释:资源池的注释信息。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
os.modelarts/name |
是 |
String |
参数解释:用户指定的资源池名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/workspace.id |
否 |
String |
参数解释:工作空间ID。获取方法请参见查询工作空间列表。 约束限制:不涉及。 取值范围:未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 默认取值:不涉及。 |
os.modelarts/node.prefix |
否 |
String |
参数解释:自定义节点名称前缀。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
os.modelarts/description |
否 |
String |
参数解释:资源池的描述信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/billing.mode |
否 |
String |
参数解释:计费模式。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
os.modelarts/period.num |
否 |
String |
参数解释:包周期订购周期,比如2。当计费模式为包周期时该参数必传。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/period.type |
否 |
String |
参数解释:包周期订购类型。当计费模式为包周期时该参数必传。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
os.modelarts/auto.renew |
否 |
String |
参数解释:是否自动续费。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:0。 |
os.modelarts/auto.pay |
否 |
String |
参数解释:是否自动付费,仅在用户购买包周期资源时生效。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
os.modelarts/promotion.info |
否 |
String |
参数解释:用户在cbc选择的折扣信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/service.console.url |
否 |
String |
参数解释:订购订单支付完成后跳转的url地址。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/order.id |
否 |
String |
参数解释:订单id,包周期资源池创建或者计费模式变更的时候该参数必需。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
参数解释:资源池类型。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
scope |
是 |
Array of strings |
参数解释:资源池支持的作业类型。 约束限制:不涉及。 取值范围:用户创建标准资源池时至少选择一种,物理资源池支持全部选择。可选值如下:
默认取值:不涉及。 |
resources |
是 |
Array of PoolResourceFlavor objects |
参数解释:资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。 约束限制:不涉及。 |
network |
是 |
network object |
参数解释:资源池网络参数。创建物理资源池时必选。 约束限制:不涉及。 |
jobFlavors |
否 |
Array of strings |
参数解释:资源池支持的作业规格信息列表,内容为作业规格名称。 约束限制:不涉及。 |
driver |
否 |
PoolDriver object |
参数解释:资源池的驱动信息。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
flavor |
是 |
String |
参数解释:资源规格,比如:modelarts.vm.gpu.tnt004。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
count |
是 |
Integer |
参数解释:资源规格的保障资源量。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
maxCount |
否 |
Integer |
参数解释:资源规格的弹性资源量。物理池中该值和count必须一致。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
extendParams |
否 |
extendParams object |
参数解释:自定义配置参数。 约束限制:不涉及。 |
os |
否 |
Os object |
参数解释:自定义操作系统镜像信息。 约束限制:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
dockerBaseSize |
否 |
String |
参数解释:指定资源池节点的容器引擎空间大小。值为0时表示不限制大小。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
参数解释:操作系统名称。 取值范围:不涉及。 |
imageId |
否 |
String |
参数解释:操作系统镜像ID。 取值范围:不涉及。 |
imageType |
否 |
String |
参数解释:操作系统镜像类型。 取值范围:可选值如下:
|
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
apiVersion |
String |
参数解释:资源的API版本。 取值范围:可选值如下:
|
kind |
String |
参数解释:资源的类型。 取值范围:可选值如下:
|
metadata |
PoolMetadata object |
参数解释:资源池的元信息。 |
spec |
PoolSpecModel object |
参数解释:资源池的规格信息。 |
status |
PoolStatus object |
参数解释:资源池的状态信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:资源池的ID。 取值范围:不涉及。 |
creationTimestamp |
String |
参数解释:资源池的创建时间。例如"2025-11-01T03:49:41Z"。 取值范围:不涉及。 |
labels |
PoolMetaLabels object |
参数解释:资源池的标签信息。 |
annotations |
PoolMetaAnnotations object |
参数解释:资源池的注释信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
os.modelarts/name |
String |
参数解释:资源池的显示名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/workspace.id |
String |
参数解释:工作空间ID。获取方法请参见查询工作空间列表。 约束限制:不涉及。 取值范围:不涉及。 默认取值:0。 |
os.modelarts/node.prefix |
String |
参数解释:自定义节点前缀,可选值。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/resource.id |
String |
参数解释:资源池计费使用的资源ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/tenant.domain.id |
String |
参数解释:资源池所属的租户ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/tenant.project.id |
String |
参数解释:资源池所属的租户项目ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/enterprise.project.id |
String |
参数解释:资源池所属的企业项目ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts.pool/biz |
String |
参数解释:资源池商业类型,public是公共池,private个人专属池。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/create-from |
String |
参数解释:资源池创建来源,比如admin-console,标记来自admin创建,console标记来自ma console。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/nobilling |
String |
参数解释:资源池是否计费。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/order.name |
String |
参数解释:资源池关联的上一次订单作业记录。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
os.modelarts/description |
String |
参数解释:资源池的描述信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/billing.mode |
String |
参数解释:计费模式。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
os.modelarts/period.num |
String |
参数解释:包周期资源池的订购周期。 约束限制:和os.modelarts/period.type字段配合使用。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/period.type |
String |
参数解释:包周期资源池的订购类型。 约束限制:和os.modelarts/period.num字段配合使用。 取值范围:可选值如下:
默认取值:不涉及。 |
os.modelarts/auto.renew |
String |
参数解释:包周期资源池的自动续费类型。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:0。 |
os.modelarts/promotion.info |
String |
参数解释:包周期资源池购买时选择的折扣信息。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/service.console.url |
String |
参数解释:购买包周期资源在订单支付完成后跳转地址。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/order.id |
String |
参数解释:包周期资源池购买时传递的订单ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/flavor.resource.ids |
String |
参数解释:包周期资源池中资源规格对应的资源ID。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/tms.tags |
String |
参数解释:资源池上的资源标签。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts.pool/scheduler.queue.strategy |
String |
参数解释:资源池调度队列的策略,用于定义任务调度的规则。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts.pool/subpools.count |
String |
参数解释:资源池包含的逻辑子池的数量。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts/tenant.domain.name |
String |
参数解释:资源池的租户账号 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
os.modelarts.pool/scope.external.dependency.train |
String |
参数解释:训练外部依赖标识 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
type |
String |
参数解释:资源池类型。 约束限制:不涉及。 取值范围:可选值如下:
默认取值:不涉及。 |
scope |
Array of strings |
参数解释:资源池支持的作业类型。 |
resources |
Array of resources objects |
参数解释:资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。 |
containernetwork |
containernetwork object |
参数解释:k8s 容器网络。 |
network |
network object |
参数解释:资源池网络参数。 |
jobFlavors |
Array of strings |
参数解释:资源池支持的作业规格列表。参数为作业规格名称。 |
driver |
PoolDriver object |
参数解释:资源池驱动信息。 |
controlMode |
Integer |
参数解释:资源池的受限状态。状态可以叠加,比如9代表转包周期受限和冻结状态。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
flavor |
String |
参数解释:资源规格ID。 取值范围:不涉及。 |
count |
Integer |
参数解释:资源池中资源规格实例数量。 取值范围:不涉及。 |
maxCount |
Integer |
参数解释:资源规格的弹性资源量。物理池中该值和count必须一致。 取值范围:不涉及。 |
azs |
Array of PoolNodeAz objects |
参数解释:资源池中期望创建的资源规格实例的az分布。 |
extendParams |
extendParams object |
参数解释:资源池自定义配置参数。 |
os |
Os object |
参数解释:资源池中节点操作系统镜像信息。 |
dataVolumes |
dataVolumes object |
参数解释:自定义数据盘(云硬盘)列表信息,指定后不可修改。 |
volumeGroupConfigs |
volumeGroupConfigs object |
参数解释:磁盘高级配置信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
dockerBaseSize |
String |
参数解释:资源池创建的节点的容器引擎空间大小。值为0时表示不限制大小。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
volumeGroup |
String |
参数描述:磁盘分组名称。 取值范围:不涉及。 |
runtime |
String |
参数描述:模型运行时环境。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:操作系统名称。 取值范围:不涉及。 |
imageId |
String |
参数解释:操作系统镜像ID。 取值范围:不涉及。 |
imageType |
String |
参数解释:操作系统镜像类型。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
volumeType |
String |
参数解释:磁盘类型,具体内容可参考磁盘类型及性能介绍。 取值范围:可选值如下:
|
size |
String |
参数解释:磁盘大小,单位为Gi。 取值范围:不涉及。 |
count |
String |
参数解释:磁盘个数。 取值范围:不涉及。 |
extendParams |
extendParams object |
参数解释:磁盘自定义配置 |
参数 |
参数类型 |
描述 |
---|---|---|
billing |
String |
参数解释:标识存储实例是否计费。为空则表示不计费。该字段用户不可指定或修改。 取值范围:不涉及。 |
volumeGroup |
String |
参数解释:磁盘分组名称,用于各个存储空间的划分。 取值范围:可选项如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
volumeGroup |
String |
参数解释:磁盘分组名称。作为dataVolumes中volumeGroup的索引。 取值范围:不涉及。 |
dockerThinPool |
String |
参数解释:资源池节点容器盘占数据盘的百分比。仅磁盘分组名称为vgpaas时,即容器盘,才可指定此参数。 取值范围:不涉及。 |
lvmConfig |
lvmConfig object |
参数解释:LVM配置管理。 |
参数 |
参数类型 |
描述 |
---|---|---|
lvType |
String |
参数解释:LVM写入模式 取值范围:可选项如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
mode |
String |
参数解释:容器网络模型。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
gpuVersion |
String |
参数解释:资源池默认的GPU驱动版本。物理资源池中包含GPU规格时有效。 取值范围:不涉及。 |
npuVersion |
String |
参数解释:资源池默认的NPU驱动版本。物理资源池中包含NPU规格时有效。 取值范围:不涉及。 |
updateStrategy |
String |
参数解释:资源池驱动升级策略。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
phase |
String |
参数解释:资源池的状态。 取值范围:可选值如下:
|
message |
String |
参数解释:资源池当前状态的提示信息。 取值范围:不涉及。 |
resources |
resources object |
参数解释:资源池中不同状态的资源信息。 |
scope |
Array of scope objects |
参数解释:资源池当前支持的业务类型的状态信息。 |
driver |
driver object |
参数解释:资源池驱动状态信息。 |
parent |
String |
参数解释:资源池所属父资源池的ID。物理池为空。 取值范围:不涉及。 |
root |
String |
参数解释:资源池根资源池的ID。 取值范围:不涉及。 |
clusters |
clusters object |
参数解释:资源池集群信息,特权池才有该字段。 |
参数 |
参数类型 |
描述 |
---|---|---|
creating |
PoolResourceFlavorCount object |
参数解释:资源池中创建状态的资源信息。 |
available |
PoolResourceFlavorCount object |
参数解释:资源池中可用状态的资源信息。 |
abnormal |
PoolResourceFlavorCount object |
参数解释:资源池中异常状态的资源信息。 |
deleting |
PoolResourceFlavorCount object |
参数解释:资源池中删除中状态的资源信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
flavor |
String |
参数解释:资源规格ID。 取值范围:不涉及。 |
count |
Integer |
参数解释:资源池中资源规格实例数量。 取值范围:不涉及。 |
maxCount |
Integer |
参数解释:资源池中资源规格实例弹性数量。物理池中该值和count相同。 取值范围:不涉及。 |
azs |
Array of PoolNodeAz objects |
参数解释:资源池中期望创建的资源规格实例的az分布。 |
nodePool |
String |
参数解释:节点池ID。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
scopeType |
String |
参数解释:资源池的业务类型。 取值范围:可选值如下:
|
state |
String |
参数解释:资源池业务类型状态。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
gpu |
PoolDriverStatus object |
参数解释:资源池GPU驱动状态。 取值范围:不涉及。 |
npu |
PoolDriverStatus object |
参数解释:资源池NPU驱动状态。 取值范围:不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
version |
String |
参数解释:资源池当前驱动版本。 取值范围:不涉及。 |
state |
String |
参数解释:资源池当前驱动状态。 取值范围:可选值如下:
|
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
参数解释:集群名称。 取值范围:不涉及。 |
clusterFlavor |
String |
参数解释:标准池的集群规格。 取值范围:不涉及。 |
type |
String |
参数解释:资源池集群的类型。 取值范围:不涉及。 |
version |
String |
参数解释:集群的版本号。 取值范围:不涉及。 |
plugins |
plugins object |
参数解释:集群支持的插件名称。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:ModelArts错误码。 取值范围:不涉及。 |
error_msg |
String |
参数解释:具体错误信息。 取值范围:不涉及。 |
状态码:409
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释:ModelArts错误码。 取值范围:不涉及。 |
error_msg |
String |
参数解释:具体错误信息。 取值范围:不涉及。 |
请求示例
创建专属资源池。设置资源类型为“Pool”,资源池名称为“pool-001”,资源池类型为“Dedicate”(物理资源池),资源池支持的作业类型为“训练作业”。
POST https://{endpoint}/v2/{project_id}/pools { "kind" : "Pool", "apiVersion" : "v2", "metadata" : { "labels" : { "os.modelarts/name" : "pool-001", "os.modelarts/workspace.id" : "0" }, "annotations" : { "os.modelarts/description" : "", "os.modelarts/billing.mode" : "0" } }, "spec" : { "type" : "Dedicate", "scope" : [ "Train" ], "network" : { "name" : "net-0123-86c13962597848eeb29c5861153a391f" }, "resources" : [ { "flavor" : "modelarts.vm.gpu.tnt004", "count" : 2 } ], "driver" : { "gpuVersion" : "440.31" } } }
响应示例
状态码:400
Bad request
{ "error_code" : "ModelArts.50004000", "error_msg" : "Bad request" }
状态码:409
Already exists
{ "error_code" : "ModelArts.50015000", "error_msg" : "Pool already exists." }
状态码
状态码 |
描述 |
---|---|
200 |
OK。 |
400 |
Bad request |
409 |
Already exists |
错误码
请参见错误码。