WO2007136021A1 - 仮想マシン管理装置、仮想マシン管理方法およびプログラム - Google Patents

仮想マシン管理装置、仮想マシン管理方法およびプログラム Download PDF

Info

Publication number
WO2007136021A1
WO2007136021A1 PCT/JP2007/060312 JP2007060312W WO2007136021A1 WO 2007136021 A1 WO2007136021 A1 WO 2007136021A1 JP 2007060312 W JP2007060312 W JP 2007060312W WO 2007136021 A1 WO2007136021 A1 WO 2007136021A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
server device
score
server
placement
Prior art date
Application number
PCT/JP2007/060312
Other languages
English (en)
French (fr)
Inventor
Masahiro Kawato
Original Assignee
Nec Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nec Corporation filed Critical Nec Corporation
Priority to US12/227,481 priority Critical patent/US8112527B2/en
Priority to JP2008516678A priority patent/JP5110315B2/ja
Priority to EP07743746A priority patent/EP2037362A4/en
Publication of WO2007136021A1 publication Critical patent/WO2007136021A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Definitions

  • Virtual machine management system virtual machine management method and program
  • the present invention relates to a virtual machine management apparatus and virtual machine management method, and more particularly, to a virtual machine management apparatus that dynamically determines a method of arranging a virtual machine on a physical machine based on load characteristics of a program operating on the virtual machine. It relates to a virtual machine management method.
  • Background art :
  • a virtual machine that can use one computer virtually as multiple servers by running multiple operating systems (OSs) on a single server device (VM: Virtual Machine Mach i)
  • OSs operating systems
  • a single server device refers to a computer such as a workstation or a personal computer.
  • rVMWare ESX Server j by VMware
  • V i rtual Server j by Microsoft
  • Xenj by XenSource in the US, etc.
  • Patent Document 1 Japanese Patent Application Laid-Open Publication No. 10 0 2 830 20
  • VMware provides virtual machine migration function as vMot i on, and X i on m X i.
  • the first problem is that the newly created virtual machine can not achieve sufficient performance, and it is likely to adversely affect other existing virtual machines.
  • the reason is that the probability that the randomly selected server device is an optimum server device for generating a new virtual machine is very low.
  • the second problem is that there is a high possibility that new virtual machines can not be created. The reason is that it is impossible to create a new virtual machine unless there is at least one server device with sufficient resources. Disclosure of the invention:
  • the first object of the present invention is to make it possible to create a virtual machine on an appropriate server device "and 1 3 ⁇ 4) ⁇ ⁇
  • a second object of the present invention is to enable creation of a new virtual machine as much as possible.
  • the first virtual machine management device of the present invention is a virtual machine management device connected to a plurality of server devices via a network, and for each combination of virtual machine types, the combination of virtual machine types is the same server Placement rule table that stores a score indicating the appropriateness to be placed on the device, and one or more server devices on which a new virtual machine can be placed When selecting a new virtual machine for the selected server device, calculate the index value using the score, and refer to the calculated index value to find the new virtual machine allocation destination. And determining means for determining a virtual machine location.
  • the second virtual machine management apparatus selects a server apparatus capable of actually securing resources required for a new virtual machine as a server apparatus capable of placing a new virtual machine in the first virtual machine management apparatus. It is characterized by
  • a third virtual machine management apparatus is characterized in that, in the second virtual machine management apparatus, an existing virtual machine on a server apparatus is moved to another server apparatus by being called from the virtual machine placement determining means.
  • the present invention is characterized in that it comprises virtual machine movement determination means for generating a server apparatus capable of arranging a new virtual machine.
  • a fourth virtual machine management apparatus is the third virtual machine management apparatus, wherein the virtual machine migration determination unit is configured to generate a server apparatus capable of deploying a new virtual machine.
  • An index value indicating the appropriateness of the movement method is calculated using the score, and the movement method of the virtual machine is determined with reference to the calculated index value.
  • the fifth virtual machine management device of the present invention is the third or fourth virtual machine management device, wherein the virtual machine placement determining means does not have a server device capable of actually securing resources necessary for a new virtual machine. And calling the virtual machine migration determining means.
  • the sixth virtual machine management device of the present invention is a virtual machine management device connected to a plurality of server devices via a network, and for each combination of virtual machine types, virtual machine types of the combination are mutually connected.
  • Placement rule table for storing scores indicating the appropriateness placed on the same server device, a new virtual machine placement method without moving an existing virtual machine, and a new method involving moving an existing virtual machine
  • Each candidate of the placement method of the virtual machine is selected, an index value indicating the appropriateness of the placement method is calculated using the score for each of the selected candidates, and a new value is referred to with reference to the calculated index value.
  • Virtual of It is characterized in that it comprises: virtual machine arrangement * movement determining means for determining the arrangement destination of the machine.
  • a seventh virtual machine management device is the first or sixth virtual machine management device, wherein migration of a virtual machine on a server device to another server device is performed independently of the placement of a new virtual machine. For each candidate of the method, an index value indicating the appropriateness of the movement method is calculated using the score, and movement means for moving the existing virtual machine with reference to the calculated index value is provided. I assume.
  • An eighth virtual machine management apparatus is the seventh virtual machine management apparatus, wherein the moving means is configured to set the resource of the server apparatus or the virtual machine at predetermined time intervals, each time the resource of the virtual machine reaches a predetermined condition. Or it is characterized by operating every stop of the virtual machine.
  • the ninth virtual machine management system is the first or sixth virtual machine management system, wherein, for each virtual machine type, the server machine on which the virtual machine of that type is arranged is connected to the virtual machine.
  • the above-mentioned score is generated from server monitoring means for collecting resource usage status and communication status with other virtual machines, information collected by the server monitoring means, and a predetermined score generation rule.
  • placement rule generation means for storing the placement rule table.
  • a first virtual machine management method of the present invention is a method of managing a virtual machine on the server device by a computer connected to a plurality of server devices via a network, the computer being a new method
  • the first step of selecting one or more server apparatuses on which the virtual machine can be placed, and the combination of virtual machine types for each combination of virtual machine types for each of the selected servers.
  • the computer includes the third step of determining the placement destination of a new virtual machine with reference to the calculated index value.
  • a new virtual machine in the first virtual machine management method, in the first step, can be deployed as a server apparatus, It is characterized by selecting a server device capable of actually securing the necessary resources for a standard virtual machine.
  • a third virtual machine management method is the second virtual machine management method according to the second aspect, wherein, in the first step, when there is no server device capable of actually securing the resources necessary for the new virtual machine, It is characterized in that it tries to create a server device on which a new virtual machine can be deployed by moving an existing virtual machine from the server to another server device.
  • a fourth virtual machine management method is the third virtual machine management method, wherein, in the first step, each candidate of a migration method capable of generating a server apparatus to which a new virtual machine can be placed. An index value indicating the appropriateness of the movement method is calculated using the score, and the movement method of the virtual machine is determined with reference to the calculated index value.
  • a fifth method of managing virtual machines is a method of managing virtual machines on the server apparatus by a computer connected to a plurality of server apparatuses via a network, the computer comprising A first step of selecting each candidate of a new virtual machine placement method without moving an existing virtual machine, and a new virtual machine placement method with moving an existing virtual machine; For each of the selected candidates, the arrangement rule table refers to the score indicating the appropriateness of the combination of virtual machine types for each combination of virtual machine types on the same server device, A second step of calculating an index value indicating the appropriateness of the method; and the computer determines the placement destination of the new virtual machine with reference to the calculated index value. And 3 steps.
  • the sixth virtual machine management method is characterized in that, in the first or fifth virtual machine management method, the computer independently operates the virtual machine on the server device to another server independently of the placement of the new virtual machine. For each candidate of the movement method to be moved to the device, an index value indicating the appropriateness of the movement method is calculated using the score, and the movement of the existing virtual machine is performed with reference to the calculated index value. It is characterized by further including 4 steps.
  • a seventh virtual machine management method of the present invention is the sixth virtual machine management method according to the sixth aspect, wherein in the fourth step, the resource of the server apparatus or the virtual machine is set in a predetermined condition at predetermined intervals. It is characterized by starting each time it reaches or stopping each virtual machine.
  • An eighth virtual machine management method is the first or fifth virtual machine management method according to the first or fifth aspect, wherein the computer power has a virtual machine of the type arranged for each virtual machine type.
  • one or more servers capable of deploying a new virtual machine using a score indicating the degree of appropriateness that virtual machine types of the combination are placed on the same server device for each combination of virtual machine types.
  • an index value indicating the appropriateness of placing a new virtual machine on the server device is calculated, and the placement destination of the new virtual machine is determined with reference to the calculated index value.
  • the above score is, for example, for each type of virtual machine, collected from the server device where the type of virtual machine is located, the usage status of the resource of the virtual machine, and the communication status with other virtual machines.
  • This information can be created from the collected information and predetermined score generation rules.
  • a score generation rule for example, a rule that calculates a large numerical score is used as the resource competition is smaller and the communication between the resources is larger.
  • a server device capable of actually securing the resources required for the new virtual machine As a candidate for one or more server devices on which a new virtual machine can be deployed, it may be limited to only a server device capable of actually securing the resources required for the new virtual machine. If a server device that can deploy a new virtual machine by moving it to a device is also included in the candidate, it is certain that the new virtual machine will be successfully deployed. The rate can be increased. At this time, a server device capable of deploying a new virtual machine by moving an existing virtual machine to another server device only when no server device capable of actually securing resources required for the new virtual machine exists. If you try to create a virtual machine, you can reduce the impact on existing virtual machines when deploying new virtual machines.
  • the method of placing a new virtual machine without moving an existing virtual machine, and moving an existing virtual machine are required. It is also possible to select each candidate for a new virtual machine placement method. Furthermore, the virtual machine on the server may be moved to another server independently of the placement of the new virtual machine.
  • an appropriate server device for a new virtual machine that is, a newly generated virtual machine can sufficiently exhibit its performance, and is unlikely to adversely affect other existing virtual machines. It can be created on a server device. The reason is that for each of the one or more server devices on which a new virtual machine can be placed, an index value indicating the appropriateness of placing a new virtual machine on the server device is calculated, and this calculated index value To determine where to place the new virtual machine.
  • the existing virtual machine is moved to another server.
  • the configuration to include a server device or the like that can deploy a new virtual machine, it is possible to reduce the probability of failure to create a new virtual machine.
  • FIG. 1 is a block diagram of an information processing system including a virtual machine management device according to a first embodiment of the present invention.
  • FIG. 2 is a block diagram showing an internal configuration of the server apparatus in the information processing system according to the first embodiment of the present invention. '
  • FIG. 3 shows a server supervision in the virtual machine management system according to the first embodiment of the present invention. It is a flowchart which shows the operation
  • FIG. 4 is a diagram showing an example of server apparatus information stored in resource information DB in the virtual machine management apparatus according to the first embodiment of the present invention.
  • FIG. 5 is a diagram showing an example of virtual machine information stored in resource information DB in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 6 is a diagram showing an example of service information stored in resource information DB in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 7 is a flow chart showing the operation procedure of the VM arrangement rule generation means in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 8 is a diagram showing an example of information stored in the arrangement rule table in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 9 is a flow chart showing an operation procedure of the VM allocation determination means in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 10 is a flow chart showing an operation procedure of the VM movement determination means in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 11 is a diagram for explaining a method of determining a possible migration method by the VM migration determination means in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 12 is a diagram for illustrating an example of score difference calculation by the VM movement determination means in the virtual machine management device according to the first embodiment of the present invention.
  • FIG. 13 is a block diagram of an information processing system including a virtual machine management device according to a second embodiment of the present invention.
  • FIG. 14 is a flow chart showing an operation procedure of the VM arrangement and movement deciding means in the virtual machine management device according to the second embodiment of the present invention.
  • Figure 16 is a VM allocation in the virtual machine management apparatus according to the second embodiment of the present invention. It is a flow chart showing a detailed operation procedure of score calculation.
  • FIG. 17 is a diagram showing a specific example of a method of arranging a new VM accompanied by the movement of an existing VM, which is executed by the VM arrangement-movement determining means in the virtual machine management device according to the second embodiment of the present invention.
  • FIG. 18 is a block diagram of an information processing system including a virtual machine management device according to a third embodiment of the present invention.
  • FIG. 19 is a flow chart showing the operation procedure of the VM periodic migration determination means in the virtual machine management device according to the third embodiment of the present invention.
  • FIG. 20 is a block diagram of a virtual machine management system according to a fourth embodiment of the present invention.
  • FIG. 21 is a flowchart showing an operation procedure of the VM stopping unit in the virtual machine management device according to the fourth embodiment of the present invention.
  • the information processing system includes a virtual machine management device 1, a management terminal 2, a plurality of server devices 3, and a network 4.
  • the virtual machine management device 1 is a computer that operates under program control, and includes a server monitoring unit 11, a VM (Virtua l Mach ine) placement rule generation unit 12, a VM placement determination unit 13, and a VM migration. It consists of decision means 1 4, resource information DB (Database) 1 5, and placement rule table 1 6.
  • Server monitoring means 1 1 is a server age in each server device 3; : By means of acquiring the operating status of each server device 3, virtual machine, and service that constitute the information processing system to be managed via the (described later), and storing the contents in the resource information DB 15 is there.
  • one or more application software runs on each virtual machine.
  • Application software that runs on a single virtual machine Collectively called service (Serv i ce).
  • Each service is distinguished by a name. The same service may run on multiple virtual machines. In this way, each virtual machine and the service running on it correspond one to one. Therefore, deciding where to place a virtual machine is equivalent to deciding where to place a service. Also, the type of virtual machine and the type of service are equivalent.
  • the VM placement rule generating means 12 selects the type of service of the combination (type of virtual machine) for each combination of types of service (type of virtual machine). It is a means to generate a score indicating the degree of appropriateness that types are placed on the same server device 3 and store the contents in the VM placement rule table 16.
  • VM allocation determination means 13 is based on the server device information and virtual machine information stored in the resource information DB 15 and the contents of the VM allocation rule table 16 and the allocation destination of the virtual machine to be newly generated and It is a means to determine the satellite device 3.
  • VM migration determination means 14 is a means for migrating a running virtual machine to another server device 3 in order to secure resources necessary for starting a new virtual machine.
  • the management terminal 2 is a terminal (console) provided with an input device such as a keyboard and a mouse and an output device such as a display.
  • the management terminal 2 is connected to the virtual machine management device 1 and has a function of transmitting various operations input by the operation manager to the virtual machine management device 1, the execution status of various operations and the operation status of the information system It has a function of receiving from the management device 1 and outputting it to an output device.
  • the various operations include creation of a new virtual machine and destruction of a running virtual machine.
  • the server device 3 is a computer that operates under program control.
  • the server device 3 includes a server agent 3 1, a virtual machine monitor (Hyper machine) 32, and a plurality of virtual machines 3 3.
  • the server agent 31 has the function of acquiring the operating status of hardware and software from the virtual machine monitor 32 and the virtual machine 33, and creating and destroying virtual machines for the virtual machine monitor 32 and other server devices 3 It has a function to request a move to
  • the virtual machine monitor 32 has CPU (Central Processing) that the server device 3 has. In addition to allocating hardware resources such as Unit) and memory (Ma in Memory) to each virtual machine 33, it has a function of controlling generation and destruction of the virtual machine 33. On each virtual machine 33, as described above, one type of service (one or more application softwares) runs.
  • CPU Central Processing
  • memory Memory in Memory
  • the network 4 is a network connecting the virtual machine management device 1 and the plurality of server devices 3. Although the management terminal 2 is not connected to the network 4 in FIG. 1, the essence of the invention is not affected even if the management terminal 2 is connected to the virtual machine management device 1 via the network 4.
  • a specific example of the virtual machine management device 1 is a computer provided with a network connection means such as Ethernet (registered trademark), and an OS such as Windows (registered trademark) or Linux operates. Furthermore, the respective units of the server monitoring unit 11, the VM placement rule generation unit 12, the VM placement determination unit 13, and the VM migration determination unit 14 operate as a software module on the OS.
  • Resource information DB 15 and placement rules Table 16 uses DB products such as Oracle, DB2 and MySQL, or software modules that store information on resource information and placement rules (scores) in memory.
  • the interaction between each of the means 1 to 14 and the resource information D B 1 5 and the placement rule table 16 is realized using functions (procedure, subroutine, method) in programming language.
  • a communication protocol such as TCP / IP and HTTP (Hyper Text Transfer Protocol) may be realized by combining communication protocols such as Simple Object Access Protocol (SOAP).
  • SOAP Simple Object Access Protocol
  • a specific example of the management terminal 2 is a terminal device provided with an input device including a keyboard and a mouse, a liquid crystal display device, and connection means with the virtual machine management device 1.
  • a typical example is a personal computer (PG) running Windows, which connects to the virtual machine management device 1 through a web browser such as Internet Explorer.
  • PG personal computer
  • the virtual machine management device 1 and the 'management terminal 2 are directly connected, but the necessity is not necessarily obtained, and the management terminal 2 may be connected to the network 4.
  • a specific example of the server device 3 is a computer provided with a network connection method such as Ethernet (registered trademark), which is controlled by the virtual machine monitor 32 such as VMware GSX Server, VMware ESX Server, Xen, etc. and their virtual machine monitor 32.
  • Each virtual machine 33 runs an operating system such as Windows Server, Red Hat Enterprise Linux, Solaris, or HP-UX.
  • services that run on top of this include Internet Information Server, Web 'servers such as Apache HTTP Server, applications such as Enterprise Java (registered trademark) Beans (EJB), Containers, Oracle, DB2, MySQL, etc.
  • the database management system (DBMS, Database Management System) runs.
  • server agent 31 in server device 3 depends on the type of virtual machine monitor 32.
  • the server agent 31 When using a virtual machine monitor 32 operating on the host OS, such as VMware GSX Server, the server agent 31 operates as software on the host OS.
  • server agent 31 when using virtual machine monitor 32 of a type that does not require a host OS, such as VMware ESX Server or Xen, server agent 31 may be operated as a software module in virtual machine monitor 32, or Xen Configure server agent 31 to operate as a process on a privileged virtual machine such as DomainO.
  • a specific example of the network 4 is a local area network (LAN) by Ethernet (registered trademark) and the Internet.
  • LAN local area network
  • Ethernet registered trademark
  • the Internet the Internet
  • FIG. 3 is a flowchart showing an operation procedure of the server monitoring means 11 in the virtual machine management device 1. This procedure consists of the following steps:
  • the server monitoring means 11 runs from the server agent 31 provided in each server device 3 under management to each server device 3, virtual machines 33 operating thereon, and those virtual machines 33. Get information about the service as operation status (step S 1 1 1).
  • the following types of information are included in the operation status acquired here: Be
  • server device information Information related to each server device 3 itself, such as the resource of each server device 3 (hereinafter referred to as “server device information”)
  • the server monitoring means 11 sums up an index (hereinafter referred to as “service information”) that characterizes each service (step S 11). 2).
  • Service information consists of the following two types of indicators.
  • the server monitoring means 11 uses the average value of the indices for those virtual machines as the index for that service.
  • the server monitoring means 11 stores the server apparatus information and virtual machine information acquired in step S 11 1 and the service information aggregated in step S 1 12 in the resource information DB 15 (step S 1 1 3).
  • a specific example of the load pattern is a set of the following values.
  • Average CPU usage over the past fixed period for example, 5 minutes
  • average C P u usage Average CPU usage over the past fixed period
  • connection frequency the number of TCP (Transmission Control Protocol) sessions (hereinafter referred to as “connection frequency”) during a fixed period in the past (for example, 10 minutes).
  • FIG. 4 is a specific example of server device information.
  • server devices 3 there are a total of three server devices 3 to be managed: host OI, host 02, and host 03.
  • CPU central processing unit
  • Fig. 5 shows an example of virtual machine information.
  • the host name of the server device 3 to which the virtual machine 33 belongs the allocated CPU usage rate, the allocated memory usage, the guest OS, and its virtual machine 33 Information on the name of the service to be operated is stored.
  • the allocated CPU utilization and the allocated memory usage mean the maximum CPU utilization and memory capacity which the virtual machine 33 is allowed to use.
  • Figure 6 shows a specific example of service information.
  • the average Z maximum CPU for 6 types of services shopping service, blog service (weblog service, b log / web log service), log analysis service, billing service, product information DB (Database), access log Information on usage rate, average Z maximum memory usage, and connection destination service connection frequency is stored.
  • connection destination service Connection frequency refers to the average of the name of the service that has communicated with the service for a fixed period in the past and the number of connections. Connection frequency because services of the same type may run on multiple virtual machines The value of is not necessarily an integer.
  • FIG. 7 is a flow chart showing the operation procedure of the VM arrangement rule generating means 12 in the virtual machine management device 1.
  • the VM arrangement rule generation means 12 starts the execution of this procedure by a start command from the management terminal 2 or by start by a timer. This procedure consists of the following steps:
  • the VM placement rule generation means 12 erases all the information recorded in the placement rule table 16 and sets it in the initial state (step S 12 1).
  • Placement rule table 16 records pairs of two types of services (possibly also pairs of services of the same type) and the scores (scores, priorities) assigned to the pairs.
  • the score takes integer or real values. As this value is larger, it means that the service included in the pair is operated on the same server device 3 with priority.
  • the placement rule table 16 is empty.
  • the VM placement rule creation means 12 reads the service information recorded in the resource information DB 15 and creates a set S of all possible pairs of service names contained therein ( Step S 1 2 2).
  • the VM placement rule generation means 1 2 takes out one service pair from the set S (step S 1 2 3). If all service pairs in the set S have been retrieved, the operation of the VM placement rule generation means 12 ends. In the following steps, the service pair taken out here is denoted as (a, b).
  • VM allocation rule generation means 12 calculates the score to be assigned to the service pair (a, b) using the load pattern and communication pattern for the services a and b recorded in the resource information DB 15 Yes (Step S 1 2 4) o
  • the load pattern and communication pattern used here are extracted in Step S 1 2 of the server monitoring means 1 1.
  • the VM placement rule generation means 1 2 calls a function called “score generation function” for elements of the services a and b in the service information in the resource information DB 1 5. Calculate the score by applying. Score generator The number is defined in a form that satisfies the following properties.
  • the score generation function is a function that calculates a large score of a numerical value as the resource competition is smaller and the mutual communication is more.
  • the VM placement rule generation means 12 sets a pair of the service pair (a, b) extracted in step S 1 2 3 and the score calculated in step S 1 2 2 to the placement rule table 1 6 Add (Step S 1 2 5). After this step, repeat the procedure from step S 1 2 3 onwards.
  • Figure 8 shows an example of the placement rule table 16.
  • scores are set for any two combinations of the six types of services: shopping service, log service, log analysis service, billing service, product information DB, and access log.
  • the VM placement decision means 13 receives as information the service information (service type, hardware resources to be used, etc.) to be executed on the new virtual machine from the management terminal 2, and the virtual information necessary for that It has a function to generate machine 3 3 on the optimal server device 3.
  • service information service type, hardware resources to be used, etc.
  • FIG. 9 is a flowchart showing an operation procedure of VM allocation determination means 1 3 in the virtual machine management device 1. This procedure consists of the following steps:
  • VM allocation determination means 13 searches server device information and virtual machine information recorded in the resource information DB 15 to find a server that satisfies the condition included in the virtual machine start request.
  • the list of server devices 3 is obtained (step S 131).
  • the server 3 taken out in step S 131 satisfies the following conditions (1) and (2).
  • the item of CPU type in the server device information matches the CPU type (that is, X e on) in the virtual machine start request. If the content of the server device information is as shown in Figure 4, hostOI corresponds.
  • the free CPU usage rate and the free memory usage are equal to or higher than the assigned CPU usage rate (20%) and the assigned memory usage (256 MB) during the virtual machine start request.
  • the free C PU usage rate and free memory usage of a given server device 3 are calculated by the following equation.
  • Free CPU utilization 1 00-Total allocated CPU utilization for virtual machines running on the server device
  • Free memory usage Physical memory size of the relevant server device 1 Total sum of allocated memory usage for virtual machines running on the relevant server device
  • the VM placement determination means 13 determines whether or not the search result includes one or more elements in step S 131, that is, whether there is a server device 3 capable of placing a service. Check if it is not (step S132). If there is a server device 3 that can be deployed, the process proceeds to step S133. Otherwise, the VM placement decision means 13 applies the VM migration decision means 14 described later to try to move the existing virtual machine 33, and then proceeds to step S136.
  • the procedure for moving an existing virtual machine (steps S1411 to 47) will be described in detail in the section on "VM migration determining means 14" described later.
  • step S136 the VM placement determining means 13 checks whether the virtual machine has been successfully moved by the VM movement determining means 14.
  • the VM placement decision means 13 returns to step S 131 and tries again to process the virtual machine start request. If the migration fails, that is, if the server device 3 required to execute the virtual machine start request can not be secured, the VM placement decision means 13 fails to execute the virtual machine start request and the processing is performed. finish. If at least one deployable server device 3 is detected in step S 132, the VM placement determination unit 13 selects the server device 3 of the deployment destination from among them according to the following procedure.
  • the VM placement determination means 13 applies the contents of the placement rule table 16 to calculate a score for each of the possible placement destination server devices 3 (step S133).
  • the VM placement decision means 13 has a predetermined score (combination with all the existing services) For example, give-1).
  • step S 1 34 the VM allocation determination means 1 3 selects the server apparatus 3 in the case where the score calculated in step S 1 3 3 is the largest as a new service allocation destination. For example, if there are two destination server devices with a total score of ⁇ 1 and +3, a device with a total score of +3 is selected as a destination of the new service.
  • the VM placement determining means 13 requests the server agent 31 on the server device 3 selected in S 134 to start the virtual machine 3 3 for operating the new service, and performs processing. Exit (Step S1 3 5).
  • the generation of a new virtual machine on the server device 3 can be performed using the existing technology, so the detailed description thereof is omitted.
  • FIG. 10 is a flow chart showing an operation procedure of the VM movement determination means 14 in the virtual machine management device 1.
  • VM migration determination means 14 is used when the virtual machine start request received by VM placement determination means 13 can not be executed in the current virtual machine placement state (FIG. 9, step S 1 This corresponds to the case where there are no deployable devices / devices 3 in 2).
  • VM migration determination means 14 creates a set of server devices 3 which can be the migration source of the virtual machine from the server device information stored in the resource information DB 15 (step S 1). 4 1).
  • the set of these server devices 3 is denoted as N.
  • at least one virtual machine operates on server device 3 included in N, and by moving them to another server device 3, resources necessary for creating a new virtual machine are secured.
  • This is a server device 3 that can.
  • Service Name "Schobbing Service”
  • CPU Type X eon
  • Allocated GPU Usage 20%
  • Allocated Memory Usage 2 5 6 MB
  • Virtual Machine Startup Request Resource Information DB 1 Among the server device information stored in 5, a device 3 with a GPU type of Xeon and a physical memory amount of 2 5 6 MB or more is a candidate.
  • the VM movement determining means 14 checks whether or not at least one server device 3 is included in N (step S 14 2). If it is included, step S 14 3 follows. If it is not included, step S 14 5 follows.
  • step S 14 3 the VM movement determination unit 14 extracts information about a single server device 3 from N. Furthermore, the VM movement determination means 14 removes the information of the server device 3 extracted here from N.
  • VM migration determination means 14 calculates a score difference for each of the possible migration methods for each virtual machine 3 3 running on the server 3 taken out in S 14 3 (step S 1) 4 4).
  • possible migration methods are migration methods in which resources required for a new virtual machine can be secured by moving a virtual machine, and resources required for a virtual machine to be moved can be secured (ie, Refers to a virtual machine and its migration destination server device).
  • the score difference refers to the difference in score when the placement rule table 16 is applied before and after existing virtual machine migration.
  • a specific example of the method of calculating the score difference will be described later. '
  • step S 1 4 4 the VM migration determination means 1 4 performs step S 1 4 2.
  • step S 1 4 2 calculation of the score difference about the moving method with another server 3 as the moving source 3 ⁇ 4r equation ⁇ .
  • step S 1 45 the V M movement determination unit 14 checks whether or not at least one score difference has been calculated for the possible movement methods in the procedure from step S 14 2 to step S 14 4. If the conditions are met, then proceed to step S14. Otherwise, the VM migration decision means 14 terminates the processing of the VM migration decision procedure because the migration of the virtual machine has failed.
  • step S 1 46 the VM movement determination means 14 selects, for each movement method calculated in steps S 14 2 to S 14 4, one that maximizes the score difference.
  • the VM migration determination means 1 4 includes the server agent 3 1 on the migration source server 3 and the server on the migration destination server 3 Age: Request virtual machine move for each of the three 31 (step S 1 4 7).
  • the migration of a virtual machine from one server device 3 to another server device 3 can be performed using the existing technology, and thus the detailed description thereof is omitted.
  • step S14 4 an example of determining possible virtual machine migration methods in step S14 4 is shown.
  • Fig. 11 shows a situation in which the server apparatus A is taken out as the server apparatus 3 of the migration source in step S 14 3 to determine the possible migration method of the virtual machine VM 1 on the server apparatus A.
  • the virtual machine startup request includes the condition that the service to be started (here, “blog service”) requires 1 GB or more as the allocated memory usage.
  • the server devices A to D all have 1 GB of physical memory, and the existing virtual machines VM1 to VM5 are each allocated 0.5 GB of allocated memory usage.
  • the virtual machine VM 1 on the server device A can be moved to the server devices B and C, but can not be moved to the server device D.
  • the reason is that the allocated memory usage is 0. This is because two VMs occupying 5 GB are already operating.
  • Figure 12 shows the operation of moving the virtual machine vmOI running on the server device hostOI to another server device host02.
  • hostOI three virtual machines, vm01, vm02 and vm03, are running, and shopping service, blog service, and access log operate on those virtual machines.
  • virtual machine vm04 is running and product information DB is running on it.
  • the score difference by moving vm01 from hostOI to host02 can be calculated as follows.
  • a new virtual machine is It is possible to create a server device, that is, a newly created virtual machine can sufficiently exhibit its performance, and can be a server device that is less likely to adversely affect other existing virtual machines. The reason is that a combination of a new virtual machine and another existing virtual machine on the same server device selects a more appropriate server device as a new virtual machine location.
  • the probability of failure to generate a new virtual machine can be reduced.
  • the reason is that if there is no server device that can reserve the necessary resources for the newly created virtual machine, the resources required for the newly created virtual machine will be moved by moving to the other server device of the existing virtual machine. This is because it tries to generate a server device in a state of having.
  • the virtual machine management apparatus since the method of moving the virtual machine with the best degree of improvement in the degree of appropriateness of the placement of virtual machines is determined, resources required for the virtual machine to be newly created Simultaneously with the generation of the server device in the state of having, there is an effect that the virtual machine can be relocated more appropriately.
  • the information processing system according to the second embodiment of the present invention can be compared with the information processing system according to the first embodiment shown in FIG.
  • the second embodiment differs in that a VM placement decision means 17 is provided instead of the VM placement decision means 13 and the VM movement decision means 14.
  • the virtual machine management apparatus in the information processing system according to the first embodiment, when a new virtual machine is placed, first of all the server apparatus groups, among the server apparatuses with resources available at the present time, a new server apparatus is newly added. If it is not possible to select the placement destination of the virtual machine, if there is not enough resources at the moment, moving the existing virtual machine to another server device will result in excess resources. A more appropriate server device was selected as the placement destination for the new virtual machine.
  • the VM allocation 'moving determining means 1 7' of the virtual machine management device 1 in the information processing system according to the present embodiment is an arranging method without moving the existing virtual machine and an arranging method involving the movement. And select the optimal placement method from among them.
  • the deployment method without migration of existing virtual machines is a method of selecting the deployment destination of a new virtual machine from server devices that currently have sufficient resources.
  • the deployment method that involves moving existing virtual machines regardless of whether resources are available at this time, it is possible to use resources as one of the migration source server or destination server that has moved the existing virtual machines. This is a method to select the deployment destination of the new virtual machine from among the server devices that can afford.
  • FIG. 14 is a flowchart showing the overall operation of the VM placement and movement determination means 17, and Figures 15 and 16 are the steps S 1 1 1 S 1 3 and S 1 in FIG. It is a flow charter showing details of 4-S 1 7 7
  • Steps S 1 7 1—S 1 3 This procedure consists of the following three steps.
  • the VM allocation 'moving determining means 17 searches the server device information and virtual machine information recorded in the resource information DB 15 to obtain a list of server devices satisfying the conditions included in the virtual machine start request. Get (Step S 1 7 1).
  • This step S 17 1 is the same as step S 1 31 in the operation procedure (FIG. 9) of the V M arrangement determining means 13 in the first embodiment.
  • step S 1 72 the VM placement • movement decision means 17 checks whether the search result in step S 1 or 1 contains one or more elements. If the condition is satisfied, the process proceeds to step S 1 73. If not, the process proceeds to step S 1 74. In step S 1 73, the VM placement and movement determination means 17 applies the contents of the placement rule table 16 to calculate a score for each of the possible placement destination server devices 3. The process here is the same as step S 133 in FIG. 9 of the VM placement determining means 13 in the first embodiment.
  • the VM allocation 'movement determining means 17 generates a candidate for the movement method by combining the movement of the existing virtual machine and the arrangement of the new virtual machine and calculates its score (step S 1) 74—S 177).
  • This procedure consists of the following steps.
  • the VM allocation 'moving determining means 17 generates a set N of servers / devices that can be the moving source of the virtual machine from the server device information stored in the resource information DB 15 ( Step S 1 F 4).
  • the process here is the same as step S 141 in the operation procedure (FIG. 10) of the VM movement determination means 14 in the first embodiment.
  • the VM placement and migration determining means 17 checks whether or not N includes at least one server device 3 (step S1-5). If it is included, the process proceeds to step S1 76. If it is not included, the process proceeds to step S1 78.
  • step S176 the VM allocation 'moving determining means 17 extracts information about the single server device 3 from N and removes the extracted information of server device 3 from N (step 10 in FIG. 10). Similar to S 143).
  • Step S177 For each virtual machine 33 operating on the server device 3 taken out in step S 1 76, the VM allocation and migration determination means 17 generate candidates for possible migration methods and calculate their scores. Do (Step S177).
  • the move 'placement method' refers to an operation combining the move of an existing virtual machine and the placement of a new virtual machine.
  • the single movement arrangement method is specified by the following three elements.
  • Movement ⁇ Placement method must include possible movement methods. That is, the server device of the movement destination must have the resources necessary for the operation of the virtual machine to be moved. Furthermore, the new virtual machine deployment destination server device is a new virtual machine. Must have the necessary resources for the operation of the Here, the placement destination server device of the new virtual machine can be considered to be the migration source server device of the migration target virtual machine or the migration destination server device.
  • Movement 'Score difference is calculated for movement method included in placement method. This score difference is performed in the same manner as step S 144 in FIG. 10 in the first embodiment.
  • the VM placement 'movement determining means 17 may use some heuristics to reduce the number of investigation targets instead of checking the possibilities for all the movement methods.
  • An example of the heuristic here is shown below.
  • step S177 the VM allocation 'movement determining means 17 returns to step S175 and repeats the processing of S175 and the subsequent steps.
  • step S 1 74-S 1 77 the VM arrangement / movement deciding means 17 is a candidate of a possible arrangement method (the one generated in step S 17 1 -S 73), or possible Confirm whether there is a moving method (the one generated in step S 1 174 1 7) (step S 1 78). If the condition is met, the process proceeds to S 1 79. If the condition is not met, placement of the new virtual machine has failed, and the process ends.
  • the VM placement '' movement determining means 17 selects one of the possible virtual machine placement methods or movement 'placement methods that maximizes the score.
  • a placement method without movement and a comparison method other than direct comparison of the scores for the placement method may be adopted.
  • the placement method without movement may be prioritized by adding a certain score to the placement method without movement.
  • the VM placement and migration determining means 17 executes the virtual machine placement method or the migration 'placement method selected in step S 1 7 9 (step S 1 7 10).
  • the selected operation is the move 'arrangement method
  • the VM arrangement' movement determining means 17 is a virtual machine for the server agent 31 according to the same procedure as step S 14 7 in FIG. Request to move machine 3 3
  • the procedure of step S 1 35 in FIG. 9 follows the same procedure as in step S 1 35 in FIG. 3 Request 3 activation.
  • Figure 17 shows a specific example of virtual machine migration operation according to this procedure.
  • This figure shows the situation where a new virtual machine vm05 is deployed in a system consisting of three server devices 3 of host 01, host 02 and host 03.
  • a new virtual machine is placed on the migration source / device 3 of the existing virtual machine
  • migration and placement methods including migration of the existing virtual machine vmOI.
  • a new virtual machine can be used as an appropriate server device, that is, a newly generated virtual machine can sufficiently exhibit its performance, and other existing virtual machines can be used. It can be created on a server device that is less likely to adversely affect. The reason is that a combination of a new virtual machine and another existing virtual machine on the same server device selects a more appropriate server device as a new virtual machine location.
  • the probability of failure to generate a new virtual machine can be reduced.
  • the reason is that not only server devices that can secure the resources necessary for the virtual machine to be newly created, but also other virtual machines of existing virtual machines. This is because the new virtual machine allocation destination is selected including the server apparatus in a state in which the virtual machine scheduled to be newly created has the necessary resources by moving to the server apparatus.
  • the existing virtual machine is moved regardless of whether or not the server is currently equipped with free resources necessary for the new virtual machine. It is possible to allocate resources efficiently by trying at the same time.
  • the VM periodic migration determination means 18 is further provided.
  • the case where relocation of existing virtual machines is performed is limited to the time of placement of a new virtual machine.
  • the virtual machine management device 1 of the information processing system according to the present embodiment is independent of the placement of a new virtual machine, and the existing virtual machine is periodically operated by the VM periodic migration determining means 18. Relocate the
  • the VM periodic movement determining means 18 starts the process shown in FIG. 19 again when a predetermined time has elapsed from the time when the process shown in FIG.
  • the VM periodic migration determination means 18 refers to the virtual machine information stored in the resource information DB 15 to acquire a set of all operating virtual machines 33 (step S 14 1). b). Hereinafter, a set of these virtual machines 3 3 is denoted by M.
  • the VM periodic migration determination unit 18 confirms that at least one virtual machine 3 3 is included in M (step S 1 2 4 b). If the condition is met, the process proceeds to step S 14 3 b, otherwise the process proceeds to step S 14 5 b.
  • the VM periodic migration determination unit 18 extracts information about a single virtual machine 33 from M. Furthermore, the VM periodic migration decision means 18 removes the information of the virtual machine 3 3 taken here from M.
  • the VM periodic migration determination means 18 calculates a score difference for each of the possible migration methods for the virtual machine extracted in step S 1 43 b (step S 1 4 4 b).
  • the “possible migration method” in this step S 1 4 4 b means that the virtual machine to be migrated and all virtual machines running on the migration destination server device operate on those virtual machines. It means a pair of virtual machine and destination server device that satisfies the conditions (CPU usage, memory size, etc.) of resources used by the service. Also, calculation of the score difference is performed in the same manner as in the V M movement determining means 14. After this step, return to step S 1 4 2 b.
  • step S 1 45 b the VM periodic movement determination unit 18 determines that the score difference is equal to or greater than a predetermined threshold among the movement methods for which the score difference is calculated in step S 1 2 2 b-S 1 4 4 b. Check if there is at least one such move method. If the condition is met, the process proceeds to step S14. If the condition is not met, the current process of the V M fixed movement determining means 18 is ended.
  • the threshold used here is a constant of 0 or more, and its value is determined in advance.
  • step S14 6 the VM periodic movement determination unit 18 selects a movement method that maximizes the score difference from among one or more movement methods in which the score difference is equal to or greater than a predetermined threshold.
  • the number of transfer methods to be selected in this step S 1 46 can be set arbitrarily. As an example of the selection method, there is a method of selecting a predetermined number of movement methods in order of decreasing score difference. Another selection method is to select all movement methods having a score difference equal to or higher than the threshold used in step S 1 45 b. Yet another selection method is to select all the moving methods having score differences equal to or greater than the threshold used in step S “I 4 5 b, by a predetermined number and to select score differences equal to or higher than another threshold.
  • the VM periodic migration determination means 18 determines the migration method of the server device at the determined migration source and migration destination server device 3:! Need to run Ask (step S 1 4 7).
  • the operations of steps S 1 46 and S 1 4 7 are the same as S 1 4 6 and S 1 4 7 in the operation procedure of the VM movement determination means 14 (FIG. 10).
  • the same effect as that of the virtual machine management device of the first embodiment can be obtained and, at the same time, the relocation of the operating virtual machine 33 is attempted periodically. Allocation of resources to virtual machines 3 3 can always be optimized. This improves the performance of the service running on each virtual machine 33.
  • the following changes can be made to the virtual machine management device of this embodiment.
  • the VM periodic migration determination means 18 executes the processing shown in FIG. 19 at fixed time intervals, when the resources of the server device 3 and the virtual machine 33 reach a predetermined fixed condition.
  • the process shown in FIG. 19 may be started.
  • the virtual machine management apparatus 1 may be provided with the same means as the VM allocation of the second embodiment, the migration determination means 17 in the second embodiment. .
  • a VM stopping means 19 and a VM movement determining means 1A are further provided.
  • the case where relocation of existing virtual machines is performed is limited to the time of placement of a new virtual machine.
  • the virtual machine management device according to the present embodiment is stopped by the VM stopping means 19 when the virtual machine 33 on the server device 3 is stopped, the VM movement deciding means 1A for virtual machine 3 is used. 3 is stopped, and relocation is performed by moving the virtual machine 3 3 on the other server 3 to the server 1 / device 3.
  • the VM stop means 19 receives, from the management terminal 2, a virtual machine stop request including the name of the virtual machine to be stopped.
  • the VM stopping means 19 has a function of stopping the virtual machine according to the virtual machine stop request and also moving the existing virtual machine by calling the VM movement determining means 1A at the time of stopping.
  • FIG. 21 is a flowchart showing an operation procedure of the VM stopping unit 19 in the virtual machine management device of the present embodiment. The details of this operation procedure will be described below.
  • the VM stopping means 19 requests the server agent 31 on the server device 3 on which the virtual machine 33 to be stopped operates to stop the virtual machine 33 (step S 191).
  • the VM stopping means 19 tries to move the running virtual machine 33 by using the VM movement determining means 1 A at the time of stopping (step S 14 b -S 1 47) 0 the time of stopping here VM
  • the operation of the movement determining means 1A is the same as the operation of the VM periodic movement determining means 1 8 in the third embodiment (FIG. 19) except that the following points are different.
  • step S141b the set M of virtual machines 33 to be moved does not include the virtual machine 33 operating on the same server device 3 as the virtual machine 33 to be stopped.
  • step S 144 b possible migration methods include only the migration method in which the server machine 3 on which the virtual machine 33 to be stopped was operating is the migration destination.
  • the same effect as that of the virtual machine management device of the first embodiment can be obtained, and another virtual machine 33 is attempted to be rearranged when the virtual machine 33 is stopped.
  • Resource allocation to the virtual machine 33 can be optimized. This improves the performance of services running on each virtual machine 33.
  • the virtual machine management device 1 may be configured to include the same means as the VM periodic migration determination means 18 in the virtual machine management device of the embodiment.
  • the program is provided by being recorded on a computer readable recording medium such as a magnetic disk or a semiconductor memory, and is read by the computer at the time of startup of the computer, etc., and the computer is controlled by controlling the operation of the computer. It is made to function as a virtual machine management device in each embodiment described above, and execute the processing described above.
  • the present invention can be applied to an application such as an operation management middleware that centrally manages server resources constituting an enterprise information system. It can also be applied to applications such as resource management software that makes up hosting services and application service providers (ASPs, application providers, licensors) that lend server resources to multiple individuals and corporate users. .
  • an application such as an operation management middleware that centrally manages server resources constituting an enterprise information system. It can also be applied to applications such as resource management software that makes up hosting services and application service providers (ASPs, application providers, licensors) that lend server resources to multiple individuals and corporate users.
  • ASPs application service providers
  • licensors application service providers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

 ネットワーク(4)を介して複数のサーバ装置(3)に接続された仮想マシン管理装置(1)は、管理端末(2)からの要求に従って、新規の仮想マシンをサーバ装置(3)に生成する。その際、仮想マシン管理装置(1)は、仮想マシン種別の組合せ毎にその組合せの仮想マシン種別どうしが同じサーバ装置(3)に配置される適切度を示すスコアを記憶する配置規則表(16)を参照して、新規の仮想マシンを配置可能な1以上のサーバ装置について、新規の仮想マシンを当該サーバ装置に配置する適切度を示す指標値を計算し、該計算した指標値を参照して新規の仮想マシンの配置先を決定する。

