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) --