Local Load Balancing
Local load balancing distributes TCP requests from one virtual IP (VIP) to one or more instance IPs. For a broad overview of the concept, please see Load Balancing Overview.
How It Works
Xandr uses redundant F5 Local Traffic Managers (LTMs) for local load balancing. Each load-balancing pool receives its own dedicated port and virtual IP address (VIP). Any user who attempts to contact a node in the pool is directed instead to the LTM's VIP. The LTM then forwards that request to one of the pool's nodes using a chosen algorithm. The most basic algorithm is round robin, which simply passes each new request to the next server in line, but other methods are also available, such as fastest node, least connections, or observed connections. It is also possible to load balance between hosts such that some hosts get a higher percentage of traffic than others. The LTM also constantly monitors the health of each node in the pool; if any of them fails, the LTM will take it out of rotation and direct all traffic to the remaining nodes.
It makes sense to send traffic through a load balancer, even if it is only a single node.
Additional Features of Our Load Balancing Pools
- It's easy to create and manage load balancing pools using our API command-line tools. You also have the flexibility to write your own tools that interact directly with our API.
- We support session persistence, which means that session-specific information is collected and stored on a specific server and a client is automatically directed to that same server on subsequent visits.
- We support SSL for secure communication.
Setting Up Load Balancing
You can set up local load balancing yourself through the API/CLI. First you will reserve a virtual IP address with the manage-lb-ip command. Then, use that VIP and the manage-lb-pool commands to create and name a pool and then add nodes. For details, see Configuring Local Load Balancing.
Note that because the load balancers have a local IP in your VLAN, they have access to all instance ports. You will not need to alter your ACLs so that your instances can communicate with the load balancer.