调用ApplyNodes添加一个或多个按量计费或抢占式计算节点到指定集群中。

接口说明

该接口支持按照节点数量或节点设置的vCPU个数、内存大小等维度灵活申请所需资源。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ApplyNodes

系统规定参数。取值:ApplyNodes

ClusterId String ehpc-hz-FYUr32****

待添加节点的集群ID。

您可以通过调用ListClusters获取集群ID。

ImageId String centos_7_06_64_20G_alibase_20190711.vhd

待添加节点的镜像ID,仅在未指定TargetImageId时,ImageId生效。

您可以通过调用ListImagesListCustomImages接口获取镜像ID。

说明 如果添加多个节点,仅指定了TargetImageId的节点会使用TargetImageId。
ComputeSpotStrategy String NoSpot

计算节点抢占策略。取值范围:

  • NoSpot:按量计费节点。
  • SpotWithPriceLimit:设置上限价格的抢占式节点。
  • SpotAsPriceGo:系统自动出价,跟随当前市场实际价格的抢占式节点。

默认值:NoSpot

ComputeSpotPriceLimit Float 0.68

计算节点每小时最高价格,取值是浮点数,最多支持3位小数。参数SpotStrategy取值为SpotWithPriceLimit时生效。

限制说明:仅在未指定MaxPrice时,ComputeSpotPriceLimit生效。

说明 如果添加多个节点,仅指定了MaxPrice的节点会使用MaxPrice。
SystemDiskType String cloud_ssd

系统盘的云盘类型。取值范围:

  • cloud_efficiency:高效云盘
  • cloud_ssd:SSD云盘
  • cloud_essd:ESSD云盘
  • cloud:普通云盘,已停售
SystemDiskSize Integer 40

系统盘的大小。单位:GiB

取值范围:40~500

默认值:40

HostNamePrefix String compute

主机名前缀。方便您分类管理节点。

HostNameSuffix String 01

主机名后缀。方便您分类管理节点。

AllocatePublicAddress Boolean false

是否分配公网地址。取值范围:

  • true:分配公网地址
  • false:不分配公网地址

默认值:false

InternetChargeType String PayByTraffic

弹性公网IP付费类型。取值范围:

  • PayByBandwidth:按固定带宽收费
  • PayByTraffic:按使用流量计费
InternetMaxBandWidthIn Integer 10

公网入带宽最大值,单位为Mbit/s。取值范围:

  • 当所购公网出带宽小于等于10Mbit/s时:1~10,默认为10。
  • 当所购公网出带宽大于10Mbit/s时:1~InternetMaxBandWidthOut的取值,默认为InternetMaxBandWidthOut的取值。
InternetMaxBandWidthOut Integer 10

公网出带宽最大值,单位为Mbit/s。取值范围:0~100

默认值:0

ZoneInfos.N.ZoneId String cn-hangzhou-b

待添加节点的可用区ID。

ZoneInfos.N.VSwitchId String vsw-bp1e47optm9g58zcu****

待添加节点的交换机ID。

Cores Integer 2

vCPU个数。当参数ResourceAmountType为Cores时,该参数为必选。

同时指定CPU和Memory可以定义节点规格。例如,vCPU=2、Memory=16可以定义配置为2 vCPU、16 GiB的所有节点规格。结合节点规格、可用区等因素确定可用节点规格集合,并根据价格排序为您创建价格最低的节点。

Memory Integer 16

内存大小,当参数ResourceAmountType为Cores时,该参数为必选。单位:GiB。

同时指定CPU和Memory可以定义节点规格。例如,vCPU=2、Memory=16可以定义配置为2 vCPU、16 GiB的所有节点规格。结合节点规格、可用区等因素确定可用节点规格集合,并根据价格排序为您创建价格最低的节点。

InstanceFamilyLevel String EntryLevel

实例规格族级别,在指定Cores和Memory时才生效。取值范围:

  • EntryLevel:入门级。
  • EnterpriseLevel:企业级。
  • CreditEntryLevel:积分入门级。更多信息,请参见突发性能实例

默认值:EnterpriseLevel

InstanceTypeModel.N.InstanceType String ecs.n1.tiny

待添加的节点规格,默认使用上次扩容或者创建集群时的计算节点规格。

InstanceTypeModel.N.MaxPrice Float 0.034

您可以为该节点支付的每小时最高价格。取值是浮点数,最多支持3位小数。

