2018/01/16 - AWS Auto Scaling Plans - 4 new api methods
Changes AWS Auto Scaling enables you to quickly discover all of the scalable resources underlying your application and set up application scaling in minutes using built-in scaling recommendations.
See also: AWS API Documentation
Request Syntax
client.delete_scaling_plan( ScalingPlanName='string', ScalingPlanVersion=123 )
string
[REQUIRED]
integer
[REQUIRED]
dict
Response Syntax
{}
Response Structure
(dict) --
See also: AWS API Documentation
Request Syntax
client.describe_scaling_plans( ScalingPlanNames=[ 'string', ], ScalingPlanVersion=123, ApplicationSources=[ { 'CloudFormationStackARN': 'string' }, ], MaxResults=123, NextToken='string' )
list
(string) --
integer
list
(dict) --
CloudFormationStackARN (string) --
integer
string
dict
Response Syntax
{ 'ScalingPlans': [ { 'ScalingPlanName': 'string', 'ScalingPlanVersion': 123, 'ApplicationSource': { 'CloudFormationStackARN': 'string' }, 'ScalingInstructions': [ { 'ServiceNamespace': 'autoscaling'|'ecs'|'ec2'|'rds'|'dynamodb', 'ResourceId': 'string', 'ScalableDimension': 'autoscaling:autoScalingGroup:DesiredCapacity'|'ecs:service:DesiredCount'|'ec2:spot-fleet-request:TargetCapacity'|'rds:cluster:ReadReplicaCount'|'dynamodb:table:ReadCapacityUnits'|'dynamodb:table:WriteCapacityUnits'|'dynamodb:index:ReadCapacityUnits'|'dynamodb:index:WriteCapacityUnits', 'MinCapacity': 123, 'MaxCapacity': 123, 'TargetTrackingConfigurations': [ { 'PredefinedScalingMetricSpecification': { 'PredefinedScalingMetricType': 'ASGAverageCPUUtilization'|'ASGAverageNetworkIn'|'ASGAverageNetworkOut'|'DynamoDBReadCapacityUtilization'|'DynamoDBWriteCapacityUtilization'|'ECSServiceAverageCPUUtilization'|'ECSServiceAverageMemoryUtilization'|'ALBRequestCountPerTarget'|'RDSReaderAverageCPUUtilization'|'RDSReaderAverageDatabaseConnections'|'EC2SpotFleetRequestAverageCPUUtilization'|'EC2SpotFleetRequestAverageNetworkIn'|'EC2SpotFleetRequestAverageNetworkOut', 'ResourceLabel': 'string' }, 'CustomizedScalingMetricSpecification': { 'MetricName': 'string', 'Namespace': 'string', 'Dimensions': [ { 'Name': 'string', 'Value': 'string' }, ], 'Statistic': 'Average'|'Minimum'|'Maximum'|'SampleCount'|'Sum', 'Unit': 'string' }, 'TargetValue': 123.0, 'DisableScaleIn': True|False, 'ScaleOutCooldown': 123, 'ScaleInCooldown': 123, 'EstimatedInstanceWarmup': 123 }, ] }, ], 'StatusCode': 'Active'|'ActiveWithProblems'|'CreationInProgress'|'CreationFailed'|'DeletionInProgress'|'DeletionFailed', 'StatusMessage': 'string', 'CreationTime': datetime(2015, 1, 1) }, ], 'NextToken': 'string' }
Response Structure
(dict) --
ScalingPlans (list) --
(dict) --
ScalingPlanName (string) --
ScalingPlanVersion (integer) --
ApplicationSource (dict) --
CloudFormationStackARN (string) --
ScalingInstructions (list) --
(dict) --
ServiceNamespace (string) --
ResourceId (string) --
ScalableDimension (string) --
MinCapacity (integer) --
MaxCapacity (integer) --
TargetTrackingConfigurations (list) --
(dict) --
PredefinedScalingMetricSpecification (dict) --
PredefinedScalingMetricType (string) --
ResourceLabel (string) --
CustomizedScalingMetricSpecification (dict) --
MetricName (string) --
Namespace (string) --
Dimensions (list) --
(dict) --
Name (string) --
Value (string) --
Statistic (string) --
Unit (string) --
TargetValue (float) --
DisableScaleIn (boolean) --
ScaleOutCooldown (integer) --
ScaleInCooldown (integer) --
EstimatedInstanceWarmup (integer) --
StatusCode (string) --
StatusMessage (string) --
CreationTime (datetime) --
NextToken (string) --
See also: AWS API Documentation
Request Syntax
client.describe_scaling_plan_resources( ScalingPlanName='string', ScalingPlanVersion=123, MaxResults=123, NextToken='string' )
string
[REQUIRED]
integer
[REQUIRED]
integer
string
dict
Response Syntax
{ 'ScalingPlanResources': [ { 'ScalingPlanName': 'string', 'ScalingPlanVersion': 123, 'ServiceNamespace': 'autoscaling'|'ecs'|'ec2'|'rds'|'dynamodb', 'ResourceId': 'string', 'ScalableDimension': 'autoscaling:autoScalingGroup:DesiredCapacity'|'ecs:service:DesiredCount'|'ec2:spot-fleet-request:TargetCapacity'|'rds:cluster:ReadReplicaCount'|'dynamodb:table:ReadCapacityUnits'|'dynamodb:table:WriteCapacityUnits'|'dynamodb:index:ReadCapacityUnits'|'dynamodb:index:WriteCapacityUnits', 'ScalingPolicies': [ { 'PolicyName': 'string', 'PolicyType': 'TargetTrackingScaling', 'TargetTrackingConfiguration': { 'PredefinedScalingMetricSpecification': { 'PredefinedScalingMetricType': 'ASGAverageCPUUtilization'|'ASGAverageNetworkIn'|'ASGAverageNetworkOut'|'DynamoDBReadCapacityUtilization'|'DynamoDBWriteCapacityUtilization'|'ECSServiceAverageCPUUtilization'|'ECSServiceAverageMemoryUtilization'|'ALBRequestCountPerTarget'|'RDSReaderAverageCPUUtilization'|'RDSReaderAverageDatabaseConnections'|'EC2SpotFleetRequestAverageCPUUtilization'|'EC2SpotFleetRequestAverageNetworkIn'|'EC2SpotFleetRequestAverageNetworkOut', 'ResourceLabel': 'string' }, 'CustomizedScalingMetricSpecification': { 'MetricName': 'string', 'Namespace': 'string', 'Dimensions': [ { 'Name': 'string', 'Value': 'string' }, ], 'Statistic': 'Average'|'Minimum'|'Maximum'|'SampleCount'|'Sum', 'Unit': 'string' }, 'TargetValue': 123.0, 'DisableScaleIn': True|False, 'ScaleOutCooldown': 123, 'ScaleInCooldown': 123, 'EstimatedInstanceWarmup': 123 } }, ], 'ScalingStatusCode': 'Inactive'|'PartiallyActive'|'Active', 'ScalingStatusMessage': 'string' }, ], 'NextToken': 'string' }
Response Structure
(dict) --
ScalingPlanResources (list) --
(dict) --
ScalingPlanName (string) --
ScalingPlanVersion (integer) --
ServiceNamespace (string) --
ResourceId (string) --
ScalableDimension (string) --
ScalingPolicies (list) --
(dict) --
PolicyName (string) --
PolicyType (string) --
TargetTrackingConfiguration (dict) --
PredefinedScalingMetricSpecification (dict) --
PredefinedScalingMetricType (string) --
ResourceLabel (string) --
CustomizedScalingMetricSpecification (dict) --
MetricName (string) --
Namespace (string) --
Dimensions (list) --
(dict) --
Name (string) --
Value (string) --
Statistic (string) --
Unit (string) --
TargetValue (float) --
DisableScaleIn (boolean) --
ScaleOutCooldown (integer) --
ScaleInCooldown (integer) --
EstimatedInstanceWarmup (integer) --
ScalingStatusCode (string) --
ScalingStatusMessage (string) --
NextToken (string) --
See also: AWS API Documentation
Request Syntax
client.create_scaling_plan( ScalingPlanName='string', ApplicationSource={ 'CloudFormationStackARN': 'string' }, ScalingInstructions=[ { 'ServiceNamespace': 'autoscaling'|'ecs'|'ec2'|'rds'|'dynamodb', 'ResourceId': 'string', 'ScalableDimension': 'autoscaling:autoScalingGroup:DesiredCapacity'|'ecs:service:DesiredCount'|'ec2:spot-fleet-request:TargetCapacity'|'rds:cluster:ReadReplicaCount'|'dynamodb:table:ReadCapacityUnits'|'dynamodb:table:WriteCapacityUnits'|'dynamodb:index:ReadCapacityUnits'|'dynamodb:index:WriteCapacityUnits', 'MinCapacity': 123, 'MaxCapacity': 123, 'TargetTrackingConfigurations': [ { 'PredefinedScalingMetricSpecification': { 'PredefinedScalingMetricType': 'ASGAverageCPUUtilization'|'ASGAverageNetworkIn'|'ASGAverageNetworkOut'|'DynamoDBReadCapacityUtilization'|'DynamoDBWriteCapacityUtilization'|'ECSServiceAverageCPUUtilization'|'ECSServiceAverageMemoryUtilization'|'ALBRequestCountPerTarget'|'RDSReaderAverageCPUUtilization'|'RDSReaderAverageDatabaseConnections'|'EC2SpotFleetRequestAverageCPUUtilization'|'EC2SpotFleetRequestAverageNetworkIn'|'EC2SpotFleetRequestAverageNetworkOut', 'ResourceLabel': 'string' }, 'CustomizedScalingMetricSpecification': { 'MetricName': 'string', 'Namespace': 'string', 'Dimensions': [ { 'Name': 'string', 'Value': 'string' }, ], 'Statistic': 'Average'|'Minimum'|'Maximum'|'SampleCount'|'Sum', 'Unit': 'string' }, 'TargetValue': 123.0, 'DisableScaleIn': True|False, 'ScaleOutCooldown': 123, 'ScaleInCooldown': 123, 'EstimatedInstanceWarmup': 123 }, ] }, ] )
string
[REQUIRED]
dict
[REQUIRED]
CloudFormationStackARN (string) --
list
[REQUIRED]
(dict) --
ServiceNamespace (string) -- [REQUIRED]
ResourceId (string) -- [REQUIRED]
ScalableDimension (string) -- [REQUIRED]
MinCapacity (integer) -- [REQUIRED]
MaxCapacity (integer) -- [REQUIRED]
TargetTrackingConfigurations (list) -- [REQUIRED]
(dict) --
PredefinedScalingMetricSpecification (dict) --
PredefinedScalingMetricType (string) -- [REQUIRED]
ResourceLabel (string) --
CustomizedScalingMetricSpecification (dict) --
MetricName (string) -- [REQUIRED]
Namespace (string) -- [REQUIRED]
Dimensions (list) --
(dict) --
Name (string) -- [REQUIRED]
Value (string) -- [REQUIRED]
Statistic (string) -- [REQUIRED]
Unit (string) --
TargetValue (float) -- [REQUIRED]
DisableScaleIn (boolean) --
ScaleOutCooldown (integer) --
ScaleInCooldown (integer) --
EstimatedInstanceWarmup (integer) --
dict
Response Syntax
{ 'ScalingPlanVersion': 123 }
Response Structure
(dict) --
ScalingPlanVersion (integer) --