Copyright (c) 2026 MindMesh Academy. All rights reserved. This content is proprietary and may not be reproduced or distributed without permission.

3.2.3.2. Capabilities of Auto Scaling for a Variety of AWS Services (EC2 Auto Scaling groups, RDS storage auto scaling, DynamoDB, ECS capacity provider, EKS autoscalers)

3.2.3.2. Auto Scaling Capabilities & Configuration

Auto Scaling ensures capacity matches demand — preventing both over-provisioning (wasted cost) and under-provisioning (poor performance).

Auto Scaling types on AWS:
ServiceScaling TargetScaling Mechanism
EC2 Auto ScalingEC2 instancesLaunch template, ASG policies
Application Auto ScalingECS tasks, DynamoDB, Aurora replicas, Lambda provisioned concurrencyTarget tracking, step, scheduled
AWS Auto ScalingMultiple resources via scaling plansPredictive + dynamic scaling
EC2 ASG configuration:
# CloudFormation ASG with target tracking
AutoScalingGroup:
  Type: AWS::AutoScaling::AutoScalingGroup
  Properties:
    LaunchTemplate:
      LaunchTemplateId: !Ref LaunchTemplate
      Version: !GetAtt LaunchTemplate.LatestVersionNumber
    MinSize: 2
    MaxSize: 20
    DesiredCapacity: 4
    VPCZoneIdentifier: [!Ref SubnetA, !Ref SubnetB]
    TargetGroupARNs: [!Ref TargetGroup]
    HealthCheckType: ELB
    HealthCheckGracePeriod: 300

ScalingPolicy:
  Type: AWS::AutoScaling::ScalingPolicy
  Properties:
    AutoScalingGroupName: !Ref AutoScalingGroup
    PolicyType: TargetTrackingScaling
    TargetTrackingConfiguration:
      PredefinedMetricSpecification:
        PredefinedMetricType: ALBRequestCountPerTarget
        ResourceLabel: !Sub "${ALB.LoadBalancerFullName}/${TargetGroup.TargetGroupFullName}"
      TargetValue: 1000  # 1000 requests per target

Predictive scaling uses ML to forecast demand and pre-scale capacity. Best for workloads with predictable daily/weekly patterns.

Exam Trap: ASG DesiredCapacity overrides target tracking temporarily. If you manually set desired=10 and target tracking wants 5, the ASG stays at 10 until the next scaling evaluation. To let Auto Scaling manage capacity entirely, don't manually set DesiredCapacity after initial creation.

Alvin Varughese
Written byAlvin Varughese•Founder•15 professional certifications