当参数ComputeSpotStrategy取值为NoSpot时才生效。

InstanceTypeModel.N.TargetImageId String win2016_1607_x64_dtc_zh-cn_40G_alibase_20210516.vhd

待添加节点的镜像ID,该镜像必须为Windows镜像。

TargetCapacity Integer 20

期望添加的资源数量,具体资源数量依赖ResourceAmountType取值。

  • 当ResourceAmountType取值为Instance时,TargetCapacity取值范围:1~100
  • 当ResourceAmountType取值为Cores时,TargetCapacity取值范围:1~1000
ResourceAmountType String Instance

期望添加的资源类型。取值范围:

  • Instance:计算节点数量
  • Cores:vCPU个数

默认值:Instance

PriorityStrategy String LowPriceResourcePlanning

抢占式节点申请策略。取值范围:

  • LowPriceResourcePlanning:按vCPU单价从低到高进行尝试创建。当设置了抢占式计费方式的多节点规格时,优先创建对应抢占式计费节点。
  • CapacityOptResourcePlanning:按照价格更低及释放率更低的方式综合编排创建。
StrictSatisfiedTargetCapacity Boolean true

是否满足TargetCapacity的数量要求。取值范围:

  • true:如果库存不足,则不创建任何节点并返回报错。如果库存充足,会存在以下两种情况:
    • StrictResourceProvision为true:检查库存,如果库存充足才会创建节点,并严格按期望数量创建节点,否则就不创建任何节点。
    • StrictResourceProvision为false:检查库存,如果库存充足才会创建节点,但实际可能会因为先查询库存量,创建节点时实时库存不足而创建部分节点。
  • false:如果库存不足,则按库存量创建部分节点。

默认值:true

SystemDiskLevel String PL0

创建ESSD云盘作为系统盘使用时,设置云盘的性能等级。取值范围:

  • PL0:单盘最高随机读写IOPS 1万
  • PL1:单盘最高随机读写IOPS 5万
  • PL2:单盘最高随机读写IOPS 10万
  • PL3:单盘最高随机读写IOPS 100万

默认值:PL0

关于如何选择ESSD性能等级,请参见ESSD云盘

StrictResourceProvision Boolean false

是否必须满足TargetCapacity的数量要求。当StrictSatisfiedTargetCapacity为true时生效。取值范围:

  • true:检查库存,如果库存充足才会创建节点,并严格按期望数量创建节点,否则就不创建任何节点。
  • false:检查库存,如果库存充足才会创建节点,但实际可能会因为先查询库存量,创建节点时实时库存不足而创建部分节点。

默认值:false

返回数据

名称 类型 示例值 描述
Detail String Resources Application is satisfied. Creating...

API调用结果详情。

InstanceIds List null

实例ID。

说明 由于AddNodes是异步操作,请求成功就会立即返回结果,不会等待实例创建成功,因此InstanceIds内容为空。您可以通过 ListNodes获取InstanceId。
RequestId String B745C159-3155-4B94-95D0-4B73D4D2****

任务ID。

SatisfiedAmount Integer 10

创建成功的计算节点数量。

TaskId String B745C159-3155-4B94-95D0-4B73D4D2****

请求ID。

示例

请求示例

http(s)://ehpc.cn-hangzhou.aliyuncs.com/?Action=ApplyNodes
&ClusterId=ehpc-hz-FYUr32****
&<公共请求参数>

正常返回示例

XML格式

<ApplyNodes>
  <TaskId>B745C159-3155-4B94-95D0-4B73D4D2****</TaskId>
  <SatisfiedAmount>10</SatisfiedAmount>
  <RequestId>B745C159-3155-4B94-95D0-4B73D4D2****</RequestId>
  <InstanceIds>
        <InstanceId>null</InstanceId>
  </InstanceIds>
  <Detail>Resources Application is satisfied. Creating...</Detail>
</ApplyNodes>

JSON格式

{
    "TaskId": "B745C159-3155-4B94-95D0-4B73D4D2****",
    "SatisfiedAmount": 10,
    "RequestId": "B745C159-3155-4B94-95D0-4B73D4D2****",
    "InstanceIds": {
        "InstanceId": "null"
    },
    "Detail": "Resources Application is satisfied. Creating..."
}

错误码

HttpCode 错误码 错误信息 描述
503 ServiceUnavailable The request has failed due to a temporary failure of the server 请求失败,服务暂时不可用

访问错误中心查看更多错误码。