Font Size: a A A

Study And Realization Of Dynamic Load Balancing Based On Linux Virtual Server Cluster

Posted on:2010-10-27Degree:MasterType:Thesis
Country:ChinaCandidate:X Y YanFull Text:PDF
GTID:2178360275451286Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Applying load balancing technology, Linux Virtual Server (LVS) cluster is a virtual server composed of many servers. It provides a scalable and high availability solution at a low price to meet the need of rapid increasing network service requests. One of the kernel technologies of this cluster is load balancing technology, whose function is to transfer the requests to a real server according to a scheduling algorithm. The goal of load balancing is to make full use of all real servers as it can as possible and to shorten the service response time of the whole cluster system. Although LVS provides the load balancing scheduling mechanism, its weighted value of load scheduling algorithm is static and the scheduler can not dynamically adjust the weighted value accordingly, which will easily lead to the leaning load of real servers.In order to resolve the problem, this thesis designs a solution that scheduler collects the feedback of load information from real servers and dynamically adjust the weighted value of real servers. In addition, this thesis improves scheduling algorithm and provides a new scheduling algorithm: weighted least utilization scheduling algorithm. Firstly, the thesis summarizes LVS integrated architecture and analyzes its technical characters. Secondly, the thesis also deeply analyzes and studies LVS load balancing scheduling algorithm. Aimed at the defect that current scheduling algorithm can not realize dynamically adjusting the weighted value, the thesis designs and develops two programs: Agent and LoadManager. The former running on every real server is used to collect the computer's load information and send this information to the scheduler, and the latter running on the scheduler is used to receive the load information and calculate the weighted value accordingly. The scheduler adjusts the weighted value of servers according to the collected load information and transfers the network service requests to the real servers via the Least Utilization Scheduling Algorithm. So the ability to quickly respond and throughput can be improved. Lastly, a tool Load Runner which is a good load testing tool to test this cluster system is applied and all the real servers' load information is recorded. The result of the research shows that this architecture and algorithm can effectively avoid the leaning load of servers and greatly increase the data throughput. When a few requests are received, improvement of the performance is not obvious. But when a lot of requests are received, the advantage of dynamic feedback scheduling algorithm is gradually displayed. The reason why improvement of the performance is not obvious at first is that the server program running on the scheduler takes CPU time and memory space and the scheduler needs timely to collect the load information of all real servers, which takes the extra cost of network bandwidth. But when a lot of connections are received, this cost is counteracted by the efficiency of this new architecture and algorithm. In this way, dynamically balancing every load note is realized and the performance of this cluster system is greatly improved.
Keywords/Search Tags:cluster, Linux Virtual Server, load balancing, scheduler
PDF Full Text Request
Related items