调用SetAutoScaleConfig设置指定集群的自动伸缩配置信息。

接口说明

当队列配置和全局配置中配置不一致时,以队列设置为优先。

调试

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

请求参数

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

系统规定参数。取值:SetAutoScaleConfig

ClusterId String ehpc-hz-FYUr32****

集群ID。

MaxNodesInCluster Integer 100

集群最多可以扩容的计算节点数量。取值范围:0~500

默认值:100

EnableAutoGrow Boolean false

是否开启自动扩容。取值范围:

  • true:开启自动扩容
  • false:不开启自动扩容

默认值: false

EnableAutoShrink Boolean false

是否开启自动缩容。取值范围:

  • true:开启自动缩容
  • false:不开启自动缩容

默认值: false

GrowIntervalInMinutes Integer 2

每轮计算节点扩容的时间间隔。单位:分钟

取值范围:2~10

默认值:2

说明 一次扩容任务可能会分几次完成,或者连续触发扩容时的时间间隔。
ShrinkIntervalInMinutes Integer 2

每轮计算节点收缩的时间间隔。单位:分钟

取值范围:2~10

默认值:2

ShrinkIdleTimes Integer 3

节点连续空闲(未运行作业)次数。节点收缩检查时,一个节点连续处于空闲状态的次数。

取值范围:2~5

默认值:3

如果设置为3,表示一个计算节点连续空闲超过3次,就会被释放。因为ShrinkIntervalInMinutes默认值是2分钟,所以默认配置下,一个计算节点连续空闲时间超过6分钟,就会被释放。

GrowTimeoutInMinutes Integer 20

扩容超时时间。单位:分钟

取值范围:10~60

默认值:20

如果扩容时间大于扩容超时时间,节点依然未达到运行状态,该节点将被释放。

ExtraNodesGrowRatio Integer 0

额外节点百分比。取值范围:0~100

默认值:0

如果作业负载需要新增100个计算节点,ExtraNodesGrowRatio值为2,那么最终新增数量为102。

GrowRatio Integer 50

扩容比例。取值范围:1~100

默认值:100

如果作业负载需要新增10个计算节点,GrowRatio配置为50,那么会进行多轮扩容,每轮扩容当前所需的50%节点。

ExcludeNodes String i-bp19lgqwxb4206t5****,i-bp1g4hvzs9pywrhb****

例外节点列表,不参与自动伸缩的节点列表。节点之间用半角逗号(,)隔开。

如果您希望一直保留某个节点,可以设置为例外节点,空闲时不被释放。

SpotStrategy String SpotWithPriceLimit

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

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

默认值:NoSpot

SpotPriceLimit Float 0.062

设置节点的每小时最高价格,最多支持3位小数。参数SpotStrategy取值为SpotWithPriceLimit时生效。

Queues.N.QueueName String cluster1

队列名称。支持同时设置N个队列的名称,N的取值范围:1~8

Queues.N.InstanceTypes.N.InstanceType String ecs.n1.tiny

队列中自动扩容的节点规格。

支持同时设置N个队列的名称,N的取值范围:1~8

队列自动扩容时支持同时为队列中N个节点设置规格参数,N的取值范围:0~500

Queues.N.InstanceTypes.N.SpotStrategy String SpotWithPriceLimit

队列中自动扩容的计算节点竞价策略。取值范围:

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

默认值:NoSpot

支持同时设置N个队列的名称,N的取值范围:1~8

队列自动扩容时支持同时为队列中N个节点设置计算节点竞价策略,N的取值范围:0~500

Queues.N.InstanceTypes.N.SpotPriceLimit Float 0.660

队列中自动扩容的节点每小时最高价格,支持最多3位小数。参数Queues.N.InstanceTypes.N.SpotStrategy取值为SpotWithPriceLimit时生效。

支持同时设置N个队列的名称,N的取值范围:1~8

队列自动扩容时支持同时为队列中N个节点设置每小时最高价格,N的取值范围:0~500

Queues.N.InstanceTypes.N.ZoneId String cn-hangzhou-b

队列中自动扩容的节点所在可用区ID。

支持同时设置N个队列的名称,N的取值范围:1~8

队列自动扩容时支持同时为队列中N个节点设置可用区ID,N的取值范围:0~500

Queues.N.InstanceTypes.N.VSwitchId String vsw-bp1lfcjbfb099rrjn****

队列中自动扩容的节点绑定的交换机ID。

支持同时设置N个队列的名称,N的取值范围:1~8

队列自动扩容时支持同时为队列中N个节点设置交换机ID,N的取值范围:0~500

Queues.N.InstanceType String ecs.n1.medium

