Launching Auto Scaling Groups behind a Classic Load Balancer


2089 students completed the lab in ~54m

Total available time: 1h:30m

1364 students rated this lab!

Auto Scaling helps you maintain application availability and allows you to scale your Amazon EC2 capacity up or down automatically according to the defined conditions. You can use Auto Scaling to help ensure that you are running your desired number of Amazon EC2 instances. Auto Scaling can also automatically increase the number of Amazon EC2 instances during demand spikes to maintain performance and decrease capacity during lulls to reduce costs. Auto Scaling is well suited to applications that have stable demand patterns, or that experience hourly, daily, or weekly variability in usage.

Elastic Load Balancing (ELB) allows the distribution of incoming traffic to your Amazon AWS infrastructure across multiple instances. This represents a great tool in avoiding failures in your applications and web traffic. ELB automatically detects failures in your EC2 instances and redirects traffic to other available instances. 

During this Lab, we will launch an Auto Scaling Group (ASG) behind a Classic Load Balancer and build everything from scratch. In the end of this Lab, we should have an infrastructure that looks like this:


We will create Classic Load Balancer to load balance the traffic to the instances that will be launched in the Auto Scaling group that we will also create. We will follow the security best practices by denying direct access for the EC2 instances by allowing requests coming only from the Load Balancer.

To make sure that our application scales, we will configure some Scaling Policies to scale the infrastructure up and down based on the usage. To do so, we will create a couple of CloudWatch Alarms to monitor a particular metric and trigger the scaling actions.



This is an intermediate level Lab, in order to follow the next steps you should be able to:

  • Describe and launch EC2 instances
  • Understand and use user data scripts
  • Describe, create, and configure Security Groups
  • Describe and launch Classic Load Balancers
  • Describe and launch an Auto Scaling group
  • Basic Understanding of the CloudWatch service

If you don't have this knowledge, please refer to these Labs first:


Learning Objectives:

By the end of this Lab, you should be able to:

  • Associate Auto Scaling groups with Classic Load Balancers
  • Understand how ELB's health checks affect ASGs
  • Configure Scaling Policies


Do you have questions about this Lab? Contact our cloud experts by sending an email to

Follow these steps to learn by building helpful cloud resources

Logging in to the Amazon Web Services Console

Your first step to start the Lab experience

Creating a Classic Load Balancer

This step will guide you through the process of creating a Classic Load Balancer

Create a launch configuration

In this step, we will define a few concepts, identify the goal for the lab, and start creating a launch configuration in the AWS console.

Create an Auto Scaling Group associated with an ELB

In this step, we will create the Auto Scaling group

Creating scaling policies

In this step, we will create a couple of scaling policies to manage how the Auto Scaling group will scale up or down

Making it scale

In this step, we will see the scaling policies we created in action