Description

明 細 書 仮想マシン管理装置、 仮想マシン管理方法およびプログラム 技術分里 :
本発明は仮想マシン管理装置および仮想マシン管理方法に関し、 特に仮想マシ ン上で動作するプログラムの負荷特性に基づいて物理マシンへの仮想マシンの配 置方法を動的に決定する仮想マシン管理装置および仮想マシン管理方法に関する。 背景技術:
従来、 単一のサーバ装置上で複数のオペレーティングシステム (O S ) を動作 させることにより、 1台のコンピュータを仮想的に複数台のサーバとして使うこ とのできる仮想マシン ( V M: V i rtua l Mach i ne) 技術が知られている。 ここで、 単一のサーバ装置とは、 ワークステーションやパーソナルコンピュータ等のコン ピュータを指す。 この種の技術を適用した製品として、 ヴイエムウェア社による rVMWare ESX Serverj, マイクロソフト社による 「V i rtua l Server j、 および米国 XenSource社による 「Xenj などが知られている。 これらの製品では、 V M生成用 のコマンドを発行することにより新たな仮想マシンを、 サーノ 装置上に生成する ことができる。
また、 サーバ装置がネットワークを通じて複数台接続された分散プロセッサ環 境において、 或るサーバ装置に生成された仮想マシンを他のサーバ装置に移動さ せる技術が知られている。 仮想マシンの移動技術を記載した文献としては、 例え ば、 特開平 1 0— 2 8 3 2 1 0号公報 (以下、 「特許文献 1」 と呼ぶ) がある。 ま た、 VMwareでは vMot i on、 Xenでは m i grat i onとして仮想マシンの移動機能を提 供している。
このようにサーバ装置が複数台に分散した環境において、 仮想マシンを新たに 生成する場合、従来は、特開 2 0 0 5二 1 1 5 6 5 3号公報(以下、「特許文献 2 J と呼ぶ) に記載されるように、 リソースに余裕のあるサーバ装置をランダムに選 択する方法が採用されている。 ここで、 特許文献 2では、 リソースに余裕のある サーバ装置が 1台も存在しない場合は、 仮想マシンの新規生成を断念し、 エラー メッセージを表示する。 また、 特許文献 2では、 新規仮想マシンの生成とは非同 期に、 既存の仮想マシンの所定時間毎のパフォーマンスを示す実測データに基づ いて、 各仮想マシンを複数のサーバ装置の何れかで稼動させた場合の各時間にお ける各仮想マシンのパフォーマンス値の合計が最大となる仮想マシンとサーバ装 置の組合せを算出し、 この算出した組合せに対して各仮想マシンの再配置を行う ようにしている。
上述したように従来は、 仮想マシンの新規作成時、 リソースに余裕のあるサー バ装置をランダムに選択して仮想マシンを作成している。 このため、 以下のよう な課題がある。
第 1の課題は、新規に生成された仮想マシンが十分な性能を発揮できず、また、 既存の他の仮想マシンに悪影響を与える恐れが多いことである。 その理由は、 ラ ンダムに選択したサーバ装置が、 新規仮想マシンの生成に最適なサーバ装置であ る確率は非常に低いためである。
第 2の課題は、 仮想マシンの新規作成が行えない恐れが多いことである。 その 理由は、 リソースに余裕のあるサーバ装置が 1つも存在しなければ、 仮想マシン の新規作成が行えないからである。 発明の開示:
本発明の第 1の目的は、 適切なサーバ装置に仮想マシンを作成できるようにす る"と 1 ¾) ^ ο
本発明の第 2の目的は、 仮想マシンの新規作成を可能な限リ行えるようにする ことにある。
本発明の第 1の仮想マシン管理装置は、 ネットワークを介して複数のサーバ装 置に接続された仮想マシン管理装置であって、 仮想マシン種別の組合せ毎にその 組合せの仮想マシン種別どうしが同じサーバ装置に配置される適切度を示すスコ ァを記憶する配置規則表と、 新規の仮想マシンを配置可能な 1以上のサーバ装置 を選択し、 該選択したサーバ装置について新規の仮想マシンを配置する場合にお ける指標値を前記スコアを用いて計算し、 該計算した指標値を参照して新規の仮 想マシンの配置先を決定する仮想マシン配置決定手段とを備えることを特徴とす る。
本発明の第 2の仮想マシン管理装置は、 第 1の仮想マシン管理装置において、 新規の仮想マシンを配置可能なサーバ装置として、 新規の仮想マシンに必要なリ ソースを現に確保できるサーバ装置を選択することを特徴とする。
本発明の第 3の仮想マシン管理装置は、 第 2の仮想マシン管理装置において、 前記仮想マシン配置決定手段から呼び出されることにより、 サーバ装置上の既存 の仮想マシンを他のサーバ装置に移動させることにより、 新規の仮想マシンを配 置可能なサーバ装置を生成する仮想マシン移動決定手段を備えることを特徴とす る。
本発明の第 4の仮想マシン管理装置は、 第 3の仮想マシン管理装置において、 前記仮想マシン移動決定手段は、 新規の仮想マシンを配置可能なサーバ装置を生 成できる移動方法の各候補について、 当該移動方法の適切度を示す指標値を前記 スコアを用いて計算し、 該計算した指標値を参照して仮想マシンの移動方法を決 定することを特徴とする。
本発明の第 5の仮想マシン管理装置は、 第 3または第 4の仮想マシン管理装置 において、 前記仮想マシン配置決定手段は、 新規の仮想マシンに必要なリソース を現に確保できるサーバ装置が存在しない場合に前記仮想マシン移動決定手段を 呼び出すことを特徴とする。
本発明の第 6の仮想マシン管理装置は、 ネッ卜ワークを介して複数のサーバ装 置に接続された仮想マシン管理装置であって、 仮想マシン種別の組合せ毎にその 組合せの仮想マシン種別どうしが同じサーバ装置に配置される適切度を示すスコ ァを記憶する配置規則表と、 既存の仮想マシンの移動を伴わない新規の仮想マシ ンの配置方法、 および、 既存の仮想マシンの移動を伴う新規の仮想マシンの配置 方法の各候補を選択し、 該選択した各候補について、 当該配置方法の適切度を示 す指標値を前記スコアを用いて計算し、 該計算した指標値を参照して新規の仮想 マシンの配置先を決定する仮想マシン配置 *移動決定手段とを備えることを特徴 とする。
本発明の第 7の仮想マシン管理装置は、 第 1または第 6の仮想マシン管理装置 において、 新規の仮想マシンの配置とは独立に、 サーバ装置上の仮想マシンを他 のサーバ装置へ移動させる移動方法の各候補について、 当該移動方法の適切度を 示す指標値を前記スコアを用いて計算し、 該計算した指標値を参照して既存の仮 想マシンの移動を行う移動手段を備えることを特徴とする。
本発明の第 8の仮想マシン管理装置は、 第 7の仮想マシン管理装置において、 前記移動手段は、 一定時間ごと、 サーバ装置あるいは仮想マシンのリソースが予 め定められた一定の条件に達するごと、 または仮想マシンの停止ごとに動作する ことを特徴とする。
本発明の第 9の仮想マシン管理装置は、 第 1または第 6の仮想マシン管理装置 において、 仮想マシンの種別ごとに、 その種別の仮想マシンが配置されているサ —バ装置から当該仮想マシンのリソースの使用状況と他の仮想マシンとの間の通 信状況とを収集するサーバ監視手段と、 該サーバ監視手段で収集された情報と予 め定められたスコァ生成規則とから前記スコァを生成して前記配置規則表に記憶 する配置規則生成手段とを備えることを特徴とする。
本発明の第 1の仮想マシン管理方法は、 ネッ卜ワークを介して複数のサーバ装 置に接続されたコンピュータにより前記サーバ装置上の仮想マシンを管理する方 法であって、 前記コンピュータが、 新規の仮想マシンを配置可能な 1以上のサ一 バ装置を選択する第 1のステップと、 前記コンピュータが、 前記選択した各サー iく装置について、 仮想マシン種別の組合せ毎にその組合せの仮想マシン種別どう しが同じサーバ装置に配置される適切度を示すスコアを配置規則表から参照して、 新規の仮想マシンを当該サーバ装置に配置する適切度を示す指標値を計算する第 2のステップと、 前記コンピュータが、 前記計算した指標値を参照して新規の仮 想マシンの配置先を決定する第 3のステツプとを含むことを特徴とする。
本発明の第 2の仮想マシン管理方法は、 第 1の仮想マシン管理方法において、 前記第 1のステップでは、 新規の仮想マシンを配置可能なサーバ装置として、 新 規の仮想マシンに必要なリソースを現に確保できるサーバ装置を選択することを 特徴とする。
本発明の第 3の仮想マシン管理方法は、 第 2の仮想マシン管理方法において、 前記第 1のステップでは、 新規の仮想マシンに必要なリソースを現に確保できる サーバ装置が存在しない場合、 サーバ装置上の既存の仮想マシンを他のサーバ装 置に移動させることにより、 新規の仮想マシンを配置可能なサーバ装置の生成を 試みることを特徴とする。
本発明の第 4の仮想マシン管理方法は、 第 3の仮想マシン管理方法において、 前記第 1のステップでは、 新規の仮想マシンを配置可能なサーバ装置を生成でき る移動方法の各候補について、 当該移動方法の適切度を示す指標値を前記スコア を用いて計算し、 該計算した指標値を参照して仮想マシンの移動方法を決定する ことを特徴とする。
本発明の第 5の仮想マシン管理方法は、 ネッ卜ワークを介して複数のサーバ装 置に接続されたコンピュータにより前記サー/く装置上の仮想マシンを管理する方 法であって、 前記コンピュータが、 既存の仮想マシンの移動を伴わない新規の仮 想マシンの配置方法、 および、 既存の仮想マシンの移動を伴う新規の仮想マシン の配置方法の各候補を選択する第 1のステップと、 前記コンピュータが、 前記選 択した各候補について、 仮想マシン種別の組合せ毎にその組合せの仮想マシン種 別どうしが同じサーバ装置に配置される適切度を示すスコアを配置規則表から参 照して、 当該配置方法の適切度を示す指標値を計算する第 2のステップと、 前記 コンピュータが、 前記計算した指標値を参照して新規の仮想マシンの配置先を決 定する第 3のステップとを含むことを特徴とする。
本発明の第 6の仮想マシン管理方法は、 第 1または第 5の仮想マシン管理方法 において、 前記コンピュータが、 新規の仮想マシンの配置とは独立に、 サーバ装 置上の仮想マシンを他のサーバ装置へ移動させる移動方法の各候補について、 当 該移動方法の適切度を示す指標値を前記スコアを用いて計算し、 該計算した指標 値を参照して既存の仮想マシンの移動'を行う第 4のステップをさらに含むことを 特徴とする。 本発明の第 7の仮想マシン管理方法は、 第 6の仮想マシン管理方法において、 前記第 4のステップは、 一定時間ごと、 サーバ装置あるいは仮想マシンのリソ一 スが予め定められた一定の条件に達するごと、 または仮想マシンの停止ごとに開 始することを特徴とする。
本発明の第 8の仮想マシン管理方法は、 第 1または第 5の仮想マシン管理方法 において、 前記コンピュータ力 仮想マシンの種別ごとに、 その種別の仮想マシ ンが配置されているザ一/く装置から当該仮想マシンのリソースの使用状況と他の 仮想マシンとの間の通信状況とを収集する第 5のステップと、 前記コンピュータ が、 前記収集された情報と予め定められたスコァ生成規則とから前記スコアを生 成して前記配置規則表に記憶する第 6のステップとをさらに含むことを特徴とす る。
本発明にあっては、 仮想マシン種別の組合せ毎にその組合せの仮想マシン種別 どうしが同じサーバ装置に配置される適切度を示すスコアを用いて、 新規の仮想 マシンを配置可能な 1以上のサーバ装置のそれぞれについて、 新規の仮想マシン を当該サーバ装置に配置する適切度を示す指標値を計算し、 この計算した指標値 を参照して新規の仮想マシンの配置先を決定する。 これにより、 リソースに余裕 のあるサーバ装置をランダムに選択する場合に比べて、 より適切なサーバ装置に 新規の仮想マシンを配置することができる。
上記のスコアは、 例えば、 仮想マシンの種別ごとに、 その種別の仮想マシンが 配置されているサーバ装置から当該仮想マシンのリソースの使用状況と他の仮想 マシンとの間の通信状況とを収集し、 この収集された情報と予め定められたスコ ァ生成規則とから作成することができる。 スコア生成規則としては、 例えば、 リ ソースの競合が少ないほど、 また相互の通信が多いほど、 数値の大きなスコアを 算出する規則が用いられる。
新規の仮想マシンを配置可能な 1以上のサーバ装置の候補としては、 新規の仮 想マシンに必要なリソースを現に確保できるサーバ装置にのみ限定しても良いが、 既存の仮想マシンを他のサーバ装置に移動させることにより新規の仮想マシンを 配置可能なサーバ装置も候補に含めれば、 新規の仮想マシンの配置に成功する確 率を高めることができる。 このとき、 新規の仮想マシンに必要なリソースを現に 確保できるサーバ装置が存在しない場合に限って、 既存の仮想マシンを他のサー バ装置に移動させることにより新規の仮想マシンを配置可能なサーバ装置の生成 を試みるようにすれば、 新規仮想マシンの配置時における既存仮想マシンへの影 響を抑えることができる。 また新規の仮想マシンを配置可能な 1以上のサーバ装 置の候補を選択する際に、 既存の仮想マシンの移動を伴わない新規の仮想マシン の配置方法、 および、 既存の仮想マシンの移動を伴う新規の仮想マシンの配置方 法の各候補を選択することも可能である。 さらに、 新規の仮想マシンの配置とは 独立に、 サーノ 装置上の仮想マシンを他のサ一ノ 装置へ移動させるようにしても 良い。
本発明によれば、 新規な仮想マシンを適切なサーバ装置、 すなわち、 新規に生 成された仮想マシンが十分に性能を発揮でき、 また、 既存の他の仮想マシンに悪 影響を与える恐れが少ないサーバ装置に作成することができる。 その理由は、 新 規の仮想マシンを配置可能な 1以上のサーバ装置のそれぞれについて、 新規の仮 想マシンを当該サーバ装置に配置する適切度を示す指標値を計算し、 この計算し た指標値を参照して新規の仮想マシンの配置先を決定するためである。
また、 新規の仮想マシンを配置可能な 1以上のサーバ装置の候補として、 新規 の仮想マシンに必要なリソースを現に確保できるサーバ装置以外に、 既存の仮想 マシンを他のサ一/く装置に移動させることにより新規の仮想マシンを配置可能な サーバ装置なども含める構成にあっては、 仮想マシンの新規作成に失敗する確率 を低減することが可能となる。 図面の簡単な説明:
図 1は本発明の第 1の実施の形態による仮想マシン管理装置を含む情報処理シ ステムのブロック図である。
図 2は本発明の第 1の実施の形態による情報処理システムにおけるサーバ装置 の内部構成を示すブロック図である。 '
図 3は本発明の第 1の実施の形態による仮想マシン管理装置におけるサーバ監 視手段の動作手順を示すフローチヤ一トである。
図 4は本発明の第 1の実施の形態による仮想マシン管理装置における資源情報 D Bに格納されるサーバ装置情報の一例を示す図である。
図 5は本発明の第 1の実施の形態による仮想マシン管理装置における資源情報 D Bに格納される仮想マシン情報の一例を示す図である。
図 6は本発明の第 1の実施の形態による仮想マシン管理装置における資源情報 D Bに格納されるサービス情報の一例を示す図である。
図つは本発明の第 1の実施の形態による仮想マシン管理装置における V M配置 規則生成手段の動作手順を示すフローチヤ一卜である。
図 8は本発明の第 1の実施の形態による仮想マシン管理装置における配置規則 表に格納される情報の一例を示す図である。
図 9は本発明の第 1の実施の形態による仮想マシン管理装置における V M配置 決定手段の動作手順を示すフローチヤ一卜である。
図 1 0は本発明の第 1の実施の形態による仮想マシン管理装置における V M移 動決定手段の動作手順を示すフローチヤ一卜である。
図 1 1は本発明の第 1の実施の形態による仮想マシン管理装置における V M移 動決定手段による可能な移動方法の判別方法を説明するための図である。
図 1 2は本発明の第 1の実施の形態による仮想マシン管理装置における V M移 動決定手段によるスコア差分計算の例を示すための図である。
図 1 3は本発明の第 2の実施の形態による仮想マシン管理装置を含む情報処理 システムのプロック図である。
図 1 4は本発明の第 2の実施の形態による仮想マシン管理装置における V M配 置■移動決定手段の動作手順を示すフローチヤ一卜である。
図 1 5は本発明の第 2の実施の形態による仮想マシン管理装置における V M配 置■移動決定手段が実行する、 既存 V Mの移動を伴わない新規 V Mの配置方法と そのスコア計算の詳細な動作手順を示すフローチャートである。
図 1 6は本発明の第 2の実施の形態による仮想マシン管理装置における V M配 置■移動決定手段が実行する、 既存 V Mの移動を伴う新規 V Mの配置方法とその スコア計算の詳細な動作手順を示すフローチヤ一卜である。
図 1 7は本発明の第 2の実施の形態による仮想マシン管理装置における V M配 置 -移動決定手段が実行する、 既存 V Mの移動を伴う新規 V Mの配置方法の具体 例を示す図である。
図 1 8は本発明の第 3の実施の形態による仮想マシン管理装置を含む情報処理 システムのブロック図である。
図 1 9は本発明の第 3の実施の形態による仮想マシン管理装置における V M定 期移動決定手段の動作手順を示すフローチヤ一卜である。
図 2 0は本発明の第 4の実施の形態による仮想マシン管理装置のブロック図で める。
図 2 1は本発明の第 4の実施の形態による仮想マシン管理装置における V M停 止手段の動作手順を示すフローチヤ一トである。 発明を実施するための最良の形態:
次に、 本発明を実施するための最良の形態について、 図面を参照して詳細に説 明する。
図 1を参照すると、 本発明の第 1の実施の形態に係る情報処理システムは、 仮 想マシン管理装置 1と、 管理端末 2と、 複数のサーバ装置 3と、 ネットワーク 4 とから構成される。
仮想マシン管理装置 1は、プログラム制御により動作するコンピュータであり、 サーバ監視手段 1 1と、 V M (Vi rtua l Mach i ne) 配置規則生成手段 1 2と、 V M 配置決定手段 1 3と、 V M移動決定手段 1 4と、 資源情報 D B (Database) 1 5 と、 配置規則表 1 6とから構成される。
サーバ監視手段 1 1は、 各サーバ装置 3中のサーバエージ;!:ント (後述) を介 して、 管理対象の情報処理システムを構成する各サーバ装置 3、 仮想マシン、 サ 一ビスの稼動状況を取得し、その内容を資源情報 D B 1 5に格納する手段である。 ここで、 各仮想マシン上では、 1つまたは複数のアプリケーションソフトウェア が稼動する。 単一の仮想マシン上で動作するアプリケーションソフ卜ウェア群を 総称して、 サービス (Serv i ce) と呼ぶ。 各サービスは名前により区別される。 複 数の仮想マシン上で同一のサービスが稼動することもある。 このように、 各仮想 マシンとその上で稼動するサービスとは 1対 1に対応する。 従って、 仮想マシン の配置先を決定することと、 サービスの配置先を決定することとは等価である。 また、 仮想マシンの種別とサービスの種別とは等価である。
V M配置規則生成手段 1 2は、 資源情報 D B 1 5に格納された情報を元に、 サ —ビスの種類 (仮想マシンの種類) の組合せ毎にその組合せのサービスの種類ど うし (仮想マシンの種類どうし) が同じサーバ装置 3に配置される適切度を示す スコアを生成し、 その内容を V M配置規則表 1 6に格納する手段である。
V M配置決定手段 1 3は、 資源情報 D B 1 5に格納されたサーバ装置情報と仮 想マシン情報、 および V M配置規則表 1 6の内容を元に、 新規に生成する仮想マ シンの配置先となるサ一ノ 装置 3を決定する手段である。
V M移動決定手段 1 4は、 新規の仮想マシンを起動するのに必要な資源を確保 するために、 稼働中の仮想マシンを別のサーバ装置 3に移動させる手段である。 管理端末 2は、 キーボードやマウスなどの入力装置と、 ディスプレイなどの出 力装置を備える端末 (コンソール) である。 管理端末 2は、 仮想マシン管理装置 1に接続して、 運用管理者によって入力された各種操作を仮想マシン管理装置 1 に送信する機能と、 各種操作の実行状況と情報システムの稼動状況を仮想マシン 管理装置 1から受信して、 出力装置に出力する機能を有する。 ここで、 各種操作 には、 新規の仮想マシンの作成と、 稼働中の仮想マシンの破棄とを含む。
サーバ装置 3は、 プログラム制御により動作するコンピュータである。 図 2を 参照すると、 サーバ装置 3は、 サーバエージェント 3 1 と、 仮想マシンモニタ (Hyperv i sor) 3 2と、 複数の仮想マシン 3 3とから構成される。
サーバエージェント 3 1は、 仮想マシンモニタ 3 2および仮想マシン 3 3から ハードウェアとソフトウヱァの稼働状況を取得する機能と、 仮想マシンモニタ 3 2に対して仮想マシンの生成、 破棄、 他のサーバ装置 3への移動を要求する機能 を有する。
仮想マシンモニタ 3 2は、 サーバ装置 3が有する C P U (Central Process ing Unit) やメモリ (Ma in Memory) などのハードウェア資源を各仮想マシン 33に配 分するとともに、 仮想マシン 33の生成および破棄を制御する機能を有する。 各仮想マシン 33上では、 前述したように、 1種類のサービス (1つまたは複 数のアプリケーションソフトゥ: ァ) が稼動する。
ネッ卜ワーク 4は、 仮想マシン管理装置 1 と複数のサーバ装置 3とを接続する ネットワークである。 図 1では管理端末 2はネットワーク 4には接続されていな いものの、 管理端末 2がネットワーク 4を して仮想マシン管理装置 1と接続す る構成でも、 発明の本質は影響を受けない。
<本実施の形態の構成の具体例 >
以下に、 本実施の形態の構成の具体例を挙げる。
仮想マシン管理装置 1の具体例は、 イーサネット (登録商標) などのネットヮ ーク接続手段を備えるコンピュータであって、 Windows (登録商標) や Linuxなど の OSが動作する。 さらに、 サーバ監視手段 1 1、 VM配置規則生成手段 1 2、 VM配置決定手段 1 3、 VM移動決定手段 1 4の各手段が、 OS上のソフトゥェ ァモジュールとして動作する。 資源情報 D B 1 5および配置規則表 1 6には、 Oracleや DB2、 MySQLなどの DB製品、 あるいはメモリ上に資源情報および配置 規則 (スコア) の情報を格納するソフトウェアモジュールを用いる。 各手段 1 1 〜 1 4と資源情報 D B 1 5および配置規則表 1 6との間の相互作用は、 プログラ ミンク言語における関数 (function, procedure, subroutine, method) を用しヽて 実現される。あるいは、 TCP/ 1 Pなどの通信プロトコルと、その上の HTTP (Hyper Text Transfer Protocol) めるしヽは SOAP (Simple Object Access Protocol) などの通 信プロ卜コルを組合せて実現しても良い。
管理端末 2の具体例は、 キーボードとマウスからなる入力装置と、 液晶表示装 置と、 仮想マシン管理装置 1との接続手段とを備える端末装置である。 典型的な 例は、 Windowsが動作するパーソナルコンピュータ(PG)であり、 Internet Explorer などのウェブ■ブラウザを通して仮想マシン管理装置 1に接続する。この例では、 図 1のように仮想マシン管理装置 1と'管理端末 2が直結しているが、 その必要性 は必ずしもなく、 ネッ卜ワーク 4に管理端末 2が接続する形態でも良い。 サーバ装置 3の具体例は、 イーサネット (登録商標) などのネットワーク接続 手段を備えるコンピュータであって、 VMware GSX Server, VMware ESX Server, Xen などの仮想マシンモニタ 32と、 それらの仮想マシンモニタ 32によって制 御される 1つ以上の仮想マシン 33が稼動する。各仮想マシン 33では、 Windows Server、 Red Hat Enterprise Linux, Solaris, HP-UXなどの o Sが稼動する。 さ らに、 その上で稼動するサ一ビスとして、 Internet Information Server, Apache HTTP Serverなどのウェブ 'サーバ、 Enterprise Java (登録商標) Beans (EJB) などのアプリケーション■ コンテナ、 Oracleや DB2、 MySQLなどのデータべ一ス 管理システム (DBMS, Database Management System) が稼動する。
サーバ装置 3におけるサーバエージ; Lント 31の構成は、 仮想マシンモニタ 3 2の種類に依存する。 VMware GSX Server のように、 ホスト OS上で動作する仮 想マシンモニタ 32を用いる場合、 サーバエージェン卜 31はホスト OS上のソ フトウェアとして動作する。 一方、 VMware ESX Serverや Xenのように、 ホスト OSを必要としない種類の仮想マシンモニタ 32を用いる場合には、 仮想マシン モニタ 32中のソフトウエアモジュールとしてサーバエージェン卜 31を動作さ せるか、 Xen DomainO などの特権仮想マシン上のプロセスとしてサーバエージェ ント 31を動作させる構成を取る。
ネットワーク 4の具体例は、 イーサネット (登録商標) によるローカルエリア ネッ卜ワーク (LAN), およびインターネットである。
次に、 フローチャートを用いて、 本実施の形態の全体の動作について詳細に説 明する。
<サーバ監視手段 1 1の動作手順 >
図 3は、 仮想マシン管理装置 1におけるサーバ監視手段 1 1の動作手順を示す フローチヤ一トである。 本手順は以下のステップから構成される。
まず、 サーバ監視手段 1 1は、 管理下の各サーバ装置 3が備えるサーバエージ ェント 31から、 各サーバ装置 3、 その上で動作する仮想マシン 33、 およびそ れらの仮想マシン 33上で稼動するサービスに関する情報を稼働状況として取得 する (ステップ S 1 1 1 )。 ここで取得する稼動状況には以下の種類の情報が含ま れる。
a) 各サーバ装置 3が備えるハ一ドウ χァ資源など、 各サーバ装置 3自体に関 する情報 (以下、 「サーバ装置情報」 と呼ぶ)
b) 各サーバ装置 3上で稼動する仮想マシン 33の名称、 その仮想マシン 33 が使用するハードウ:!:ァ資源、 およびその仮想マシン 33上で稼動するサービス の名称 (以下、 「仮想マシン情報」 と呼ぶ)
c) 稼働中の各サービスについて、 他のサービスとの通信履歴
次に、 サーバ監視手段 1 1は、 ステップ S 1 1 1で取得した稼働状況を元に、 各サービスを特徴づける指標 (以下、 「サービス情報」 と呼ぶ) を集計する (ステ ップ S 1 1 2)。 サービス情報は、 以下の 2種類の指標から構成される。
1 ) 負荷パターン:サービスが使用するハードウエア資源
2) 通信パターン:サービスと別のサービスの間での相互作用
同一種類のサービスが複数の仮想マシン上で稼動している場合には、 サーバ監 視手段 1 1は、 それらの仮想マシンについての指標の平均値を、 そのサービスに ついての指標とする。
次に、 サーバ監視手段 1 1は、 ステップ S 1 1 1で取得したサーバ装置情報と 仮想マシン情報、 およびステップ S 1 1 2で集計したサービス情報を、 資源情報 DB 1 5に格納する (ステップ S 1 1 3)。
<負荷パターン Z通信パターンの具体例 >
以下に、 ステップ S 1 1 2で集計する負荷パターンと通信パターンの具体例を 示す。
負荷パターンの具体例は、 以下の数値からなる組である。
a) 過去一定期間 (例えば 5分間) における平均 CPU使用率 (以下、 「平均 C P u使用率」)
b) 過去一定期間 (例えば 1時間) における最大 CPU使用率 (以下、 「最大 C P u使用率」)
c) 過去一定期間 (例えば 5分間)における平均メモリ使用量 (以下、 「平均メ モリ使用量」) d) 過去一定期間 (例えば 1時間) における最大メモリ使用量 (以下、 「最大メ モリ使用量」)
通信パターンの具体例は、 過去一定期間 (例えば 10分間) における TCP (Transmission Control Protocol) セッションの回数 (以下、 「接続頻度」 と呼 ぶ。) である。
<資源情報 D Bに格納される情報の具体例 >
以下に、ステップ S 1 13で資源情報 DB 1 5に格納する情報の具体例を示す。 図 4は、 サーバ装置情報の具体例である。 この例では、 管理対象のサーバ装置 3は hostOI, host02, host03の計 3台あり、それらの各サーバ装置 3についての C PU (Central Processing Unit) の種類、 物理メモリ量、 ホスト OS (Operating System) の各情報を示している。
図 5は、 仮想マシン情報の具体例である。 この例では、 vm01 から vm06の 6つ の仮想マシン 33について、 その仮想マシン 33が所属するサーバ装置 3のホス 卜名、 割当 CPU使用率、 割当メモリ使用量、 ゲスト OS、 その仮想マシン 33 上で稼動するサービスの名称、 の各情報が格納される。 ここで、 割当 CPU使用 率と割当メモリ使用量は、 その仮想マシン 33が使うことを許された最大の CP U使用率とメモリ容量を意味する。
図 6は、 サービス情報の具体例である。 この例では、 ショッピングサービス、 ブログサービス (ウェブログサービス、 b log/web log service), ログ解析サービ ス、 課金サービス、 商品情報 DB (Database), アクセスログの 6種類のサービス について、 平均 Z最大 CPU使用率、 平均 Z最大メモリ使用量、 接続先サービス 接続頻度の各情報が格納されている。
ここで、 平均 最大 CPU使用率とは、 過去の一定期間内において、 そのサ一 ビスが消費した CPU使用率の平均値と最大値を指す。 同様に、 平均 最大メモ リ使用量は、 過去一定期間内における、 そのサービスによるメモリ使用量の平均 値と最大値を指す。 接続先サービス 接続頻度とは、 過去の一定期間において、 そのサービスと通信を行ったサービス名と、 その接続回数の平均値を指す。 同一 種別のサービスが複数の仮想マシン上で稼動する可能性があるために、 接続頻度 の値は必ずしも整数とは限らない。
< V M配置規則生成手段 1 2の動作手順 >
図 7は、 仮想マシン管理装置 1における V M配置規則生成手段 1 2の動作手順 を示すフローチャートである。 V M配置規則生成手段 1 2は、 管理端末 2からの 起動命令により、あるいはタイマによる起動によって、本手順の実行を開始する。 本手順は以下のステップから構成される。
まず、 V M配置規則生成手段 1 2は、 配置規則表 1 6に記録済みのすべての情 報を消去して、 初期状態にする (ステップ S 1 2 1 )。配置規則表 1 6には、 2種 類のサービスからなる対 (同一種類のサービス同士からなる対もありうる) と、 その対に割り当てるスコア (点数、 優先度) が記録される。 スコアは整数または 実数の値を取る。 この数値が大きいほど、 対に含まれるサービスを優先して同一 のサーバ装置 3上で稼動させることを意味する。ステップ S 1 2 1実行直後では、 配置規則表 1 6は空である。
次に、 V M配置規則生成手段 1 2は、 資源情報 D B 1 5に記録されたサービス 情報を読み込み、 そこに含まれるサ一ビス名のすベての可能な対からなる集合 S を作成する (ステップ S 1 2 2 )。
次に、 V M配置規則生成手段 1 2は、 集合 Sから 1つのサービス対を取り出す (ステップ S 1 2 3 )。もし集合 S中のすべてのサ一ビス対を取リ出した後であれ ば、 V M配置規則生成手段 1 2の動作を終了する。 以降のステップでは、 ここで 取リ出したサービス対を(a, b)と表記する。
次に、 V M配置規則生成手段 1 2は、 資源情報 D B 1 5に記録された、 サービ ス aと bについての負荷パターンおよび通信パターンを用いて、サービス対(a, b) に割り当てるスコアを算出する (ステップ S 1 2 4 ) o ここで用いる負荷パターン と通信パターンは、 サーバ監視手段 1 1のステップ S 1 2において抽出された ものである。
本ステップ S 1 2 4では、 V M配置規則生成手段 1 2は、 資源情報 D B 1 5中 のサービス情報のうち、サービス aおよび bについての要素に対して、 「スコア生 成関数」 と呼ぶ関数を適用することによって、 スコアを算出する。 スコア生成関 数は、 以下の性質を満たす形で定義される。
1 ) 同一種類のハードウ:!:ァ資源 (例えば C P U使用率) を多く使用するサー ビス同士の対には、 低いスコアを割り当てる。 その理由は、 それらの対を同じサ ーバ装置に配置すると、 リソースの競合が頻発して所望の性能が発揮されないた めである。 さらに、 使用する資源の絶対量が多いほど低いスコアを割り当てる。
2 ) サービス対の相互作用の度合いが大きいほど、 そのサービス対に対して高 いスコアを割り当てる。 その理由は、 それらの対を同じサーバ装置に配置した方 力、 通信コストが小さくなることと、 ネットワーク 4に流れる通信量が小さくな るためである。
すなわち、 スコア生成関数は、 リソースの競合が少ないほど、 また相互の通信 が多いほど、 数値の大きなスコアを算出する関数である。
次に、 V M配置規則生成手段 1 2は、 ステップ S 1 2 3で取り出したサービス 対 (a, b)と、ステップ S 1 2 4で算出したスコアとからなる組を、配置規則表 1 6 に追加する (ステップ S 1 2 5 )。 このステップの後、 ステップ S 1 2 3以降の手 順を繰り返す。
図 8に配置規則表 1 6の一例を示す。 この例では、 ショッピングサービス、 ブ ログサービス、 ログ解析サービス、 課金サービス、 商品情報 D B、 アクセスログ の 6種類のサービスの任意の 2種類の組合せ毎にスコアが設定されている。
< V M配置決定手段 1 3の動作手順 >
V M配置決定手段 1 3は、 入力として新規の仮想マシン上で実行すべきサ一ビ スの情報 (サービス種別、 使用するハードウェア資源など) を管理端末 2から受 け取り、 そのために必要な仮想マシン 3 3を最適なサーバ装置 3上に生成する機 能を持つ。 以下では、 入力として与えられるサービスの情報を指して、 「仮想マシ ン起動要求 J と呼ぶ。
図 9は、 仮想マシン管理装置 1における V M配置決定手段 1 3の動作手順を示 すフローチヤ一トである。 本手順は以下のステップから構成される。
まず、 V M配置決定手段 1 3は、 資源情報 D B 1 5に記録されたサーバ装置情 報と仮想マシン情報を検索して、 仮想マシン起動要求に含まれる条件を満たすサ ーバ装置 3のリストを取得する (ステップ S 1 31 )。
ここで、 仮想マシン起動要求の内容と、 それに対応する本ステップ S 1 31に おける処理の具体例を示す。 例として、 VM配置決定手段 1 3に対して、 以下の 内容を含む仮想マシン起動要求が渡された場合を考える。
a) サービス名 :「ショッピングサービス」
b ) CPU種別: X e o n
c) 割当 CPU使用率: 20%
d) 割当メモリ使用量: 256MB (Megabytes, メガバイ ト)
本ステップ S 1 31で取り出すサーバ装置 3は、以下の条件(1), (2)をともに満 たすものである。
(1)サーバ装置情報における CPU種別の項目が、 仮想マシン起動要求中の C PU種別 (すなわち X e o n) と一致していること。 サーバ装置情報の内容が図 4に示すものである場合、 hostOIが該当する。
(2)空き CPU 使用率および空きメモリ使用量が、 仮想マシン起動要求中の割当 CPU使用率 (20%) および割当メモリ使用量 (256MB) に等しいか、 上回 ること。
あるサーバ装置 3の空き C P U使用率と空きメモリ使用量は、 以下の式によつ て計算される。
空き CP U使用率 = 1 00—当該サーバ装置上で稼働中の仮想マシンについて の割当 CPU使用率の合計
空きメモリ使用量 =当該サーバ装置の物理メモリ量一当該サーバ装置上で稼働 中の仮想マシンについての割当メモリ使用量の合計
したがって、 サーバ装置内容と仮想マシン情報の内容がそれぞれ図 4、 図 5に 示すものである場合、 これらの数値は以下のようになる。
hostO!:
空き C P U使用率 = 1 00— (40 + 40) =20 (%)
空きメモリ使用量 =4— (1. 5 +1. 5) =1 (GB (Gigabytes, ギガバイ 卜)) host02: 空き CPU使用率 = 1 00- ( 0 + 50) = 1 0 (%)
空きメモリ使用量 =2— (1 +1 ) =0 (GB)
host03:
空き C P U使用率 = 1 00— (20 + 30) =50 (%)
空きメモリ使用量 =8— (2 + 2) =4 (GB)
ゆえに、 空き CPUと空きメモリ使用量に関する条件 (こついては、 hostOI と host03の 2つのサーバ装置 3が満たしている。 第 1の条件と合わせると、 hostOI のみが本ステツプで取リ出される。
次に、 VM配置決定手段 1 3は、 ステップ S 1 31において検索結果に 1っ以 上の要素が含まれているかどうか、 すなわちサービスを配置することが可能なサ —バ装置 3が存在するか否かを調べる (ステップ S 1 32)。 もし配置可能なサー バ装置 3があれば、 ステップ S 1 33以降に進む。 そうでない場合には、 VM配 置決定手段 1 3は、 後述する VM移動決定手段 1 4を適用して、 既存の仮想マシ ン 33の移動を試みた後、 ステップ S 1 36に移る。 既存の仮想マシンの移動手 順 (ステップ S 1 41—1 47) については、 後述の 「VM移動決定手段 1 4」 についての項で詳細に説明する。
ステップ S 1 36では、 VM配置決定手段 1 3は、 VM移動決定手段 1 4によ る仮想マシンの移動に成功したかどうかを確かめる。
もし移動に成功した場合には、 VM配置決定手段 1 3は、 ステップ S 1 31に 戻って、 仮想マシン起動要求の処理を再度試みる。 移動に失敗した場合、 すなわ ち仮想マシン起動要求の実行に必要なサーバ装置 3を確保できなかった場合には、 VM配置決定手段 1 3は、仮想マシン起動要求の実行に失敗して処理を終了する。 ステップ S 1 32において、 配置可能なサーバ装置 3を少なくとも 1台検出し た場合、 VM配置決定手段 1 3は、 以下の手順により、 その中から配置先のサ一 バ装置 3を選択する。
まず、 VM配置決定手段 1 3は、 配置規則表 1 6の内容を適用して、 可能な配 置先サーバ装置 3のそれぞれについてスコアを算出する (ステップ S 1 33)。ス コアの算出は、 新規に起動するサービス名と、 配置先候補のサーバ装置 3上で稼 働中の各サービスの対について、 配置規則表 1 6に記載されたスコアの和を取る ことによって行う。 例えば、 新規に起動するサービス名が 「ショッピングサ一ビ ス」 であり、 配置先候補のサービス装置 3上で稼動中のサービスが 「課金サービ ス」 と 「アクセルログ」 である場合、 図 8を参照すると、 ショッピングサービス と課金サービスの対のスコアは- 1、 ショッピングサービスとアクセスログの対の スコアは +1なので、 合計スコアは (-1 ) + (+1) =0である。 ここで、新規に起動する サービス名と同じサービス名のサービスが配置規則表 1 6に存在しなかった場合、 V M配置決定手段 1 3は、 すべての既存サービスとの組合せについて、 所定のス コア (例えば- 1 ) を付与する。
ステップ S 1 3 4では、 V M配置決定手段 1 3は、 ステップ S 1 3 3で計算さ れたスコアが最大になる場合のサーバ装置 3を、 新規サービスの配置先として選 択する。例えば、 合計スコアが- 1 と +3の 2つの配置先サーバ装置があれば、 合計 スコア +3のサ一/く装置を新規サービスの配置先に選択する。
次に、 V M配置決定手段 1 3は、 S 1 3 4で選択したサーバ装置 3上のサーバ エージェント 3 1に対して、 新規サービスを稼動させるための仮想マシン 3 3の 起動を要求し、 処理を終了する (ステップ S 1 3 5 )。サーバ装置 3上への新規仮 想マシンの生成は、 既存技術を用いて行えるため、 その詳細な説明は省略する。
< V M移動決定手段 1 4の動作手順 >
図 1 0は、 仮想マシン管理装置 1における V M移動決定手段 1 4の動作手順を 示すフローチャートである。 V M移動決定手段 1 4を用いるのは、 現在の仮想マ シン配置状態では、 V M配置決定手段 1 3が受け取った仮想マシン起動要求を実 行することができない場合である (図 9、 ステップ S 1 3 2において、 配置可能 なザ一/ 装置 3がない場合に相当する)。
以下、 図 1 0のフローチャートを用いて、 V M移動決定手段 1 4の動作手順を 説明する。
まず、 V M移動決定手段 1 4は、 資源情報 D B 1 5に格納されたサーバ装置情 報の中から、 仮想マシンの移動元となリ得るサーバ装置 3からなる集合を作成す る(ステップ S 1 4 1 )。以降では、これらのサーバ装置 3の集合を Nと表記する。 ここで、 Nに含まれるサーバ装置 3は、 その上で少なくとも 1つの仮想マシンが 動作し、 かつそれらを別のサーバ装置 3に移動することによって、 新規仮想マシ ンの生成に必要な資源が確保できるサーバ装置 3である。例えば、サービス名:「シ ョッビングサービス」、 CPU種別: X e o n、 割当 GPU使用率: 2 0 %、 割当メモ リ使用量: 2 5 6 M Bの仮想マシン起動要求の場合、 資源情報 D B 1 5に格納さ れたサーバ装置情報の中から、 GPU 種別が X e o nで、 かつ、 物理メモリ量が 2 5 6 M B以上あるサーノく装置 3が候補となる。
次に、 V M移動決定手段 1 4は、 Nの中に、 少なくとも 1台のサーバ装置 3が 含まれるかどうかを調べる (ステップ S 1 4 2 )。含まれる場合にはステップ S 1 4 3に、 含まれない場合には S 1 4 5に進む。
ステップ S 1 4 3では、 V M移動決定手段 1 4は、 Nから単一のサーバ装置 3 についての情報を取り出す。 さらに、 V M移動決定手段 1 4は、 ここで取り出し たサーバ装置 3の情報を、 Nから取り除く。
次に、 V M移動決定手段 1 4は、 S 1 4 3で取り出したサーバ装置 3上で稼動 する各仮想マシン 3 3について、 可能な移動方法のそれぞれについてのスコア差 分を計算する (ステップ S 1 4 4 )。
ここで、 可能な移動方法とは、 仮想マシンを移動することにより新規仮想マシ ンに必要な資源が確保でき、 かつ移動対象となる仮想マシンに必要な資源が確保 できるような移動方法 (すなわち、 仮想マシンとその移動先サーバ装置の対) を 指す。 単一の移動方法の中に、 仮想マシンと移動先サーバ装置の対が複数含まれ る可能性もある。 すなわち、 一つのサーバ装置上の複数の仮想マシンを同時に同 じあるいは異なる別のサーバ装置へ移動させる場合も含まれる。 可能な移動方法 の具体例については後述する。
また、 スコア差分とは、 既存の仮想マシン移動の前後で、 配置規則表 1 6を適 用した場合のスコアの差を指す。 ある移動方法についてのスコア差分が大きいほ ど、 その移動方法は好ましいと言える。 スコア差分の計算方法についての具体例 は後述する。 '
ステップ S 1 4 4が終了すると、 V M移動決定手段 1 4は、 ステップ S 1 4 2 に戻り、 別のサーバ装置 3を移動元とする移動方法についてのスコア差分の計算 ¾r式み^。
ステップ S 1 4 5では、 V M移動決定手段 1 4は、 ステップ S 1 4 2から S 1 4 4までの手順において、 可能な移動方法について少なくとも 1つスコア差分を 計算したかどうかを調べる。 条件に当てはまる場合はステップ S 1 4 6に進む。 それ以外の場合は仮想マシンの移動に失敗したため、 V M移動決定手段 1 4は V M移動決定手順の処理を終了する。
ステップ S 1 4 6では、 V M移動決定手段 1 4は、 ステップ S 1 4 2から S 1 4 4までに計算した各移動方法について、 スコア差分を最大化するものを選択す る。
最後に、 S 1 4 6で選択した移動方法を実行するために、 V M移動決定手段 1 4は、 移動元のサーバ装置 3上のサーバエージェント 3 1 と、 移動先のサーバ装 置 3上のサーバエージ: Γント 3 1のそれぞれについて、 仮想マシン移動を要求す る (ステップ S 1 4 7 )。或るサーバ装置 3から別のサーバ装置 3への仮想マシン の移動は、 既存技術を用いて行えるため、 その詳細な説明は省略する。
<可能な仮想マシン移動方法の判別例 >
以下に、 ステップ S 1 4 4において、 可能な仮想マシン移動方法を判別する具 体例 示す。
図 1 1は、 ステップ S 1 4 3において、 移動元のサーバ装置 3としてサーバ装 置 Aを取り出した後で、 サーバ装置 A上の仮想マシン V M 1の可能な移動方法を 判断する状況を示している。 ここでは、 仮想マシン起動要求として、 起動対象の サービス (ここでは、 Γブログサービス」) には割当メモリ使用量として 1 G B以 上が必要であるという条件が含まれると仮定する。 さらに、 サーバ装置 A— Dは どれも 1 G Bの物理メモリを備えており、 既存の仮想マシン V M 1— V M 5には それぞれ 0 . 5 G Bの割当メモリ使用量が割当てられていると仮定する。
割当メモリ使用量のみを判断基準とすると、 サーバ装置 A上の仮想マシン V M 1を、 サーバ装置 Bおよび Cに移動することは可能であるが、 サーバ装置 Dに移 動することはできない。 その理由は、 サーバ装置 D上では割当メモリ使用量 0 . 5 G Bを占有する V Mがすでに 2つ動作中だからである。
したがって、サーバ装置 A上の仮想マシン V M 1についての可能な移動方法は、 以下の 2通りである。
1 ) 移動対象: V M 1、 移動先:サーバ装置 B
2 ) 移動対象 ·· V M 1、 移動先:サーバ装置 C
以上の例では、 説明の便宜上、 割当メモリ使用量のみを判断基準としたが、 実 際には割当 C P U使用率などの他の要因を総合的に判断して、 可能な仮想マシン 移動方法を判別することになる。
<スコア差分の計算例 >
以下に、 ステップ S 1 4 4におけるスコア差分の計算方法の例を示す。
図 1 2は、 サーバ装置 hostOI上で稼動する仮想マシン vmOI を、 別のサーバ装 置 host02に移動する操作を示している。 hostOIでは vm01 , vm02, vm03の 3つの仮 想マシンが稼動しており、 それらの仮想マシン上でそれぞれショッピングサービ ス、ブログサービス、アクセスログが動作する。また、 host02では仮想マシン vm04 が稼動しておリ、 その上で商品情報 D Bが動作する。
図 8の配置規則表を適用すると、 vm01 を hostOIから host02に移動することに よるスコア差分は以下のように計算できる。
1 ) ショッピングサービスとブログサービスの組合せはスコア- 1なので、 vm01 を hostOIから除去することによるスコア差分は +1 となる。
2 ) ショッピングサービスとアクセスログの組合せはスコア +1なので、 vm01 を hostOIから除去することによるスコア差分は - 1 となる。
3 ) ショッピングサービスと商品情報 D Bの組合せはスコア- 2なので、 vm01 を host02に追加することによるスコア差分は - 2となる。
以上から、 m01の移動全体についてのスコア差分は、 (+1) + (-1) + (-2) =-2とな る。
<第 1の実施の形態の効果 >
次に、 本実施の形態による仮想マシン管理装置の効果について説明する。
本実施の形態の仮想マシン管理装置によれば、 新規な仮想マシンを適切なサー バ装置、すなわち、新規に生成された仮想マシンが十分に性能を発揮でき、また、 既存の他の仮想マシンに悪影響を与える恐れが少ないサーバ装置に作成すること ができる。 その理由は、 新規な仮想マシンと同じサーバ装置上の他の既存の仮想 マシンとの組合せがよリ適切なサーバ装置を新規な仮想マシンの配置先として選 択しているためである。
また本実施の形態の仮想マシン管理装置によれば、 新規仮想マシンの生成に失 敗する確率を小さくすることができる。 その理由は、 新規作成予定の仮想マシン に必要なリソースを確保できるサーバ装置が存在しなかった場合、 既存の仮想マ シンの他サーバ装置への移動により新規作成予定の仮想マシンに必要なリソース を有する状態のサーバ装置の生成を試みるからである。 特に本実施の形態の仮想 マシン管理装置では、 仮想マシンの配置の適切度の改善度合いが最も良い仮想マ シンの移動方法を決定しているため、 新規作成予定の仮想マシンに必要なリソー スを有する状態のサーバ装置の生成と同時に、 仮想マシンのよリ適切な再配置が 可能になる効果がある。
<第 2の実施の形態 >
図 1 3を参照すると、 本発明の第 2の実施の形態に係る情報処理システムは、 図 1に示した第 1の実施の形態に係る情報処理システムと比較して、 仮想マシン 管理 ¾置 1が V M配置決定手段 1 3および V M移動決定手段 1 4の代わりに V M 配置■移動決定手段 1 7を備えている点で相違する。
第 1の実施の形態に係る情報処理システムにおける仮想マシン管理装置では、 新規仮想マシンを配置する際、 まず、 すべてのサーバ装置群のうち現時点でリソ ースに余裕のあるサーバ装置の中から新規仮想マシンの配置先の選択を試み、 そ れが不可能である場合に、 現時点ではリソースに余裕はないが既存仮想マシンを 他のサーバ装置に移動させればリソースに余裕が出るサーバ装置群の中からより 適切なサーバ装置を新規仮想マシンの配置先に選択していた。
これに対して、 本実施の形態に係る情報処理システムにおける仮想マシン管理 装置 1の V M配置 '移動決定手段 1 7 'は、 既存の仮想マシンの移動を伴わない配 置方法と移動を伴う配置方法との双方を考慮し、 その中から最適な配置方法を選 択する。 ここで、 既存の仮想マシンの移動を伴わない配置方法とは、 現時点でリ ソースに余裕のあるサーバ装置の中から新規仮想マシンの配置先を選択する方法 である。 他方、 既存の仮想マシンの移動を伴う配置方法とは、 現時点でリソース に余裕があるかどうかを問わず、 既存の仮想マシンの移動を行った移動元サーバ 装置あるいは移動先サーバ装置のうちリソースに余裕のあるサーバ装置の中から 新規仮想マシンの配置先を選択する方法である。
以下では、 第 1の実施の形態の仮想マシン管理装置との相違点を中心に本実施 の形態の仮想マシン管理装置の動作を説明する。
<第 2の実施の形態における V M配置■移動決定手段 1 7の動作手順 > 図 1 4、 図 1 5、 図 1 6を参照して、 本実施の形態における仮想マシン管理装 置 1の V M配置 '移動決定手段 1 7の動作手順を説明する。 なお、 図 1 4は、 V M配置■移動決定手段 1 7の動作全体を示すフローチャートであり、 図 1 5と図 1 6は、 図 1 4におけるステップ S 1 フ 1一 S 1 フ 3および S 1 フ 4— S 1 7 7 の詳細を示すフローチヤ一卜である。
まず、 V M配置■移動決定手段 1 7は、 既存の仮想マシンの移動を伴わないこ とを前提として、 新規仮想マシンについての可能な配置先サーバ装置の候補を生 成し、 そのスコアを算出する (ステップ S 1 7 1— S 1 フ 3 )。 本手順は、 以下の 3つのステップからなる。
まず、 V M配置 '移動決定手段 1 7は、 資源情報 D B 1 5に記録されたサーバ 装置情報と仮想マシン情報を検索して、 仮想マシン起動要求に含まれる条件を満 たすサーバ装置のリス卜を取得する (ステップ S 1 7 1 )。 このステップ S 1 7 1 は、 第 1の実施の形態における V M配置決定手段 1 3の動作手順 (図 9 ) におけ るステップ S 1 3 1と同様である。
次に、 V M配置■移動決定手段 1 7は、 ステップ S 1 フ 1の検索結果に 1っ以 上の要素が含まれているかどうかを調べる (ステップ S 1 7 2 )。条件に該当する 場合にはステップ S 1 7 3に進み、そうでない場合にはステップ S 1 7 4に進む。 ステップ S 1 7 3では、 V M配置 '移動決定手段 1 7は、 配置規則表 1 6の内 容を適用して、可能な配置先サーバ装置 3のそれぞれについてスコアを算出する。 ここでの処理は、 第 1の実施の形態における VM配置決定手段 1 3における図 9 のステップ S 1 33と同様である。
次に、 VM配置 '移動決定手段 1 7は、 既存の仮想マシンの移動と新規の仮想 マシンの配置との組合せによる移動■配置方法の候補を生成し、 そのスコアを計 算する (ステップ S 1 74— S 1 77)。本手順は、 以下のステップから構成され る。
まず、 VM配置 '移動決定手段 1 7は、 資源情報 DB 1 5に格納されたサーバ 装置情報の中から、 仮想マシンの移動元となリ得るサ一/く装置からなる集合 Nを 生成する (ステップ S 1 フ 4)。 ここでの処理は、 第 1の実施の形態における VM 移動決定手段 1 4の動作手順(図 1 0)におけるステップ S 1 41 と同様である。 次に、 VM配置■移動決定手段 1 7は、 Nの中に、 少なくとも 1台のサーバ装 置 3が含まれるかどうかを調べる (ステップ S 1 フ 5)。含まれる場合にはステツ プ S 1 76に進み、 含まれない場合にはステップ S 1 78に進む。
ステップ S 1 76では、 VM配置 '移動決定手段 1 7は、 Nから単一のサーバ 装置 3についての情報を取リ出すとともに、 取り出したサーバ装置 3の情報を N から取り除く (図 1 0のステップ S 1 43と同様)。
次に、 VM配置■移動決定手段 1 7は、 ステップ S 1 76で取り出したサーバ 装置 3上で稼動する各仮想マシン 33について、 可能な移動■配置方法の候補を 生成するとともに、 そのスコアを計算する (ステップ S 1 77)。
ここで、 移動 '配置方法とは、 既存の仮想マシンの移動と、 新規の仮想マシン の配置とを組合せた操作を指す。 単一の移動■配置方法は、 以下の 3つの要素に より指定される。
a) 移動対象の仮想マシン
b) 移動先のサーバ装置
c) 新規仮想マシンの配置先サーバ装置
移動 ·配置方法は、 可能な移動方法を含んでいなければならない。 すなわち、 移動先のサーバ装置は、 移動対象の仮想マシンの動作に必要な資源を備えていな ければならない。 さらに、 新規仮想マシンの配置先サーバ装置は、 新規仮想マシ ンの動作に必要な資源を備えていなければならない。 ここで、 新規仮想マシンの 配置先サーバ装置は、移動対象の仮想マシンの移動元のサーバ装置である場合と、 移動先のサーバ装置である場合とが考えられる。
それぞれの移動 ·配置方法について、 以下の方法でスコアを算出する。
1 ) 移動 '配置方法に含まれる移動方法について、 スコア差分を算出する。 こ のスコア差分は、 第 1の実施の形態における図 1 0のステップ S 1 44と同様に 行う。
2) 移動■配置方法に含まれる新規仮想マシン配置方法について、 スコアを算 出する。 このスコアは、 第 1の実施の形態における図 9のステップ S 1 33と同 様に行う。
3) 1および 2の結果の和を、 移動 '配置方法のスコアとする。
本ステップ S 1 77において、 VM配置'移動決定手段 1 7は、すべての移動■ 配置方法について可能性を調べる代わリに、 何らかのヒューリスティックを用い て調査対象を削減しても良い。ここでのヒユーリスティックの一例を以下に示す。
a) 移動対象の仮想マシンと、 移動先のサーバ装置については、 すべての組合 せについて可能性を調べる。
b) 新規仮想マシンの配置先サーバ装置は、 移動元のサーバ装置 (すなわち、 ステップ S 1 76で Nから取り出したサーバ装置) に固定する。
本ステップ S 1 77の終了後、 VM配置 '移動決定手段 1 7は、 ステップ S 1 75に戻り、 S 1 75以降の処理を繰り返す。
ステップ S 1 74— S 1 77の処理が終了した後で、 VM配置■移動決定手段 1 7は、可能な配置方法の候補(ステップ S 1 7 1 -S 73で生成されたもの)、 あるいは可能な移動■配置方法 (ステップ S 1 74- 1 7フで生成されたもの) が存在するかどうかを確かめる (ステップ S 1 78)。条件に該当する場合には S 1 79に進み、 該当しない場合には新規仮想マシンの配置に失敗したので、 処理 を終了する。
ステップ S 1 79では、 VM配置 ''移動決定手段 1 7は、 可能な仮想マシン配 置方法、あるいは移動 '配置方法の中から、スコアを最大化するものを選択する。 ここでは、 移動を伴わない配置方法と、 移動■配置方法についてのスコアを直接 比較する以外の比較方法を取っても良い。 例えば、 移動を伴わない配置方法に一 定のスコアを加算することにより、 移動を伴わない配置方法を優先するようにし ても良い。
最後に、 V M配置■移動決定手段 1 7は、 ステップ S 1 7 9で選択した仮想マ シン配置方法あるいは移動'配置方法を実行する(ステップ S 1 7 1 0 )。ここで、 選択した操作が移動'配置方法である場合には、 V M配置'移動決定手段 1 7は、 図 1 0のステップ S 1 4 7と同様の手順により、 サーバエージェント 3 1に対し て仮想マシン 3 3の移動を要求する。 さらに、 V M配置■移動決定手段 1 7は、 仮想マシン 3 3の移動の有無に関わらず、 図 9のステップ S 1 3 5と同様の手順 により、 サーバエージ: cント 3 1に対して仮想マシン 3 3の起動を要求する。 図 1 7に、本手順による仮想マシン移動■配置操作の具体例を示す。この図は、 host01,host02,host03の 3台のサーバ装置 3からなるシステムにおいて、新規の 仮想マシン vm05を配置する状況を示している。 ここで、既存仮想マシンの移動元 のサ一/ 装置 3に新規仮想マシンを配置することを前提とすると、 既存仮想マシ ン vmOIの移動を含む移動,配置方法は以下の 2種類である。
1 ) 移動対象: vm01、 移動先: host02、 新規仮想マシンの配置先: hostOI
2 ) 移動対象: vtn01、 移動先: host03、 新規仮想マシンの配置先: hostOI <第 2の実施の形態の効果 >
本実施の形態の仮想マシン管理装置によれば、 新規な仮想マシンを適切なサー バ装置、すなわち、新規に生成された仮想マシンが十分に性能を発揮でき、また、 既存の他の仮想マシンに悪影響を与える恐れが少ないサーバ装置に作成すること ができる。 その理由は、 新規な仮想マシンと同じサーバ装置上の他の既存の仮想 マシンとの組合せがよリ適切なサーバ装置を新規な仮想マシンの配置先として選 択しているためである。
また本実施の形態の仮想マシン管理装置によれば、 新規仮想マシンの生成に失 敗する確率を小さくすることができる'。 その理由は、 新規作成予定の仮想マシン に必要なリソースを確保できるサーバ装置だけでなく、 既存の仮想マシンの他サ ーバ装置への移動によリ新規作成予定の仮想マシンに必要なリソースを有する状 態のサーバ装置も含めて、 新規仮想マシンの配置先を選択しているからである。 さらに本実施の形態の仮想マシン管理装置によれば、 新規に仮想マシンを配置 する際に、 現状において新規仮想マシンに必要な空きリソースを有するサーバ装 置かどうかに関係なく、 既存の仮想マシンの移動を同時に試みることにより、 効 率的な資源配分が可能となる。
<第 3の実施の形態 >.
図 1 8を参照すると、 本発明の第 3の実施の形態に係る情報処理システムは、 図 1に示した第 1の実施の形態に係る情報処理システムと比較して、 仮想マシン 管理装置 1が V M定期移動決定手段 1 8をさらに備えている点で相違する。 第 1の実施の形態に係る情報処理システムの仮想マシン管理装置 1では、 既存 の仮想マシンの再配置が行われるケースは、 新規仮想マシンの配置時に限られて いた。 これに対して、 本実施の形態に係る情報処理システムの仮想マシン管理装 置 1は、 新規の仮想マシンの配置と独立して、 V M定期移動決定手段 1 8により 一定時間毎に既存の仮想マシンの再配置を行う。
以下では、 第 1の実施の形態の仮想マシン管理装置との相違点を中心に本実施 の形態の仮想マシン管理装置の動作を説明する。
< V M定期移動決定手段 1 8の動作手順〉
以下では、 図 1 9のフローチャートを用いて、 本実施の形態における仮想マシ ン管理装置 1の V M定期移動決定手段 1 8の動作手順を説明する。
V M定期移動決定手段 1 8は、 図 1 9に示される処理を前回実行し終えた時刻 から一定時間が経過すると、 再び図 1 9に示される処理を開始する。
まず、 V M定期移動決定手段 1 8は、 資源情報 D B 1 5に格納された仮想マシ ン情報を参照して、 稼働中の全仮想マシン 3 3からなる集合を取得する (ステツ プ S 1 4 1 b )。 以降では、 これらの仮想マシン 3 3の集合を Mと表記する。 次に、 V M定期移動決定手段 1 8は、 Mの中に少なくとも 1つの仮想マシン 3 3が含まれることを確認する (ステップ S 1 4 2 b )。条件に該当する場合にはス テツプ S 1 4 3 bに進み、 該当しない場合にはステップ S 1 4 5 bに進む。 ステップ S 1 4 3 bでは、 V M定期移動決定手段 1 8は、 Mから単一の仮想マ シン 3 3についての情報を取り出す。 さらに、 V M定期移動決定手段 1 8は、 こ こで取リ出した仮想マシン 3 3の情報を、 Mから取り除く。
次に、 V M定期移動決定手段 1 8は、 ステップ S 1 4 3 bで取り出した仮想マ シンについて、 可能な移動方法のそれぞれについてのスコア差分を計算する (ス テツプ S 1 4 4 b )。 本ステップ S 1 4 4 bにおける 「可能な移動方法」 とは、 移 動対象の仮想マシンと、 移動先のサーバ装置上で稼働中のすべての仮想マシンに ついて、 それらの仮想マシン上で動作しているサ一ビスが使用する資源について の条件 (C P U使用率、 メモリ量など) を満たす、 仮想マシンと移動先サーバ装 置の対を意味する。 また、 スコア差分の計算は、 V M移動決定手段 1 4と同様に 行う。 本ステップ終了後、 ステップ S 1 4 2 bに戻る。
ステップ S 1 4 5 bでは、 V M定期移動決定手段 1 8は、 ステップ S 1 4 2 b - S 1 4 4 bでスコア差分を計算した移動方法のうち、 スコア差分が予め定めら れた閾値以上であるような移動方法が少なくとも 1つあるかどうかを確認する。 条件に該当する場合にはステップ S 1 4 6に進み、 該当しない場合には、 V M定 期移動決定手段 1 8の今回の処理を終了する。 ここで用いる閾値は 0以上の定数 であり、 事前に値が決められている。
ステップ S 1 4 6では、 V M定期移動決定手段 1 8は、 スコア差分が予め定め られた閾値以上である 1以上の移動方法の中からスコア差分を最大化する移動方 法を選択する。 このステップ S 1 4 6において選択する移動方法の数は任意に設 定することができる。 選択方法の一例としては、 あらかじめ決めておいた数の移 動方法を、スコア差分の大きい順に選択する方法がある。別の選択方法としては、 ステップ S 1 4 5 bで用いた閾値以上のスコア差分を持つすべての移動方法を選 択する方法がある。 さらに別の選択方法としては、 ステップ S "I 4 5 bで用いた 閾値以上のスコア差分を持つ移動方法の中から事前に決めた数だけ選択し、 かつ 別の閾値以上のスコア差分を持つすべての移動方法を選択する方法がある。 最後に、 V M定期移動決定手段 1 8は、 決定した移動元および移動先のサーバ 装置 3 おけるサーバエージ:!:ント 3 1に対して、 選択した移動方法の実行を要 求する (ステップ S 1 4 7 )。 ステップ S 1 4 6および S 1 4 7の動作は、 V M移 動決定手段 1 4の動作手順(図 1 0 )における S 1 4 6と S 1 4 7と同じである。
<第 3の実施の形態の効果 >
本実施の形態の仮想マシン管理装置によれば、 第 1の実施の形態の仮想マシン 管理装置と同様の効果が得られるとともに、 稼働中の仮想マシン 3 3の再配置を 定期的に試みるため、 仮想マシン 3 3への資源配分を常に最適化することができ る。このことにより、各仮想マシン 3 3上で稼動するサ一ビスの性能が向上する。 なお、 本実施の形態の仮想マシン管理装置は以下のような変更が可能である。
V M定期移動決定手段 1 8は一定時間ごとに図 1 9に示される処理を実行する ものとしたが、 サーバ装置 3や仮想マシン 3 3のリソースが予め定められた一定 の条件に達した場合に、 図 1 9に示される処理を開始するようにしても良い。
V M配置決定手段 1 3および V M移動決定手段 1 4の代わりに、 第 2の実施の 形態における V M配置■移動決定手段 1 7と同様な手段を仮想マシン管理装置 1 に備える構成であっても良い。
<第 4の実施の形態 >
図 2 0を参照すると、 本発明の第 4の実施の形態に係る情報処理システムは、 図 1に示した第 1の実施の形態に係る情報処理システムと比較して、 仮想マシン 管理装置 1が V M停止手段 1 9および停止時 V M移動決定手段 1 Aをさらに備え ている点で相違する。
第 1の実施の形態による仮想マシン管理装置では、 既存の仮想マシンの再配置 が行われるケースは、 新規仮想マシンの配置時に限られていた。 これに対して本 実施の形態による仮想マシン管理装置は、 V M停止手段 1 9によりサーバ装置 3 上の仮想マシン 3 3が停止された時点で、 停止時 V M移動決定手段 1 Aにより、 仮想マシン 3 3が停止し†こサ一 / 装置 3へ他のサー/く装置 3上の仮想マシン 3 3 を移動させることで再配置を行う。
以下では、 第 1の実施の形態の仮想マシン管理装置との相違点を中心に本実施 の形態の仮想マシン管理装置の動作を説明する。
ぐ V M停止手段 1 9の動作手順 > VM停止手段 1 9は、 管理端末 2から、 停止対象の仮想マシン名を含む仮想マ シン停止要求を受け取る。 VM停止手段 1 9は、 仮想マシン停止要求に従って仮 想マシンを停止するとともに、 停止時 VM移動決定手段 1 Aを呼び出して既存の 仮想マシンを移動させる機能を持つ。
図 21は、 本実施の形態の仮想マシン管理装置における VM停止手段 1 9の動 作手順を示すフローチャートである。 以下に、 本動作手順の詳細を説明する。 まず、 VM停止手段 1 9は、 停止対象の仮想マシン 33が稼動するサーバ装置 3上のサーバエージェント 31に対して、 当該仮想マシン 33の停止を要求する (ステップ S 1 91 )。
次に、 VM停止手段 1 9は、 停止時 VM移動決定手段 1 Aを用いて、 稼働中の 仮想マシン 33の移動を試みる (ステップ S 1 4 b -S 1 47)0 ここでの停止 時 VM移動決定手段 1 Aの動作は、 第 3の実施の形態における VM定期移動決定 手段 1 8の動作 (図 1 9) と比較し、 以下の点が異なる以外は同じである。
1 ) ステップ S 1 41 bにおいて、 移動対象の仮想マシン 33の集合 Mには、 停止対象の仮想マシン 33と同一のサーバ装置 3上で動作している仮想マシン 3 3を含めない。
2) ステップ S 1 44 bにおいて、 可能な移動方法には、 停止対象の仮想マシ ン 33が動作していたサーバ装置 3を移動先とする移動方法のみを含める。
<第 4の実施の形態の効果 >
本実施の形態の仮想マシン管理装置によれば、 第 1の実施の形態の仮想マシン 管理装置と同様の効果が得られるとともに、 仮想マシン 33の停止時に他の仮想 マシン 33の再配置を試みることで、 仮想マシン 33への資源配分を最適化する ことができる。 このことにより、 各仮想マシン 33上で稼動するサービスの性能 が向上する。
なお、 VM配置決定手段 1 3および VM移動決定手段 1 4の代わりに、 第 2の 実施の形態の仮想マシン管理装置における VM配置 '移動決定手段 1 7と同様な 手段、 あるいは第 3の実施の形態の仮想マシン管理装置における V M定期移動決 定手段 1 8と同様な手段を仮想マシン管理装置 1に備える構成であっても良い。 以上本発明の実施の形態について説明したが、 本発明は以上の実施の形態にの み限定されず、 その他各種の付加変更が可能である。 また、 また、 本発明の仮想 マシン管理装置は、 その有する機能をハードウェア的に実現することは勿論、 コ ンピュータとプログラムとで実現することができる。 プログラムは、 磁気ディス クや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、 コンビ ュ一タの立ち上げ時などにコンピュータに読み取られ、 そのコンピュータの動作 を制御することにより、 そのコンピュータを前述した各実施の形態における仮想 マシン管理装置として機能させ、 前述した処理を実行させる。 産業上の利用可能性:
本発明によれば、 企業情報システムを構成するサーバ資源を一元的に管理する 運用管理ミドルウェアといった用途に適用できる。 また、 複数の個人や法人ユー ザに対してサーバ資源を貸し出すホスティングサービスおよびアプリケーション サービスプロバイダ (A S P、 App l i cat i on Serv i ce Prov i der) を構成する資源 管理ソフトウエアといった用途にも適用できる。

