更新时间:2025-07-28 GMT+08:00
分享

创建资源池

功能介绍

用户创建资源池。

调试

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

URI

POST /v2/{project_id}/pools

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-ModelArts-User-ID

String

实际的外部租户ID,如果有的话,工作空间鉴权以该ID为准。

表3 请求Body参数

参数

是否必选

参数类型

描述

apiVersion

String

API版本。可选值如下:

  • v2

kind

String

资源类型。可选值如下:

  • Pool:资源池

metadata

PoolMetadataCreation object

资源池的metadata信息。

spec

PoolSpecCreation object

资源池的描述信息。

表4 PoolMetadataCreation

参数

是否必选

参数类型

描述

labels

PoolLabelsCreation object

资源池的标签信息。

annotations

PoolAnnotationsCreation object

资源池的注释信息。

表5 PoolLabelsCreation

参数

是否必选

参数类型

描述

os.modelarts/name

String

用户指定的资源池名称。

os.modelarts/workspace.id

String

工作空间ID。获取方法请参见查询工作空间列表。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。

os.modelarts/node.prefix

String

自定义节点名称前缀。

表6 PoolAnnotationsCreation

参数

是否必选

参数类型

描述

os.modelarts/description

String

资源池的描述信息。

os.modelarts/billing.mode

String

计费模式,可选值如下:

  • 0:按需计费

  • 1:包周期计费

os.modelarts/period.num

String

包周期订购周期,比如2。当计费模式为包周期时该参数必传。

os.modelarts/period.type

String

包周期订购类型。可选值如下:

  • 2:月

  • 3:年

当计费模式为包周期时该参数必传。

os.modelarts/auto.renew

String

是否自动续费。可选值如下:

  • 0:不自动续费,默认值

os.modelarts/auto.pay

String

是否自动付费,仅在用户购买包周期资源时生效。可选值如下:

  • true:自动付费

  • false:手动付费,默认值

os.modelarts/promotion.info

String

用户在cbc选择的折扣信息。

os.modelarts/service.console.url

String

订购订单支付完成后跳转的url地址。

os.modelarts/order.id

String

订单id,包周期资源池创建或者计费模式变更的时候该参数必需。

表7 PoolSpecCreation

参数

是否必选

参数类型

描述

type

String

资源池类型。可选值如下:

  • Dedicate:物理资源池,独立的网络,支持网络打通,定制驱动,定制作业类型。

scope

Array of strings

资源池支持的作业类型。用户创建标准资源池时至少选择一种,物理资源池支持全部选择。可选值如下:

  • Train:训练作业

  • Infer:推理作业

  • Notebook:Notebook作业

resources

Array of PoolResourceFlavor objects

资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。

network

network object

资源池网络参数。创建物理资源池时必选。

jobFlavors

Array of strings

资源池支持的作业规格信息列表,内容为作业规格名称。

driver

PoolDriver object

资源池的驱动信息。

表8 PoolResourceFlavor

参数

是否必选

参数类型

描述

flavor

String

资源规格,比如:modelarts.vm.gpu.tnt004。

count

Integer

资源规格的保障资源量。

maxCount

Integer

资源规格的弹性资源量。物理池中该值和count必须一致。

extendParams

extendParams object

自定义配置参数。

os

Os object

自定义操作系统镜像信息。

表9 extendParams

参数

是否必选

参数类型

描述

dockerBaseSize

String

指定资源池节点的容器引擎空间大小。值为0时表示不限制大小。

表10 Os

参数

是否必选

参数类型

描述

name

String

参数解释:操作系统名称。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

imageId

String

参数解释:操作系统镜像ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

imageType

String

参数解释:操作系统镜像类型。

约束限制:不涉及。

取值范围:可选值如下:

  • private:私有镜像。

默认取值:不涉及。

表11 network

参数

是否必选

参数类型

描述

name

String

网络名称,即网络详情中的metadata.name字段的值。用户接口通过指定网络名称创建网络,系统会自动创建子网,用户无法创建子网。默认将创建在第一个子网下。

表12 PoolDriver

参数

是否必选

参数类型

描述

gpuVersion

String

参数解释:资源池默认的GPU驱动版本。

约束限制:物理资源池中包含GPU规格时有效。

取值范围:不涉及。

默认取值:不涉及。

npuVersion

String

参数解释:资源池默认的NPU驱动版本。

约束限制:物理资源池中包含NPU规格时有效。

取值范围:不涉及。

默认取值:不涉及。

updateStrategy

String

参数解释:资源池驱动升级策略。

约束限制:不涉及。

