Patent ID: 8656406

Claim:
A load balancer coupled to a physical server having a plurality of virtual servers operated by a virtual operating system in the physical server and a virtual switch connecting the virtual servers to an external device, the load balancer distributing requests to a plurality of virtual servers under control thereof, comprising: a CPU; a memory having a resource monitoring unit, a packet loss rate predicting unit, a server selecting unit and a resource management table; wherein the resource monitoring unit monitors, for the physical server, a CPU utilization of each of the virtual servers and a CPU utilization of the physical server; the packet loss rate predicting unit predicts a packet loss rate of the virtual switch based on an input packet rate of packets inputted to the physical server, a first threshold that is an input packet rate at which a packet loss starts to occur, and a second threshold which is an input packet rate as a performance limit of the virtual switch; the resource management table keeps 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 the server selecting unit selects one of the virtual servers to which the request will be transferred; wherein the server selecting unit calculates, in the presence of a request to be transferred, for each of a plurality of transfer destination candidate virtual servers, an amount of the CPU resource available for the candidate virtual server based on a total of the CPU utilization of the candidate virtual server and the CPU utilization of the second virtual server designated to share the resource with the candidate virtual server and a total of the CPU assignment rate set to the candidate virtual server and a CPU utilization set to the second virtual server, when a predicted value of the packet loss rate is zero percent, sets an amount of the CPU resource available for the first virtual server to a surplus processing capacity, when the predicted value of the packet loss rate is greater than or equal to a predefined threshold, the candidate virtual server is excluded from the virtual servers for the selection of the transfer destination, when the predicted value of the packet loss rate is less than the predefined threshold, sets a value which is an amount of the CPU resource available for the candidate virtual server corrected with the packet loss rate to the surplus processing capacity, and selects one of the virtual servers to which the request is to be transferred, based on the surplus processing capacity.