Load Balancer and Load Balancing System
First Claim
1. A load balancer disposed for one physical server or a plurality of physical servers in which a plurality of virtual servers operate under control of a virtual operating system disposed in the physical server or servers, the load balancer distributing requests to a plurality of virtual servers under control thereof, comprising:
- a resource monitoring unit for monitoring, for each of the physical servers, a CPU utilization of each of the virtual servers and a CPU utilization of the physical server;
a resource management table for keeping therein, for each of the virtual servers, at least a CPU assignment rate set to the virtual server and designation of a second virtual server which shares a resource with the virtual server; and
a server selecting unit for calculating, in the presence of a request to be transferred, for each transfer destination candidate virtual server, an amount of the CPU resource available for the virtual server based on a total of the CPU utilization of the virtual server and the CPU utilization of the second virtual server designated to share the resource with the virtual server and a total of the CPU assignment rate set to the virtual server and a CPU utilization set to the second virtual server, and selecting one of the virtual servers to which the request is to be transferred, based on the amount of the CPU resource available for each transfer destination candidate virtual server.
1 Assignment
0 Petitions
Accused Products
Abstract
In a system including a load balancer to select a virtual server to which a request is to be transferred, the load balancer includes a function to monitor resource use states of physical and virtual servers and a function to predict a packet loss occurring in a virtual switch. The request count of requests processible by each virtual server is calculated based on the resource amount available for the virtual server and a packet loss rate of the virtual switch, to thereby select a virtual server capable of processing a larger number of requests.
102 Citations
10 Claims
-
1. A load balancer disposed for one physical server or a plurality of physical servers in which a plurality of virtual servers operate under control of a virtual operating system disposed in the physical server or servers, the load balancer distributing requests to a plurality of virtual servers under control thereof, comprising:
-
a resource monitoring unit for monitoring, for each of the physical servers, a CPU utilization of each of the virtual servers and a CPU utilization of the physical server; a resource management table for keeping therein, for each of the virtual servers, at least a CPU assignment rate set to the virtual server and designation of a second virtual server which shares a resource with the virtual server; and a server selecting unit for calculating, in the presence of a request to be transferred, for each transfer destination candidate virtual server, an amount of the CPU resource available for the virtual server based on a total of the CPU utilization of the virtual server and the CPU utilization of the second virtual server designated to share the resource with the virtual server and a total of the CPU assignment rate set to the virtual server and a CPU utilization set to the second virtual server, and selecting one of the virtual servers to which the request is to be transferred, based on the amount of the CPU resource available for each transfer destination candidate virtual server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A load balancer disposed for one physical server or a plurality of physical servers in which a plurality of virtual servers operate under control of a virtual operating system disposed in the server or servers, the load balancer distributing requests to a plurality of virtual servers under control thereof, comprising:
-
a resource monitoring unit for monitoring, for each of the physical servers, a CPU utilization of each of the virtual servers and a CPU utilization of the physical server; a resource management table for keeping therein, for each of the virtual servers, at least a CPU assignment rate set to the virtual server; and a request count conversion table for keeping therein, for each of the virtual servers, a value of a request processing count for the virtual server corresponding to each of combinations of a plurality of values indicating the CPU utilization of the physical server forming the virtual server and a plurality of values indicating the CPU assignment rate of the virtual server, wherein in the presence of a request to be transferred, the load balancer, for each request transfer destination candidate virtual server, searches the request count conversion table based on a value of the CPU utilization of the physical server forming the virtual server obtained from the resource monitoring unit and a value of the CPU assignment rate of the virtual server obtained from the resource management table, to calculate a request count of requests currently processible by the virtual server, and compares with each other the request counts of processible requests thus calculated for the respective virtual servers, to thereby select one of the virtual servers to which the request is to be transferred.
-
-
10. A load balancing method for use in a request processing system comprising one physical server or a plurality of physical servers in which a plurality of virtual servers operate under control of a virtual operating system disposed in the physical server or servers and a load balancer disposed for distributing requests to a plurality of virtual servers operating in the physical servers, comprising the steps of:
-
beforehand keeping, for each of the virtual servers, setting of a CPU assignment rate and designation of a second virtual server which shares a resource with the virtual server; monitoring, for each of the physical servers, a CPU utilization of each of the virtual servers and a CPU utilization of the physical server; and in the presence of a request to be transferred, calculating, for each transfer destination candidates virtual server, an amount of the CPU resource available for the virtual server based on a total of the CPU utilization of the virtual server and the CPU utilization of the second virtual server and a total of the CPU assignment rate of the virtual server and a CPU utilization of the second virtual server, and selecting one of the virtual servers to which the request is to be transferred, based on the amount of the CPU resource available for the virtual server calculated.
-
Specification