取值范围:可选值如下:

  • force:强制升级,立即升级节点驱动,可能影响节点上正在运行的作业。

  • idle:安全升级,待节点上没有作业运行时进行驱动升级。

默认取值:不涉及。

响应参数

状态码:200

表13 响应Body参数

参数

参数类型

描述

apiVersion

String

参数解释:资源的API版本。

约束限制:不涉及。

取值范围:可选值如下:

  • v2:当前资源版本为v2。

默认取值:不涉及。

kind

String

参数解释:资源的类型。

约束限制:不涉及。

取值范围:可选值如下:

  • Pool:资源池。

默认取值:不涉及。

metadata

PoolMetadata object

参数解释:资源池的元信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

spec

PoolSpecModel object

参数解释:资源池的规格信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

status

PoolStatus object

参数解释:资源池的状态信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表14 PoolMetadata

参数

参数类型

描述

name

String

参数解释:资源池的ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

creationTimestamp

String

参数解释:资源池的创建时间。例如"2025-11-01T03:49:41Z"。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

labels

PoolMetaLabels object

参数解释:资源池的标签信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

annotations

PoolMetaAnnotations object

参数解释:资源池的注释信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表15 PoolMetaLabels

参数

参数类型

描述

os.modelarts/workspace.id

String

参数解释:工作空间ID。获取方法请参见查询工作空间列表

约束限制:不涉及。

取值范围:不涉及。

默认取值:0。

os.modelarts/name

String

参数解释:资源池的显示名称。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

os.modelarts/resource.id

String

参数解释:资源池计费使用的资源ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

os.modelarts/tenant.domain.id

String

参数解释:资源池所属的租户ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表16 PoolMetaAnnotations

参数

参数类型

描述

os.modelarts/description

String

参数解释:资源池的描述信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

os.modelarts/billing.mode

String

参数解释:计费模式。

约束限制:不涉及。

取值范围:可选值如下:

  • 0:按需计费

  • 1:包周期计费

默认取值:不涉及。

os.modelarts/period.num

String

参数解释:包周期资源池的订购周期。

约束限制:和os.modelarts/period.type字段配合使用。

取值范围:不涉及。

默认取值:不涉及。

os.modelarts/period.type

String

参数解释:包周期资源池的订购类型。

约束限制:和os.modelarts/period.num字段配合使用。

取值范围:可选值如下:

  • 2:包月。

  • 3:包年。

默认取值:不涉及。

os.modelarts/auto.renew

String

参数解释:包周期资源池的自动续费类型。

约束限制:不涉及。

取值范围:可选值如下:

  • 0:不自动续费。

  • 1:自动续费。

默认取值: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

参数解释:资源池上的资源标签。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表17 PoolSpecModel

参数

参数类型

描述

type

String

参数解释:资源池类型。

约束限制:不涉及。

取值范围:可选值如下:

  • Dedicate:物理资源池,独立的网络,支持网络打通,定制驱动,定制作业类型。

  • Logical:逻辑资源池。没有独立的网络,不支持网络打通,资源池创建和扩缩容相较物理资源池更快。

默认取值:不涉及。

scope

Array of strings

参数解释:资源池支持的作业类型。

约束限制:不涉及。

取值范围:可选值如下:

  • Train:训练作业

  • Infer:推理作业

  • Notebook:Notebook作业

默认取值:不涉及。

resources

Array of resources objects

参数解释:资源池中的资源规格信列表,包括资源规格和相应规格的资源数量。

约束限制:至少包含一个资源信息。

取值范围:不涉及。

默认取值:不涉及。

network

network object

参数解释:资源池网络参数。

约束限制:物理资源池该参数必选。

取值范围:不涉及。

默认取值:不涉及。

jobFlavors

Array of strings

参数解释:资源池支持的作业规格列表。参数为作业规格名称。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

driver

PoolDriver object

参数解释:资源池驱动信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

controlMode

Integer

参数解释:资源池的受限状态。状态可以叠加,比如9代表转包周期受限和冻结状态。

约束限制:不涉及。

取值范围:可选值如下:

  • 0:代表不受限

  • 1:转包周期受限

  • 2:规格变更受限

  • 4:服务受限

  • 8:冻结

  • 16:公安冻结(不可退订)

默认取值:不涉及。

表18 resources

参数

参数类型

描述

flavor

String

参数解释:资源规格ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

count

Integer

参数解释:资源池中资源规格实例数量。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

azs

Array of PoolNodeAz objects

参数解释:资源池中期望创建的资源规格实例的az分布。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

extendParams

extendParams object

参数解释:资源池自定义配置参数。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

os

Os object

