Amazon EC2 Auto Scaling · JSON Structure
Ec2 Auto Scaling Scaling Policy Structure
Describes a scaling policy.
Type: object
Properties: 16
Amazon Web ServicesAuto ScalingComputeEC2High AvailabilityScaling
ScalingPolicy is a JSON Structure definition published by Amazon EC2 Auto Scaling, describing 16 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
Properties
AutoScalingGroupName
PolicyName
PolicyARN
PolicyType
AdjustmentType
MinAdjustmentStep
MinAdjustmentMagnitude
ScalingAdjustment
Cooldown
StepAdjustments
MetricAggregationType
EstimatedInstanceWarmup
Alarms
TargetTrackingConfiguration
Enabled
PredictiveScalingConfiguration
Meta-schema: https://json-structure.org/meta/core/v0/#
JSON Structure
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-ec2-auto-scaling/refs/heads/main/json-structure/ec2-auto-scaling-scaling-policy-structure.json",
"name": "ScalingPolicy",
"description": "Describes a scaling policy.",
"type": "object",
"properties": {
"AutoScalingGroupName": {
"allOf": [
{
"$ref": "#/components/schemas/XmlStringMaxLen255"
},
{
"description": "The name of the Auto Scaling group."
}
]
},
"PolicyName": {
"allOf": [
{
"$ref": "#/components/schemas/XmlStringMaxLen255"
},
{
"description": "The name of the scaling policy."
}
]
},
"PolicyARN": {
"allOf": [
{
"$ref": "#/components/schemas/ResourceName"
},
{
"description": "The Amazon Resource Name (ARN) of the policy."
}
]
},
"PolicyType": {
"allOf": [
{
"$ref": "#/components/schemas/XmlStringMaxLen64"
},
{
"description": "<p>One of the following policy types: </p> <ul> <li> <p> <code>TargetTrackingScaling</code> </p> </li> <li> <p> <code>StepScaling</code> </p> </li> <li> <p> <code>SimpleScaling</code> (default)</p> </li> <li> <p> <code>PredictiveScaling</code> </p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-target-tracking.html\">Target tracking scaling policies</a> and <a href=\"https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html\">Step and simple scaling policies</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>"
}
]
},
"AdjustmentType": {
"allOf": [
{
"$ref": "#/components/schemas/XmlStringMaxLen255"
},
{
"description": "Specifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage). The valid values are <code>ChangeInCapacity</code>, <code>ExactCapacity</code>, and <code>PercentChangeInCapacity</code>."
}
]
},
"MinAdjustmentStep": {
"allOf": [
{
"$ref": "#/components/schemas/MinAdjustmentStep"
},
{
"description": "Available for backward compatibility. Use <code>MinAdjustmentMagnitude</code> instead."
}
]
},
"MinAdjustmentMagnitude": {
"allOf": [
{
"$ref": "#/components/schemas/MinAdjustmentMagnitude"
},
{
"description": "The minimum value to scale by when the adjustment type is <code>PercentChangeInCapacity</code>. "
}
]
},
"ScalingAdjustment": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyIncrement"
},
{
"description": "The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity."
}
]
},
"Cooldown": {
"allOf": [
{
"$ref": "#/components/schemas/Cooldown"
},
{
"description": "The duration of the policy's cooldown period, in seconds."
}
]
},
"StepAdjustments": {
"allOf": [
{
"$ref": "#/components/schemas/StepAdjustments"
},
{
"description": "A set of adjustments that enable you to scale based on the size of the alarm breach."
}
]
},
"MetricAggregationType": {
"allOf": [
{
"$ref": "#/components/schemas/XmlStringMaxLen32"
},
{
"description": "The aggregation type for the CloudWatch metrics. The valid values are <code>Minimum</code>, <code>Maximum</code>, and <code>Average</code>."
}
]
},
"EstimatedInstanceWarmup": {
"allOf": [
{
"$ref": "#/components/schemas/EstimatedInstanceWarmup"
},
{
"description": "The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics."
}
]
},
"Alarms": {
"allOf": [
{
"$ref": "#/components/schemas/Alarms"
},
{
"description": "The CloudWatch alarms related to the policy."
}
]
},
"TargetTrackingConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/TargetTrackingConfiguration"
},
{
"description": "A target tracking scaling policy."
}
]
},
"Enabled": {
"allOf": [
{
"$ref": "#/components/schemas/ScalingPolicyEnabled"
},
{
"description": "Indicates whether the policy is enabled (<code>true</code>) or disabled (<code>false</code>)."
}
]
},
"PredictiveScalingConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/PredictiveScalingConfiguration"
},
{
"description": "A predictive scaling policy."
}
]
}
}
}