Claims

1 ネットワーク (4 ) を介して複数のサーバ装置 (3 ) に接続された仮想 マシン管理装置 (1 ) であって、
仮想マシン種別の組合せ毎にその組合せの仮想マシン種別どうしが同じサーバ 装置に配置される適切度を示すスコアを記憶する配置規則表 (1 6 ) と、 新規の仮想マシンを配置可能な 1以上のサーバ装置を選択し、 該選択したサー
き α青
バ装置について新規の仮想マシンを配置する場合における指標値を前記スコアを 用いて計算し、 該計算した指標値を参照して新規の仮想マシンの配置先を決定す の
る仮想マシン配置決定手段 (1 3 ) と、
を備えることを特徴とする仮想マシン管理装置。
2 . 前記仮想マシン配置決定手段 (1 3 ) は、 新規の仮想マシンを配置可能 なサーバ装置として、 新規の仮想マシンに必要なリソースを現に確保できるサー バ装置を選択することを特徴とする、 請求の範囲第 1項に記載の仮想マシン管理 装置。
3 . 前記仮想マシン配置決定手段 (1 3 ) から呼び出されることにより、 サ —バ装置 (3 ) 上の既存の仮想マシン (3 3 ) を他のサーバ装置に移動させるこ とによリ、 新規の仮想マシンを配置可能なサーバ装置を生成する仮想マシン移動 決定手段 (1 4 ) を備えることを特徴とする、 請求の範囲第 2項に記載の仮想マ シン管理装置。
4 . 前記仮想マシン移動決定手段 (1 4 ) は、 新規の仮想マシンを配置可能 なサーバ装置を生成できる移動方法の各候補について、 当該移動方法の適切度を 示す指標値を前記スコアを用いて計算し、 該計算した指標値を参照して仮想マシ ンの移動方法を決定することを特徴とする、 請求の範囲第 3項に記載の仮想マシ ン管理装置。
5 . 前記仮想マシン配置決定手段 (1 3 ) は、 新規の仮想マシンに必要なリ ソースを現に確保できるサーバ装置が存在しない場合に前記仮想マシン移動決定 手段 (1 4 ) を呼び出すことを特徴とする、 請求の範囲第 3項に記載の仮想マシ ン管理装置。
6. 新規の仮想マシンの配置とは独立に、 サーバ装置上の仮想マシンを他の サーバ装置へ移動させる移動方法の各候補について、 当該移動方法の適切度を示 す指標値を前記スコアを用いて計算し、 該計算した指標値を参照して既存の仮想 マシンの移動を行う移動手段 (1 8 ; 1 A) を備えることを特徴とする、 請求の 範囲第 1項に記載の仮想マシン管理装置。
7. 前記移動手段 (1 8 ; 1 A) は、 一定時間ごと、 サーバ装置 (3) ある いは仮想マシン (33) のリソースが予め定められた一定の条件に達するごと、 または仮想マシン (33) の停止ごとに動作することを特徴とする、 請求の範囲 第 6項に記載の仮想マシン管理装置。
8. 仮想マシンの種別ごとに、 その種別の仮想マシン (33) が配置されて いるサーバ装置 (3) から当該仮想マシンのリソースの使用状況と他の仮想マシ ンとの間の通信状況とを収集するサーバ監視手段 (1 1) と、
該サーバ監視手段 (1 1 ) で収集された情報と予め定められたスコア生成規則 とから前記スコアを生成して前記配置規則表 (1 6) に記憶する配置規則生成手 段 (1 2) と
を備えることを特徴とする、 請求の範囲第 1項に記載の仮想マシン管理装置。
9. ネットワーク (4) を介して複数のサーバ装置 (3) に接続された仮想 マシン管理装置 (1 ) であって、
仮想マシン種別の組合せ毎にその組合せの仮想マシン種別どうしが同じサーバ 装置に配置される適切度を示すスコアを記憶する配置規則表 (1 6) と、 既存の仮想マシンの移動を伴わない新規の仮想マシンの配置方法、 および、 既 存の仮想マシンの移動を伴う新規の仮想マシンの配置方法の各候補を選択し、 該 選択した各候補について、 当該配置方法の適切度を示す指標値を前記スコアを用 いて計算し、 該計算した指標値を参照して新規の仮想マシンの配置先を決定する 仮想マシン配置■移動決定手段 (1フ) と、
を備えることを特徴とする仮想マシン管理装置。
10. 新規の仮想マシンの配置とは独立に、 サーバ装置 (3) 上の仮想マシ ン (33) を他のサーバ装置へ移動させる移動方法の各候補について、 当該移動 方法の適切度を示す指標値を前記スコアを用いて計算し、 該計算した指標値を参 照して既存の仮想マシンの移動を行う移動手段 (1 8 ; 1 A) を備えることを特 徴とする、 請求の範囲第 9項に記載の仮想マシン管理装置。
1 1. 前記移動手段 (1 8 ; 1 A) は、 一定時間ごと、 サーバ装置 (3) あ るいは仮想マシン( 33 )のリソースが予め定められた一定の条件に達するごと、 または仮想マシンの停止ごとに動作することを特徴とする、 請求の範囲第 1 0項 に記載の仮想マシン管理装置。
1 2. 仮想マシンの種別ごとに、 その種別の仮想マシンが配置されているサ ーバ装置から当該仮想マシンのリソースの使用状況と他の仮想マシンとの間の通 信状況とを収集するサーバ監視手段 (1 1 ) と、
該サーバ監視手段 (1 1 ) で収集された情報と予め定められたスコア生成規則 とから前記スコアを生成して前記配置規則表 (1 6) に記憶する配置規則生成手 段 (1 2) と
を備えることを特徴とする、 請求の範囲第 9項に記載の仮想マシン管理装置。
1 3. ネットワーク (4) を介して複数のサーバ装置 (3) に接続されたコ ンピュータ (1 ) により前記サーバ装置 (3) 上の仮想マシン (33) を管理す る方法であって、
前記コンピュータ (1 ) が、 新規の仮想マシンを配置可能な 1以上のサーバ装 置を選択する第 1のステップ (S 1 31 , S 1 32) と、
前記コンピュータ (1 ) が、 前記選択した各サーバ装置について、 仮想マシン 種別の組合せ毎にその組合せの仮想マシン種別どうしが同じサーバ装置に配置さ れる適切度を示すスコアを配置規則表 (1 6) から参照して、 新規の仮想マシン を当該サーバ装置 (3) に配置する適切度を示す指標値を計算する第 2のステツ プ (S 1 33) と、
前記コンピュータ (1 ) が、 前記計算した指標値を参照して新規の仮想マシン の配置先を決定する第 3のステップ (S 1 34) と、
を含むことを特徴とする仮想マシン管理方法。
1 4. 前記第 1のステップ (S 1 31 ) では、 新規の仮想マシンを配置可能 なサーバ装置として、 新規の仮想マシンに必要なリソースを現に確保できるサー バ装置 (3) を選択することを特徴とする、 請求の範囲第 1 3項に記載の仮想マ シン管理方法。
1 5. 前記第 1のステップでは、 新規の仮想マシンに必要なリソースを現に 確保できるサーバ装置が存在しない場合 (S 1 32の NO)、 サーバ装置 (3) 上 の既存の仮想マシン (33) を他のサーバ装置に移動させる (S 1 4 "!〜 S 1 4 7) ことにより、 新規の仮想マシンを配置可能なサーバ装置の生成を試みる (S 1 36) ことを特徴とする、 請求の範囲第 1 1項に記載の仮想マシン管理方法。
1 6. 前記第 1のステップ (S 1 41〜S 1 47) では、 新規の仮想マシン を配置可能なサーバ装置を生成できる移動方法の各候補について、 当該移動方法 の適切度を示す指標値を前記スコアを用いて計算し、 該計算した指標値を参照し て仮想マシンの移動方法を決定することを特徴とする、 請求の範囲第 1 5項に記 載の仮想マシン管理方法。
1 7. 前記コンピュータ (1 ) が、 新規の仮想マシンの配置とは独立に、 サ ーバ装置 (3) 上の仮想マシン (33) を他のサーバ装置へ移動させる移動方法 の各候補について、 当該移動方法の適切度を示す指標値を前記スコアを用いて計 算し、 該計算した指標値を参照して既存の仮想マシンの移動を行う第 4のステツ プ (S 1 41 b〜S 1 47) をさらに含むことを特徴とする、 請求の範囲第 1 3 項に記載の仮想マシン管理方法。
1 8. 前記第 4のステップ (S 1 41 b〜S 1 47) は、 一定時間ごと、 サ ーバ装置 (3) あるいは仮想マシン (33) のリソースが予め定められた一定の 条件に達するごと、 または仮想マシン (33) の停止ごとに開始することを特徴 とする、 請求の範囲第 1 フ項に記載の仮想マシン管理方法。
1 9. 前貢己コンピュータ (1 ) が、 仮想マシン (33) の種別ごとに、 その 種別の仮想マシンが配置されているサーバ装置 (3) から当該仮想マシンのリソ ースの使用状況と他の仮想マシンとの間の通信状況とを収集する第 5のステップ
(S 1 1 1〜S 1 1 3) と、 前記コンピュータ (1 ) が、 前記収集された情報と予め定められたスコア生成 規則とから前記スコアを生成して前記配置規則表 (1 6) に記憶する第 6のステ ップ (S 1 21〜S 1 25) と
をさらに含むことを特徴とする、 請求の範囲第 1 3項に記載の仮想マシン管理方 法。
20. ネットワーク (4) を介して複数のサーバ装置 (3) に接続されたコ ンピュータ (1 ) により前記サーバ装置 (3) 上の仮想マシン (33) を管理す る方法であって、
前記コンピュータ (1 ) が、 既存の仮想マシンの移動を伴わない新規の仮想マ シンの配置方法、 および、 既存の仮想マシンの移動を伴う新規の仮想マシンの配 置方法の各候補を選択する第 1のステップ (S 1 71 , S 1 72, S 1 74〜S 1 76) と、
前記コンピュータ (1 ) が、 前記選択した各候補について、 仮想マシン種別の 組合せ毎にその組合せの仮想マシン種別どうしが同じサーバ装置に配置される適 切度を示すスコアを配置規則表 (1 6) から参照して、 当該配置方法の適切度を 示す指標値を計算する第 2のステップ (S 1 73, S 1 77) と、
前記コンピュータ (1 ) が、 前記計算した指標値を参照して新規の仮想マシン の配置先を決定する第 3のステップ (S 1 79, S 1 71 0) と
を含むことを特徴とする仮想マシン管理方法。
21. 前記コンピュータ (1 ) が、 新規の仮想マシンの配置とは独立に、 サ ーバ装置 (3) 上の仮想マシン (33) を他のサーバ装置へ移動させる移動方法 の各候補について、 当該移動方法の適切度を示す指標値を前記スコアを用いて計 算し、 該計算した指標値を参照して既存の仮想マシンの移動を行う第 4のステツ プ (S 1 41 b~S 1 7) をさらに含むことを特徴とする、 請求の範囲第 20 項に記載の仮想マシン管理方法。
22. 前記第 4のステップ (S 1 41 b〜S 1 4フ) は、 一定時間ごと、 サ —バ装置 (3) あるいは仮想マシン (33) のリソースが予め定められた一定の 条件に達するごと、 または仮想マシン (33) の停止ごとに開始することを特徴 とする、 請求の範囲第 21項に記載の仮想マシン管理方法。
23. 前記コンピュータ (1 ) 力、 仮想マシン (33) の種別ごとに、 その 種別の仮想マシンが配置されているサーバ装置 (3) から当該仮想マシンのリソ ースの使用状況と他の仮想マシンとの間の通信状況とを収集する第 5のステツプ (S 1 1 1〜S 1 1 3) と、
前記コンピュータ (1 ) が、 前記収集された情報と予め定められたスコア生成 規則とから前記スコアを生成して前記配置規則表 (1 6) に記憶する第 6のステ ップ (S 1 21〜S 1 25) と
をさらに含むことを特徴とする、 請求の範囲第 20項に記載の仮想マシン管理方 法。
24. ネットワーク (4) を介して複数のサーバ装置 (3) に接続されたコ ンピュータ ( 1 ) に、
新規の仮想マシンを配置可能な 1以上のサーバ装置を選択する第 1の処理 (S 1 31 , S 1 32) と、
前記選択した各サーバ装置について、 仮想マシン種別の組合せ毎にその組合せ の仮想マシン種別どうしが同じサーバ装置に配置される適切度を示すスコアを配 置規則表 (1 6) から参照して、 新規の仮想マシンを当該サーバ装置に配置する 適切度を示す指標値を計算する第 2の処理 (S 1 33) と、
前記計算した指標値を参照して新規の仮想マシンの配置先を決定する第 3の処 理 ( S 1 34 ) と
を行わせるためのプログラム。
25. 前記第 1の処理 (S 1 31 ) では、 新規の仮想マシンを配置可能なサ ーバ装置として、 新規の仮想マシンに必要なリソースを現に確保できるサーバ装 置( 3 )を選択することを特徴とする、請求の範囲第 24項に記載のプログラム。
26. 前記第 1の処理では、 新規の仮想マシンに必要なリソースを現に確保 できるサーバ装置が存在しない場合 (S 1 32の NO)、 サーバ装置 (3) 上の既 存の仮想マシン (33) を他のサーバ装置に移動させる (S 1 4 "!〜 S 1 47) ことにより、 新規の仮想マシンを配置可能なサーバ装置の生成を試みる (S 1 3 6) ことを特徴とする、 請求の範囲第 25項に記載のプログラム。
27. 前記第 1の処理 (S 141〜S 1 47) では、 新規の仮想マシンを配 置可能なサーバ装置を生成できる移動方法の各候補について、 当該移動方法の適 切度を示す指標値を前記スコアを用いて計算し、 該計算した指標値を参照して仮 想マシンの移動方法を決定することを特徴とする、 請求の範囲第 26項に記載の プログラム。
28. 前記コンピュータ (1 ) に、 さらに、 新規の仮想マシンの配置とは独 立に、 サーバ装置 (3) 上の仮想マシン (33) を他のサーバ装置へ移動させる 移動方法の各候補について、 当該移動方法の適切度を示す指標値を前記スコアを 用いて計算し、 該計算した指標値を参照して既存の仮想マシンの移動を行う第 4 の処理 (S 1 41 b〜S 1 47) を行わせることを特徴とする、 請求の範囲第 2 4項に記載のプログラム。
29. 前記第 4の処理 (S 141 b〜S 1 47) は、 一定時間ごと、 サーバ 装置 (3) あるいは仮想マシン (33) のリソースが予め定められた一定の条件 に達するごと、 または仮想マシン (33) の停止ごとに開始することを特徴とす る、 請求の範囲第 28項に記載の仮想マシン管理方法。
30. 前記コンピュータ (1 ) に、 さらに、
仮想マシン (33) の種別ごとに、 その種別の仮想マシンが配置されているサ ーバ装置 (3) から当該仮想マシンのリソースの使用状況と他の仮想マシンとの 間の通信状況とを収集する第 5の処理 (S 1 1 1〜S 1 1 3) と、
前記収集された情報と予め定められたスコァ生成規則とから前記スコアを生 成して前記配置規則表 (1 6) に記憶する第 6の処理 (S 1 21〜S 1 25) と を行わせることを特徴とする、 請求の範囲第 24項に記載のプログラム。
31. ネットワーク (4) を介して複数のサーバ装置 (3) に接続されたコ ンピュ一タ ( 1 ) に、
既存の仮想マシンの移動を伴わない新規の仮想マシンの配置方法、 および、 既 存の仮想マシンの移動を伴う新規の仮想マシンの配置方法の各候補を選択する第 1の処理 (S 1 フ 1 , S 1 72, S 1 74〜S 1 76) と、 前記選択した各候補について、 仮想マシン種別の組合せ毎にその組合せの仮想 マシン種別どうしが同じサーバ装置に配置される適切度を示すスコアを配置規則 表 (1 6) から参照して、 当該配置方法の適切度を示す指標値を計算する第 2の 処理 (S 1 73, S 1 77) と、
前記計算した指標値を参照して新規の仮想マシンの配置先を決定する第 3の処 理 (S 1 79, S 1 7 1 0) と
を行わせることを特徴とするプログラム。
32. 前記コンピュータ (1 ) に、 さらに、 新規の仮想マシンの配置とは独 立に、 サーバ装置 (3) 上の仮想マシン (33) を他のサーバ装置へ移動させる 移動方法の各候補について、 当該移動方法の適切度を示す指標値を前記スコアを 用いて計算し、 該計算した指標値を参照して既存の仮想マシンの移動を行う第 4 の処理 (S 1 41 b〜S 1 47) を行わせることを特徴とする、 請求の範囲第 3 1項に記載のプログラム。
33. 前記第 4の処理 (S 1 41 b〜S 1 47) は、 一定時間ごと、 サーバ 装置 (3) あるいは仮想マシン (33) のリソースが予め定められた一定の条件 に達するごと、 または仮想マシン (33) の停止ごとに開始することを特徴とす る、 請求の範囲第 32項に記載の仮想マシン管理方法。
34. 前記コンピュータ (1 ) に、 さらに、
仮想マシン (33) の種別ごとに、 その種別の仮想マシンが配置されているサ —バ装置 (3) から当該仮想マシンのリソースの使用状況と他の仮想マシンとの 間の通信状況とを収集する第 5の処理 (S 1 1 1〜S 1 1 3) と、
前記収集された情報と予め定められたスコア生成規則とから前記スコアを生成 して前記配置規則表 (1 6) に記憶する第 6の処理 (S 1 21〜S 1 25) と を行わせることを特徴とする、 請求の範囲第 31項に記載のプログラム。
PCT/JP2007/060312 2006-05-24 2007-05-15 仮想マシン管理装置、仮想マシン管理方法およびプログラム WO2007136021A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/227,481 US8112527B2 (en) 2006-05-24 2007-05-15 Virtual machine management apparatus, and virtual machine management method and program
JP2008516678A JP5110315B2 (ja) 2006-05-24 2007-05-15 仮想マシン管理装置、仮想マシン管理方法およびプログラム
EP07743746A EP2037362A4 (en) 2006-05-24 2007-05-15 ADMINISTRATIVE APPROACH FOR VIRTUAL MACHINES, METHOD FOR MANAGING A VIRTUAL MACHINE AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006143626 2006-05-24
JP2006-143626 2006-05-24

Publications (1)

Publication Number Publication Date
WO2007136021A1 true WO2007136021A1 (ja) 2007-11-29

Family

ID=38723333

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/060312 WO2007136021A1 (ja) 2006-05-24 2007-05-15 仮想マシン管理装置、仮想マシン管理方法およびプログラム

Country Status (4)

Country Link
US (1) US8112527B2 (ja)
EP (1) EP2037362A4 (ja)
JP (1) JP5110315B2 (ja)
WO (1) WO2007136021A1 (ja)

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009169473A (ja) * 2008-01-10 2009-07-30 Nec Corp モジュール配置装置並びにモジュール配置方法並びにプログラム
JP2009199395A (ja) * 2008-02-22 2009-09-03 Nec Corp 仮想サーバ管理装置および仮想サーバ管理方法
JP2009217434A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd 資源割り当て方法及び装置並びにプログラム
JP2009223497A (ja) * 2008-03-14 2009-10-01 Nec Corp 管理マシン、管理システム、管理プログラム、および、管理方法
JP2009237859A (ja) * 2008-03-27 2009-10-15 Nec Corp 仮想マシン管理システム
JP2009252204A (ja) * 2008-04-11 2009-10-29 Hitachi Ltd 計算機の運用管理システム及び運用管理方法
US20100050172A1 (en) * 2008-08-22 2010-02-25 James Michael Ferris Methods and systems for optimizing resource usage for cloud-based networks
JP2010108260A (ja) * 2008-10-30 2010-05-13 Fujitsu Ltd 仮想計算機システム及びその管理方法、プログラム並びに記録媒体
JP2010117760A (ja) * 2008-11-11 2010-05-27 Hitachi Ltd 仮想マシン移動管理サーバおよび仮想マシン移動方法
JP2010122805A (ja) * 2008-11-18 2010-06-03 Hitachi Ltd 仮想サーバシステム並びに物理cpu及び物理メモリの割り当て方法
JP2010140134A (ja) * 2008-12-10 2010-06-24 Hitachi Ltd 仮想マシン管理方法、プログラムおよび管理サーバ
WO2010140194A1 (ja) * 2009-06-05 2010-12-09 富士通株式会社 情報処理システムの管理方法、情報処理システム、記録媒体、管理プログラム
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2011227729A (ja) * 2010-04-20 2011-11-10 Nec Corp 管理サーバおよび仮想マシン配置制御方法
JP2011253523A (ja) * 2010-06-01 2011-12-15 International Business Maschines Corporation 仮想化環境のための管理システム、方法、およびコンピュータ・プログラム
WO2012056609A1 (ja) * 2010-10-28 2012-05-03 日本電気株式会社 タスク配置最適化システム、タスク配置最適化方法、及びタスク配置最適化プログラムが格納された非一時的なコンピュータ可読媒体
JP2012088808A (ja) * 2010-10-15 2012-05-10 Fujitsu Ltd 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
CN102473170A (zh) * 2009-07-24 2012-05-23 惠普开发有限公司 基于虚拟机的应用服务供应
JPWO2010079587A1 (ja) * 2009-01-06 2012-06-21 三菱電機株式会社 管理装置及び管理方法及びプログラム
WO2012117453A1 (ja) * 2011-03-03 2012-09-07 株式会社日立製作所 計算機システム、および、計算機システムにおける仮想計算機の最適配置方法
JP2012194868A (ja) * 2011-03-17 2012-10-11 Ntt Data Corp 移動要求装置、移動要求方法、移動要求プログラム
JP2012525641A (ja) * 2009-04-30 2012-10-22 マイクロソフト コーポレーション アプリケーション効率エンジン
JP2012221049A (ja) * 2011-04-05 2012-11-12 Hitachi Ltd データセンタシステム管理方法、データセンタシステム、及び管理装置
JP2013506194A (ja) * 2009-09-24 2013-02-21 オラクル・インターナショナル・コーポレイション ハイパーバイザ仮想実行環境における利用ベースのアプリケーション使用許諾のためのシステムおよび方法
KR101277273B1 (ko) * 2008-12-08 2013-06-20 한국전자통신연구원 자원 관리 시스템을 이용한 단말 장치간 자원 할당 방법 및 이를 위한 자원 관리 서버
JP2013127685A (ja) * 2011-12-19 2013-06-27 Hitachi Ltd 情報処理システムおよび運用管理方法
JP2013196695A (ja) * 2012-03-15 2013-09-30 Hon Hai Precision Industry Co Ltd 仮想マシン割り当てシステム及びその方法
JP2013206379A (ja) * 2012-03-29 2013-10-07 Nec Corp クラスタ監視装置、クラスタ監視方法、及びプログラム
WO2013171944A1 (ja) * 2012-05-15 2013-11-21 日本電気株式会社 仮想マシン管理システム、仮想マシン管理方法およびプログラム
JPWO2012053393A1 (ja) * 2010-10-19 2014-02-24 株式会社日立製作所 仮想計算機を配置する方法及び装置
JP2014102740A (ja) * 2012-11-21 2014-06-05 Fujitsu Ltd 情報処理方法、プログラム、情報処理装置、及び情報処理システム。
US8789045B2 (en) 2009-04-23 2014-07-22 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
US8984123B2 (en) 2009-04-23 2015-03-17 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
JP2015532992A (ja) * 2012-09-20 2015-11-16 アマゾン テクノロジーズ インコーポレーテッド リソース使用の自動プロファイル化
US9223636B2 (en) 2013-01-08 2015-12-29 International Business Machines Corporation Low-risk server consolidation
CN105378669A (zh) * 2013-07-19 2016-03-02 惠普发展公司,有限责任合伙企业 虚拟机资源管理系统及其方法
JP2016053781A (ja) * 2014-09-03 2016-04-14 日本電信電話株式会社 分散アプリケーション配置システム
JP5968563B1 (ja) * 2015-04-27 2016-08-10 三菱電機株式会社 情報処理装置及びリソース割り当て方法及びリソース割り当てプログラム
JP5981845B2 (ja) * 2011-03-02 2016-08-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 仮想計算機システム、仮想計算機制御方法、仮想計算機制御プログラム、及び半導体集積回路
JP2017130005A (ja) * 2016-01-20 2017-07-27 日本電信電話株式会社 管理装置、および、ソフトウェアコンポーネントグルーピング方法
US10157073B2 (en) 2013-05-29 2018-12-18 Nec Corporation Virtual-machine control device, virtual-machine control method, computer-readable recording medium recording program for virtual-machine control method, and data center
EP2368182B1 (en) * 2008-12-19 2020-01-01 Citrix Systems, Inc. Systems and methods for facilitating migration of virtual machines among a plurality of physical machines
JP2020016910A (ja) * 2018-07-23 2020-01-30 日本電信電話株式会社 リソース割当装置、リソース管理システム、および、リソース割当プログラム
JP2020052730A (ja) * 2018-09-27 2020-04-02 株式会社日立製作所 Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
US20200382232A1 (en) * 2019-05-29 2020-12-03 CEO Vision, Inc (dba Croquet Studios) Systems and methods for secure, low bandwidth replicated virtual worlds for shared space computing
US11119815B2 (en) 2017-01-19 2021-09-14 Fujitsu Limited Management apparatus, control method of calculation resources, and storage medium
US11507987B2 (en) * 2020-03-16 2022-11-22 Fujitsu Limited Non-transitory computer-readable recording medium and charge calculation method

Families Citing this family (196)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840398B2 (en) * 2006-03-28 2010-11-23 Intel Corporation Techniques for unified management communication for virtualization systems
JP5229590B2 (ja) * 2007-09-18 2013-07-03 日本電気株式会社 サーバ組替支援システム、サーバ組替支援方法
US8175863B1 (en) * 2008-02-13 2012-05-08 Quest Software, Inc. Systems and methods for analyzing performance of virtual environments
US8458658B2 (en) 2008-02-29 2013-06-04 Red Hat, Inc. Methods and systems for dynamically building a software appliance
US8089168B2 (en) * 2008-04-15 2012-01-03 Claude Chevrette Tire actuated generator for use on cars
US9501305B2 (en) * 2008-04-23 2016-11-22 Inernational Business Machines Corporation System for virtualisation monitoring
US8935692B2 (en) 2008-05-22 2015-01-13 Red Hat, Inc. Self-management of virtual machines in cloud-based networks
US7886038B2 (en) 2008-05-27 2011-02-08 Red Hat, Inc. Methods and systems for user identity management in cloud-based networks
US8239509B2 (en) * 2008-05-28 2012-08-07 Red Hat, Inc. Systems and methods for management of virtual appliances in cloud-based network
US20090300423A1 (en) * 2008-05-28 2009-12-03 James Michael Ferris Systems and methods for software test management in cloud-based network
US9092243B2 (en) 2008-05-28 2015-07-28 Red Hat, Inc. Managing a software appliance
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
US10657466B2 (en) 2008-05-29 2020-05-19 Red Hat, Inc. Building custom appliances in a cloud-based network
US8341625B2 (en) * 2008-05-29 2012-12-25 Red Hat, Inc. Systems and methods for identification and management of cloud-based virtual machines
US8868721B2 (en) 2008-05-29 2014-10-21 Red Hat, Inc. Software appliance management using broadcast data
US8108912B2 (en) 2008-05-29 2012-01-31 Red Hat, Inc. Systems and methods for management of secure data in cloud-based network
US8943497B2 (en) * 2008-05-29 2015-01-27 Red Hat, Inc. Managing subscriptions for cloud-based virtual machines
US10372490B2 (en) * 2008-05-30 2019-08-06 Red Hat, Inc. Migration of a virtual machine from a first cloud computing environment to a second cloud computing environment in response to a resource or services in the second cloud computing environment becoming available
US9910708B2 (en) * 2008-08-28 2018-03-06 Red Hat, Inc. Promotion of calculations to cloud-based computation resources
US8019873B2 (en) * 2008-09-30 2011-09-13 Microsoft Corporation Mesh platform utility computing portal
JP4966942B2 (ja) * 2008-10-01 2012-07-04 株式会社日立製作所 仮想pc管理方法、仮想pc管理システム、および仮想pc管理プログラム
US8924961B2 (en) * 2008-10-29 2014-12-30 Dell Products L.P. Virtual machine scheduling methods and systems
US9037692B2 (en) 2008-11-26 2015-05-19 Red Hat, Inc. Multiple cloud marketplace aggregation
US8782233B2 (en) * 2008-11-26 2014-07-15 Red Hat, Inc. Embedding a cloud-based resource request in a specification language wrapper
US10025627B2 (en) 2008-11-26 2018-07-17 Red Hat, Inc. On-demand cloud computing environments
US9870541B2 (en) * 2008-11-26 2018-01-16 Red Hat, Inc. Service level backup using re-cloud network
US9210173B2 (en) * 2008-11-26 2015-12-08 Red Hat, Inc. Securing appliances for use in a cloud computing environment
US8984505B2 (en) * 2008-11-26 2015-03-17 Red Hat, Inc. Providing access control to user-controlled resources in a cloud computing environment
US20100146123A1 (en) * 2008-12-08 2010-06-10 Electronics And Telecommunications Research Institute Resource allocation method of each terminal apparatus using resource management system and resource management server apparatus
US9930138B2 (en) 2009-02-23 2018-03-27 Red Hat, Inc. Communicating with third party resources in cloud computing environment
US9485117B2 (en) 2009-02-23 2016-11-01 Red Hat, Inc. Providing user-controlled resources for cloud computing environments
US8977750B2 (en) * 2009-02-24 2015-03-10 Red Hat, Inc. Extending security platforms to cloud-based networks
US9547455B1 (en) 2009-03-10 2017-01-17 Hewlett Packard Enterprise Development Lp Allocating mass storage to a logical server
US8832235B1 (en) 2009-03-10 2014-09-09 Hewlett-Packard Development Company, L.P. Deploying and releasing logical servers
US8549123B1 (en) 2009-03-10 2013-10-01 Hewlett-Packard Development Company, L.P. Logical server management
US8676946B1 (en) 2009-03-10 2014-03-18 Hewlett-Packard Development Company, L.P. Warnings for logical-server target hosts
US9154385B1 (en) 2009-03-10 2015-10-06 Hewlett-Packard Development Company, L.P. Logical server management interface displaying real-server technologies
JP5476764B2 (ja) * 2009-03-30 2014-04-23 富士通株式会社 サーバ装置、計算機システム、プログラム及び仮想計算機移動方法
JP5617839B2 (ja) * 2009-04-24 2014-11-05 日本電気株式会社 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体
US9600332B2 (en) * 2009-04-28 2017-03-21 Cisco Technology, Inc. Server load balancing based on virtual utilization, physical utilization, and feedback
US9311162B2 (en) * 2009-05-27 2016-04-12 Red Hat, Inc. Flexible cloud management
US9450783B2 (en) * 2009-05-28 2016-09-20 Red Hat, Inc. Abstracting cloud management
US9104407B2 (en) 2009-05-28 2015-08-11 Red Hat, Inc. Flexible cloud management with power management support
US9703609B2 (en) 2009-05-29 2017-07-11 Red Hat, Inc. Matching resources associated with a virtual machine to offered resources
US20120158923A1 (en) * 2009-05-29 2012-06-21 Ansari Mohamed System and method for allocating resources of a server to a virtual machine
US9201485B2 (en) * 2009-05-29 2015-12-01 Red Hat, Inc. Power management in managed network having hardware based and virtual resources
US20100306767A1 (en) * 2009-05-29 2010-12-02 Dehaan Michael Paul Methods and systems for automated scaling of cloud computing systems
US8271644B2 (en) * 2009-06-18 2012-09-18 Dell Products, Lp System and method to manage information handling system resources in virtual machine infrastructure
US8489744B2 (en) * 2009-06-29 2013-07-16 Red Hat Israel, Ltd. Selecting a host from a host cluster for live migration of a virtual machine
US8694638B2 (en) * 2009-06-29 2014-04-08 Red Hat Israel Selecting a host from a host cluster to run a virtual machine
US8140812B2 (en) * 2009-07-01 2012-03-20 International Business Machines Corporation Method and apparatus for two-phase storage-aware placement of virtual machines
US8910153B2 (en) * 2009-07-13 2014-12-09 Hewlett-Packard Development Company, L. P. Managing virtualized accelerators using admission control, load balancing and scheduling
US8832459B2 (en) 2009-08-28 2014-09-09 Red Hat, Inc. Securely terminating processes in a cloud computing environment
US8862720B2 (en) 2009-08-31 2014-10-14 Red Hat, Inc. Flexible cloud management including external clouds
US8769083B2 (en) 2009-08-31 2014-07-01 Red Hat, Inc. Metering software infrastructure in a cloud computing environment
US8316125B2 (en) * 2009-08-31 2012-11-20 Red Hat, Inc. Methods and systems for automated migration of cloud processes to external clouds
US8504443B2 (en) * 2009-08-31 2013-08-06 Red Hat, Inc. Methods and systems for pricing software infrastructure for a cloud computing environment
US8271653B2 (en) * 2009-08-31 2012-09-18 Red Hat, Inc. Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds
US20120173604A1 (en) * 2009-09-18 2012-07-05 Nec Corporation Data center system, reconfigurable node, reconfigurable node controlling method and reconfigurable node control program
GB2473849B (en) * 2009-09-25 2015-06-17 Ge Aviat Systems Ltd Module communication
WO2011039887A1 (ja) * 2009-10-01 2011-04-07 三菱電機株式会社 計算機装置
WO2011043011A1 (ja) * 2009-10-09 2011-04-14 日本電気株式会社 仮想サーバシステム、その自律制御サーバ、そのデータ処理方法およびコンピュータプログラム
US8375223B2 (en) 2009-10-30 2013-02-12 Red Hat, Inc. Systems and methods for secure distributed storage
US8700752B2 (en) * 2009-11-03 2014-04-15 International Business Machines Corporation Optimized efficient LPAR capacity consolidation
KR101612780B1 (ko) * 2009-11-13 2016-04-18 삼성전자주식회사 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법
US10268522B2 (en) * 2009-11-30 2019-04-23 Red Hat, Inc. Service aggregation using graduated service levels in a cloud network
US10402544B2 (en) * 2009-11-30 2019-09-03 Red Hat, Inc. Generating a software license knowledge base for verifying software license compliance in cloud computing environments
US9529689B2 (en) * 2009-11-30 2016-12-27 Red Hat, Inc. Monitoring cloud computing environments
US9971880B2 (en) 2009-11-30 2018-05-15 Red Hat, Inc. Verifying software license compliance in cloud computing environments
US9389980B2 (en) * 2009-11-30 2016-07-12 Red Hat, Inc. Detecting events in cloud computing environments and performing actions upon occurrence of the events
US8850426B2 (en) * 2009-12-13 2014-09-30 International Business Machines Corporation Managing remote deployment of a virtual machine and service request to be processed by the virtual machines based on network bandwith and storage connectivity
US8838765B2 (en) 2009-12-14 2014-09-16 Hewlett-Packard Development Company, L.P. Modifying computer management request
US8631403B2 (en) * 2010-01-04 2014-01-14 Vmware, Inc. Method and system for managing tasks by dynamically scaling centralized virtual center in virtual infrastructure
US8402139B2 (en) * 2010-02-26 2013-03-19 Red Hat, Inc. Methods and systems for matching resource requests with cloud computing environments
US8606667B2 (en) * 2010-02-26 2013-12-10 Red Hat, Inc. Systems and methods for managing a software subscription in a cloud network
US9053472B2 (en) * 2010-02-26 2015-06-09 Red Hat, Inc. Offering additional license terms during conversion of standard software licenses for use in cloud computing environments
US8255529B2 (en) * 2010-02-26 2012-08-28 Red Hat, Inc. Methods and systems for providing deployment architectures in cloud computing environments
US11922196B2 (en) 2010-02-26 2024-03-05 Red Hat, Inc. Cloud-based utilization of software entitlements
US20110214124A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for generating cross-cloud computing appliances
US20110213687A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for or a usage manager for cross-cloud appliances
US10783504B2 (en) * 2010-02-26 2020-09-22 Red Hat, Inc. Converting standard software licenses for use in cloud computing environments
US8364819B2 (en) 2010-05-28 2013-01-29 Red Hat, Inc. Systems and methods for cross-vendor mapping service in cloud networks
US8954564B2 (en) 2010-05-28 2015-02-10 Red Hat, Inc. Cross-cloud vendor mapping service in cloud marketplace
US8909783B2 (en) 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
US8606897B2 (en) 2010-05-28 2013-12-10 Red Hat, Inc. Systems and methods for exporting usage history data as input to a management platform of a target cloud-based network
US8504689B2 (en) 2010-05-28 2013-08-06 Red Hat, Inc. Methods and systems for cloud deployment analysis featuring relative cloud resource importance
US9436459B2 (en) 2010-05-28 2016-09-06 Red Hat, Inc. Generating cross-mapping of vendor software in a cloud computing environment
US9202225B2 (en) 2010-05-28 2015-12-01 Red Hat, Inc. Aggregate monitoring of utilization data for vendor products in cloud networks
US9354939B2 (en) 2010-05-28 2016-05-31 Red Hat, Inc. Generating customized build options for cloud deployment matching usage profile against cloud infrastructure options
US8416834B2 (en) 2010-06-23 2013-04-09 International Business Machines Corporation Spread spectrum wireless communication code for data center environments
US8656228B2 (en) 2010-06-23 2014-02-18 International Business Machines Corporation Memory error isolation and recovery in a multiprocessor computer system
US8645606B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Upbound input/output expansion request and response processing in a PCIe architecture
US8671287B2 (en) 2010-06-23 2014-03-11 International Business Machines Corporation Redundant power supply configuration for a data center
US8615586B2 (en) * 2010-06-23 2013-12-24 International Business Machines Corporation Discovery of logical images at storage area network endpoints
US8677180B2 (en) 2010-06-23 2014-03-18 International Business Machines Corporation Switch failover control in a multiprocessor computer system
US8745292B2 (en) 2010-06-23 2014-06-03 International Business Machines Corporation System and method for routing I/O expansion requests and responses in a PCIE architecture
US8918573B2 (en) 2010-06-23 2014-12-23 International Business Machines Corporation Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment
US8615622B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Non-standard I/O adapters in a standardized I/O architecture
US8645767B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Scalable I/O adapter function level error detection, isolation, and reporting
US8417911B2 (en) 2010-06-23 2013-04-09 International Business Machines Corporation Associating input/output device requests with memory associated with a logical partition
US8423646B2 (en) 2010-07-09 2013-04-16 International Business Machines Corporation Network-aware virtual machine migration in datacenters
US20120030686A1 (en) * 2010-07-29 2012-02-02 International Business Machines Corporation Thermal load management in a partitioned virtual computer system environment through monitoring of ambient temperatures of envirnoment surrounding the systems
US9183028B1 (en) 2010-09-30 2015-11-10 Amazon Technologies, Inc. Managing virtual computing nodes
US9384029B1 (en) 2010-09-30 2016-07-05 Amazon Technologies, Inc. Managing virtual computing nodes
US9104458B1 (en) * 2010-09-30 2015-08-11 Amazon Technologies, Inc. Managing virtual computing nodes using isolation and migration techniques
US8909767B2 (en) * 2010-10-13 2014-12-09 Rackware, Inc. Cloud federation in a cloud computing environment
US8874457B2 (en) * 2010-11-17 2014-10-28 International Business Machines Corporation Concurrent scheduling of plan operations in a virtualized computing environment
US8584121B2 (en) 2010-11-19 2013-11-12 International Business Machines Corporation Using a score-based template to provide a virtual machine
US8612615B2 (en) 2010-11-23 2013-12-17 Red Hat, Inc. Systems and methods for identifying usage histories for producing optimized cloud utilization
US8904005B2 (en) 2010-11-23 2014-12-02 Red Hat, Inc. Indentifying service dependencies in a cloud deployment
US8612577B2 (en) 2010-11-23 2013-12-17 Red Hat, Inc. Systems and methods for migrating software modules into one or more clouds
US8909784B2 (en) 2010-11-23 2014-12-09 Red Hat, Inc. Migrating subscribed services from a set of clouds to a second set of clouds
US9736252B2 (en) 2010-11-23 2017-08-15 Red Hat, Inc. Migrating subscribed services in a cloud deployment
US8713147B2 (en) 2010-11-24 2014-04-29 Red Hat, Inc. Matching a usage history to a new cloud
US10192246B2 (en) 2010-11-24 2019-01-29 Red Hat, Inc. Generating multi-cloud incremental billing capture and administration
US8949426B2 (en) 2010-11-24 2015-02-03 Red Hat, Inc. Aggregation of marginal subscription offsets in set of multiple host clouds
US8825791B2 (en) 2010-11-24 2014-09-02 Red Hat, Inc. Managing subscribed resource in cloud network using variable or instantaneous consumption tracking periods
US9442771B2 (en) 2010-11-24 2016-09-13 Red Hat, Inc. Generating configurable subscription parameters
US8924539B2 (en) 2010-11-24 2014-12-30 Red Hat, Inc. Combinatorial optimization of multiple resources across a set of cloud-based networks
US9606831B2 (en) 2010-11-30 2017-03-28 Red Hat, Inc. Migrating virtual machine operations
US9563479B2 (en) 2010-11-30 2017-02-07 Red Hat, Inc. Brokering optimized resource supply costs in host cloud-based network using predictive workloads
JP5476485B2 (ja) * 2011-01-05 2014-04-23 株式会社日立製作所 サービスの予約管理方法、仮想計算機システム及び記憶媒体
US8959221B2 (en) 2011-03-01 2015-02-17 Red Hat, Inc. Metering cloud resource consumption using multiple hierarchical subscription periods
US8832219B2 (en) 2011-03-01 2014-09-09 Red Hat, Inc. Generating optimized resource consumption periods for multiple users on combined basis
US9710295B2 (en) * 2011-04-20 2017-07-18 Nec Corporation Grouping and placement of virtual machines based on similarity and correlation of functional relations
US8631099B2 (en) 2011-05-27 2014-01-14 Red Hat, Inc. Systems and methods for cloud deployment engine for selective workload migration or federation based on workload conditions
US10102018B2 (en) 2011-05-27 2018-10-16 Red Hat, Inc. Introspective application reporting to facilitate virtual machine movement between cloud hosts
US9037723B2 (en) 2011-05-31 2015-05-19 Red Hat, Inc. Triggering workload movement based on policy stack having multiple selectable inputs
US8984104B2 (en) 2011-05-31 2015-03-17 Red Hat, Inc. Self-moving operating system installation in cloud-based network
US10360122B2 (en) 2011-05-31 2019-07-23 Red Hat, Inc. Tracking cloud installation information using cloud-aware kernel of operating system
US8782192B2 (en) 2011-05-31 2014-07-15 Red Hat, Inc. Detecting resource consumption events over sliding intervals in cloud-based network
US9594579B2 (en) 2011-07-29 2017-03-14 Hewlett Packard Enterprise Development Lp Migrating virtual machines
US8782242B2 (en) 2011-10-13 2014-07-15 Vmware, Inc. Software application placement using computing resource containers
US8880930B2 (en) * 2011-10-13 2014-11-04 Vmware, Inc. Software application placement based on failure correlation
JP5887149B2 (ja) * 2012-01-25 2016-03-16 株式会社エヌ・ティ・ティ・データ 仮想マシン配置装置、仮想マシン配置方法
KR101603928B1 (ko) * 2012-02-06 2016-03-16 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 클라우드 서비스 간의 이송 시 애플리케이션 성능의 유지
US20130238785A1 (en) * 2012-03-06 2013-09-12 Rackspace Us, Inc. System and Method for Metadata Discovery and Metadata-Aware Scheduling
JP5935505B2 (ja) * 2012-05-24 2016-06-15 富士通株式会社 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム
US10430216B1 (en) * 2012-08-23 2019-10-01 Scale Computing Inc Virtual machine automated selection
US8966495B2 (en) * 2012-09-05 2015-02-24 Cisco Technology, Inc. Dynamic virtual machine consolidation
US10333820B1 (en) 2012-10-23 2019-06-25 Quest Software Inc. System for inferring dependencies among computing systems
US9557879B1 (en) 2012-10-23 2017-01-31 Dell Software Inc. System for inferring dependencies among computing systems
US9703584B2 (en) 2013-01-08 2017-07-11 Commvault Systems, Inc. Virtual server agent load balancing
US9025452B2 (en) * 2013-02-18 2015-05-05 Broadcom Corporation Oversubscription monitor
US9110722B2 (en) 2013-02-28 2015-08-18 International Business Machines Corporation Data processing work allocation
US9960963B2 (en) * 2013-06-24 2018-05-01 Oracle International Corporation Dynamic client fail-over during a rolling patch installation based on temporal server conditions
KR101941282B1 (ko) * 2013-07-16 2019-01-23 한국전자통신연구원 가상 데스크톱 서비스 제공 방법 및 장치
JP2015022385A (ja) * 2013-07-17 2015-02-02 日本電気株式会社 仮想システムおよび仮想システム制御方法
US20150081400A1 (en) * 2013-09-19 2015-03-19 Infosys Limited Watching ARM
CN103797462B (zh) 2013-10-23 2016-06-29 华为技术有限公司 一种创建虚拟机的方法和装置
KR101595854B1 (ko) * 2013-12-24 2016-02-19 주식회사 케이티 클라우드 시스템에서의 가상 머신 배치 방법 및 장치
US9817683B2 (en) * 2014-01-10 2017-11-14 Dell Products, Lp Optimized remediation policy in a virtualized environment
US20150199206A1 (en) * 2014-01-13 2015-07-16 Bigtera Limited Data distribution device and data distribution method thereof for use in storage system
JP2015158773A (ja) * 2014-02-24 2015-09-03 富士通株式会社 仮想装置の動作検証装置,仮想装置の動作検証システム及びプログラム
US11005738B1 (en) 2014-04-09 2021-05-11 Quest Software Inc. System and method for end-to-end response-time analysis
US9479414B1 (en) 2014-05-30 2016-10-25 Dell Software Inc. System and method for analyzing computing performance
WO2015189968A1 (ja) * 2014-06-12 2015-12-17 株式会社日立製作所 Vm管理システム及びその方法
CA2952886A1 (en) * 2014-06-20 2015-12-23 Cirba Ip Inc. System and method for optimizing placements of virtual machines on hypervisor hosts
US20160019317A1 (en) 2014-07-16 2016-01-21 Commvault Systems, Inc. Volume or virtual machine level backup and generating placeholders for virtual machine files
US9983936B2 (en) 2014-11-20 2018-05-29 Commvault Systems, Inc. Virtual machine change block tracking
US10291493B1 (en) 2014-12-05 2019-05-14 Quest Software Inc. System and method for determining relevant computer performance events
KR101671119B1 (ko) 2014-12-17 2016-10-31 경희대학교 산학협력단 클라우드 컴퓨팅 시스템의 자원 관리 방법
US11182713B2 (en) 2015-01-24 2021-11-23 Vmware, Inc. Methods and systems to optimize operating system license costs in a virtual data center
US9274758B1 (en) 2015-01-28 2016-03-01 Dell Software Inc. System and method for creating customized performance-monitoring applications
CN105988872B (zh) 2015-02-03 2020-02-18 阿里巴巴集团控股有限公司 一种cpu资源分配的方法、装置及电子设备
US9996577B1 (en) 2015-02-11 2018-06-12 Quest Software Inc. Systems and methods for graphically filtering code call trees
US10505862B1 (en) * 2015-02-18 2019-12-10 Amazon Technologies, Inc. Optimizing for infrastructure diversity constraints in resource placement
US9817688B2 (en) * 2015-02-18 2017-11-14 Red Hat Israel, Ltd. Identifying and preventing removal of virtual hardware
US20160294665A1 (en) * 2015-03-30 2016-10-06 Ca, Inc. Selectively deploying probes at different resource levels
CN106155807A (zh) 2015-04-15 2016-11-23 阿里巴巴集团控股有限公司 一种实现资源调度的方法与设备
CN106155812A (zh) * 2015-04-28 2016-11-23 阿里巴巴集团控股有限公司 一种对虚拟主机的资源管理的方法、装置、系统及电子设备
US9946573B2 (en) * 2015-05-20 2018-04-17 Oracle International Corporation Optimizing virtual machine memory sizing for cloud-scale application deployments
US10187260B1 (en) 2015-05-29 2019-01-22 Quest Software Inc. Systems and methods for multilayer monitoring of network function virtualization architectures
US9760398B1 (en) * 2015-06-29 2017-09-12 Amazon Technologies, Inc. Automatic placement of virtual machine instances
US9886299B2 (en) * 2015-07-28 2018-02-06 American Megatrends, Inc. System and method for dynamically allocating resources of virtual machines based on service-level agreements (SLA) and privilege levels of users
JP6540356B2 (ja) * 2015-08-10 2019-07-10 富士通株式会社 システム複製制御装置およびシステムの複製制御方法
US11150927B1 (en) * 2015-08-10 2021-10-19 Amazon Technologies, Inc. Policy-based virtual machine instance cotenancy
US10200252B1 (en) 2015-09-18 2019-02-05 Quest Software Inc. Systems and methods for integrated modeling of monitored virtual desktop infrastructure systems
US10990926B2 (en) * 2015-10-29 2021-04-27 International Business Machines Corporation Management of resources in view of business goals
US10592350B2 (en) 2016-03-09 2020-03-17 Commvault Systems, Inc. Virtual server cloud file system for virtual machine restore to cloud operations
KR102532641B1 (ko) * 2016-03-22 2023-05-15 삼성전자 주식회사 장치 및 이의 가상 머신 재배치 방법
US10230601B1 (en) 2016-07-05 2019-03-12 Quest Software Inc. Systems and methods for integrated modeling and performance measurements of monitored virtual desktop infrastructure systems
US10379893B2 (en) 2016-08-10 2019-08-13 Rackware, Inc. Container synchronization
US10382352B2 (en) * 2016-11-15 2019-08-13 Vmware Inc. Distributed resource scheduling based on network utilization
US10678758B2 (en) 2016-11-21 2020-06-09 Commvault Systems, Inc. Cross-platform virtual machine data and memory backup and replication
US10896100B2 (en) 2017-03-24 2021-01-19 Commvault Systems, Inc. Buffered virtual machine replication
US10387073B2 (en) 2017-03-29 2019-08-20 Commvault Systems, Inc. External dynamic virtual machine synchronization
CN106911809B (zh) * 2017-04-28 2020-06-26 郑州云海信息技术有限公司 一种数据中心用户请求信息的存储和分发的方法及装置
JP7081513B2 (ja) * 2019-01-30 2022-06-07 日本電信電話株式会社 ネットワーク性能保証システム及びネットワーク性能保証方法
US20200257571A1 (en) * 2019-02-13 2020-08-13 Hewlett Packard Enterprise Development Lp Relationship driven workload placement for computing clusters
US10922283B2 (en) 2019-02-22 2021-02-16 Rackware, Inc. File synchronization
US11036537B1 (en) * 2019-03-26 2021-06-15 Amazon Technologies, Inc. On demand capacity management in provider networks using type-agnostic resources
US11520634B2 (en) * 2019-06-21 2022-12-06 Kyndryl, Inc. Requirement-based resource sharing in computing environment
JP7368143B2 (ja) * 2019-08-27 2023-10-24 株式会社日立製作所 サービス配備制御システム、サービス配備制御方法及び記憶媒体
US11966781B2 (en) * 2020-04-02 2024-04-23 Jpmorgan Chase Bank, N.A. System and method for implementing a standalone application module
CN112328357A (zh) * 2020-10-26 2021-02-05 中国建设银行股份有限公司 创建虚拟机模版的方法、装置、存储介质及计算机设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10283210A (ja) 1997-04-01 1998-10-23 Hitachi Ltd 仮想計算機システム間の仮想計算機移動制御方式
JP2002259147A (ja) * 2001-02-27 2002-09-13 Hitachi Ltd 情報処理装置及びリアルタイム分散処理システム
JP2004133764A (ja) * 2002-10-11 2004-04-30 Toshiba Corp クラスタシステム及び同システムにおけるサービス制御方法
JP2005100387A (ja) * 2003-09-02 2005-04-14 Toshiba Corp 計算機システム及びクラスタシステム用プログラム
JP2005115653A (ja) 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04229330A (ja) * 1990-12-27 1992-08-18 Nippon Telegr & Teleph Corp <Ntt> タスク分配割当て方式
US7065549B2 (en) * 2002-03-29 2006-06-20 Illinois Institute Of Technology Communication and process migration protocols for distributed heterogeneous computing
JP4119239B2 (ja) * 2002-12-20 2008-07-16 株式会社日立製作所 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム
US7203944B1 (en) * 2003-07-09 2007-04-10 Veritas Operating Corporation Migrating virtual machines among computer systems to balance load caused by virtual machines
US20050050200A1 (en) 2003-09-02 2005-03-03 Kabushiki Kaisha Toshiba Computer system and cluster system program
US20050198303A1 (en) * 2004-01-02 2005-09-08 Robert Knauerhase Dynamic virtual machine service provider allocation
JP2005310120A (ja) * 2004-03-23 2005-11-04 Hitachi Ltd 計算機システム及びタスク割当方法
US7577959B2 (en) * 2004-06-24 2009-08-18 International Business Machines Corporation Providing on-demand capabilities using virtual machines and clustering processes
US20060069761A1 (en) * 2004-09-14 2006-03-30 Dell Products L.P. System and method for load balancing virtual machines in a computer network
US7607129B2 (en) * 2005-04-07 2009-10-20 International Business Machines Corporation Method and apparatus for using virtual machine technology for managing parallel communicating applications
US20070204266A1 (en) * 2006-02-28 2007-08-30 International Business Machines Corporation Systems and methods for dynamically managing virtual machines

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10283210A (ja) 1997-04-01 1998-10-23 Hitachi Ltd 仮想計算機システム間の仮想計算機移動制御方式
JP2002259147A (ja) * 2001-02-27 2002-09-13 Hitachi Ltd 情報処理装置及びリアルタイム分散処理システム
JP2004133764A (ja) * 2002-10-11 2004-04-30 Toshiba Corp クラスタシステム及び同システムにおけるサービス制御方法
JP2005100387A (ja) * 2003-09-02 2005-04-14 Toshiba Corp 計算機システム及びクラスタシステム用プログラム
JP2005115653A (ja) 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HISAYUKI M. ET AL.: "Dynamic Load Balancing Using Network Transferable Computer", DISTRIBUTED COMPUTING SYSTEMS WORKSHOPS, 2005. 25TH IEEE INTERNATIONAL CONFERENCE, 10 June 2005 (2005-06-10), pages 51 - 57, XP010808036 *
RUTH P. ET AL.: "VioCluster: Virtualization for Dynamic Computational Domains", CLUSTER COMPUTING, 2005. IEEE INTERNATIONAL, September 2005 (2005-09-01), pages 1 - 10, XP031078113 *
See also references of EP2037362A4

Cited By (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009169473A (ja) * 2008-01-10 2009-07-30 Nec Corp モジュール配置装置並びにモジュール配置方法並びにプログラム
JP2009199395A (ja) * 2008-02-22 2009-09-03 Nec Corp 仮想サーバ管理装置および仮想サーバ管理方法
JP2009217434A (ja) * 2008-03-10 2009-09-24 Fujitsu Ltd 資源割り当て方法及び装置並びにプログラム
JP2009223497A (ja) * 2008-03-14 2009-10-01 Nec Corp 管理マシン、管理システム、管理プログラム、および、管理方法
US8572621B2 (en) 2008-03-14 2013-10-29 Nec Corporation Selection of server for relocation of application program based on largest number of algorithms with identical output using selected server resource criteria
JP2009237859A (ja) * 2008-03-27 2009-10-15 Nec Corp 仮想マシン管理システム
JP2009252204A (ja) * 2008-04-11 2009-10-29 Hitachi Ltd 計算機の運用管理システム及び運用管理方法
US20100050172A1 (en) * 2008-08-22 2010-02-25 James Michael Ferris Methods and systems for optimizing resource usage for cloud-based networks
US9842004B2 (en) * 2008-08-22 2017-12-12 Red Hat, Inc. Adjusting resource usage for cloud-based networks
JP2010108260A (ja) * 2008-10-30 2010-05-13 Fujitsu Ltd 仮想計算機システム及びその管理方法、プログラム並びに記録媒体
JP2010117760A (ja) * 2008-11-11 2010-05-27 Hitachi Ltd 仮想マシン移動管理サーバおよび仮想マシン移動方法
JP2010122805A (ja) * 2008-11-18 2010-06-03 Hitachi Ltd 仮想サーバシステム並びに物理cpu及び物理メモリの割り当て方法
KR101277273B1 (ko) * 2008-12-08 2013-06-20 한국전자통신연구원 자원 관리 시스템을 이용한 단말 장치간 자원 할당 방법 및 이를 위한 자원 관리 서버
JP2010140134A (ja) * 2008-12-10 2010-06-24 Hitachi Ltd 仮想マシン管理方法、プログラムおよび管理サーバ
EP2368182B1 (en) * 2008-12-19 2020-01-01 Citrix Systems, Inc. Systems and methods for facilitating migration of virtual machines among a plurality of physical machines
JP5159898B2 (ja) * 2009-01-06 2013-03-13 三菱電機株式会社 管理装置及び管理方法及びプログラム
JPWO2010079587A1 (ja) * 2009-01-06 2012-06-21 三菱電機株式会社 管理装置及び管理方法及びプログラム
US8984123B2 (en) 2009-04-23 2015-03-17 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
US8789045B2 (en) 2009-04-23 2014-07-22 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
JP2012525641A (ja) * 2009-04-30 2012-10-22 マイクロソフト コーポレーション アプリケーション効率エンジン
WO2010140194A1 (ja) * 2009-06-05 2010-12-09 富士通株式会社 情報処理システムの管理方法、情報処理システム、記録媒体、管理プログラム
CN102473170A (zh) * 2009-07-24 2012-05-23 惠普开发有限公司 基于虚拟机的应用服务供应
US11132237B2 (en) 2009-09-24 2021-09-28 Oracle International Corporation System and method for usage-based application licensing in a hypervisor virtual execution environment
JP2013506194A (ja) * 2009-09-24 2013-02-21 オラクル・インターナショナル・コーポレイション ハイパーバイザ仮想実行環境における利用ベースのアプリケーション使用許諾のためのシステムおよび方法
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2011227729A (ja) * 2010-04-20 2011-11-10 Nec Corp 管理サーバおよび仮想マシン配置制御方法
JP2011253523A (ja) * 2010-06-01 2011-12-15 International Business Maschines Corporation 仮想化環境のための管理システム、方法、およびコンピュータ・プログラム
JP2012088808A (ja) * 2010-10-15 2012-05-10 Fujitsu Ltd 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
JPWO2012053393A1 (ja) * 2010-10-19 2014-02-24 株式会社日立製作所 仮想計算機を配置する方法及び装置
WO2012056609A1 (ja) * 2010-10-28 2012-05-03 日本電気株式会社 タスク配置最適化システム、タスク配置最適化方法、及びタスク配置最適化プログラムが格納された非一時的なコンピュータ可読媒体
JP5786863B2 (ja) * 2010-10-28 2015-09-30 日本電気株式会社 タスク配置最適化システム、タスク配置最適化方法、及びタスク配置最適化プログラム
US9384053B2 (en) 2010-10-28 2016-07-05 Nec Corporation Task allocation optimization system, task allocation optimization method, and non-transitory computer readable medium storing task allocation optimization program
JP5981845B2 (ja) * 2011-03-02 2016-08-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 仮想計算機システム、仮想計算機制御方法、仮想計算機制御プログラム、及び半導体集積回路
JP5412599B2 (ja) * 2011-03-03 2014-02-12 株式会社日立製作所 計算機システム、および、計算機システムにおける仮想計算機の最適配置方法
WO2012117453A1 (ja) * 2011-03-03 2012-09-07 株式会社日立製作所 計算機システム、および、計算機システムにおける仮想計算機の最適配置方法
JPWO2012117453A1 (ja) * 2011-03-03 2014-07-07 株式会社日立製作所 計算機システム、および、計算機システムにおける仮想計算機の最適配置方法
JP2012194868A (ja) * 2011-03-17 2012-10-11 Ntt Data Corp 移動要求装置、移動要求方法、移動要求プログラム
JP2012221049A (ja) * 2011-04-05 2012-11-12 Hitachi Ltd データセンタシステム管理方法、データセンタシステム、及び管理装置
JP2013127685A (ja) * 2011-12-19 2013-06-27 Hitachi Ltd 情報処理システムおよび運用管理方法
JP2013196695A (ja) * 2012-03-15 2013-09-30 Hon Hai Precision Industry Co Ltd 仮想マシン割り当てシステム及びその方法
JP2013206379A (ja) * 2012-03-29 2013-10-07 Nec Corp クラスタ監視装置、クラスタ監視方法、及びプログラム
WO2013171944A1 (ja) * 2012-05-15 2013-11-21 日本電気株式会社 仮想マシン管理システム、仮想マシン管理方法およびプログラム
JP2015532992A (ja) * 2012-09-20 2015-11-16 アマゾン テクノロジーズ インコーポレーテッド リソース使用の自動プロファイル化
JP2014102740A (ja) * 2012-11-21 2014-06-05 Fujitsu Ltd 情報処理方法、プログラム、情報処理装置、及び情報処理システム。
US9223636B2 (en) 2013-01-08 2015-12-29 International Business Machines Corporation Low-risk server consolidation
US10157073B2 (en) 2013-05-29 2018-12-18 Nec Corporation Virtual-machine control device, virtual-machine control method, computer-readable recording medium recording program for virtual-machine control method, and data center
CN105378669A (zh) * 2013-07-19 2016-03-02 惠普发展公司,有限责任合伙企业 虚拟机资源管理系统及其方法
JP2016053781A (ja) * 2014-09-03 2016-04-14 日本電信電話株式会社 分散アプリケーション配置システム
WO2016174717A1 (ja) * 2015-04-27 2016-11-03 三菱電機株式会社 情報処理装置及びリソース割り当て方法及びリソース割り当てプログラム
JP5968563B1 (ja) * 2015-04-27 2016-08-10 三菱電機株式会社 情報処理装置及びリソース割り当て方法及びリソース割り当てプログラム
JP2017130005A (ja) * 2016-01-20 2017-07-27 日本電信電話株式会社 管理装置、および、ソフトウェアコンポーネントグルーピング方法
US11119815B2 (en) 2017-01-19 2021-09-14 Fujitsu Limited Management apparatus, control method of calculation resources, and storage medium
JP2020016910A (ja) * 2018-07-23 2020-01-30 日本電信電話株式会社 リソース割当装置、リソース管理システム、および、リソース割当プログラム
WO2020022018A1 (ja) * 2018-07-23 2020-01-30 日本電信電話株式会社 リソース割当装置、リソース管理システム、および、リソース割当プログラム
JP7037059B2 (ja) 2018-07-23 2022-03-16 日本電信電話株式会社 リソース管理システム、および、リソース割当プログラム
US11762704B2 (en) 2018-07-23 2023-09-19 Nippon Telegraph And Telephone Corporation Resource allocation device, resource management system, and resource allocation program
JP2020052730A (ja) * 2018-09-27 2020-04-02 株式会社日立製作所 Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
JP2022003577A (ja) * 2018-09-27 2022-01-11 株式会社日立製作所 Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
JP7118230B2 (ja) 2018-09-27 2022-08-15 株式会社日立製作所 Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
US20200382232A1 (en) * 2019-05-29 2020-12-03 CEO Vision, Inc (dba Croquet Studios) Systems and methods for secure, low bandwidth replicated virtual worlds for shared space computing
US11909517B2 (en) * 2019-05-29 2024-02-20 CEO Vision, Inc Systems and methods for secure, low bandwidth replicated virtual worlds for shared space computing
US11507987B2 (en) * 2020-03-16 2022-11-22 Fujitsu Limited Non-transitory computer-readable recording medium and charge calculation method

Also Published As

Publication number Publication date
EP2037362A1 (en) 2009-03-18
EP2037362A4 (en) 2012-04-18
US20090210527A1 (en) 2009-08-20
US8112527B2 (en) 2012-02-07
JPWO2007136021A1 (ja) 2009-10-01
JP5110315B2 (ja) 2012-12-26

Similar Documents

Publication Publication Date Title
WO2007136021A1 (ja) 仮想マシン管理装置、仮想マシン管理方法およびプログラム
Akkus et al. {SAND}: Towards {High-Performance} serverless computing
US11038778B2 (en) Methods and systems that provision distributed applications that invoke functions provided by a distributed-function-as-a-service feature
US10684893B2 (en) Methods and apparatus to manage compute resources in a hyperconverged infrastructure computing environment
US11188392B2 (en) Scheduling system for computational work on heterogeneous hardware
Yu et al. Testing as a Service over Cloud
JP6258494B2 (ja) 仮想コンピュータ処理のインスタンス移動
JP6658882B2 (ja) 制御装置、vnf配置先選択方法及びプログラム
US9183034B2 (en) Managing availability of virtual machines in cloud computing services
US11740921B2 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
US11924117B2 (en) Automated local scaling of compute instances
JP2010205209A (ja) 管理計算機、計算機システム、物理リソース割り当て方法
WO2015132753A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
JPWO2011083673A1 (ja) 構成情報管理システム、構成情報管理方法、及び構成情報管理用プログラム
CN112130960A (zh) 一种轻量化移动边缘计算节点及构建方法
CN106789308A (zh) 一种微服务架构可自动伸缩的gis服务装置及其控制方法
CN110489305B (zh) 一种服务器管理方法及装置
Anglano et al. Prometheus: A flexible toolkit for the experimentation with virtualized infrastructures
CN105677481A (zh) 一种数据处理方法、系统及电子设备
CN116578416B (zh) 一种基于gpu虚拟化的信号级仿真加速方法
Caruana et al. gSched: a resource aware Hadoop scheduler for heterogeneous cloud computing environments
CN115731093A (zh) 加速设备的调度方法、装置、电子设备和存储介质
CN118056183A (zh) 优化即时编译过程
CN112889247B (zh) Vnf服务实例化方法及装置
CN117472516B (zh) 虚拟资源调度方法、装置、集群系统、电子设备和介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07743746

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2008516678

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12227481

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2007743746

Country of ref document: EP