What Is Load Balancing & How Do Load Balancers Work – Kemp
Mục Lục
What is a Load Balancer
A load balancer can be deployed as software or hardware to a device that distributes connections from clients between a set of servers. A load balancer acts as a ‘reverse-proxy’ to represent the application servers to the client through a
virtual IP address (VIP). This technology is known as server load balancing (SLB). SLB is designed for pools of application servers within a single site or local area network
(LAN).
End User & Devices
Application Workloads/Servers
Internet
Load balancers are used to provide availability and scalability to the application. The application can scale beyond the capacity of a single server. The load balancer works to steer the traffic to a pool of available servers through various load balancing algorithms. If more resources are needed, additional servers can be added.
Load balancers health check the application on the server to determine its availability. If the health check fails, the load balancer takes that instance of the application out of its pool of available servers. When the application comes back online,
the health check validates its availability and the server is put back into the availability pool.
Load balancers are used to provide availability and scalability to the application. The application can scale beyond the capacity of a single server. The load balancer works to steer the traffic to a pool of available servers through various load balancing algorithms. If more resources are needed, additional servers can be added.
Load balancers health check the application on the server to determine its availability. If the health check fails, the load balancer takes that instance of the application out of its pool of available servers. When the application comes back online,
the health check validates its availability and the server is put back into the availability pool.
Expert Series
What is Load Balancing?
Find out from the experts
Learn about load balancing and see how you can benefit from the technology in your IT architecture.
Because the load balancer is sitting in between the client and application server and managing the connection, it has the ability to perform other functions. The load balancer can perform content switching, provide content-based security like web application
firewalls (WAF), and authentication enhancements like two factor authentication (2FA).
Have a specific question about load balancing? Jump through the article through the links below;
What a load balancer supports?
Load balancing is designed to give the application availability, scalability, and security. As a reverse-proxy, the load balancer acts as a multi-functional valve to direct and control the traffic between the clients and servers.
Load Balancer Uses
- Automatically detect server failures and redirect client traffic
- Allow for server maintenance without any impact
- Provide automated disaster recovery to backup sites
- Add and remove application servers without disruption
- Monitor and block malicious content
How does a load balancer work?
A load balancer is a reverse proxy. It presents a virtual IP address (VIP) representing the application to the client. The client connects to the VIP and the load balancer makes a determination through its algorithms to send the connection to a specific
application instance on a server. The load balancer continues to manage and monitor the connection for the entire duration.
Imagine a sports agent negotiating a new contract for a star athlete. The agent takes the request from the athlete and sends it to a specific interested team. The team responds with information (an offer) which the agent then passes back to the client.
This goes on for a while until a resolution is reached.
This is the primary function of the load balancer, server load balancing (SLB). The agent can provide additional functionality based on their role in the conversation. They can decide to allow and/or deny certain details (security). They may want to validate
that the person they are talking to is actually the athlete in question (authentication). If the current sports league is not working out, the agent can send the discussions to a different league based on availability or location (GSLB).
What types of load balancers are out there?
To understand the types of load balancers, one needs to understand the history.
Network Server Load Balancers
Load balancers entered the market in the mid-1990s to support the surge of traffic on the internet. Load balancers had basic functionality designed to pool server resources to meet this demand. The load balancer managed connections based on the packet
header. Specifically, they looked at the 5-tuple – source IP, destination IP, source port, destination port, and IP protocol. This is the entry of the network server load balancer or Layer 4 load balancer.
Application Load Balancers
As technology evolved, so did the load balancers. They became more advanced and started providing content awareness and content switching. These load balancers looked beyond the packet header and into the content payload. These load balancers look at
the content such as the URL, HTTP header, and other things to make load balancing decisions. These are the application load balancers or Layer 7 load balancers.
Global Server Load Balancing
Global server load balancing (GSLB) is actually a different technology than the traditional layer 4-7 load balancer. GSLB is based on DNS and acts as a DNS proxy to provide
responses based on GSLB load balancing algorithms in real time. It is easiest to think of GSLB as a dynamic DNS technology that manages and monitors the multiple sites through configurations and health checks. Most load balancing solutions today offer
GSLB as a component of their functionality.
Hardware vs Software vs Virtual Load Balancing
Load balancers originated as hardware solutions. Hardware provides a simple appliance that delivers the functionality with a focus of performance. Hardware-based load balancers are designed for installation within datacenters. They are turn-key solutions
that do not require the dependencies that software-based solutions require such as hypervisors and COTS hardware.
As network technologies evolved, software-defined, virtualization, and cloud technologies have become important. Software-based load balancing solutions offer flexibility and the ability to integrate into the virtualization orchestration solutions. Some
environments such as cloud require software solutions. Software-based environments often use DevOps and/or CI/CD processes. The software load balancer is more suited for these environments with their flexibility and integration.
Elastic Load Balancers
Elastic Load Balancer (ELB) solutions are far more sophisticated and offer cloud-computing operators scalable capacity based on traffic requirements at any one time. Elastic Load Balancing scales traffic to an application as demand changes over time.
It also scales load balancing instances automatically and on-demand. As elastic load balancing uses request routing algorithms to distribute incoming application traffic across multiple instances or scale them as necessary, it increases the fault
tolerance of your applications.
What are load balancing algorithms?
Load balancing algorithms are formulas to determine which server to send each client connection to. The algorithms can be very simple, like round robin, or
they can be advanced like agent based adaptive. No matter the case, the purpose of the algorithm is to send the client connection to the best suited application server.
The most commonly recommended algorithm is least connection. This algorithm is designed to send the connection to the best performing server based on the number of connections it is currently managing. Least connections takes into account the length of
each connection by only looking at what is currently active on the server.
Types Of Load Balancing Algorithms
- Least Connection
- Round Robin
- Weighted Round Robin
- Weighted Least Connection
- Agent Based Adaptive Load Balancing
- Chained Failover (Fixed Weighted)
- Weighted Response Time
- Source IP Hash
- Software Defined Networking (SDN) Adaptive
What is a Kemp load balancer?
The Kemp LoadMaster load balancer is designed to optimize the load balancing experience. LoadMaster is a software-based solution that is also available as a hardware appliance. Kemp focuses on the core load balancing technologies to ensure a simplified
configuration and management process. This focus translates to a significant TCO savings for the life of the technology.
Kemp offers world class support through an extensive organization of experts to offer assistance to customers 24×7. Kemp has built a team of load balancing and networking experts over many years to become a premier technology organization with over 100,000
deployments in 138 countries.
Why use Kemp load balancers?
Kemp LoadMaster is the leading load balancer available on the market today. Affordable load balancers available as both virtual load balancers and hardware load balancers.
Kemp LoadMaster supports the most popular hypervisors including:
- VMWare
- Hyper-V
- XEN
- KVM
Kemp LoadMaster is certified by leading vendors including:
- Microsoft
- Cisco
- Dell
- VMWare
- SAP
- Citrix
Kemp provides load balancing solutions for:
- Corporate email
- Unified Communications
- Collaborative work tools
- ERP/CRM and other workflow applications
- Web content
- e-commerce systems
- Self-provisioning applications