队列中自动扩容的节点规格。N的取值范围:1~8

Queues.N.SpotStrategy String NoSpot

队列中自动扩容的计算节点的抢占策略。N的取值范围:1~8

抢占策略取值范围为:

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

默认值:NoSpot

Queues.N.SpotPriceLimit Float 0.662

队列中自动扩容的计算节点的每小时最高价格,支持最多3位小数。参数Queues.N.SpotStrategy取值为SpotWithPriceLimit时生效。

N的取值范围:1~8

Queues.N.EnableAutoGrow Boolean false

队列是否允许自动扩容。取值范围:

  • true:允许自动扩容
  • false:不允许自动扩容

N的取值范围:1~8

默认值:false

Queues.N.EnableAutoShrink Boolean false

队列是否允许自动缩容。取值范围:

  • true:允许自动缩容
  • false:不允许自动缩容

N的取值范围:1~8

默认值:false

Queues.N.MaxNodesInQueue Integer 30

队列允许扩容的最大节点数。取值范围:0~500

N的取值范围:1~8

默认值:100

Queues.N.MinNodesInQueue Integer 0

队列允许收缩的最小节点数。取值范围:0~50

N的取值范围:1~8

默认值:0

Queues.N.QueueImageId String centos_7_03_64_20G_alibase_201708****

扩容队列的镜像ID。N的取值范围:1~8

说明
  • 如果同时设置了Queues.N.QueueImageIdImageId时,默认使用Queues.N.QueueImageId
  • 如果设置了Queues.N.QueueImageIdImageId,以设置的参数为准。
  • 如果Queues.N.QueueImageIdImageId都为空,则默认使用集群上次扩容的镜像,若之前没有进行过扩容,则默认使用创建集群时的镜像。
Queues.N.HostNamePrefix String compute

队列中扩容的主机名前缀。方便您管理具有指定前缀的节点。

N的取值范围:1~8

Queues.N.HostNameSuffix String 000

队列中扩容的主机名后缀。方便您管理具有指定后缀的节点。

N的取值范围:1~8

Queues.N.SystemDiskSize Integer 40

队列中扩容的节点系统盘大小。单位:GB

取值范围:40~500

N的取值范围:1~8

默认值:40

Queues.N.SystemDiskCategory String cloud_efficiency

队列中扩容的计算节点系统盘类型。取值范围:

  • cloud_efficiency:高效云盘
  • cloud_ssd:SSD云盘
  • cloud_essd:ESSD云盘
  • cloud:普通云盘,已售罄

N的取值范围:1~8

默认值:cloud_efficiency

Queues.N.SystemDiskLevel String PL1

队列中扩容的计算节点系统盘性能等级。取值范围:

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

N的取值范围:1~8

默认值:PL1

ImageId String centos_7_03_64_20G_alibase_201708****

镜像ID。

说明
  • 如果同时设置了Queues.N.QueueImageIdImageId时,默认使用Queues.N.QueueImageId
  • 如果设置了Queues.N.QueueImageIdImageId,以设置的参数为准。
  • 如果Queues.N.QueueImageIdImageId都为空,则默认使用集群上次扩容的镜像,若之前没有进行过扩容,则默认使用创建集群时的镜像。

返回数据

名称 类型 示例值 描述
RequestId String 04F0F334-13358736C-A1D7-6C044FE7****

请求ID。

示例

请求示例

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

正常返回示例

XML格式

<SetAutoScaleConfigResponse>
      <RequestId>04F0F334-13358736C-A1D7-6C044FE7****</RequestId>
</SetAutoScaleConfigResponse>

JSON格式

{
    "RequestId":"04F0F334-13358736C-A1D7-6C044FE7****"
}

错误码

HttpCode 错误码 错误信息 描述
400 InvalidParams The specified parameter %s is invalid. 无效的参数: %s
407 NotAuthorized You are not authorized by RAM for this request. 此请求未获得RAM授权
404 ClusterNotFound The specified cluster does not exist. 指定的集群不存在,请您检查该参数是否正确。
403 InvalidOpt The specified operation is invalid. Please try again later. If the problem still exists, submit a ticket. 未知的操作,请您稍后再试,若还出现相同的错误请提交工单处理。
406 DbError A database service error occurred. 数据库请求失败
500 UnknownError An unknown error occurred. 未知错误
403 TooManyComputes The number of computing nodes exceeds the quota. 计算节点数超过用户配额
404 ImageNotFound The specified image does not exist. 指定的镜像不存在,请您检查该参数是否正确。
503 ServiceUnavailable The request has failed due to a temporary failure of the server 请求失败,服务暂时不可用

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