参数解释:资源池中节点操作系统镜像信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表19 extendParams

参数

参数类型

描述

dockerBaseSize

String

参数解释:资源池创建的节点的容器引擎空间大小。值为0时表示不限制大小。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表20 Os

参数

参数类型

描述

name

String

参数解释:操作系统名称。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

imageId

String

参数解释:操作系统镜像ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

imageType

String

参数解释:操作系统镜像类型。

约束限制:不涉及。

取值范围:可选值如下:

  • private:私有镜像。

默认取值:不涉及。

表21 network

参数

参数类型

描述

name

String

参数解释:网络ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表22 PoolDriver

参数

参数类型

描述

gpuVersion

String

参数解释:资源池默认的GPU驱动版本。

约束限制:物理资源池中包含GPU规格时有效。

取值范围:不涉及。

默认取值:不涉及。

npuVersion

String

参数解释:资源池默认的NPU驱动版本。

约束限制:物理资源池中包含NPU规格时有效。

取值范围:不涉及。

默认取值:不涉及。

updateStrategy

String

参数解释:资源池驱动升级策略。

约束限制:不涉及。

取值范围:可选值如下:

  • force:强制升级,立即升级节点驱动,可能影响节点上正在运行的作业。

  • idle:安全升级,待节点上没有作业运行时进行驱动升级。

默认取值:不涉及。

表23 PoolStatus

参数

参数类型

描述

phase

String

参数解释:资源池的状态。

约束限制:不涉及。

取值范围:可选值如下:

  • Creating:资源池在创建中。

  • Running:资源池在运行中。

  • Abnormal:资源池异常。

  • Deleting:资源池在删除中。

  • Error:资源池错误。

默认取值:不涉及。

message

String

参数解释:资源池当前状态的提示信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

resources

resources object

参数解释:资源池中不同状态的资源信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

scope

Array of scope objects

参数解释:资源池当前支持的业务类型的状态信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

driver

driver object

参数解释:资源池驱动状态信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

parent

String

参数解释:资源池所属父资源池的ID。物理池为空。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

root

String

参数解释:资源池根资源池的ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表24 resources

参数

参数类型

描述

creating

PoolResourceFlavorCount object

参数解释:资源池中创建状态的资源信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

available

PoolResourceFlavorCount object

参数解释:资源池中可用状态的资源信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

abnormal

PoolResourceFlavorCount object

参数解释:资源池中异常状态的资源信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

deleting

PoolResourceFlavorCount object

参数解释:资源池中删除中状态的资源信息。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表25 PoolResourceFlavorCount

参数

参数类型

描述

flavor

String

参数解释:资源规格ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

count

Integer

参数解释:资源池中资源规格实例数量。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

maxCount

Integer

参数解释:资源池中资源规格实例弹性数量。物理池中该值和count相同。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

azs

Array of PoolNodeAz objects

参数解释:资源池中期望创建的资源规格实例的az分布。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

nodePool

String

参数解释:节点池ID。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表26 PoolNodeAz

参数

参数类型

描述

az

String

参数解释:可用区名称。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

count

Integer

参数解释:可用区资源实例的数量。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表27 scope

参数

参数类型

描述

scopeType

String

参数解释:资源池的业务类型。

约束限制:不涉及。

取值范围:可选值如下:

  • Train:训练任务。

  • Infer:推理任务。

  • Notebook:Notebook作业。

默认取值:不涉及。

state

String

参数解释:资源池业务类型状态。

约束限制:不涉及。

取值范围:可选值如下:

  • Enabling:启动中。

  • Enabled:已启动。

  • Disabling:关闭中。

  • Disabled:已关闭。

默认取值:不涉及。

表28 driver

参数

参数类型

描述

gpu

PoolDriverStatus object

参数解释:资源池GPU驱动状态。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

npu

PoolDriverStatus object

参数解释:资源池NPU驱动状态。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

表29 PoolDriverStatus

参数

参数类型

描述

version

String

参数解释:资源池当前驱动版本。

约束限制:不涉及。

取值范围:不涉及。

默认取值:不涉及。

state

String

参数解释:资源池当前驱动状态。

约束限制:不涉及。

取值范围:可选值如下:

  • Creating:驱动安装中。

  • Upgrading:驱动升级中。

  • Running:驱动运行中。

  • Abnormal:驱动异常。

默认取值:不涉及。

状态码:400

表30 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:ModelArts错误码。

取值范围:不涉及。

error_msg

String

参数解释:具体错误信息。

取值范围:不涉及。

状态码:409

表31 响应Body参数

参数

参数类型

描述

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

错误码

请参见错误码

相关文档