Cloud Load Balancer (CLB) is a service that evenly distributes network traffic across multiple real servers to boost application performance and eliminate single points of failure, ensuring greater availability.
By assigning a virtual IP address (VIP), CLB consolidates multiple real servers in a given region into a unified, high-performance service pool. It then routes client requests to these servers based on the specified traffic distribution rules.
CLB continuously monitors the health of the servers in the pool and automatically isolates any that become unhealthy, addressing potential failures and improving overall service reliability.
With features such as self-service management, automated fault recovery, and protection against network attacks, CLB is well-suited for applications in sectors like enterprise operations, community platforms, e-commerce, and gaming.
COMPONENTS
A typical Cloud Load Balancer (CLB) setup consists of the following elements:
- Load Balancer Instance: The component responsible for routing incoming traffic to the backend servers.
- Backend/Real Servers: A collection of server instances that process the incoming requests.
- Virtual Private Cloud (VPC) or Classic Network: The overarching network infrastructure that connects and supports the entire system.
External requests are routed by the load balancer instance to the backend servers for processing, based on configured rules and distribution policies.
GLOSSARY
| Term | Full name | Descripton |
|---|---|---|
| CLB | Cloud Load Balancer | Converge Cloud offers a network load balancing service that works with real servers to provide load balancing for TCP/UDP and HTTP traffic. |
| CLB Listener | Cloud Load Balance Listener | CLB listeners let you configure ports, load balancing methods, and health check settings, with each listener corresponding to a specific application service in the backend. |
| RS | Real Server | CLB directs requests to a set of real server instances for processing, following the rules defined by the user. |
HOW IT WORKS
Basic Operating Principle
A CLB instance receives client traffic and forwards requests to real servers located across one or more availability zones for processing. The core functionality of the CLB service is driven by the load balancing listener, which monitors incoming requests on the CLB instance and distributes them to the backend servers based on predefined policies.
The CLB can direct traffic to the real servers by configuring forwarding protocols and ports for both the Client - CLB and CLB - Real Server connections.
It’s recommended to deploy real server instances across multiple availability zones. This ensures that if one availability zone experiences failure, CLB can route traffic to healthy servers in other zones, preventing service interruptions and maintaining high availability.
Request Routing:
When a client attempts to access a service, it first resolves the CLB domain name via the DNS server, which returns the appropriate CLB IP addresses. Once the CLB listener receives the request, it uses various load balancing algorithms to forward the request to the backend servers. Converge Cloud supports multiple load balancing methods, including weighted round robin, IP hash, and weighted least connections.
Real Server Monitoring:
A CLB instance continuously monitors the health of real server instances to ensure traffic is only directed to servers that are functioning properly. If a server becomes unhealthy, the CLB will stop routing traffic to it and will resume once the server is back online and functioning normally.
Additional Services
CLB integrates with several services to enhance application availability and scalability:
- Cloud Virtual Machine Instance is a virtual server that hosts the application in the cloud.
- Auto Scaling dynamically adjusts the number of instances. When enabled with CLB, new instances are automatically added to the CLB group, and terminated instances are removed from the group.
- Converge Cloud Observability Platform provides monitoring for CLB instances and backend server health, allowing for necessary actions to be taken.
- Domains and DNSPod translates custom domain names (e.g., www.example.com) into the corresponding IP address (e.g., 192.0.2.1), enabling the routing of requests to CLB instances.