Patent ID: 9461933
Filing Date: 2016-10-04
CPC Classification: G06F,H04L

Claim Text:
1. A virtual server system comprising: a plurality of physical server devices that each run a plurality of virtual servers comprising a managing virtual server, the managing virtual server acquiring data from a physical server device on which the managing virtual server itself is running and from another virtual server running on the physical server device and performing an analyzing process for the acquired data; and a management server device that can communicate with the plurality of physical server devices, the management server device comprising a hardware processor which implements: a data collecting unit that collects, from each of the plurality of physical server devices, load data indicating an amount of hardware resources being used of the physical server device from which the load data is collected an available-amount calculating unit that calculates an amount of resource available in each of the physical server devices on which the managing virtual server is running using the load data collected by the data collecting unit; an allocation-amount calculating unit that calculates a resource allocation amount for the already-running managing virtual server to increase from current resource allocation amount already allocated to the already-running managing virtual server within a range of the amount of resource available calculated by the available-amount calculating unit; and an allocation instructing unit that instructs a physical server device on which the managing virtual server is running to allocate, for the managing virtual server, the resource with the resource allocation amount calculated by the allocation-amount calculating unit; an analyzing process instructing unit that instructs the managing virtual server to perform the analyzing process, and acquires an analyzing process time, which is time from a start to a finish of the analyzing process; a performance data storage unit that stores a history of a set of the resource allocation amount that has been already instructed by the allocation instructing unit and the analyzing process time acquired by the analyzing process instructing unit; and a transmission instructing unit that instructs a managing virtual server serving as a transfer target in plural managing virtual servers running on the plural physical server devices to transfer part of data subjected to the analyzing process to a managing virtual server running on another physical server device and serving as a destination of transfer, without migrating the virtual server serving as the transfer target onto the physical server device running the managing virtual server serving as the destination of transfer, wherein the allocation-amount calculating unit determines an amount of resource allocable so as to fall within the range of the amount of resource available, and calculates the resource allocation amount for the managing virtual server so as to fall within the range of the amount of resource allocable using a predetermined processing time retained in advance and a product of the resource allocation amount that has been already instructed by the allocation instructing unit and the analyzing process time acquired by the analyzing process instructing unit, and wherein on the basis of the history information stored in the performance data storage unit, the allocation-amount calculating unit estimates, for each of the managing virtual servers, time to be consumed in the analyzing process in the case where the resource allocation amount calculated above is allocated, and determines a managing virtual server having the analyzing process time estimated to exceed a predetermined upper limit time to be the managing virtual server serving as the transfer target from among the plural managing virtual servers.