文档

ScaleWithAdjustment - 基于指定调整规则触发性扩缩容

区别于ExecuteScalingRule接口,您无需提前创建伸缩规则,直接调用API ScaleWithAdjustment接口快速基于指定调整规则触发弹性扩缩容。

接口说明

  • 调用该接口前,请确保满足以下条件:
    • 伸缩组处于 Active 状态。
    • 伸缩组内没有执行中的伸缩活动。
  • 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(Cooldown)直接执行伸缩活动。
  • 如果伸缩规则需要增加的 ECS 实例数加上当前伸缩组的实例数(Total Capacity)大于最大实例数(MaxSize),则按 Total Capacity=MaxSize 执行伸缩活动。
  • 如果当前伸缩组内的实例数(Total Capacity)减去伸缩规则需要减少的 ECS 实例数小于最小实例数(MinSize),则按 Total Capacity=MinSize 执行伸缩活动。

调用该接口返回成功,只是表示弹性伸缩服务接受了该接口的调用请求,可以执行伸缩活动,但不代表伸缩活动能够执行成功。您需要通过返回的ScalingActivityId查看该伸缩活动的执行状态。

调试

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

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ess:ScaleWithAdjustmentWrite
  • 全部资源
    *

请求参数

名称类型必填描述示例值
ScalingGroupIdstring

伸缩组的 ID。

asg-j6c1o397427hyjdc****
AdjustmentTypestring

伸缩活动调整方式,取值范围:

  • QuantityChangeInCapacity:增加或减少指定数量的 ECS 实例。
  • PercentChangeInCapacity:增加或减少指定比例的 ECS 实例。
  • TotalCapacity:将当前伸缩组的 ECS 实例数量调整到指定数量。
QuantityChangeInCapacity
AdjustmentValueinteger

伸缩活动调整值。任何情况下,单次调整的 ECS 实例台数都不能超过 1000,否则会导致调整失败。不同调整方式对应的取值范围:

  • QuantityChangeInCapacity:-1000~1000。
  • PercentChangeInCapacity:-100~10000。
  • TotalCapacity:0~2000。
100
MinAdjustmentMagnitudeinteger

伸缩活动最小调整实例数,仅当AdjustmentTypePercentChangeInCapacity时生效。

1
ClientTokenstring

用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过 64 个 ASCII 字符,且该参数值中不能包含非 ASCII 字符。

123e4567-e89b-12d3-a456-42665544****
SyncActivityboolean

伸缩活动同步执行开关,仅对具有期望实例数配置项的伸缩组有效。取值范围:

  • true:同步流程,即执行伸缩规则时会直接触发伸缩组的扩缩容活动。
  • false:异步流程,即修改伸缩组内的期望实例数时,不会立刻触发伸缩组的实际扩缩容活动,需等待期望实例数变化后,系统自动检测期望实例数与伸缩组内当前实例数不一致,才会触发扩缩容活动。
说明 关于期望实例数的更多信息,请参见期望实例数

默认值:false。

false
Overridesobject

ECI 伸缩组扩容指定覆写参数。

Cpufloat

实例级别 vCPU 大小。单位:核。

2
Memoryfloat

实例级别内存大小。单位:GiB。

4
ContainerOverridesobject []

覆写容器列表参数。

Namestring

容器名称。当需要覆写容器参数时,必须指定容器名称,容器名称与伸缩配置容器名称相匹配时,方可覆写容器参数。

container-1
Argsarray

容器启动命令对应的参数。最多 10 个。

string

容器启动命令对应的参数。最多 10 个。

arg
Commandsarray

容器启动命令。最多 20 个。每个命令最多包含 256 个字符。

string

容器启动命令。最多 20 个。每个命令最多包含 256 个字符。

sleep
EnvironmentVarsobject []

环境变量的信息列表。

Keystring

环境变量名。长度为 1~128 个字符。格式要求:[0-9a-zA-Z],以及下划线(_),不能以数字开头。

PATH
Valuestring

环境变量值。长度为 0~256 位。

/usr/local/tomcat
Cpufloat

容器 vCPU 核数。单位:核。

2
Memoryfloat

容器内存大小。单位:GiB。

4
LifecycleHookContextobject

生命周期挂钩上下文信息。

DisableLifecycleHookboolean

伸缩活动禁用所有生命周期挂钩。取值范围:

  • true:禁用。
  • false:不禁用。
false
IgnoredLifecycleHookIdsarray

伸缩活动禁用的生命周期挂钩 ID 列表。

string

伸缩活动禁用的生命周期挂钩 ID 列表。

ash-bp14zolna43z266bq***
ActivityMetadatastring

伸缩活动的元数据。

{"key":"value"}

返回参数

名称类型描述示例值
object
ScalingActivityIdstring

伸缩活动的 ID。

asa-bp175o6f6ego3r2j****
RequestIdstring

请求 ID。

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****
ActivityTypestring

伸缩活动的类型。

ActivityType 为 CapacityChange时,表示返回值ScalingActivityId对应伸缩活动仅修改伸缩组期望实例数,没有立刻执行扩缩。

适用范围:期望实例数类型伸缩组。

CapacityChange

示例

正常返回示例

JSON格式

{
  "ScalingActivityId": "asa-bp175o6f6ego3r2j****",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "ActivityType": "CapacityChange"
}

错误码

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

变更历史

变更时间变更内容概要操作
2024-03-13OpenAPI 入参发生变更看变更集
变更项变更内容
入参OpenAPI 入参发生变更
    新增入参:LifecycleHookContext
    新增入参:ActivityMetadata
2023-12-06OpenAPI 入参发生变更看变更集
变更项变更内容
入参OpenAPI 入参发生变更
    新增入参:Overrides