Abstract: For reallocation of resource of a virtual machine, there may be the case of bringing about, to a user, an obstacle such as restart of the virtual machine (1 2 I), stop of a service for a certain period of time, occupancy of a network band for a certain period of time. However, an allocation of resource of a VM cannot be performed while a user understands a detail of such side effect. A management server is installed, which is provided with function to monitor the virtual machine, virtualization servers (102, 103, 104) and a network resource connecting the virtualization servers (1 02, 103, 104), and to calculate side effect of the resource reallocation of the virtual machine. Such a mechanism is realized for the management server to present the side effect to a user and to obtain approval of the user, before carrying out resource reallocation of the virtual machine.
BACKGROUND OF THE INVENTION
The subject matter disclosed by the present description relates to a resource
allocation method of a virtual machine and a device.
By a virtualization software which makes physical resource of a computer look a
plurality of logical resources, a plurality of virtual machines (hereafter referred to as a VM) have
become to be able to make in operation on one computer. In addition, because the
virtualization software absorbs characteristics of hardware, the VM becomes easy to be moved
between VM hardware without depending on characteristics of the hardware of a computer.
Hereafter a computer, which introduces the virtualization software and makes a plurality of the
VMs operated, is called a server.
Such technology for virtualization of a desktop has been developed where an OS
(basic software) to construct a desktop, which is a work region of a user, is introduced and a user
utilizes the VM by a remote operation. Realization of a desktop by the VM makes possible to
reduce cost of introduction, operation and maintenance. In addition, by putting together data
applications at one place at a data center, it becomes advantageous in view of security aspect.
Resources (CPU processing time, amount of memory, disk access band, network
band and the like) of hardware utilizable by the virtual machine are determined by virtualization
software. In the case where resource allocated is deficient, performance of the virtual machine
decreases. For example, in the case of a virtualization desktop, where a desktop is configured
on the virtual machine, deficiency of CPU resource delays response to operation of a user of the
virtualization desktop, thus decreases impression from utilization of the user. Accordingly, in
the case where deficiency is generated in resource allocated to the virtual machine, such a
mechanism is required that resource is quickly added and allocated upon request of resource
reallocation by a user. However, in the case where resource reallocation is not specifically
required by a user to reduce cost, it is preferable that unnecessary resource is not added and
allocated to virtual calculation.
In conventional technology (JP-A-2011- 170679, paragraph 0047), a user sets
(registers) throughput (performance level of a computer) of a computer required most by a user
on a daily basis (in average), at a system side, in advance, and sets resource allocation of an
individual virtual machine assigned to oneself, and in the case of requiring throughput
temporarily over or under the throughput of a computer set by a user (the throughput to be used
on a daily basis (performance level of a computer)), it is designed to request temporary change of
resource allocation to the system. The user pays a compensation to a service by the individual
- - 3 -
virtual machine allocated with resource required on a daily basis, and in the case of requiring
throughput temporarily over or under the throughput (the throughput to be used on a daily basis)
of a computer set by a user, by paying additionally to a usual compensation, or paying by
decreasing usual compensation, desired service is received.
5 SUMMARY OF THE INVENTION
However, for reallocation of resource of a virtual machine, there may be the case
of bringing down to a user, an obstacle (hereafter called side effect), such as restart of the virtual
machine, service stop for a certain period of time, and still more occupancy of a network band
for a certain period of time, in the case where the virtual machine is moved to other server
10 devices. However, there was the case where absence of a mechanism of understanding side
effect in advance by a user, and implementing resource reallocation of the VM, after approval
thereof, may bring down disadvantage.
Even in the case where resource of a virtual machine is moved to other server
devices, not for reallocation, there is a similar problem.
15 The one disclosed by the present description is a technology for presenting to a
user in advance, side effect in the case of carrying out reallocation of resource to a virtual
machine, which operates on a certain server device, or in the case moving a virtual machine to
other server devices for resource reallocation or for other objects.
Specifically, there is disclosed a method for resource reallocation provided with a
20 mechanism for presenting side effect to a user in advance, before a management server carries
out resource reallocation of the virtual machine, and obtaining approval of the user, by
monitoring virtual machines and network resource connecting the virtual machines, installing the
management server provided with function to calculate side effect of resource reallocation of the
virtual machine.
25 It is disclosed, as a more specific aspect, a computer system, connected with a
first server device which a first virtual machine operates, one or more other server devices, a
management server device and a first terminal, via a network, characterized in that the
management server device accepts reallocation request of resource to the first virtual machine,
from the first terminal which a user of the first virtual machine uses, calculates side effect caused
30 by reallocation of resource requested, sends information on the side effect calculated to the first
terminal, and make it presented to the user, and in the case of receiving approval to the side
effect which the user input to the first terminal, from the first terminal, starts the resource
reallocation requested.
- 4 -
Still more, it is disclosed that the management server device calculates, as the side
I effect, any one or more of decrease in communication speed via the network, accompanied with
I transmission of a virtual disc, decrease in response speed of the first virtual machine
I accompanied with the moving, and necessity of restart of the first virtual machine caused by the
I 5 reallocation of resource, on moving of the first virtual machine from the first server device to the
other server devices.
Still more, it is disclosed that the first terminal displays a button for requesting
resource reallocation of the virtual machine, on the screen, and sends the reallocation request of
resource to the management server device in response to push down operation of the button by
10 the user.
Still more, it is disclosed that the management server device, in the case of
accepting the request of resource reallocation, checks a resource utilization situation of the first
server device by the first virtual machine, and in the case where any one kind of the resources
does not exceed the predetermined threshold, sends the response, which rejects the reallocation
15 request of the resource, to the first terminal.
Still more, it is disclosed that the management server device checks a resource
utilization situation of the first virtual machine, and in the case where any one kind of the
resources exceeds the predetermined threshold, checks presence or absence of other server
devices which become the destination of the first virtual machine, or whether other virtual
20 machine operating on the first server device is moving or not, and in the case of absence of other
server devices, or in the case where other virtual machine is moving, sends the response, which
rejects the reallocation request of the resource, to the first terminal.
In addition, it is disclosed, as another aspect, a computer system, in which a first
server device which a first virtual machine operates, one or more other server devices, a
25 management server device and a first terminal, are connected via a network, characterized in that
the management server device checks resource utilization factor of the first server device by the
first virtual machine, in the case where any one or more kinds of the resources exceeds the
predetermined threshold, calculates side effect caused by reallocation of the resource,
sends proposal of the reallocation of the resource accompanied with information of the side
30 effect calculated, to the first terminal, and make it presented to the user, and in the case of
receiving approval to the side effect which the user input to the first terminal, from the first
terminal, starts the resource reallocation proposed.
Still more, it is disclosed that in the case where one or more virtual machines
other than the first virtual machine is in operation on the first server device, the management
I server device checks resource utilization factor of the first server device by each of the virtual
I machines, in the case where a plurality of the virtual machines are present, where any one or
more kinds of the resources exceeds the predetermined threshold, fbrnishes priority sequence
among the multiple virtual machines, and implements calculation of the side effect and proposal
1 5 of the reallocation of the resource, according to the priority sequence.
Still more, it is disclosed, as another aspect, a computer system, in which a first
server device which a first virtual machine operates, one or more other server devices, a
management server device and a first terminal, are connected via a network, characterized in that
the management server device checks resource utilized by the first virtual machine which
10 operates on the first server device, in the case where the first virtual machine can be moved to
other server devices, calculates side effect caused by the moving, sends proposal of the moving
accompanied with information of the side effect calculated, to the first terminal, and make it
presented to the user, and in the case of receiving approval to the side effect which the user input
to the first terminal, from the first terminal, carries out the moving proposed.
15 According to the disclosure, side effect caused by resource reallocation of the
virtual machine can be understood before a user executes the resource reallocation.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 is a drawing showing total system configuration of Embodiment 1.
Fig. 2 is a drawing exemplifying internal configuration of a server 102 in
20 Embodiment.
Fig. 3 is a drawing exemplifying internal configuration of VM configuration
information 24 1 in Embodiment.
Fig. 4 is a drawing exemplifying internal configuration of a resource allocation
unit 1 11 in Embodiment.
25 Fig. 5 is a drawing exemplifying internal configuration of a resource situation DB
401 in Embodiment.
Fig. 6 is a drawing exemplifying internal configuration of a network route DB
402 in Embodiment.
Fig. 7 is a drawing exemplifying internal configuration of an allocation threshold
30 table 403 in Embodiment.
Fig. 8 is a drawing exemplifying internal configuration of an allocation record DB
404 in Embodiment.
Fig. 9 is a drawing exemplifying internal configuration of a side effect calculation
DB 408 in Embodiment.
Fig. 10 is a flow chart exemplifying operation sequence of an allocation request
corresponding unit 405 in Embodiment.
Fig. 11 is a flow chart exemplifying operation sequence of an allocation proposal
5 unit 406 in Embodiment.
Fig. 12 is a drawing exempliqing a display screen of a resource allocation agent
15 1 in Embodiment.
I Fig. 13 is a sequence drawing exemplifying operation sequence of system
I operation start in Embodiment.
10 Fig. 14 is a sequence drawing exemplifying operation sequence of system
operation completion in Embodiment.
I Fig. 15 is a sequence drawing exemplifying operation sequence when resource
I reallocation request came from a user in Embodiment.
Fig. 16 is a sequence drawing exemplifying operation sequence when resource
15 reallocation requests came from a plurality of users in Embodiment.
Fig. 17 is a sequence drawing exemplifying operation sequence of an allocation
proposal in high server load in Embodiment.
Fig. 18 is a sequence drawing exemplifying operation sequence for putting
together the VMs at one place in Embodiment.
20 DESCRIPTION OF THE EMBODIMENTS
Explanation will be given below on Embodiments with reference to drawings.
In the present Embodiment, explanation will be given on an embodiment of a
resource allocation method of the VM, in constructing a desktop, which is work environment of
a user, at the virtual machine (VM), to utilize it as a virtualization desktop.
25 Fig. 1 shows system configuration of Embodiment 1. The present system is
configured by including a virtualization infrastructure composed of a plurality units of servers
for operating the VM, and one unit of a management server for monitoring and managing
resource of the VM, and a plurality units of terminals, which are connected to the VM in a
remote way on this virtualization infrastructure and operate the VM in a remote way. The
30 terminal is connected to a local area network (LAN) via a wide area network (WAN), and is
connected to the virtualization infrastructure, which is connected to the local area network.
One example of the present system is an infrastructure for centralized management of the
virtualization desktops in a data center of an enterprise, and a terminal system to utilize the
- 7 -
virtualization desktops. In this case, a local area network (LAN) becomes a local area network
inside the data center.
Explanation will be given in detail on the system of the present Embodiment.
The system of the present Embodiment is configured by including a management server 10 1, a
server device group represented by a server 102, a terminal group represented by a terminal 14 1,
and a network called LAN 132 and WAN 13 1 for the above three to communicate each other.
In addition, as a user of the present system, there are a user 1 utilizing the terminal 141, a user 2
utilizing a terminal 142 and a user 3 utilizing a terminal 143. The server device group
represented by the server 102 is a device for making a VM operated. The management server is
a device for operation control of the VM and management of resource allocation. The terminal
is a device, which a user utilizes by connecting to the VM.
Fig. 2 exemplifies internal configuration of the server 102. The server 102 can
be realized on a computer configured by including a memory 201, a processor 202, a hard disk
203, and communication hardware 204.
The processor 202 is a hardware having calculation function for processing the
data. A recent processor may sometimes contain one or more CPU cores, which is one set of
hardware composed of a part for executing a data processing command, and a part for
temporarily storing processing results. Because each of the CPU cores can operate
independently, more CPU core number leads to enhancement of CPU performance. The
processor 202 shown in Fig. 2 is a processor composed of a four sets of CPU cores; that is a core
25 1, a core 252, a core 253, and a core 254.
The communication hardware 204 is a device for network communication, such
as a NIC (network interface card) or the like. The hard disk 203 is a non-volatile memory
medium (For example, a magnetic disc, a flash memory or the like) for storing a data or data
processing software (a program). The memory 201 is a recording medium which the processor
202 utilizes in executing the program, and may be volatile.
In the hard disk 203, there are stored an OS (operation system) 23 1, a resource
monitoring agent 114, virtualization software 113, a VHD 21 1, which is a virtual immobilized
disk of a VM 12 1, a VHD 2 12, which is a virtual immobilized disk of a VM 122, a VHD 2 13,
which is a virtual immobilized disk of a VM 123, and VM configuration information 24 1.
Description will be given later in detail on the VM configuration information 24 1.
The OS 23 1 is provided with function to control the communication hardware 204
or manage the memory 201, develop the virtualization software 11 3 or the resource monitoring
agent 114 onto the memory 201 and execute them.
- 8 -
The virtualization software 113 is software provided with what is called
virtualization function to realize a virtual machine and a virtualization desktop on the server 102.
The virtualization software 11 3 allocates hardware resource to a VM, with reference to VM
configuration information 241 to be described later, and makes it operated. It should be noted
that the virtualization software 11 3 receives a command from software of other server, and is
provided with hction such as new preparation, activation, termination, and moving to other
server devices of a VM. In addition, the resource monitoring agent 114 is the software
provided with function to collect information on resource utilization factor (utilization factor by
each CPU core, memory utilization factor, utilization factor of a hard disk drive (HDD) access
band, utilization factor of a network band) of the VM which operates on the virtualization
software 113, and the server 103, and to send the information collected to other software. Other
server devices have the same configuration as that of the server 103. However, processing
speed or VM number which can be accommodated may differ by each server.
The above software is executed by the processor 202 and realizes function
described above or to be explained below.
Fig. 3 exemplifies inner structure of the VM configuration information 241. The
VM configuration information 241 is a data showing resource amount to be allocated to each
VM, when the virtualization software 11 3 activates the VM. Firstly, in a row of an ID 301, an
ID of the VM in operation on the server 102 is described. A processor 302 shows CPU core
number which each VM utilizes. A disk access band 303 shows a disc access band which each
VM utilizes. In the case where "share" is described in this item, it means that the band is not
assigned individually to each VM, and all VMs share one communication route. Lastly, a
network band 305 shows the maximum communication band of a network interface which each
VM utilizes. In the case where "share" is described in this item, it means that an exclusive
band is not assigned individually to each VM, and all VMs share one communication route.
The management server 101 is a device which is capable of network
communication for managing resource allocation of the VMs in a server group. The
management server 101 is configured by including the resource allocation unit 1 1 1.
Description will be given later on a configuration of the resource allocation unit 11 1.
Explanation will be given below on the terminal 141 as an example of a terminal.
In the terminal 141, a resource reallocation agent 15 1 and a VM connection unit 16 1 are
arranged. It should be noted that the VM connection unit 161 is what is called screen
transmitting software, for displaying a screen of the VM in a screen of the terminal 141, by
connecting to a VM on a server such as the server 102. Description will be given later on the
- 9 -
resource allocation agent 15 1. Other terminals have the same configuration as that of the
terminal 14 1. However, processing speed or a size of a display screen may sometimes differ by
each terminal.
Also each processing unit or function to be explained below of the management
5 server 101 and the terminal 14 1 or others, in a computer provided with a processor and a
memory device, can be realized by a processor, by executing a program for realizing each item
stored in the memory device.
Fig. 4 exemplifies detailed functional configuration of the resource allocation unit
1 1 1. The resource allocation unit 1 1 1 is configured by including a resource situation DB 40 1, a
10 network route DB 402, a allocation threshold table 403, a allocation record DB 404, an side
effect calculation DB 408, a allocation request corresponding unit 405, a allocation proposal unit
406, and a VM deflected unit 407. Explanation will be given below on each element.
Fig. 5 exemplifies configuration of the resource situation DB 401. The resource
situation DB 401 is a database for storing a utilization situation of resource of each server and
15 the VM on a virtualization infrastructure. A row of a server 501 records machine names of
servers in the virtualization infrastructure. A CPU utilization factor 502 records utilization
factor of a CPU core which the VM operating on each server utilizes, and a CPU core utilization
factor of the virtualization software itself. A utilization factor 503 of a disk access band records
a disk access band which the VM operating on each server occupies and a disk access band
20 which the virtualization software itself occupies. A memory utilization factor 504 records
utilization factor of a memory assigned to the VM operating on each server and memory
utilization factor of a memory which the virtualization software itself utilizes. A utilization
factor of a network band 505 records a network band which the VM operating on each server
occupies, and a network band which the virtualization software itself utilizes.
25 Fig. 6 exemplifies configuration of the network route DB 402. The network
route DB 402 is a database for memorizing a network route between each server of the
virtualization infrastructure of the present system. A network route 601 describes each network
route composed of a server at the start point and a server at the end point. A network device
602 records a list of network devices (a router or a hub) through which each network passes.
30 Fig. 7 exemplifies configuration of the allocation threshold table 403. The
allocation threshold table 403 is a table for recording the maximum utilization factor
recommended, relative to each hardware resource. It is a data having meaning that carrying out
resource reallocation is recommended, because of possibility of giving influence on performance
of the VM, in the case where utilization factor of a certain resource of a VM exceeds the
- 10-
maximum utilization factor. A kind of resource 701 records a kind of resource of each
hardware. A threshold 702 records the maximum utilization factor recommended, relative to
each resource.
Fig. 8 exemplifies configuration of the allocation record DB 404. The allocation
record DB 404 is a database for recording resource allocation of the VM during or after
implementation in the present system. A row of an ID 801 records an ID of a resource
allocation subject VM. A server 802 before allocation records an ID of a server where an
allocation subject VM was in operation before allocation. The server 103 after allocation
records an ID of a server where an allocation subject VM was in operation after allocation.
Allocation start time 804 records time when the allocation started. Allocation end time 805
records, in the case where allocation is completed, end time thereof, and in the case where
allocation is not completed, records scheduled end time thereof.
Fig. 9 exemplifies configuration of the side effect calculation DB 408. The side
effect calculation DB 408 is a database for recording a data transmission work accompanied with
resource allocation of a VM, a changing work of software setting or the like, and influence of
these works on a user. Firstly, a work ID 11 01 is a distinguishing number of work items
required in resource allocation. A work 1 102 explains contents of the works. Influence 1 103
on a user describes influence of each work on a user of the resource reallocation subject VM. A
calculation method 11 04 describes required time for each work and a calculation method for the
required time.
Fig. 10 is a flow chart exemplifying operation procedure of the allocation request
corresponding unit 405. The allocation request corresponding unit 405 is corresponding
function when resource reallocation request of a VM came from a user. The allocation request
corresponding unit 405 is in operation always when the management server 10 1 is in operation.
In the step 90 1, request of resource allocation from a user is waited. In the case
of accepting resource allocation request from the user, firstly in the step 902, a resource situation
of a VM, which the user who requested resource allocation is now utilizing (hereafter called a
allocation subject VM) is confirmed by a resource situation DB 206, and it is confirmed whether
there is resource with utilization factor over a threshold shown in a allocation threshold table 403
or not, in each resource of the allocation subject VM. In the case where there is no resource
with the utilization factor over the threshold, result that allocation was rejected is answered to a
user, in the step 9010, and the process returns to the step 901. Description will be given later on
a display method for allocation reject.
On the other hand, in the case where there is such resource that has the utilization
- 11-
factor over the threshold, and is thus deficient (hereafter called deficient resource), in order to
eliminate this resource deficiency, reallocation is investigated in and after the step 903.
Deficient resource may be present in plural.
In the step 903, servers which are capable of providing resource to eliminate
5 resource deficiency specified in the step 902 (hereafter called servers for allocation) are searched
in the resource situation DB 206, and any one of them is selected.
In the step 903, as the servers for allocation, such a server may be selected that
satisfies all of the following conditions (I), (2) and (3).
(1) A server having a resource utilization factor of deficient resource of A% or
10 lower. The A% may be set to be 10%. It should be noted that when a plurality of deficient
resources are present, condition that the utilization factor is A% or lower may be set for each
resource. In addition, when a plurality of deficient resources are present, condition that the
utilization factor is A% or lower may be set for a part of the resources.
(2) A network route from a server where the allocation subject VM is in operation
15 should not overlap a network route to be used for allocation of another VM during already
implementation.
(3) Among the servers satisfied the above conditions (1) and (2), it should be the
one having the minimum number of network devices (a router or a hub) which utilize a network
route from the server where the allocation subject VM is in operation.
20 As described above, in the step 902 in the present Embodiment, when there is
request for resource allocation, which resource of the relevant VMs has deficiency is judged.
In the step 904, result that allocation was rejected is answered to a user in the step
905, in the case where the server for reallocation was not found in the step 903, and the process
I returns to the step 901. Description will be given later on a display method for allocation
25 rejected. On the other hand, in the case where the server for reallocation was found, in the step
903, side effect in carrying out the allocation is calculated in the step 906.
In the step 907, side effect is presented to a user, and whether approval of the user
is present or not is confirmed, in the step 908. In the case where the user approved it, resource
reallocation is implemented in the step 909. In the case where the user did not approve it, the
30 process returns to the step 901.
Description will be given later in detail on the step 906, and the step 907.
As described above, in the case where the above conditions (I), (2) and (3) are not
satisfied in the present Embodiment, that is, in the case where there is no server which is capable
of securing resource for allocation, or in the case where data transmission for resource allocation
- 12 -
and data transmission for another resource allocation could strike on a network or on a server,
allocation request should not be corresponded.
Fig. 11 is a flow chart exemplifying operation procedure of the allocation
proposal unit 406. The allocation proposal unit 406 is software to be called out for execution,
to an OS 23 1 regularly in an interval of B minutes. B may be set to be ten. Procedure for one
time execution is as follows.
Firstly, in the step 1001, the allocation record DB 404 confirms whether resource
allocation during allocation is present or not. In the case of presence of resource allocation
during execution, it is ended.
Next, in the step 1002, it is confirmed whether there is a VM (hereafter called a
resource deficient VM) having resource over any one of thresholds described in the allocation
threshold table 403 or not, with reference to the resource situation DB 401. In addition,
resource with utilization over the threshold is called deficient resource. In the case where there
is no resource deficiency VM, the allocation proposal unit 406 is closed. In the case where
there is one or a plurality of the resource deficient VM, the allocation proposal unit 406
determines order in a group of the resource deficient VMs, in the step 1003.
Description will be given later in detail on processing content of the step 1003.
In the step 1004, a higher rank VM is selected in the orders determined in the step
1003, to calculate side effect in allocation of deficient resource of the VM selected in the step .
1005.
In the step 1006, the side effect calculated in the step 1005 is presented to a user
to ask for approval of the user on the VM selected.
Processing of the step 1005 corresponds to the step 903 to be described later, and
the step 906 to be described later. Next, in the step 1007, in the case where a user approved
resource allocation, allocation is implemented and ended. On the other hand, in the case where
the user of the VM selected does not approved allocation, the VM selected is excluded from the
group of the resource deficient VMs, in the step 1009, and in the case where the VM is remained
in the group of the resource deficient VMs, the process returns to the step 1004, while in the
other case, the process is ended and the step 1001 is implemented again after B minutes.
The process of the step 1003 is as follow. As a standard to determine priority
sequence in the group of the resource deficient VMs, the following standard (1) is utilized.
(1) The VM having the higher utilization factor of deficient resource has the
higher priority sequence.
It should be noted that any of the following standards (2), (3) and (4) may be
- 13-
utilized instead of the above standard (1).
(2) The VM having the smaller data capacity to be transmitted using a network
accompanied with resource reallocation has the higher priority sequence.
(3) The VM of a user having the lower position in an organization has the higher
priority sequence.
(4) The VM of a user utilizing a plan having the lower system utilization payment
has the higher priority sequence.
As described above, in the present Embodiment, in the case where a plurality of
the resource deficient VMs are present, the management server h i s h e s priority sequence
among the VMs having high resource utilization factor, and presents an arrangement proposal to
a user according to that order.
Detailed processing of the step 906 becomes as follows. Firstly, in the case
where a server now in operation of the resource allocation subject VM is different from a server
selected in the step 903, work for moving the allocation subject VM to the server selected in the
step 903 is selected from the side effect calculation DB 408, and time required for each work is
calculated by a calculation method corresponding to the work. It should be noted that in
calculation of transmission time of a work ID 1, size of a virtual disk is a capacity of a file such
as a VHD2 11 or the like, and transmission speed (Transmit-speed) may be calculated by the
following equation.
Transmit-speed = Max-speed/VM-number
wherein "Max-speed" represents the maximum communication speed of a network interface of a
server where the reallocation subject VM is in operation; and "VM-number" represents total
number of the VM in operation on the same server as the reallocation subject VM. In addition,
in calculation of transmission time of the work ID2, transmission speed may also utilize the
calculation equation of the above "Transmit-speed".
As described above, in the present Embodiment, side effect is calculated such as
occupancy of a network, occupancy of a disc access band, slow down of VM operation reaction,
which is brought down by an allocation work in resource allocation of the VM.
The VM deflected unit 407 is the one exemplifying a process flow for suppressing
consumption of power by a virtualization infrastructure, by putting together the VMs in
operation at one place and turning off a power source of an unnecessary server. Description
will be given later on detailed processing of the VM deflected unit 407.
Fig. 12 shows a display screen of the resource allocation agent 15 1. The
resource allocation agent 15 1 is software fulfilling a role of communicating with a resource
allocation unit 11 1 of the management server 101 via a network, displaying information
presented from the resource allocation unit 11 1 to a user, as well as transmitting information on
user selection to the resource allocation unit 11 1.
The resource allocation agent 15 1 operates in the terminal 14 1, and displays a
screen 120 1.
A button 122 1 in the screen 1201 is a button which a user pushes on requesting
resource reallocation of the VM.
A screen 1202 is a screen, in which the resource allocation agent 15 1 displays to a
user, in the case where the allocation request corresponding unit 405 rejects allocation request in
the step 90 1.
A screen 1203 is a screen, in which the resource allocation agent 15 1 displays to a
user, in the case where the allocation request corresponding unit 405 cannot allocate in the step
905.
In addition, a screen 1024 is a screen, in which the resource allocation agent 15 1
displays to a user, on sending side effect calculated in the step 907 to the resource allocation
agent 15 1 by the allocation request corresponding unit 405. The screen 1024 includes a display
area 12 1 1 for displaying effect of resource reallocation, and a display range 12 12 for displaying
influence of resource reallocation. Effect of resource reallocation is the one showing a resource
situation after reallocation. In addition, influence of resource reallocation is the one displaying
calculation result in the step 906, by the allocation request corresponding unit 405.
Lastly, a screen 1205 is a screen in which the resource allocation agent 15 1
presents to a user during implementing resource allocation. An arrow mark 122 1 in the screen
1205 is the one showing a progress state of resource allocation.
Fig. 13 exemplifies operation start procedure of the system of the present
Embodiment. Firstly, a system manager activates a management server in the step 1301, as
well as activates servers 102, 103 and 104 in the step 1302.
In the step 1303, the management server activates the resource allocation unit 11 1.
In the step 1304, the server 102 develops the virtualization software 11 3 on a
memory, and the virtualization software 11 3 further reads VM configuration information 24 1, to
allocate hardware resource to the VM 12 1, the VM 122 and the VM 123, based on the VM
configuration information 24 1, and makes them operated.
[0083]
In the step 1305, each of the servers 102, 103 and 104 activates the resource
monitoring agent 1 14. The resource monitoring agent 1 14 updates information of a resource
- 15-
situation DB 401 in the resource allocation unit 11 1, regularly once every C minutes (updating
I work is started in the step 1 306). The C value may be set to be 1.
In the step 1306, activation of a virtualization infrastructure becomes completed.
Explanation will be given next on utilization start procedure of the virtualization
5 infrastructure.
In the step 1307, the user 1 activates the terminal 141, and in the step 1308, the
user 1 starts screen operation of the W 121 by utilization of the terminal 14 1 and connecting it to
the VM 121 by the user 1.
The step 1309 is the activation of the resource allocation agent 15 1, where the
10 work is implemented at the same timing as in the step 1308 by the terminal 14 1. In this way,
the work for screen operation of the VM 121 by the user 1 is completed.
In the step 1201, the user 2 and the user 3 are connected to the VM 122 and the
VM 123, respectively to start operation. Finally, in the step 121 1, the user 1, the user 2 and the
user 3 utilize the VM 121, the VM 122 and the VM 123, respectively. It should be noted that
15 the VM 12 1, the VM 122 and the VM 123 operate in the server 102. This is a normal
utilization situation of the system of the present Embodiment.
Fig. 14 exemplifies operation termination procedure of the system of the present
Embodiment.
In the step 1400, the user 1, the user 2 and the user 3 utilize the VM 12 1, the VM
20 122 and the VM 123, respectively. It should be noted that the VM 121, the VM 122 and the VM
123 are in operation in the server 102, where firstly, the user 1 is assumed to complete the work.
In the step 1401, the user 1 turns off a power source of the VM 12 1. Next, in the
step 1402, the user 1 turns off a power source of the terminal 141. In addition, in the step 1403,
the user 2 and the user 3 also turn off a power source of the VM 122 and VM 123, and turn off a
i 25 power source of the terminal 142 the terminal 143, respectively.
In the step 1404, the system manager turns off a power source of the server 102,
where the VM is not in operation, and other server devices (1 03, 104). In addition, in the step
1 1405, the manager turns off a power source of the management server 101. In this way,
operation of the system of the present Embodiment stops.
30 Fig. 15 exemplifies operation procedure, in the case where resource allocation
request of the VM is generated from a user in the system of the present Embodiment. Firstly, in
the step 15000, the user 1, the user 2 and the user 3 utilize the VM 121, the VM 122 and the VM
123, respectively. It should be noted that the VM 121, the VM 122 and the VM 123 are in
operation in the server 102.
- 16-
Then, in the step 1501, it is assumed that utilization fa~toorf the CPU core 1 and
the core 2 of the server 102 increased to 90%. This high load of the CPU influences on
operation feeling of the VM of the user 1 and the user 2. The user 1 feels obstacle in the job in
the step 1 505, and pushes the button 122 1 of the screen 120 1 of the resource allocation agent 1 5 1
in the step 1506, in this way resource reallocation to the VM 121 is requested.
On the other hand, the user 2 does not feel obstacle in the job and continues
operation of the VM122 as it is (the step 1504). Explanation will be given below on a series of
operations in response to resource allocation request of the user 1.
Firstly, the allocation request corresponding unit 405 accepts request of the user 1,
10 and in the step 1527, from the above step 902 to the step 906 are implemented, and side effect
caused by resource reallocation is calculated.
Then, in the step 1507, information on the side effect calculated in the step 906 is
sent to the resource allocation agent 1 5 1 of the terminal 14 1, and the resource allocation agent
15 1 generates a screen 1204 using information on the side effect, displays it on the terminal 14 1,
15 and asks approval of the user 1 to the side effect caused by resource reallocation.
In the step 1508, it is assumed that the user 1 input approval to the side effect
caused by resource reallocation, to the terminal 14 1. Then, in the step 1509, the allocation
request corresponding unit 405 notifies start of disk transmission to a user, by utilizing the screen
1205.
20 In the step 1 50 1, the server 1 02 moves the virtual disk VHD 2 1 1 of the VM 12 1
to the server 103.
In the step 153 1, although the user 1 can operate the VM 12 1 while the VHD 2 11
is moving, however, it decreases performance of network communication and disk 110.
In the step 15 1 1, the allocation request corresponding unit 405 notifies VM
25 moving start to a user. A method for notification is to move an arrow mark 1221 of the screen
1205 of the resource allocation agent to a place of "moving of the VM" of work contents.
In the step 15 12, the server 102 moves the VM 12 1 to the server 103. In this
example, it is assumed that the server 102 adopts a method for moving without stopping the VM.
In addition, the server 102 transmits also the VM configuration information 24 1 of the VM 12 1
30 to the server 103. During VM moving, VM operation by a user may be stopped sometimes in
the step 1513.
In the step 15 14, after completion of the server moving, the server 103 changes a
value of the processor 302 of the VM configuration information of the VM 121 from one core to
two cores. Next, in the step 15 15, the allocation request corresponding unit 405 moves the
- 17-
arrow mark 122 1 of the screen 1205 to a place of "restart" of work contents, and notifies the
restart to a user. Then in the step 15 16, the server 103 restarts the VM to apply result of
resource allocation. The user 1 waits the restart of the VM 12 1 in the step 15 1 7, reconnects to
the VM 121 in the step 15 18, and utilizes environment of the VM 12 1, where CPU core number
became two in the step 1 5 19.
As described above, in the present Embodiment, before implementing resource
reallocation, side effect of resource allocation is calculated (the step 1527) to present it to a user
(the step 1507). On obtaining approval of the user (the step 1508), resource allocation is
executed.
In addition, in the present Embodiment, a screen of resource allocation request is
installed in a terminal, and when the user requests resource allocation, by pushing a button (the
button 1221) on this screen, resource allocation request can be sent.
Fig. 16 exemplifies a process flow, when resource reallocation request came from
a plurality of users in the system of the present Embodiment. Firstly, in the step 1600, it is
assumed that the user 1, the user 2 and the user 3 utilize the VM 121, the VM 122 and the VM
123, respectively. It should be noted that it is assumed that the VM 121, the VM 122 and the
VM 123 are in operation in the server 102.
Then, in the step 160 1, it is assumed that utilization factor of the CPU core 1 and
the core 2 of the server 102 increased to 90%. This high load of the CPU influences on
operation feeling of the VM of the user 1 and the user 2. And, the user 1 feels obstacle in the
job and requests resource allocation in the step 1605. Then, in the step 1606, the allocation
request corresponding unit 405 starts response to resource allocation request by the user 1.
During from the step 1606 to the step 1 6 1 1, the allocation request corresponding
unit 405 carries out a series of processing from the above step 1507 to the step 15 18. In this
case, however, the user 2 also feels obstacle in the job and pushes the button 1221 of the screen
120 1 in the step 1608, and sends resource reallocation request to the allocation request
corresponding unit 405.
In this case, the allocation request corresponding unit 405 processes request of the
user 2 in the step 1606. Specifically, in the step 1609, it is processed in a flow of the above
step 902 to the step 906. In this case, however, because there is a record that resource
allocation of the VM 12 1, which is in operation on the same server as the VM 122, is under
implementation, in the allocation record DB 404, selection result in the selection of the step 904
becomes "NO" and the step 905 is executed. Accordingly, in the step 16 10, the allocation
request corresponding unit 405 presents a screen 1203 to the user 2 via the resource monitoring
- 18-
agent 1 14.
Fig. 17 is the one exemplifying a process flow when there is no resource
reallocation request from a user, although utilization factor of the VM is high. Firstly, in the
step 1700, the user 1, the user 2 and the user 3 utilize the VM 12 1, the VM 122 and the VM 123,
respectively. It should be noted that it is assumed that the VM 121, the VM 122 and the VM
123 are in operation in one server 102.
Then, in the step 1701, it is assumed that utilization factor of the CPU core 1 and
the core 2 of the server 102 increased to 90%. This high load of the CPU influences on
operation feeling of the VM of the user 1 and the user 2. In this case, however, both the use 1
and the user 2 have not issued resource reallocation request. Then, in the step 1707, it is
assumed that the allocation proposal unit 406 detected high CPU utilization factor of the VM 12 1
and the VM 122. Then, the allocation proposal unit 406 executes processing from the above
step 1003. In this case, a group of resource deficient VMs in the step 1003 becomes the VM
12 1 and the VM 122.
In order determination in the step 1 004, because the VM 12 1 has higher CPU
utilization factor, the VM 121 is selected in the step 1004. And, the allocation proposal unit
406 calculates side effect caused by the addition of the CPU core of the VM 121 in the step
1006.
In the step 171 0, the allocation proposal unit 406 presents the side effect
calculated in the step 1006, to a user using the screen 1204.
In the step 1710, the user 1 rejects a proposal of this reallocation. Then, the
allocation proposal unit 406 removes the VM 12 1 from the group of the resource deficient VMs
in the step 1009, and returns to the step 1004. And, in the step 1771, the allocation proposal
unit 406 selects the VM 122 remaining in the group of the resource deficient VMs to calculate
the side effect and presents it to the user 2 in the step 1712.
In the step 171 3, the user 2 approves resource reallocation. Then, in the step
1714, the addition work of CPU core number of the VM 122 is carried out.
As described above, in the present Embodiment, when there is no resource
reallocation request from a user, although utilization factor of VM resource is high, the
management server implements proposal of resource reallocation to a user of the VM having
high resource utilization factor.
Fig. 18 is the one exemplifying a process flow for suppressing consumption of
power by a virtualization infrastructure, by putting together the VMs in operation at one place
("putting together at one place" is called to "deflection") and turning off a power source of an
- 19-
unnecessary server.
Firstly, in the step 1800, the VM deflected unit 407 monitors the CPU utilization
factor 502, which the VM on each server utilizes always, the utilization factor 503 of a disk
access band, the memory utilization factor 504 and the utilization factor of a network band 505,
and confirms whether there is servers which can be moved to one side or not. In order to
confirm whether there are servers which can be moved to one side or not, the next method may
be adopted.
The VM deflected unit 407 confirms whether there are two servers X and Y or
not, satisfjring all of the following conditions (I), (2), (3), (4) and (5). In the case where there
are two servers X and Y satisfying all of the following conditions (I), (2), (3), (4) and (3, the
VM on the server X is deflection to the server Y.
(1) Only one VM is in operation on the server X. One or more VMs are in
operation on the server Y.
(2) The CPU core number, which the VM in operation on the server X utilizes, is
smaller than or equal to the core number having a utilization factor on the server Y of 0%. In
addition, utilization factor of each CPU core on the server X and the server Y does not exceed a
threshold 702 of the CPU.
(3) Total of memory utilization factor of the VM on the server X and memory
utilization factor of the VM on the server Y does not exceed the threshold 702 of a memory
band.
(4) Total of utilization factor of a disc access band of the VM on the server X and
utilization factor of a disc access band of the VM on the server Y does not exceed the threshold
702 of the disc access band.
(5) Total of utilization factor of a network band of the VM on the server X and
utilization factor of a network band of the VM on the server Y does not exceed the threshold 702
of the network band.
In the case where there are two servers X and Y satisfying all of the above
conditions (I), (2), (3), (4) and (5), even when the VM on the server X is moved to the server Y,
resource utilization factor of the server Y does not exceed the threshold, and thus deflection
becomes possible. It should be noted that when a plurality of servers Y are present to one
server X, the server Y having the smallest CPU utilization factor may be selected.
It should be noted that, in an example shown in Fig. 18, in the step 1801, the user
1, the user 2 and the user 3 utilize the VM 121, the VM 122 and the VM 123, respectively. It
should be noted that it is assumed that the VM 12 1, the VM 122 and the VM 123 are in operation
- 20 -
in the server 102. In addition, also the server 104 executes one or more VM in the step 1802.
In the step 1803, the user 1 turns off a power source of the VM 12 1, and in the
step 1804, the user 2 turns off a power source of the terminal 141. And, in the step 1805, the
user 2 turns off a power source of the VM 122, and in the step 1806, the user 2 turns off a power
source of the terminal 142. At the time of the step 1806, the one operating on the server 102
becomes only the VM 123.
Then, in the step 1807, it is assumed that the VM deflected unit 407 detected that
the VM can move to one side from the server 102 to the server 104, by the detection method
described in the step 1800. In the step 1808, the VM deflected unit 407 selects the VM 123 in
the server 102, as the moving subject VM, and carries out calculation of side effect in the step
1809, when it is moved from the server 102 to the server 104.
Processing content of the step 1809 is the same as calculation of side effect of the
step 1005. Then, in the step 18 10, the VM deflected unit 407 proposes server moving to the
server 3. In this case, the VM deflected unit 407 presents the screen 1204 to the user 3.
In the step 18 11, the user approves the server moving of the VM. Then, in the
step 1 8 12, the server 102 moves the VM 1 23 to the server 1 03.
Processing of the step 18 12 is the same as processing from the step 1507 to the
step 15 12. After the VM 123 moved to the server 104, the server 104 makes the VM 123
operated in the step 1 8 14.
In the step 18 13, because the VM on the server 102 was disappeared, the manager
turns off a power source of the server 102.
As described above, in the present Embodiment, power consumption of a server
can be suppressed by moving the VMs, where the management server is in operation, to one
side, after confirmation of approval of a user, and by turning off a power source of the server
now having no VM.
It should be noted that, in the present Embodiment, the system may determine
arrangement of the VMs in activation, with reference to history of resource reallocation (the
allocation record DB 404). For example, the VM having more times of resource reallocation
may be rearranged on the same serve, or may be arranged uniformly on each server.
It should be noted that, the above Embodiments are only exemplification and
various variations are included without limiting to the above-described disclosure. For
example, in the above Embodiments, it is not necessarily required to be provided with all
configurations explained.
In addition, the above each configuration, function, processing unit, processing
I means, or the like may be realized by hardware such as by designing a part of or all of them
1 using, For example, using an integrated circuit or the like. In addition, the above each
1 configuration, function, or the like may be realized using software, by interpreting and executing
a program to realize each function by a CPU. Information of a program, a database or the like
5 to realize each function may be placed in a recording device such as a memory, an HDD, or a
recording medium such as an IC card, an SD card, a DVD.
- 22 -
WE CLAIM:
1. A computer system, in which a first server device which a first virtual machine
(12 1) operates, one or more other server devices, a management server device and a first
terminal (14 l), are connected via a network, characterized in that the management server device
accepts reallocation request of resource to the first virtual machine (1 2 l), from the
first terminal which a user of the first virtual machine (121) uses,
calculates side effect caused by reallocation of resource requested,
sends information on the side effect calculated to the first terminal (141), and
make the information presented to the user, and
in the case of receiving approval to the side effect which the user input to the first
terminal (141), from the first terminal (141),
starts the resource reallocation requested.
2. The computer system according to claim 1, characterized in that the management
server device
calculates, as the side effect, any one or more of decrease in communication speed
via the network, accompanied with transmission of a virtual disc, decrease in response speed of
the first virtual machine (121) accompanied with the moving, and necessity of restart of the first
virtual machine (12 1) caused by the reallocation of resource, on moving of the first virtual
machine (121) from the first server device to the other server devices.
3. The computer system according to claim 1 or 2, characterized in that the first
terminal (1 4 1)
displays a button for requesting resource reallocation of the virtual machine, on
the screen, and
sends the reallocation request of resource to the management server device in
response to push down operation of the button by the user.
4. The computer system according to claim 3, characterized in that the management
server device, in the case of accepting the reallocation request of the resource,
checks a resource utilization situation of the first server device by the first virtual
machine (121), and
in the case where any one kind of the resources does not exceed the
predetermined threshold, sends the response, which rejects the reallocation request of the
resource, to the first terminal (141).
5. The computer system according to claim 4, characterized in that the management
server device
- 23 -
checks a resource utilization situation of the first virtual machine (121), and in the
case where any one kind of the resources exceeds the predetermined threshold, checks presence
or absence of other server devices which become the destination of the first virtual machine
(1 2 l), or whether other virtual machine operating on the first server device is moving or not, and
in the case of absence of other server devices, or in the case where other virtual
machine is moving, sends the response, which rejects the reallocation request of the resource, to
the first terminal (141).
6. A computer system, in which a first server device which a first virtual machine
(12 1) operates, one or more other server devices, a management server device and a first
terminal (141), are connected via a network, characterized in that the management server device
checks resource utilization factor of the first server device by the first virtual
machine (1 2 I),
in the case where any one or more kinds of the resources exceeds the
predetermined threshold, calculates side effect caused by reallocation of the resource,
sends proposal of the reallocation of the resource accompanied with information
of the side effect calculated, to the first terminal (141), and make it presented to the user, and
in the case of receiving approval to the side effect which the user input to the first
terminal (1 4 1 ), from the first terminal (1 4 I), starts the resource reallocation proposed.
7. The computer system according to claim 6, characterized in that in the case where
one or more virtual machines other than the first virtual machine (121) is in operation on the first
server device, the management server device
checks resource utilization factor of the first server device by each of the virtual
machines,
in the case where a plurality of the virtual machines are present, where any one or
more kinds of the resources exceeds the predetermined threshold, furnishes priority sequence
among the multiple virtual machines, and
implements calculation of the side effect and proposal of the reallocation of the
resource, according to the priority sequence.
8. A computer system, in which a first server device which a first virtual machine
(121) operates, one or more other server devices, a management server device and a first
terminal (141), are connected via a network, characterized in that the management server device
checks resource utilized by the first virtual machine (1 2 1) which operates on the
first server device,
in the case where the first virtual machine can be moved to other server devices,
. calculates side effect caused by the moving,
sends proposal of the moving accompanied with information of the side effect
calculated, to the first terminal (141), and make it presented to the user, and
in the case of receiving approval to the side effect which the user input to the first
terminal (141), from the first terminal (141), carries out the moving proposed.
9. A computer system, substantially as herein described with reference to
accompanying drawings and example.