LVS of Load Balancer software

Source: Internet
Author: User

LVS is the abbreviation for Linux virtual server, which is the Linux virtualization server. Now LVS is already part of the Linux standard kernel, Prior to the Linux2.4 kernel, the LVS had to be recompiled to support the LVS function module, but since the Linux2.4 kernel, the various functions of LVS have been built-in, without any patching of the kernel, and the functions provided by LVS can be used directly.

LVS since 1998, has developed into a more mature technology project now. LVS technology can be used to achieve highly scalable, highly available network services, such as WWW services, cache services, DNS services, FTP services, mail services, video/audio-on-demand services, and so on, there are many more famous sites and organizations are using LVS set up the cluster system, For example: The Linux portal (www.linux.com), real Company (www.real.com), which is known for providing audio and video services to RealPlayer.

Technical Introduction

The LVS cluster uses IP load balancing technology and content-based request distribution technology. The scheduler has a good throughput rate, transfers the request evenly to the different server execution, and the scheduler automatically shields off the server's failure, thereby forming a set of servers into a high-performance, highly available virtual server. The structure of the entire server cluster is transparent to the customer and eliminates the need to modify client and server-side programs. To do this, you need to consider system transparency, scalability, high availability, and manageability at design time.

Cluster structure

In general, the LVS cluster uses a three-tier structure, the main components of which are:

A, Load scheduler (balancer), which is the entire cluster to the outside of the front end machine, is responsible for sending the customer's request to a set of servers to execute, and the customer believes that the service is from an IP address (we can call the virtual IP address) on the.

B, server pool, is a set of servers that actually perform customer requests, such as Web, MAIL, FTP, and DNS.

C, shared storage (GKFX storage), which provides a shared storage area for a server pool, which makes it easy to have the same content for the server pool and provide the same service.

Scheduler

The scheduler is the only entry point for a server cluster system (single Entry, which can be combined with IP load balancing technology, content-based request distribution, or both).

In IP load balancing technology, it is necessary for the server pool to have the same content to provide the same service. When the customer request arrives, the scheduler selects a server from the server pool only according to the server load and the scheduling algorithm, forwards the request to the selected server and logs the dispatch, and when the other message arrives, it is forwarded to the previously selected server. In content-based request distribution technology, the server can provide different services, and when a customer request arrives, the scheduler can select the server to execute the request based on the requested content. Because all operations are done in the core space of the Linux operating system, its scheduling overhead is small, so it has a high throughput rate. The number of nodes in the server pool is variable. When the entire system receives more load than is currently available for all nodes, you can increase the server in the server pool to meet the increasing request load.

For most network services, there is no strong correlation between requests, and requests can be executed in parallel on different nodes, so the performance of the whole system can be increased linearly with the number of nodes in the server pool. Shared storage is typically a database, a network file system, or a distributed file system. The data that the server node needs to dynamically update is generally stored in the database system, and the database guarantees the consistency of data during concurrent access. Static data can be stored in a network file system (such as Nfs/cifs), but the network file system has limited scalability, in general, the NFS/CIFS server can only support 3~6 busy server nodes. For larger cluster systems, consider using distributed file systems such as AFS, GFS, Coda, and Intermezzo. Distributed file systems provide shared storage for each server, accessing distributed file systems as if they were accessing local file systems, while Distributed file systems provide good scalability and availability.

Distributed lock Manager

In addition, when applications on different servers read and write access to the same resource on a distributed file system at the same time, an application's access violation needs to be resolved to make the resource consistent. This requires a distributed lock manager (Distributed lock manager), which may or may not be available internally or externally to a distributed file system. When writing applications, developers can use the distributed lock manager to ensure the consistency of the application's concurrent access on different nodes.

Load schedulers, server pools, and shared storage systems are connected through high-speed networks, such as 100Mbps switched networks, myrinet and gigabit networks. The use of high-speed network, mainly to avoid when the system scale expansion of the Internet becomes the bottleneck of the whole system.

Monitor

Graphicmonitor is a monitor that provides system administrators with an entire cluster system that can monitor the state of the system. Graphic Monitor is browser-based, so the status of the system can be monitored either locally or offsite. For security reasons, the browser through the HTTPS (secure HTTP) protocol and identity authentication, before the system monitoring, and system configuration and management.

Advantages

1, open source, free

2, can find some related technical resources on the Internet

3, with software load Balancing some of the advantages

5 Disadvantages

1, the most core is the lack of reliable support services, no one is responsible for their results;

2, the function is relatively simple, supports the complex application the load balance ability is poor, such as the algorithm is few;

3, open the tunnel mode needs to recompile the kernel;

4, complex configuration;

5, mainly for LINUX, there is no dedicated version for Windows, but can be configured to make Windows into the LVS cluster in the real server (Win2003, win2008).

Specific use, you can refer to the technical Achievements Dream blog.

http://ixdba.blog.51cto.com/2895551/552947

LVS of Load Balancer software

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.