Modifies a scaling rule. If an existing scaling rule cannot meet your business requirements, you can call the ModifyScalingRule operation to modify the scaling rule, without the need to create a new one. This streamlines your workflow, enhancing operational efficiency while also contributing to cost optimization by avoiding redundant steps.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
ess:ModifyScalingRule | update | *All Resources * |
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
ScalingRuleId | string | Yes | The ID of the scaling rule that you want to modify. | asr-bp1dvirgwkoowxk7**** |
ScalingRuleName | string | No | The name of the scaling rule. The name must be 2 to 64 letters in length and can contain letters, digits, underscores (_), hyphens (-), and periods (.). It must start with a letter or digit. The name of each scaling rule must be unique under the same account within the same region. | scalingrule**** |
Cooldown | integer | No | The cooldown time of the scaling rule. This parameter is available only if you set the ScalingRuleType parameter to SimpleScalingRule. Valid values: 0 to 86400. Unit: seconds. | 60 |
MinAdjustmentMagnitude | integer | No | The minimum number of instances to scale. This parameter takes effect only if you create a simple scaling rule or step scaling rule and set | 1 |
AdjustmentType | string | No | The adjustment method of the scaling rule. This is required when the ScalingRuleType parameter is set to SimpleScalingRule or StepScalingRule. Valid values:
| QuantityChangeInCapacity |
AdjustmentValue | integer | No | The target value specified in the scaling rule. This parameter is required when the ScalingRuleType parameter is set to SimpleScalingRule or StepScalingRule. The number of ECS instances that are scaled in a single scaling activity cannot exceed 1,000.
| 100 |
EstimatedInstanceWarmup | integer | No | The warmup period of an instance. This parameter is available only if you set the ScalingRuleType parameter to TargetTrackingScalingRule or PredictiveScalingRule. Auto Scaling adds ECS instances that are in the warmup state to a scaling group but does not report monitoring data to CloudMonitor during the warmup period. Note
Auto Scaling calculates the number of ECS instances that need to be scaled. ECS instances in the warmup state are not counted towards the current capacity of the scaling group.
Valid values: 0 to 86400. Unit: seconds. | 60 |
MetricName | string | No | The predefined metric. This parameter is required only if you create a target tracking scaling rule or predictive scaling rule. Valid values if you create a target tracking scaling rule:
Valid values if you create a predictive scaling rule:
For more information, see Event-triggered tasks of the system monitoring type. | CpuUtilization |
TargetValue | float | No | The target value. This parameter is available only if you set the ScalingRuleType parameter to TargetTrackingScalingRule or PredictiveScalingRule. The value must be greater than 0 and can have up to three decimal places. | 0.125 |
DisableScaleIn | boolean | No | Specifies whether to disable scale-in. This parameter is available only if you set the ScalingRuleType parameter to TargetTrackingScalingRule. | true |
ScaleInEvaluationCount | integer | No | The number of consecutive times that the event-triggered task created for scale-in activities must meet the threshold conditions before an alert is triggered. After a target tracking scaling rule is created, an event-triggered task is automatically created and then associated with the target tracking scaling rule. | 15 |
ScaleOutEvaluationCount | integer | No | The number of consecutive times that the event-triggered task created for scale-out activities must meet the threshold conditions before an alert is triggered. After a target tracking scaling rule is created, an event-triggered task is automatically created and then associated with the target tracking scaling rule. | 3 |
PredictiveScalingMode | string | No | The mode of the predictive scaling rule. Valid values:
| PredictAndScale |
PredictiveValueBehavior | string | No | Specifies which one of the initial maximum capacity and the predicted value can be used as the maximum value for prediction tasks. Valid values:
| MaxOverridePredictiveValue |
PredictiveValueBuffer | integer | No | The ratio based on which the predicted value is increased when | 50 |
PredictiveTaskBufferTime | integer | No | The amount of buffer time before the prediction task is executed. By default, all prediction tasks that are automatically created for a predictive scaling rule are executed on the hour. You can specify an amount of buffer time for resource preparation before the prediction tasks are executed. Valid values: 0 to 60. | 30 |
InitialMaxSize | integer | No | The maximum number of ECS instances that can be contained in the scaling group. If you specify InitialMaxSize, you must specify | 100 |
StepAdjustments | array<object> | No | Details of the step adjustments. | |
object | No | Details of the step adjustments. | ||
MetricIntervalUpperBound | float | No | The upper limit specified in a step adjustment. This parameter is available only if you set the ScalingRuleType parameter to StepScalingRule. Valid values: -9.999999E18 to 9.999999E18. | 5.0 |
ScalingAdjustment | integer | No | The number of ECS instances that you want to scale in a step adjustment. This parameter is available only if you set the ScalingRuleType parameter to StepScalingRule. | 1 |
MetricIntervalLowerBound | float | No | The lower limit that is specified in a step adjustment. This parameter is available only if you set the ScalingRuleType parameter to StepScalingRule. Valid values: -9.999999E18 to 9.999999E18. | 1.0 |
AlarmDimensions | array<object> | No | The dimensions. This parameter is applicable to target tracking scaling rules. You can specify this parameter if your predefined metric requires extra dimensions. For example, if you predefine the LoadBalancerRealServerAverageQps metric, you must use this parameter to specify the rulePool dimension. | |
object | No | |||
DimensionKey | string | No | The dimension key of the metric. | rulePool |
DimensionValue | string | No | The dimension value of the metric. | sgp-l1cbirz451yxu2dxxx |
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
Error codes
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2024-09-13 | The request parameters of the API has changed | View Change Details |
2023-04-03 | The request parameters of the API has changed | View Change Details |