Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding Ninjas X Naukri.com
Table of contents
1.
Introduction
2.
Elastic Load Balancing Characteristics
3.
Benefits of Elastic Load Balancing
4.
Infrastructure security in Elastic Load Balancing
4.1.
Network isolation
4.2.
Controlling network traffic
5.
Frequently Asked Questions
5.1.
Is an Application Load Balancer compatible with IPv6?
5.2.
Can I configure my Network Load Balancer using AWS Manage?
5.3.
Does the Gateway Load Balancer keep the application state?
5.4.
How is the Gateway Load Balancer price calculated?
5.5.
Does the Classic Load Balancer support IPv6 traffic?
6.
Conclusion
Last Updated: Mar 27, 2024
Easy

AWS Elastic Load Balancing

Author Akshit Mehra
0 upvote
Master Python: Predicting weather forecasts
Speaker
Ashwin Goyal
Product Manager @

Introduction

Elastic Load Balancing (ELB) is a load-balancing service available through Amazon Web Services (AWS). AWS Elastic Load Balancing distributes your incoming traffic automatically over several targets in one or more Availability Zones, such as EC2 instances, containers, and IP addresses. It examines the health of its registered targets and only delivers traffic to those in excellent shape. Elastic Load Balancing adapts your load balancer to changes in incoming traffic over time. It can automatically scale to the wide majority of workloads.

Elastic Load Balancing assists an IT team in adjusting capacity based on incoming applications and network traffic. To guarantee consistent application performance, users activate ELB inside a single availability zone or across many availability zones.

Traditionally, load balancing splits the amount of work that a computer needs to undertake among numerous computers so that customers are serviced faster in general. ELB includes improved features such as:

  1. Unhealthy Elastic Compute Cloud (EC2) instances are detected.
  2. Only distributing instances through healthy means.
  3. Cipher assistance that is adaptable.

Elastic Load Balancing Characteristics

Elastic Load Balancing supports various types of load balancers, some of which include:

  1. AWS Command Line Interface (AWS CLI): Commands for a wide range of AWS services, including Elastic Load Balancing. The AWS CLI is available for Windows, macOS, and Linux.
  2. AWS Management Console: Provides a web interface via which you may access Elastic Load Balancing.
  3. AWS SDKs (Software Development Kit): Provide language-specific APIs that handle numerous connection details, such as computing signatures, request retries, and handling errors.
  4. Query API: Provides low-level API activities that may be accessed via HTTPS requests. The Query API is the simplest way to access Elastic Load Balancing. 
Get the tech career you deserve, faster!
Connect with our expert counsellors to understand how to hack your way to success
User rating 4.7/5
1:1 doubt support
95% placement record
Akash Pal
Senior Software Engineer
326% Hike After Job Bootcamp
Himanshu Gusain
Programmer Analyst
32 LPA After Job Bootcamp
After Job
Bootcamp

Benefits of Elastic Load Balancing

There are numerous benefits of using Elastic Load Balancing, some of which are:

  1. Workloads are distributed among numerous computing resources, such as virtual servers, using a load balancer. Using a load balancer improves your applications' Availability and Fault Tolerance.
  2. As your needs change, you may add and subtract the computing resources within your load balancer without disrupting the overall application flow of requests.
  3. AWS Elastic Load Balancing allows for configuration health checks, which monitor the health of computing resources. The load balancer distributes requests only to those that are in good health.
  4. You may also delegate encryption and decryption to your load balancer, allowing your computational resources to focus on their primary tasks.

Infrastructure security in Elastic Load Balancing

Elastic Load Balancing is safeguarded as a managed service by the AWS global network security procedures, which are detailed in the Amazon Web Services: Overview of security processes whitepaper.

Elastic Load Balancing is accessed through the network using AWS published API methods. Transport Layer Security (TLS) 1.0 or later is required for clients. TLS 1.2 or later is recommended. Clients must additionally support cipher suites with perfect forward secrecy (PFS), such as Ephemeral Diffie-Hellman (DHE) or Elliptic Curve Diffie-Hellman (ECEDHE) (ECDHE). Most current operating systems, including Java 7 and later, support these modes.

Requests must also be signed with an access key ID and a secret access key linked with an IAM principal. Alternatively, you can establish temporary security credentials for signing requests using the AWS Security Token Service (AWS STS).

