@Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class StepScalingPolicyConfiguration extends Object implements Serializable, Cloneable, StructuredPojo
Represents a step scaling policy configuration to use with Application Auto Scaling.
Constructor and Description |
---|
StepScalingPolicyConfiguration() |
Modifier and Type | Method and Description |
---|---|
StepScalingPolicyConfiguration |
clone() |
boolean |
equals(Object obj) |
String |
getAdjustmentType()
Specifies whether the
ScalingAdjustment value in a StepAdjustment is an absolute number or a percentage of the current capacity. |
Integer |
getCooldown()
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
|
String |
getMetricAggregationType()
The aggregation type for the CloudWatch metrics.
|
Integer |
getMinAdjustmentMagnitude()
The minimum value to scale by when scaling by percentages.
|
List<StepAdjustment> |
getStepAdjustments()
A set of adjustments that enable you to scale based on the size of the alarm breach.
|
int |
hashCode() |
void |
marshall(ProtocolMarshaller protocolMarshaller)
Marshalls this structured data using the given
ProtocolMarshaller . |
void |
setAdjustmentType(AdjustmentType adjustmentType)
Specifies whether the
ScalingAdjustment value in a StepAdjustment is an absolute number or a percentage of the current capacity. |
void |
setAdjustmentType(String adjustmentType)
Specifies whether the
ScalingAdjustment value in a StepAdjustment is an absolute number or a percentage of the current capacity. |
void |
setCooldown(Integer cooldown)
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
|
void |
setMetricAggregationType(MetricAggregationType metricAggregationType)
The aggregation type for the CloudWatch metrics.
|
void |
setMetricAggregationType(String metricAggregationType)
The aggregation type for the CloudWatch metrics.
|
void |
setMinAdjustmentMagnitude(Integer minAdjustmentMagnitude)
The minimum value to scale by when scaling by percentages.
|
void |
setStepAdjustments(Collection<StepAdjustment> stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
|
String |
toString()
Returns a string representation of this object.
|
StepScalingPolicyConfiguration |
withAdjustmentType(AdjustmentType adjustmentType)
Specifies whether the
ScalingAdjustment value in a StepAdjustment is an absolute number or a percentage of the current capacity. |
StepScalingPolicyConfiguration |
withAdjustmentType(String adjustmentType)
Specifies whether the
ScalingAdjustment value in a StepAdjustment is an absolute number or a percentage of the current capacity. |
StepScalingPolicyConfiguration |
withCooldown(Integer cooldown)
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
|
StepScalingPolicyConfiguration |
withMetricAggregationType(MetricAggregationType metricAggregationType)
The aggregation type for the CloudWatch metrics.
|
StepScalingPolicyConfiguration |
withMetricAggregationType(String metricAggregationType)
The aggregation type for the CloudWatch metrics.
|
StepScalingPolicyConfiguration |
withMinAdjustmentMagnitude(Integer minAdjustmentMagnitude)
The minimum value to scale by when scaling by percentages.
|
StepScalingPolicyConfiguration |
withStepAdjustments(Collection<StepAdjustment> stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
|
StepScalingPolicyConfiguration |
withStepAdjustments(StepAdjustment... stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
|
public void setAdjustmentType(String adjustmentType)
Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
adjustmentType
- Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
AdjustmentType
public String getAdjustmentType()
Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
AdjustmentType
public StepScalingPolicyConfiguration withAdjustmentType(String adjustmentType)
Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
adjustmentType
- Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
AdjustmentType
public void setAdjustmentType(AdjustmentType adjustmentType)
Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
adjustmentType
- Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
AdjustmentType
public StepScalingPolicyConfiguration withAdjustmentType(AdjustmentType adjustmentType)
Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
adjustmentType
- Specifies whether the ScalingAdjustment
value in a StepAdjustment is an absolute number or a percentage of the current capacity.
AdjustmentType
is required if you are adding a new step scaling policy configuration.
AdjustmentType
public List<StepAdjustment> getStepAdjustments()
A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
public void setStepAdjustments(Collection<StepAdjustment> stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
stepAdjustments
- A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
public StepScalingPolicyConfiguration withStepAdjustments(StepAdjustment... stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
NOTE: This method appends the values to the existing list (if any). Use
setStepAdjustments(java.util.Collection)
or withStepAdjustments(java.util.Collection)
if you
want to override the existing values.
stepAdjustments
- A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
public StepScalingPolicyConfiguration withStepAdjustments(Collection<StepAdjustment> stepAdjustments)
A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
stepAdjustments
- A set of adjustments that enable you to scale based on the size of the alarm breach.
At least one step adjustment is required if you are adding a new step scaling policy configuration.
public void setMinAdjustmentMagnitude(Integer minAdjustmentMagnitude)
The minimum value to scale by when scaling by percentages. For example, suppose that you create a step scaling
policy to scale out an Amazon ECS service by 25 percent and you specify a MinAdjustmentMagnitude
of
2. If the service has 4 tasks and the scaling policy is performed, 25 percent of 4 is 1. However, because you
specified a MinAdjustmentMagnitude
of 2, Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
minAdjustmentMagnitude
- The minimum value to scale by when scaling by percentages. For example, suppose that you create a step
scaling policy to scale out an Amazon ECS service by 25 percent and you specify a
MinAdjustmentMagnitude
of 2. If the service has 4 tasks and the scaling policy is performed,
25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude
of 2,
Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
public Integer getMinAdjustmentMagnitude()
The minimum value to scale by when scaling by percentages. For example, suppose that you create a step scaling
policy to scale out an Amazon ECS service by 25 percent and you specify a MinAdjustmentMagnitude
of
2. If the service has 4 tasks and the scaling policy is performed, 25 percent of 4 is 1. However, because you
specified a MinAdjustmentMagnitude
of 2, Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
MinAdjustmentMagnitude
of 2. If the service has 4 tasks and the scaling policy is performed,
25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude
of 2,
Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
public StepScalingPolicyConfiguration withMinAdjustmentMagnitude(Integer minAdjustmentMagnitude)
The minimum value to scale by when scaling by percentages. For example, suppose that you create a step scaling
policy to scale out an Amazon ECS service by 25 percent and you specify a MinAdjustmentMagnitude
of
2. If the service has 4 tasks and the scaling policy is performed, 25 percent of 4 is 1. However, because you
specified a MinAdjustmentMagnitude
of 2, Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
minAdjustmentMagnitude
- The minimum value to scale by when scaling by percentages. For example, suppose that you create a step
scaling policy to scale out an Amazon ECS service by 25 percent and you specify a
MinAdjustmentMagnitude
of 2. If the service has 4 tasks and the scaling policy is performed,
25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude
of 2,
Application Auto Scaling scales out the service by 2 tasks.
Valid only if the adjustment type is PercentChangeInCapacity
.
public void setCooldown(Integer cooldown)
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
cooldown
- The amount of time, in seconds, to wait for a previous scaling activity to take effect.
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
public Integer getCooldown()
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
public StepScalingPolicyConfiguration withCooldown(Integer cooldown)
The amount of time, in seconds, to wait for a previous scaling activity to take effect.
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
cooldown
- The amount of time, in seconds, to wait for a previous scaling activity to take effect.
With scale-out policies, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a step scaling policy, it starts to calculate the cooldown time. While the cooldown period is in effect, capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity. For example, when an alarm triggers a step scaling policy to increase the capacity by 2, the scaling activity completes successfully, and a cooldown period starts. If the alarm triggers again during the cooldown period but at a more aggressive step adjustment of 3, the previous increase of 2 is considered part of the current capacity. Therefore, only 1 is added to the capacity.
With scale-in policies, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the cooldown period after a scale-in activity, Application Auto Scaling scales out the target immediately. In this case, the cooldown period for the scale-in activity stops and doesn't complete.
Application Auto Scaling provides a default value of 300 for the following scalable targets:
ECS services
Spot Fleet requests
EMR clusters
AppStream 2.0 fleets
Aurora DB clusters
Amazon SageMaker endpoint variants
Custom resources
For all other scalable targets, the default value is 0:
DynamoDB tables
DynamoDB global secondary indexes
Amazon Comprehend document classification endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
public void setMetricAggregationType(String metricAggregationType)
The aggregation type for the CloudWatch metrics. Valid values are Minimum
, Maximum
, and
Average
. If the aggregation type is null, the value is treated as Average
.
metricAggregationType
- The aggregation type for the CloudWatch metrics. Valid values are Minimum
,
Maximum
, and Average
. If the aggregation type is null, the value is treated as
Average
.MetricAggregationType
public String getMetricAggregationType()
The aggregation type for the CloudWatch metrics. Valid values are Minimum
, Maximum
, and
Average
. If the aggregation type is null, the value is treated as Average
.
Minimum
,
Maximum
, and Average
. If the aggregation type is null, the value is treated as
Average
.MetricAggregationType
public StepScalingPolicyConfiguration withMetricAggregationType(String metricAggregationType)
The aggregation type for the CloudWatch metrics. Valid values are Minimum
, Maximum
, and
Average
. If the aggregation type is null, the value is treated as Average
.
metricAggregationType
- The aggregation type for the CloudWatch metrics. Valid values are Minimum
,
Maximum
, and Average
. If the aggregation type is null, the value is treated as
Average
.MetricAggregationType
public void setMetricAggregationType(MetricAggregationType metricAggregationType)
The aggregation type for the CloudWatch metrics. Valid values are Minimum
, Maximum
, and
Average
. If the aggregation type is null, the value is treated as Average
.
metricAggregationType
- The aggregation type for the CloudWatch metrics. Valid values are Minimum
,
Maximum
, and Average
. If the aggregation type is null, the value is treated as
Average
.MetricAggregationType
public StepScalingPolicyConfiguration withMetricAggregationType(MetricAggregationType metricAggregationType)
The aggregation type for the CloudWatch metrics. Valid values are Minimum
, Maximum
, and
Average
. If the aggregation type is null, the value is treated as Average
.
metricAggregationType
- The aggregation type for the CloudWatch metrics. Valid values are Minimum
,
Maximum
, and Average
. If the aggregation type is null, the value is treated as
Average
.MetricAggregationType
public String toString()
toString
in class Object
Object.toString()
public StepScalingPolicyConfiguration clone()
public void marshall(ProtocolMarshaller protocolMarshaller)
StructuredPojo
ProtocolMarshaller
.marshall
in interface StructuredPojo
protocolMarshaller
- Implementation of ProtocolMarshaller
used to marshall this object's data.