1. Home
  2. Training Library
  3. Amazon Web Services
  4. Courses
  5. Using Elastic Load Balancing & EC2 Auto Scaling to Support AWS Workloads

Using ELB and Auto Scaling Together

Start course
1h 5m

Elastic Load Balancing and EC2 Auto Scaling are widely used features within AWS to help you maintain reliability, availability and reduce costs within your environment.  As such, it's fundamental that if you are designing, operating or managing services within AWS you should be familiar with ELB and auto scaling concepts and configuration.  This course will explain and show you how to implement both and how they can work together.

Learning Objectives

By the end of this course you will:

  • Understand what an elastic load balancer is and what is used for
  • Be aware of the different load balancers available to you in AWS
  • Understand how ELBs handle different types of requests, including those that are encrypted
  • Be able to identify the different components of ELBs
  • Know how to configure ELBs 
  • Know when and why you might need to configure an SSL/TLS certificate
  • Understand what EC2 auto scaling is 
  • Be able to configure auto scaling launch configurations, launch templates and auto scaling groups
  • Explain why you should use ELBs and auto scaling together

Intended Audience

This course has been created for:

  • Engineers who are responsible for the day to day operations of maintaining and managing workloads across AWS
  • Solution Architects who are designing solutions across AWS infrastructure
  • Those who are looking to begin their certification journey with either the AWS Cloud Practitioner or one of the 3 Associate level certifications


To get the most from this course then you should be familiar with basic concepts of AWS and be familiar with some of its core components, such as VPC and EC2.

You should also have an understanding of the AWS global infrastructure and the different components used to define it.  For more information on this topic, please see our existing blog post here.


If you have thoughts or suggestions for this course, please contact Cloud Academy at support@cloudacademy.com.


Lecture Transcript

Hello and welcome to this short lecture where I shall discuss the relationship of ELBs and EC2 auto scaling. As you saw in the demonstration on the previous lecture, it's easy to associate your EC2 auto scaling group to an elastic load balancer and this is because the two services go hand in hand to provide optimal efficiency for both the performance and cost perspective. Each service by itself provides a great way to solve particular operational hurdles. The ELB allows you to dynamically manage loads across your resources based upon target groups and rules whereas EC2 auto scaling allows you to elastically scale those target groups based upon the demand put upon your infrastructure. However, one without the other can cause an operational burden. 

For example, let's say you have an ELB configured but without any auto scaling. You will need to ensure that you manually add and remove targets based upon the demand. You will need to monitor this demand allowing you to manually add or remove instances as required. Now let's look at the reverse. Let's assume you have EC2 auto scaling configured but no elastic load balancer. How are you going to evenly distribute traffic to your EC2 fleet? 

Hopefully, you can see the benefit of combining an ELB and auto scaling to help manage and automatically scale your EC2 compute resources both in and out. When you attach an ELB to an auto scaling group, the ELB will automatically detect the instances and start to distribute all traffic to the resources in the auto scaling group. When you want to associate an application load balancer or network load balancer, you associate the auto scaling group with the ELB target group. When you attach a classic load balancer, the EC2 fleet will be registered directly with the load balancer. 

Let me now provide another demonstration on how to associate your ELBs with an auto scaling group. 

Okay, so to attach an existing load balancer to your auto scaling group is very quick and simple. So firstly we go to our EC2 dashboard under Compute. We then go down to our Auto Scaling Groups at the very bottom on the left-hand side. We can see here our auto scaling group that we created in a previous demonstration. Now you'll notice on the Details section at the bottom here there's a section for classic load balancers and target groups and both of these are empty fields. So let's look at how you would associate either a classic load balancer or your target group. So once our auto scaling group is selected, we go to up to Actions and then Edit. Now if we scroll down, we get to the section here Classic Load Balancers and Target Groups. Now if we want to add a classic load balancer, then you can select here and select any classic load balancers that you have configured so I can select that one for example or if you're using an application load balancer or network load balancer, then you associate it with the target groups because the target groups are the pool of resources that the application load balancer or network load balancer are associated to. Now here we have two target groups that we created in a previous demonstration either DNS or WebServers. So we could select WebServers as our target group and simply click on Save. 

And as you can see now, this entry here for target groups, the auto scaling group is now associated to the WebServers target group. And it's as simple as that. So all you need to do to associate an existing load balancer to your auto scaling group is to edit the auto scaling group and if it's a classic load balancer, add in the classic load balancer or if it's an application load balancer or network load balancer, then you associate it to the relevant target group. And that's it. 

That now brings me to the end of this lecture. Coming up next, I will provide a summary of the key points made throughout this course.

About the Author
Stuart Scott
AWS Content Director
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 90+ courses relating to Cloud reaching over 140,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.