You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::ApplicationAutoScaling::Types::TargetTrackingScalingPolicyConfiguration
- Inherits:
-
Struct
- Object
- Struct
- Aws::ApplicationAutoScaling::Types::TargetTrackingScalingPolicyConfiguration
- Defined in:
- (unknown)
Overview
When passing TargetTrackingScalingPolicyConfiguration as input to an Aws::Client method, you can use a vanilla Hash:
{
target_value: 1.0, # required
predefined_metric_specification: {
predefined_metric_type: "DynamoDBReadCapacityUtilization", # required, accepts DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ALBRequestCountPerTarget, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, SageMakerVariantInvocationsPerInstance, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, AppStreamAverageCapacityUtilization, ComprehendInferenceUtilization, LambdaProvisionedConcurrencyUtilization, CassandraReadCapacityUtilization, CassandraWriteCapacityUtilization, KafkaBrokerStorageUtilization
resource_label: "ResourceLabel",
},
customized_metric_specification: {
metric_name: "MetricName", # required
namespace: "MetricNamespace", # required
dimensions: [
{
name: "MetricDimensionName", # required
value: "MetricDimensionValue", # required
},
],
statistic: "Average", # required, accepts Average, Minimum, Maximum, SampleCount, Sum
unit: "MetricUnit",
},
scale_out_cooldown: 1,
scale_in_cooldown: 1,
disable_scale_in: false,
}
Represents a target tracking scaling policy configuration to use with Application Auto Scaling.
Returned by:
Instance Attribute Summary collapse
-
#customized_metric_specification ⇒ Types::CustomizedMetricSpecification
A customized metric.
-
#disable_scale_in ⇒ Boolean
Indicates whether scale in by the target tracking scaling policy is disabled.
-
#predefined_metric_specification ⇒ Types::PredefinedMetricSpecification
A predefined metric.
-
#scale_in_cooldown ⇒ Integer
The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start.
-
#scale_out_cooldown ⇒ Integer
The amount of time, in seconds, to wait for a previous scale-out activity to take effect.
-
#target_value ⇒ Float
The target value for the metric.
Instance Attribute Details
#customized_metric_specification ⇒ Types::CustomizedMetricSpecification
A customized metric. You can specify either a predefined metric or a customized metric.
#disable_scale_in ⇒ Boolean
Indicates whether scale in by the target tracking scaling policy is
disabled. If the value is true
, scale in is disabled and the target
tracking scaling policy won\'t remove capacity from the scalable target.
Otherwise, scale in is enabled and the target tracking scaling policy
can remove capacity from the scalable target. The default value is
false
.
#predefined_metric_specification ⇒ Types::PredefinedMetricSpecification
A predefined metric. You can specify either a predefined metric or a customized metric.
#scale_in_cooldown ⇒ Integer
The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start.
With the scale-in cooldown period, 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 scale-in cooldown period, Application Auto Scaling scales out the target immediately. In this case, the scale-in cooldown period 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 and entity recognizer endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
Amazon MSK cluster storage
#scale_out_cooldown ⇒ Integer
The amount of time, in seconds, to wait for a previous scale-out activity to take effect.
With the scale-out cooldown period, the intention is to continuously (but not excessively) scale out. After Application Auto Scaling successfully scales out using a target tracking scaling policy, it starts to calculate the cooldown time. The scaling policy won\'t increase the desired capacity again unless either a larger scale out is triggered or the cooldown period ends. While the cooldown period is in effect, the capacity added by the initiating scale-out activity is calculated as part of the desired capacity for the next scale-out activity.
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 and entity recognizer endpoints
Lambda provisioned concurrency
Amazon Keyspaces tables
Amazon MSK cluster storage
#target_value ⇒ Float
The target value for the metric. The range is 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 (Base 2).