全部產品
Search
文件中心

Auto Scaling:ModifyScalingRule

更新時間:Jan 14, 2025

建立伸縮規則後,如果當前伸縮規則不再滿足需求,您可以調用API ModifyScalingRule修改一項或多項伸縮規則屬性,無需重新建立新的伸縮規則,避免不必要的重複操作,節約時間和資源成本。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

請求參數

名稱

類型

是否必選

樣本值

描述

Action String ModifyScalingRule

系統規定參數。取值:ModifyScalingRule

ScalingRuleId String asr-bp1dvirgwkoowxk7****

待修改伸縮規則的ID。

ScalingRuleName String scalingrule****

伸縮規則的名稱,由2~64個字元組成,以數字、大小字母或中文開頭,可包含數字、底線(_)、短劃線(-)或半形句號(.)。

說明 同一使用者帳號同一地區同一伸縮組內伸縮規則唯一。
Cooldown Integer 60

伸縮規則的冷卻時間,僅適用於簡單規則。

取值範圍:0~86400,單位:秒。

MinAdjustmentMagnitude Integer 1

伸縮規則最小調整執行個體數,僅當伸縮規則類型為SimpleScalingRuleStepScalingRule,且AdjustmentTypePercentChangeInCapacity時生效。

AdjustmentType String QuantityChangeInCapacity

伸縮規則的調整方式,適用於簡單規則和步進規則,且此時該項必選。取值範圍:

  • QuantityChangeInCapacity:增加或減少指定數量的ECS執行個體。
  • PercentChangeInCapacity:增加或減少指定比例的ECS執行個體。
  • TotalCapacity: 將當前伸縮組的ECS執行個體數量調整到指定數量。
AdjustmentValue Integer 100

伸縮規則的調整值,適用於簡單規則和步進規則,且此時該項必選。任何情況下,單次調整的ECS執行個體台數都不能超過1000。不同調整方式對應的取值範圍:

  • QuantityChangeInCapacity:-1000~1000。
  • PercentChangeInCapacity:-100~10000。
  • TotalCapacity:0~2000。
EstimatedInstanceWarmup Integer 60

執行個體預熱時間,適用於目標追蹤規則和步進規則。處於預熱狀態的ECS執行個體將正常的加入伸縮組,但是期間將不會向CloudMonitor上報監控資料。

說明 動態計算需要擴縮容的ECS執行個體數量時,處於預熱狀態的執行個體不計入現有執行個體數量。

取值範圍:0~86400,單位:秒。

MetricName String CpuUtilization

預定義監控項,適用於目標追蹤規則和預測規則,且此時該項必選。

目標追蹤規則取值範圍:

  • CpuUtilizationAgent:(Agent)CPU使用率(推薦)。
  • MemoryUtilization:(Agent)記憶體(推薦)。
  • CpuUtilization:(ECS)平均CPU使用率。
  • IntranetTx:(ECS)內網出流量的平均值。
  • IntranetRx:(ECS)內網入流量的平均值。
  • VpcInternetTx:(ECS)公網出流量的平均值。
  • VpcInternetRx:(ECS)公網入流量的平均值。
  • LoadBalancerRealServerAverageQps:(ALB)伺服器組單機QPS。

預測規則取值範圍:

  • CpuUtilization:(ECS)平均CPU使用率。
  • IntranetRx:(ECS)內網入流量平均值。
  • IntranetTx :(ECS)內網出流量平均值。

更多資訊,請參見系統監控警示任務

TargetValue Float 0.125

目標值,適用於目標追蹤規則和預測規則。TargetValue最多保留小數點後三位,且必須大於0。

DisableScaleIn Boolean true

是否禁用縮容,僅適用於目標追蹤規則。

ScaleInEvaluationCount Integer 15

建立目標追蹤規則後,會自動建立警示任務。本參數用於指定對應的縮容警示任務觸發警示時,所需連續滿足閾值條件的次數。

ScaleOutEvaluationCount Integer 3

建立目標追蹤規則後,會自動建立警示任務。本參數用於指定對應的擴容警示任務觸發警示時,所需連續滿足閾值條件的次數。

PredictiveScalingMode String PredictAndScale

預測規則的模式。取值範圍:

  • PredictAndScale:產生預測結果並建立預測任務。
  • PredictOnly:產生預測結果,但不會建立預測任務。
PredictiveValueBehavior String MaxOverridePredictiveValue

預測規則最大值處理方式。取值範圍:

  • MaxOverridePredictiveValue:初始最大值會覆蓋預測值。預測值大於初始最大值時,預測任務的最大值採用初始最大值。
  • PredictiveValueOverrideMax:預測值會覆蓋初始最大值。預測值大於初始最大值時,預測任務的最大值採用預測值。
  • PredictiveValueOverrideMaxWithBuffer:預測值會附加一定比例。預測值會按照PredictiveValueBuffer比例增加,當增加後的值大於初始最大值時,會採用增加後的值。
PredictiveValueBuffer Integer 50

PredictiveValueBehaviorPredictiveValueOverrideMaxWithBuffer時生效,預測值會按照該比例增加,當增加後的值大於初始最大值時,會採用增加後的值。取值範圍:0~100。

