AWS Autoscaling

managing instances for the lazy


What is it?

EC2 instance creation based on user defined rules and limits.

Nothing that can't be scripted, but AWS handles some of the challenges involved for you.

Lets you lower your costs by using smaller instances during idle times, and multiplying when busy.

what i'll be touching on

basic autoscaling only - no beanstalk/cloudformation


Autoscaling Groups, Launch Configurations, and Policies

Building your AMI

Console stuff only

Where to build your group

VPC vs Classic EC2 placement

public vs private workloads

does the work actually require autoscaling?

AMI BUILDING for autoscale groups

bake-in vs configuration management
speed vs. flexibility

instance type
try to build the AMI to match the instance type you'll want

can't use network interfaces or static IPs
S3/NFS/RDS/etc may not be reachable

AutoscalE groups

These are the basic building blocks for autoscaling

Located in the EC2 section of the console
full management of groups + action history

Each group lets you define :
launch configuration
load balancers
instance type
health checks
group size (min, max, desired)

Launch Configurations

Interface is nearly the same as the process of building a regular instance.

Pick your AMI, size, security options, etc

Each launch configuration can be used by multiple groups


Scale up fast, down slow.

Keep cost in mind : charged for min 1 hour, so use the instances you have

Scaling is by a set amount or percentages :
+n, -n, =n

Cooldowns can be tricky, and will likely require some experimentation


Autoscale group metrics exist : use them to trigger your policies when it makes sense.

Notify when activities take place, at least at first.

Load Balancers

Each group can have 0+ load balancers assigned to it.

These cannot be changed once the group is created.

Require Route53 in order to be useful.

faking my way through a q&a

and also; a tour of the console and a demonstration.

AWS Autoscaling

By steve bradford

AWS Autoscaling

  • 2,562