Auto Scaling Groups

Dynamic Scaling & Capacity Management

ASG Overview

Automatic Scaling

Scale EC2 instances based on demand

Health Management

Replace unhealthy instances automatically

Cost Optimization

Scale down during low demand periods

Multi-AZ

Distribute instances across AZs

Key Components

Launch Template

Instance configuration blueprint

Scaling Policies

Rules for when to scale in/out

Health Checks

EC2 and ELB health monitoring

Capacity Settings

Min, max, and desired capacity

Scaling Policies

Target Tracking

Maintain specific metric target

  • • CPU utilization: 70%
  • • Request count per target
  • • Custom CloudWatch metrics

Step Scaling

Scale based on alarm severity

  • • CPU > 80%: Add 2 instances
  • • CPU > 90%: Add 4 instances
  • • Granular scaling actions

Simple Scaling

Single scaling action

  • • One alarm triggers scaling
  • • Cooldown period applies
  • • Less flexible than step scaling

Launch Templates

Instance Configuration

AMI, instance type, key pair, security groups

User Data

Bootstrap scripts for instance initialization

Versioning

Multiple versions for rollback capability

Mixed Instance Types

Combine On-Demand and Spot instances

Health Checks

EC2 Health Checks

Instance status and system status

ELB Health Checks

Application-level health monitoring

Grace Period

Time before health checks start

Replacement

Automatic unhealthy instance replacement

Advanced Features

Lifecycle Hooks

Custom actions during scaling events

Termination Policies

Control which instances to terminate

Scheduled Scaling

Predictive scaling based on schedule

Instance Refresh

Rolling replacement of instances

Auto Scaling Groups Exam Tips

  • • Target tracking scaling is recommended for most use cases - simpler than step scaling
  • • Launch templates are preferred over launch configurations - support mixed instance types
  • • ELB health checks are more comprehensive than EC2 health checks for web applications
  • • Cooldown periods prevent rapid scaling - default is 300 seconds
  • • ASG automatically distributes instances across multiple AZs for high availability
Previous: ELB Fundamentals Next: Multi-AZ Deployments