PredictiveTaskBufferTime Integer 30

預測規則自動建立的預測任務預設均在整點執行,您可以設定開機前時間提前執行預測任務,預先準備資源。取值範圍:0~60。

InitialMaxSize Integer 100

伸縮組執行個體數上限,和PredictiveValueBehavior結合使用。

StepAdjustment.N.MetricIntervalUpperBound Float 5.0

分步步驟的上邊界,僅適用於步進規則。取值範圍:-9.999999E18~9.999999E18。

StepAdjustment.N.ScalingAdjustment Integer 1

分步步驟對應的執行個體擴充數量,僅適用於步進規則。

StepAdjustment.N.MetricIntervalLowerBound Float 1.0

分步步驟的下邊界,僅適用於步進規則。取值範圍:-9.999999E18~9.999999E18。

AlarmDimension.N.DimensionKey String rulePool

監控項關聯的維度資訊鍵。

AlarmDimension.N.DimensionValue String sgp-l1cbirz451yxu2****

監控項關聯的維度資訊值。

返回資料

名稱

類型

樣本值

描述

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

請求ID。

樣本

請求樣本

http(s)://ess.aliyuncs.com/?Action=ModifyScalingRule
&ScalingRuleId=asr-bp1dvirgwkoowxk7****
&ScalingRuleName=scalingrule****
&Cooldown=60
&MinAdjustmentMagnitude=1
&AdjustmentType=QuantityChangeInCapacity
&AdjustmentValue=100
&EstimatedInstanceWarmup=60
&MetricName=CpuUtilization
&TargetValue=0.125
&DisableScaleIn=true
&ScaleInEvaluationCount=15
&ScaleOutEvaluationCount=3
&PredictiveScalingMode=PredictAndScale
&PredictiveValueBehavior=MaxOverridePredictiveValue
&PredictiveValueBuffer=50
&PredictiveTaskBufferTime=30
&InitialMaxSize=100
&StepAdjustment=[{"MetricIntervalUpperBound":5.0,"ScalingAdjustment":1,"MetricIntervalLowerBound":1.0}]
&AlarmDimension=[{"DimensionKey":"rulePool","DimensionValue":"sgp-l1cbirz451yxu2****"}]
&公用請求參數

正常返回樣本

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<ModifyScalingRuleResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</ModifyScalingRuleResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。

HttpCode

錯誤碼

錯誤資訊

描述

404

InvalidScalingRuleId.NotFound

The specified scaling rule does not exist.

指定的伸縮組規則在該使用者帳號下不存在。

400

InvalidScalingRuleName.Duplicate

The specified value of parameter <parameter name> is duplicated.

伸縮規則名字已存在。

400

QuotaExceeded.ScalingRule

Scaling rule quota exceeded in the specified scaling group.

使用者的伸縮規則使用個數達到上限。

400

TargetTrackingScalingRule.UnsupportedMetric

Specific metric is not supported for target tracking scaling rule.

目標追蹤規則不支援當前監控指標。

400

TargetTrackingScalingRule.DumplicateMetric

Only one TargetTrackingScaling rule for a given metric specification is allowed.

一個伸縮組中,同一監控指標只能存在一條目標追蹤規則。

400

InvalidMinAdjustmentMagnitudeMismatchAdjustmentType

MinAdjustmentMagnitude is not supported by the specified adjustment type.

MinAdjustmentMagnitude不支援當前伸縮規則調整類型。

400

InvalidStepAdjustments.MultipleNullUpperBound

At most one StepAdjustment may have an unspecified upper bound.

最多隻能有一個分步步驟不指定分步上界。

400

InvalidStepAdjustments.MultipleNullLowerBound

At most one StepAdjustment may have an unspecified lower bound.

最多隻能有一個分步步驟不指定分步下界。

400

InvalidStepAdjustments.NoNullLowerBound

There must be a StepAdjustment with an unspecified lower bound when one StepAdjustment has a negative lower bound.

當存在一個分步下界為負數時,則必須有一個未指定分步下界的分步步驟。

400

InvalidStepAdjustments.NoNullUpperBound

There must be a StepAdjustment with an unspecified upper bound when one StepAdjustment has a positive upper bound.

當存在一個正數的分步上界時,則必有一個未指定分步上界的分步步驟。

400

InvalidStepAdjustments.Gap

StepAdjustment intervals can not have gaps between them.

分步步驟之間不能有間隔。

400

InvalidStepAdjustments.Overlap

StepAdjustment intervals can not overlap.

分步步驟之間不能重疊。

400

InvalidStepAdjustments.LowerGtUpper

LowerBound must be less than the UpperBound for StepAdjustment :%s.

同一分步步驟中,分步下界必須小於分步上界。

400

InvalidStepAdjustments.BothNull

Both lower and upper bounds of a StepAdjustment can not be left unspecified.

同一分步步驟中,分步上界和分步下界不能同時不指定。

400

InvalidStepAdjustments.MaxNum

Your scaling rule can have at most %s StepAdjustments.

同一伸縮組中分步步驟數量超過閾值。

400

StepBeyondPermitRange

Specific parameter "%s" beyond permit range.

分步步驟的上界或下界超過了可選範圍。