Module 10: Automatic Scaling and Monitoring
AWS Academy Cloud Foundations
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Module overview
Topics Activities
• Elastic Load Balancing activity
• Elastic Load Balancing
• Amazon CloudWatch activity
• Amazon CloudWatch
• Amazon EC2 Auto Scaling Lab
• Scale and Load Balance Your
Architecture
Knowledge check
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 2
Module objectives
After completing this module, you should be able to:
• Indicate how to distribute traffic across Amazon Elastic Compute
Cloud (Amazon EC2) instances by using Elastic Load Balancing
• Identify how Amazon CloudWatch enables you to monitor AWS
resources and applications in real time
• Explain how Amazon EC2 Auto Scaling launches and releases servers
in response to workload changes
• Perform scaling and load balancing tasks to improve an architecture
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 3
Section 1: Elastic Load Balancing
Module 10: Automatic Scaling and Monitoring
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Elastic Load Balancing
• Distributes incoming
application or network traffic
across multiple targets in a
single Availability Zone or Elastic Load
Balancing
across multiple Availability
Zones.
IP addresses
• Scales your load balancer as
traffic to your application EC2 instances
Containers Lambda functions
changes over time.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 5
Types of load balancers
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 6
How Elastic Load Balancing works
• With Application Load
Balancers and Network
Load Balancers, you
register targets in target AWS Cloud
groups, and route traffic to Load balancer accepts
incoming traffic
the target groups. Availability Zone A
from clients.
Availability Zone B
• With Classic Load
Balancers, you register
instances with the load Listener
Listener checks for
Listener
connection requests.
balancer.
Load balancer routes
Load balancer traffic only to
. . . .
X
performs health healthy targets.
checks to monitor Target Target Target Target Target
health of registered
targets.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 7
Elastic Load Balancing use cases
Highly available and Containerized Elasticity
fault-tolerant applications and scalability
applications
Virtual private Hybrid environments Invoke Lambda
cloud (VPC) functions over HTTP(S)
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 8
Activity: Elastic Load Balancing
You must support traffic to a containerized
application.
You have extremely spiky and unpredictable TCP
traffic.
You need simple load balancing with multiple
protocols.
You need to support a static or Elastic IP address,
or an IP target outside a VPC.
You need a load balancer that can handle
millions of requests per second while
maintaining low latencies.
You must support HTTPS requests.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 9
Activity: Elastic Load Balancing Answers
You must support traffic to a containerized Application Load Balancer
application.
You have extremely spiky and unpredictable TCP Network Load Balancer
traffic.
You need simple load balancing with multiple Classic Load Balancer
protocols.
You need to support a static or Elastic IP address, Network Load Balancer
or an IP target outside a VPC.
You need a load balancer that can handle Network Load Balancer
millions of requests per second while
maintaining low latencies.
You must support HTTPS requests. Application Load Balancer
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 10
Load balancer monitoring
• Amazon CloudWatch metrics –
Used to verify that the system is
performing as expected and
creates an alarm to initiate an
action if a metric goes outside an
acceptable range.
• Access logs – Capture detailed
information about requests sent
to your load balancer.
• AWS CloudTrail logs – Capture
the who, what, when, and where of
API interactions in AWS services.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 11
Section 1 key • Elastic Load Balancing distributes incoming
application or network traffic across
takeaways multiple targets in one or more Availability
Zones.
• Elastic Load Balancing supports three types
of load balancers:
• Application Load Balancer
• Network Load Balancer
• Classic Load Balancer
• ELB offers instance health checks, security,
and monitoring.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 12
Section 2: Amazon CloudWatch
Module 10: Automatic Scaling and Monitoring
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Monitoring AWS resources
To use AWS efficiently, you need insight into your AWS resources:
• How do you know when you should launch more Amazon EC2
instances?
• Is your application's performance or availability being affected by a
lack of sufficient capacity?
• How much of your infrastructure is actually being used?
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 14
Amazon CloudWatch
• Monitors –
• AWS resources
• Applications that run on AWS
• Collects and tracks –
• Standard metrics
Amazon • Custom metrics
CloudWatch • Alarms –
• Send notifications to an Amazon
SNS topic
• Perform Amazon EC2 Auto
Scaling or Amazon EC2 actions
• Events –
• Define rules to match changes in
AWS environment and route
these events to one or more
target functions or streams for
processing
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 15
CloudWatch alarms
• Create alarms based on –
• Static threshold
• Anomaly detection
• Metric math expression
• Specify –
• Namespace
• Metric
• Statistic
• Period
• Conditions
• Additional configuration
• Actions
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 16
Activity: Amazon CloudWatch
If average CPU utilization is > 60% for 5
minutes…
Amazon EC2
If the number of simultaneous connections
is > 10 for 1 minute…
Amazon RDS
If the maximum bucket size in bytes is
around 3 for 1 day…
Amazon S3
If the number of healthy hosts is < 5 for 10
minutes…
Elastic Load Balancing
If the volume of read operations is > 1,000
for 10 seconds…
Amazon Elastic
Block Store
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 17
Activity: Amazon CloudWatch Answers
If average CPU utilization is > 60% for 5
Correct!
minutes…
Amazon EC2
If the number of simultaneous connections
Correct!
is > 10 for 1 minute…
Amazon RDS
If the maximum bucket size in bytes is Incorrect. Around is not a threshold option.
around 3 for 1 day… You must specify a threshold of >, >=, <=, or
Amazon S3 <.
If the number of healthy hosts is < 5 for 10
Correct!
minutes…
Elastic Load Balancing
If the volume of read operations is > 1,000 Incorrect. You must specify a statistic (for
for 10 seconds… example, average volume).
Amazon Elastic
Block Store
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 18
Section 2 key • Amazon CloudWatch helps you monitor
your AWS resources—and the applications
takeaways that you run on AWS—in real time.
• CloudWatch enables you to –
• Collect and track standard and custom metrics.
• Set alarms to automatically send notifications to
SNS topics, or perform Amazon EC2 Auto Scaling
or Amazon EC2 actions.
• Define rules that match changes in your AWS
environment and route these events to targets for
processing.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 19
Section 3: Amazon EC2 Auto
Scaling
Module 10: Automatic Scaling and Monitoring
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Why is scaling important?
Unused Over
capacity capacity
Su M T W Th F Sa Su M T W Th F Sa
Used capacity Provisioned capacity
(demand)
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 21
Amazon EC2 Auto Scaling
• Helps you maintain application
availability
• Enables you to automatically add or
remove EC2 instances according to
conditions that you define
• Detects impaired EC2 instances and
unhealthy applications, and replaces
the instances without your
intervention
Su M T W Th F Sa
• Provides several scaling options –
Manual, scheduled, dynamic or on-
Used capacity Provisioned capacity demand, and predictive
(demand)
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 22
Typical weekly traffic at Amazon.com
Provisioned capacity
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 23
November traffic to Amazon.com
Provisioned capacity 76 percent
The challenge is to efficiently guess
the unknown quantity of how much
compute capacity you need.
November
24 percent
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 24
Auto Scaling groups
Auto Scaling group An Auto Scaling group is a
collection of EC2 instances that
are treated as a logical
grouping for the purposes of
automatic scaling and
Minimum size Launch or terminate
instances as needed management.
Desired capacity
Maximum size
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 25
Scaling out versus scaling in
Elastic Load
Balancing
Auto Scaling group Auto Scaling group Auto Scaling group
Base configuration Scale out Scale in
(launch instances) (terminate instances)
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 26
How Amazon EC2 Auto Scaling works
What Where When
VPC Maintain current number
Private subnet • Health checks
AMI
Auto Scaling group Manual scaling
EC2 instance • Min, max, desired capacity
Scheduled scaling
Launch configuration Auto Scaling group • Scheduled actions
• AMI • VPC and subnets
• Instance type • Load balancer Dynamic scaling
• IAM role • Scaling policies
• Security groups
• EBS volumes
Predictive scaling
• AWS Auto Scaling
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 27
Implementing dynamic scaling
Elastic Load Balancing
Auto Scaling group
CPU
utilization If average CPU
utilization is
> 60% for 5
minutes…
Run Amazon EC2 Auto Scaling policy
Amazon EC2 Auto Scaling Amazon CloudWatch
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 28
AWS Auto Scaling
• Monitors your applications and automatically
adjusts capacity to maintain steady,
predictable performance at the lowest
possible cost
AWS Auto Scaling • Provides a simple, powerful user interface that
enables you to build scaling plans for
resources, including –
• Amazon EC2 instances and Spot Fleets
• Amazon Elastic Container Service (Amazon ECS)
Tasks
• Amazon DynamoDB tables and indexes
• Amazon Aurora Replicas
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 29
• Scaling enables you to respond quickly to changes
Section 3 key in resource needs.
takeaways • Amazon EC2 Auto Scaling maintains application
availability by automatically adding or removing
EC2 instances.
• An Auto Scaling group is a collection of EC2
instances.
• A launch configuration is an instance configuration
template.
• Dynamic scaling uses Amazon EC2 Auto Scaling,
CloudWatch, and Elastic Load Balancing.
• AWS Auto Scaling is a separate service from
Amazon EC2 Auto Scaling.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 30
Lab 6:
Scale and Load
Balance Your
Architecture
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 31
Lab 6: Scenario
AWS Cloud
Region
Availability Zone A Availability Zone B
VPC: 10.0.0.0/16 Internet Public subnet 2:
Public subnet 1: gateway 10.0.2.0/24
10.0.0.0/24
Security group
NAT gateway
Web Server 1
Private subnet 1: Private subnet 2:
10.0.1.0/24 10.0.3.0/24
Security group Security group
RDS DB Primary RDS DB Secondary
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 32
Lab 6: Tasks
• Create an Amazon Machine Image (AMI) from a running instance.
• Create an Application Load Balancer.
• Create a launch configuration and an Auto Scaling group.
• Automatically scale new instances within a private subnet.
• Create Amazon CloudWatch alarms and monitor performance of your
infrastructure.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 33
Lab 6: Final product
AWS Cloud
Region Availability Zone A Availability Zone B
VPC: 10.0.0.0/16 Internet
Public subnet 1: gateway Public subnet 2:
10.0.0.0/24 10.0.2.0/24
Security group
NAT gateway
Application
Private subnet 1: Load Balancer Private subnet 2:
10.0.1.0/24 10.0.3.0/24
Security group Security group
Web Auto Scaling Web
Instance group Instance
Security group Security group
RDS DB RDS DB
Primary Secondary
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 34
~ 30 minutes
Begin Lab 6: Scale
and Load Balance
Your Architecture
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 35
Lab debrief:
Key takeaways
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 36
Module wrap-up
Module 10: Automatic Scaling and Monitoring
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Module summary
In summary, in this module you learned how to:
• Indicate how to distribute traffic across Amazon Elastic Compute
Cloud (Amazon EC2) instances using Elastic Load Balancing.
• Identify how Amazon CloudWatch enables you to monitor AWS
resources and applications in real time.
• Explain how Amazon EC2 Auto Scaling launches and releases servers
in response to workload changes.
• Perform scaling and load balancing tasks to improve an architecture.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 38
Complete the knowledge check
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 39
Sample exam question
Which service would you use to send alerts based on Amazon CloudWatch alarms?
Choice Response
A Amazon Simple Notification Service
B AWS CloudTrail
C AWS Trusted Advisor
D Amazon Route 53
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 40
Sample exam question answer
Which service would you use to send alerts based on Amazon CloudWatch alarms?
The correct answer is A.
The keywords in the question are “send alerts” and “Amazon CloudWatch alarms”.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 41
Thank you
Corrections, feedback, or other questions?
Contact us at https://support.aws.amazon.com/#/contacts/aws-academy.
All trademarks are the property of their owners.
© 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved. 42