Elastic Load Balancing & Auto Scaling Groups Flashcards

1
Q

What does scalability mean?

A

An application / system can handle greater loads by adapting

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the 2 kinds of sclability?

A
  1. Vertical Scalability

2. Horizontal Scalability (= elasticity)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Is scalability the same as high availability?

A

No, but they are linked

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is vertical scalability?

A

Means increasing / decreasing the size of the instance. There is usually a limit.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is horizontal scalability?

A

Means increasing / decreasing the number of instances / systems for your application. Implies distributed systems and is very common for web applications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is high availability?

A

Means running your application / system in at least 2 AZs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the goal of high availability?

A

To survive a data center loss (disaster)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

High availability goes hand in hand with what type of scaling?

A

Horizontal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Scalability vs Elasticity?

A

Scalability: ability to accommodate a larger load by making the hardware stronger (scale up), or by adding nodes (scale out)

Elasticity: once a system is scalable, elasticity means that there will be some ‘auto-scaling’ so that the system can scale based on the load. This is ‘cloud-friendly’: pay-per-use, match demand, optimize costs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is agility?

A

Means new IT resources are only a click away, which means that you reduce the time to make those resources available to your developers from weeks to just minutes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Is agility related to scalability?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is load balancers?

A

Servers that forward internet traffic to multiple servers (EC2 instances) downstream

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Why use a load balancer?

A
  1. Spread load across multiple downstream instances
  2. Expose a single point of access (DNS) to your application
  3. Seamlessly handle failures of downstream instances
  4. Do regular health checks on your instances
  5. Provide SSL termination (HTTPS) for your websites
  6. High availability across zones
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Why use an Elastic load balancer?

A

It is a managed load balancer.

  1. AWS guarantees that it will be working
  2. AWS takes care of upgrades, maintenance, high availability
  3. AWS provides only a few configuration knobs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Why not create your own load balancer instead of using one from AWS?

A

It costs less to setup your own load balancer but it will be a lot more effort on your end (maintenance, integrations)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the 3 kinds of load balancers offered by AWS?

A
  1. Application Load Balancer (HTTP / HTTPS only) - Layer 7
  2. Network Load Balancer (ultra-high performance, allows for TCP) - Layer 4
  3. Classic Load Balancer (slowly retiring) - Layer 4 & 7
17
Q

Should you ever choose a classic load balancer?

A

No, it’s slowly retiring

18
Q

What is an Auto Scaling Group?

A

Allows you to create and get rid of servers very quickly

19
Q

What are the goals of an auto scaling group?

A
  1. Scale out (add EC2 Instances) to match an increased load
  2. Scale in (remove EC2 Instances) to match a decreased load
  3. Ensure we have a minimum and maximum number of machines running
  4. Automatically register new instances to a load balancer
  5. Replace unhealthy instances
20
Q

What are the cost savings associated with auto scaling groups?

A

Only run at an optimal capacity (principle of the cloud)

21
Q

What is minimum size of Auto Scaling Group

A

1

22
Q

What is actual size / desired capacity for auto scaling group?

A

How many EC2 instances you want always running

23
Q

What is the main purpose of High Availability in the Cloud?

  1. Increase scalability
  2. Application thriving even in case of a disaster
  3. Access on computers and smartphones
  4. Handle greater loads by launching EC2 instances based on demand
A

Application thriving even in case of a disaster

24
Q

Which AWS offered Load Balancer should you use to handle hundreds of thousands of connections with low latency?

  1. Application Load Balancer
  2. Network Load Balancer
  3. Elastic Load Balancer
A

Network Load Balancer

25
Q

Changing an EC2 Instance Type from a t3a.medium to a t3a.2xlarge is an example of?

  1. Horizontal scaling
  2. High Availability
  3. Agility
  4. Vertical scaling
A

Vertical scaling

26
Q

What can you use to handle quickly and automatically the changing load on your websites and applications by adding compute resources?

  1. An Elastic Load Balancer
  2. A bigger instance type
  3. An Auto Scaling Group
  4. Health Checks on your EC2 Instances
A

An Auto Scaling Group

27
Q

Which of the following statements is INCORRECT regarding Auto Scaling Groups?

  1. Replace unhealthy instances
  2. Are cost-effective by running at optimal capacity
  3. Automatically register new instances to a load balancer
  4. Automatically changing the EC2 Instance Type
A

Automatically changing the EC2 Instance Type

28
Q

Which Load Balancer is best suited for HTTP/HTTPS load balancing traffic?

  1. Network Load Balancer
  2. Classic Load Balancer
  3. Elastic Load Balancer
  4. Application Load Balancer
A

Application Load Balancer

29
Q

Which AWS service offers easy horizontal scaling of compute capacity?

  1. EBS
  2. AMI
  3. IAM
  4. ASG
A

ASG

30
Q

Which of the following statements is NOT a feature of Load Balancers?

  1. Do regular health checks to your instances
  2. Spread load across multiple downstream instanes
  3. Handle failures of downstream instances
  4. Back-end autoscaling
A

Back-end autoscaling