Figure: (Source) Above is an Application Load balancer. It serves various purposes including a) Scaling current applications without complicated settings or API gateways to match demand, b)Using a single load balancer, load balance AWS and on-premises resources c) Utilize the size and flexibility of the cloud to deploy network appliances from your favorite vendor.

Network isolation

A virtual private cloud (VPC) is a logically isolated virtual network on the AWS Cloud. In a VPC, a subnet is a set of IP addresses. When you construct a load balancer, you can choose one or more subnets for the load balancer nodes. You can install EC2 instances in your VPC's subnets and register them with your load balancer.

A load balancer in a VPC can be either externally or internally facing. An internal load balancer can only route requests from clients that have access to the load balancer's VPC.

Load balancer serves requests to its registered destinations using private IP addresses. As a result, your targets do not require public IP addresses to accept requests from a load balancer.

Controlling network traffic

Elastic Load Balancing works with three different load balancers: application load balancers, network load balancers, and classic load balancers. Application Load Balancers function at the Open Systems Interconnection (OSI) model's request level (layer 7). Network Load Balancers function at the OSI model's connection level (layer 4). Traditional load balancers work at both the request and connection levels.

When using a load balancer, consider the following alternatives for safeguarding network traffic:

  1. Secure listeners are used to providing encrypted communication between clients and load balancers. Application Load Balancers support HTTPS listeners. Network load balancers support TLS listeners. Traditional load balancers support HTTPS and TLS listeners. 
  2. The Server Name Indication (SNI) protocol may serve numerous secure websites from a single secure listener. When you pair more than one server certificate with a secure listener, SNI is automatically enabled for your load balancer.
  3. Configure your Application Load Balancers and Classic Load Balancers' security groups to accept traffic only from particular clients. These security groups must enable inbound traffic and outgoing traffic to clients on the listener ports.
  4. Configure your Amazon EC2 instances' security groups to accept only traffic from the load balancer. These security groups must accept inbound traffic from the load balancer on the listener and health check ports.
  5. Configure your Application Load Balancer to authenticate users securely using an identity provider or corporate IDs. For further information, refer Authenticate users using an Application Load Balancer.
  6. AWS WAF may be used in conjunction with Application Load Balancers to allow or block requests depending on the rules in a web access control list (web ACL) 

                                                                                   

                                               Figure(Source) Above is a simple illustration of a Load Balancer. 

Above, we see how the load from various clients is divided among various servers. This helps in balancing the incoming traffic. We see that there exist both software and hardware load balancers, which manage the load incoming and outgoing.

Frequently Asked Questions

Is an Application Load Balancer compatible with IPv6?

Yes, an Application Load Balancer supports IPv6.

Can I configure my Network Load Balancer using AWS Manage?

Yes, you may configure a Network Load Balancer using the AWS Management Console, AWS CLI, or API.

Does the Gateway Load Balancer keep the application state?

The Gateway Load Balancer does not keep the application state, but it does keep flow stickiness to a given appliance by employing a 5-tuple (for TCP/UDP flows) or a 3-tuple (for non-TCP/UDP flows).

How is the Gateway Load Balancer price calculated?

You are charged for each hour-and-half hour that a Gateway Load Balancer is operational, as well as the number of Load Balancer Capacity Units (LCU) that Gateway Load Balancer uses every hour.

Does the Classic Load Balancer support IPv6 traffic?

Yes. Each Classic Load Balancer has an IPv4, IPv6, and dual-stack (both IPv4 and IPv6) DNS name associated with it. VPC does not support IPv6. For native IPv6 functionality in VPC, you can utilise an Application Load Balancer.

Conclusion

So, we end our above blog here.  Above, we have extensively discussed AWS Elastic Load Balancing, its characteristics along with its benefits. We hope that this blog has helped you enhance your knowledge regarding AWS Elastic Load Balancing and if you would like to learn more.

Refer to our guided paths on Coding Ninjas Studio to learn more about DSA, Competitive Programming, System Design, JavaScript, etc. Enroll in our courses, refer to the mock test and problems available, interview puzzles, and look at the interview bundle and interview experiences for placement preparations.

Do upvote our blog to help other ninjas grow. Happy Coding!”

Previous article
AWS VPN
Next article
Amazon Braket
Live masterclass