接口说明
伸缩规则定义了具体的扩张或收缩操作,例如加入或移出 N 台实例。如果执行伸缩规则会造成伸缩组的 ECS 或 ECI 实例数低于 MinSize 或高于 MaxSize,则弹性伸缩会自动调整需要加入或移出的 ECS 或 ECI 实例数,使得伸缩组的 ECS 或 ECI 实例数调整到 MinSize 或 MaxSize,但伸缩规则的设定值不会变化。示例如下:
- 某个伸缩组,MaxSize=3,当前实例数 Total Capacity=2,伸缩规则指定加 3 台 ECS 实例,则在实际执行过程中只会加 1 台 ECS 实例,但伸缩规则的设定值仍然为 3。
- 某个伸缩组,MinSize=2,当前实例数 Total Capacity =3,伸缩规则指定减去 5 台 ECS 实例,则在实际执行过程中只会减 1 台 ECS 实例,但伸缩规则的设定值仍然为 5。
请注意以下参数相关说明:
- 当 AdjustmentType 是 TotalCapacity 时,表示将当前伸缩组的 ECS 或 ECI 实例数量调整到指定数量,对应的 AdjustmentValue 值必须大于等于 0。
- 当 AdjustmentType 是 QuantityChangeInCapacity 或 PercentChangeInCapacity,对应的 AdjustmentValue 值为正数表示增加实例、为负数表示减少实例。
- 当 AdjustmentType 是 PercentChangeInCapacity,弹性伸缩服务以伸缩组当前实例数(Total Capacity)xAdjusmentValue/100,并使用四舍五入原则来确认增加或减少的 ECS 实例或 ECI 实例个数。
- 当伸缩规则指定了冷却时间(Cooldown),则执行该伸缩规则的伸缩活动完成后,会以伸缩规则中指定的冷却时间对伸缩组进行冷却处理,如果伸缩规则未指定冷却时间,则以伸缩组指定的冷却时间(DefaultCooldown)为准。
- 一个伸缩组内可以创建的伸缩规则数量有限,具体说明请参见使用限制。
- 返回的伸缩规则唯一标识符(ScalingRuleAri)可以供以下接口使用:
- 在执行伸缩规则(ExecuteScalingRule)的 ScalingRuleAri 参数中指定,您可以手动执行该伸缩规则。
- 在创建定时任务(CreateScheduledTask)的 ScheduledAction 参数中指定,用户可以定时执行该伸缩规则。
流控信息
请求参数
字段名称 | 字段详情 |
---|---|
ScalingGroupIdstring | 伸缩规则所属伸缩组的 ID。 示例值:asg-bp1ffogfdauy0jw0****参考取值来源: ApplyScalingGroup CreateScalingGroup DescribeScalingGroups AttachServerGroups DetachServerGroups |
ScalingRuleNamestring | 伸缩规则的名称,2~64 个英文或中文字符,以数字、大小字母或中文开头,可包含数字、下划线(_)、连字符(-)或点号(.)。展开详情 示例值:scalingrule****参考取值来源: DescribeScalingRules |
Cooldowninteger<int32> | 伸缩规则的冷却时间,仅适用于简单规则。取值范围:0~86400,单位:秒。展开详情 示例值:60 |
MinAdjustmentMagnitudeinteger<int32> | 伸缩规则最小调整实例数,仅当伸缩规则类型为 SimpleScalingRule 或 StepScalingRule,且 AdjustmentType 为 PercentChangeInCapacity 时生效。 示例值:1 |
AdjustmentTypestring | 伸缩规则的调整方式,适用于简单规则和步进规则,且此时该项必选。取值范围:展开详情 示例值:QuantityChangeInCapacity |
AdjustmentValueinteger<int32> | 伸缩规则的调整值,适用于简单规则和步进规则,且此时该项必选。任何情况下,单次调整的 ECS 实例台数都不能超过 1000。不同调整方式对应的取值范围:展开详情 示例值:100 |
ScalingRuleTypestring | 伸缩规则类型,取值范围:展开详情 示例值:SimpleScalingRule参考取值来源: DescribeScalingRules |
EstimatedInstanceWarmupinteger<int32> | 实例预热时间,适用于目标追踪规则和步进规则。处于预热状态的 ECS 实例将正常的加入伸缩组,但是期间将不会向云监控上报监控数据。展开详情 示例值:300 |
MetricNamestring | 预定义监控项,适用于目标追踪规则和预测规则,且此时该项必选。展开详情 示例值:CpuUtilization |
TargetValuenumber<float> | 目标值,适用于目标追踪规则和预测规则,且此时该项必选。TargetValue 最多保留小数点后三位,且必须大于 0。 示例值:0.125 |
DisableScaleInboolean | 是否禁用缩容,仅适用于目标追踪规则。展开详情 示例值:false |
ScaleInEvaluationCountinteger<int32> | 创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的缩容报警任务触发报警时,所需连续满足阈值条件的次数。展开详情 示例值:15 |
ScaleOutEvaluationCountinteger<int32> | 创建目标追踪规则后,会自动创建报警任务。本参数用于指定对应的扩容报警任务触发报警时,所需连续满足阈值条件的次数。展开详情 示例值:3 |
PredictiveScalingModestring | 预测规则的模式,取值范围:展开详情 示例值:PredictAndScale参考取值来源: DescribeScalingRules |
PredictiveValueBehaviorstring | 预测规则最大值处理方式,取值范围:展开详情 示例值:MaxOverridePredictiveValue |
PredictiveValueBufferinteger<int32> |
示例值:50 |
PredictiveTaskBufferTimeinteger<int32> | 预测规则自动创建的预测任务默认均在整点执行,您可以设置预启动时间提前执行预测任务,预先准备资源。取值范围:0~60,单位:分钟。展开详情 示例值:30 |
InitialMaxSizeinteger<int32> | 伸缩组实例数上限,和 示例值:100 |
StepAdjustmentsarray<object> | 分步步骤对应的实例扩展信息组成的集合。 子级条数 <= 20 |
RegionIdstring | 伸缩组所属的地域 ID。 示例值:cn-hangzhou参考取值来源: DescribeRegions |
AlarmDimensionsarray<object> | 监控项维度信息值,适用于目标追踪规则,当监控项需额外维度信息时设置,例如 LoadBalancerRealServerAverageQps 监控项需指定 rulePool 维度键值信息。 子级条数 <= 5 |
MetricTypestring | 监控项类型。取值范围:展开详情 示例值:system |
HybridMonitorNamespacestring | 企业云监控指标仓库 id。展开详情 示例值:aliyun-test |
HybridMetricsarray<object> | 企业云监控指标设置。如何设置,请参见使用公式运算自定义目标追踪规则。 子级条数 <= 100 |
返回参数
字段名称 | 字段详情 |
---|---|
ScalingRuleAristring | 伸缩规则的唯一标识符。 示例值:ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7**** |
RequestIdstring | 请求 ID。 示例值:473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
ScalingRuleIdstring | 伸缩规则的 ID,由系统生成,全局唯一。 示例值:asr-bp1dvirgwkoowxk7**** |
返回示例
变更历史
变更时间 | 变更内容概要 | 操作 | |
---|---|---|---|
2024-09-13 | |||
2023-04-03 | |||
2022-09-09 |