WO2011007463A1 - 情報処理システム、情報処理方法および記憶媒体 - Google Patents

情報処理システム、情報処理方法および記憶媒体 Download PDF

Info

Publication number
WO2011007463A1
WO2011007463A1 PCT/JP2010/000284 JP2010000284W WO2011007463A1 WO 2011007463 A1 WO2011007463 A1 WO 2011007463A1 JP 2010000284 W JP2010000284 W JP 2010000284W WO 2011007463 A1 WO2011007463 A1 WO 2011007463A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
load
resource amount
test program
information
Prior art date
Application number
PCT/JP2010/000284
Other languages
English (en)
French (fr)
Inventor
柳沢満
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2011522681A priority Critical patent/JP5522171B2/ja
Priority to US13/384,080 priority patent/US8819174B2/en
Publication of WO2011007463A1 publication Critical patent/WO2011007463A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Definitions

  • the present invention relates to an information processing system, an information processing method, and a storage medium.
  • an information processing system, an information processing method, and a memory capable of estimating the load of a virtual machine running on one server and reproducing the load on one server in parallel with the above estimation on another server It relates to the medium.
  • Patent Document 1 Japanese Patent Laid-Open No. 2008-146313 discloses the following technology. Here, it demonstrates using FIG. 1 of patent document 1.
  • FIG. The production server 10 is a computer that performs production work.
  • the standby server 20 is a computer that takes over production work from the production server 10 when a failure occurs in the production server 10.
  • the new server 30 is a computer to be newly introduced.
  • the management terminal 40 is a computer used by an administrator who evaluates the performance of the new server 30.
  • the communication network 50 is, for example, the Internet or a LAN (Local Area Network).
  • the management terminal 40 receives an input of a benchmark program that provides an input data generation function for generating input data and a CPU load generation function that uses a CPU of a computer in accordance with the input data. Then, each of the standby server 20 and the new server 30 is caused to execute a benchmark program.
  • the standby server 20 measures the processing load on the standby server 20 associated with the execution of the benchmark program.
  • the new server 30 measures the processing load on the new server 30 accompanying execution of the benchmark program.
  • the management terminal 40 realizes a load simulation that can easily evaluate the performance of the computer by outputting the processing load of the standby server 20 and the processing load of the new server 30.
  • an application program (benchmark program) that simulates the operation of a production service application program executed on the production server 10 with a high processing load is installed in the new server 30.
  • the processing load (resource consumption) when the same input data as that of the production server 10 is executed by the benchmark program is measured. Thereby, the processing load equivalent to the case where the application program for production business is executed can be reproduced by the new server 30.
  • Patent Document 1 also discloses that the same processing can be performed as a virtual machine instead of an application program.
  • Patent Document 1 when Patent Document 1 is applied to a virtual machine, there is a problem in the reproducibility of the processing load. That is, the factors related to the operation of the virtual machine are more complex than those of the application program. Therefore, even if input data is generated in advance under certain conditions and the processing load is reproduced based on the input data, it is relatively unlikely that the virtual machine will be executed under exactly the same conditions. The consistency with the load is low.
  • the present invention has been made in view of the above circumstances, and its purpose is to execute the virtual machine on the other server, reflecting the processing load of the virtual machine actually running on one server.
  • An object is to provide an information processing system, an information processing method, and a storage medium that reproduce the processing load in the case.
  • a first server and a second server that are communicable via a network wherein the first server executes an execution unit that executes a virtual machine, and the execution unit executes the virtual machine.
  • Load information transmitting means for transmitting, to the second server, load information indicating the processing load generated in the first server with execution of the virtual machine, the second server,
  • an information processing system including load generating means for generating a processing load based on the load information received from the first server.
  • the first server when the first server executes the virtual machine and when the virtual machine is executed in the execution step, the first server generates the virtual machine along with the execution of the virtual machine.
  • a load information transmission step for transmitting load information indicating the processing load to the second server via the network, and a load generation step for generating a processing load based on the load information received from the first server.
  • a storage medium storing a program executed by a first server and a second server that can communicate via a network, and causing the first server to execute a virtual machine. And when the virtual machine is being executed by the execution process, load information that causes the second server to transmit load information indicating a processing load generated in the first server as the virtual machine is executed.
  • the program that causes either the first server or the second server to execute a process and a load generation process that causes the second server to generate a processing load based on the load information received from the first server.
  • a storage medium is provided that is characterized by being stored.
  • an information processing system, an information processing method, and an information processing system that reflect the processing load of a virtual machine that is actually running on one server and reproduce the processing load when the virtual machine is executed on the other server A storage medium is provided.
  • 1 is a configuration diagram of an information processing system according to a first embodiment. It is a figure which shows the architecture of the server with which the information processing system of 1st Embodiment is provided. It is a flowchart which shows the information processing method applied to the information processing system of 1st Embodiment. It is a block diagram of the information processing system of 2nd Embodiment. It is a flowchart which shows the information processing method applied to the information processing system of 2nd Embodiment. It is a flowchart which shows the information processing method applied to the information processing system of 2nd Embodiment. It is a block diagram of the information processing system of 3rd Embodiment.
  • 10 is a flowchart showing the operation of the management server when moving a performance measurement virtual machine to server A. It is a flowchart showing operation
  • movement of the virtual machine for performance measurement. 10 is a flowchart showing the operation of the management server showing the operation of the management server when moving the performance measurement virtual machine to the server B.
  • FIG. 1 is a configuration diagram of an information processing system 1000 according to the first embodiment.
  • the information processing system 1000 of this embodiment includes a server A100 and a server B200 that can communicate via a network 500.
  • Server A100 and server B200 include CPUs 110 and 210 and storage units 120 and 220, respectively.
  • the CPU 110 can read and process programs and data stored in the storage unit 120 and write the processed programs and data into the storage unit 120.
  • the CPU 210 can read and process programs and data stored in the storage unit 220 and write the processed programs and data into the storage unit 220.
  • the server A100 and the server B200 include communication units 130 and 230, respectively.
  • the communication unit 130 can transmit programs, data, and the like processed by the CPU 110 to other devices such as the server B 200 via the network 500, and can receive programs, data, and the like from other devices via the network 500.
  • the communication unit 230 transmits programs and data processed by the CPU 210 to other devices such as the server A 100 via the network 500, and receives programs and data from other devices via the network 500. can do.
  • the storage unit 120 of the server A100 provides a host OS 121 that is an operation system installed in the server A100, a virtual machine 123 that is software for creating virtual hardware, and an environment in which the virtual machine 123 can be executed on the host OS 121. And a guest OS 124 which is an operation system installed in the virtual machine 123 is stored.
  • the CPU 110 accesses the storage unit 120 and executes the host OS 121, the virtualization software 122, and the virtual machine 123, thereby realizing virtual hardware (virtual machine 123) on the server A100. Can do. That is, in this embodiment, the CPU 110, the host OS 121, and the virtualization software 122 function as the execution unit of the present invention.
  • the storage unit 120 further stores application software 126 executed on the guest OS 124 and application software 125 executed on the host OS 121.
  • FIG. 2 is a diagram showing the architecture of the server A100.
  • a hardware resource provided by the server A 100 exists in the lowest layer, and a host OS 121 exists on the hardware resource.
  • application software 125 and virtualization software 122 are executed on the host OS 121.
  • the server A 100 executes the virtual machine 123 on the virtualization software 122, and the guest OS 124 is executed on the virtual machine 123.
  • application software 126 is executed on the guest OS 124.
  • the server A 100 can execute the application software 125 and the application software 126 at different layers in the above architecture. However, actually, the application software 125 and the application software 126 stored in the storage unit 120 are only executed by the CPU 110 included in the server A100.
  • the server A100 can transmit load information indicating the processing load generated in the server A100 as the virtual machine 123 is executed to the server B200.
  • the usage rate of the resources used by the virtual machine 123 collected by the resource management function of the host OS 121 is processed as load information, and the communication unit 130.
  • the server B200 the CPU 110, the communication unit 130, the virtual machine 123, and the host OS 121 function as the load information transmission unit of the present invention.
  • the resource usage rate is, for example, the usage rate R n of the CPU 110 (the processing load of the CPU 110 accompanying the execution of the virtual machine 123 at a certain time point / the maximum allowable processing load of the CPU 110).
  • n is a positive integer.
  • the processing load generated in the server A 100 due to the execution of the virtual machine 123 is not only the execution of the virtual machine 123 but also the guest OS 124 executed in the hierarchy above the virtual machine 123 and The processing load accompanying execution of the application software 126 is also included.
  • the storage unit 220 included in the server B200 stores a host OS 221 that is an operation system installed in the server B200.
  • the storage unit 220 stores a test program 223 that generates a processing load based on the load information received from the server A100.
  • the test program 223 is executed on the host OS 221.
  • the communication unit 230 receives load information from the server A 100, the load information is processed by the CPU 210 and stored in the storage unit 220.
  • the CPU 210 reads and executes the test program 223 stored in the storage unit 220.
  • the test program 223 first collects data indicating the maximum amount of resources of the server B200.
  • the data indicating the maximum amount of resources is, for example, the maximum allowable processing load M of the CPU 210. In the present embodiment, it is assumed that these data are managed by the host OS 221.
  • the test program 223 calculates a target resource amount using the following equation (1) for the received load information and collected data.
  • V n used in the following equation (1) is a predicted value of the processing load generated in the server B 200 when the server B 200 causes the virtual machine 123 to execute, and the processing load given to the CPU 210 by the test program 223. It is a target value.
  • test program 223, the processing load of the CPU host OS221 is managed, to generate a processing load until the calculated target value V n.
  • the test program 223 can generate a processing load that is predicted to occur in the server B 200 when the server B 200 executes the virtual machine 123. That is, in the present embodiment, the CPU 210, the host OS 221 and the test program 223 function as the load generation unit of the present invention.
  • timing at which the server A 100 transmits the load information is any time when the virtual machine 123 is being executed.
  • the server A100 intermittently transmits load information to the server B200.
  • the server B 200 (CPU 210) executes the test program 223, and the test program 223 increases or decreases the processing load generated each time load information is received from the server A 100 according to the received load information. Let In the present embodiment, it is assumed that the intermittently transmitted every interval T 1 constant time, or may be randomly not limited thereto.
  • test program 223 uses the equation (1) for the newly received usage rate R n of the CPU 110 and the maximum allowable processing load M of the CPU 210 to set the new processing load target value V n .
  • the CPU 210 generates a processing load corresponding to the calculation.
  • the information processing system 1000 realizes the execution means, load information transmission means, and load generation means of the present invention when the CPU 110 or the CPU 210 executes software.
  • the information processing system 1000 causes the server A 100 to execute the virtual machine 123 when the virtual machine 123 is executed by the execution process that causes the server A 100 to execute the virtual machine 123 and the execution process.
  • the server A100 (CPU 110) or the server B200 includes a load information transmission process that causes the server B200 to transmit load information indicating a processing load and a load generation process that causes the server B200 to generate a processing load based on the load information received from the server A100. This is realized by a program executed by any of (CPU 210).
  • FIG. 3 is a flowchart showing an information processing method applied to the information processing system 1000 of the present embodiment.
  • This information processing method includes an execution step (step S1) in which the server A100 executes the virtual machine 123.
  • this information processing method displays the load information indicating the processing load generated in the server A100 as the virtual machine 123 is executed in the network 500.
  • the load information transmission step (step S2) which transmits to server B200 via is provided.
  • this information processing method includes a load generation step (step S3) for generating a processing load based on the load information received from the server A100 by the server B200.
  • Load information transmission step from (step S2) is executed until the time T 1 is elapsed (NO in step S4), and the server B200 may continue generation of was generated by the load generation step (Step S3) processing load.
  • Step S2 Load information transmission step when the time T 1 from (step S2) is executed has elapsed (YES in step S4), and the server A100 again executes the load information transmitting step (step S2).
  • step S3 Each time the server B 200 receives the load information transmitted in the load information transmission step (step S2), the load generation step (step S3) newly predicts the processing load according to the received load information and generates the load information. Increase or decrease the processing load.
  • This information processing method is repeatedly executed while the virtual machine executed in the execution step (step S1) is operating (NO in step S5). However, this information processing method ends when the virtual machine stops (YES in step S5).
  • processing that is predicted to occur when the virtual machine 123 is executed by the server A100 information indicating the processing load is transmitted from the server A100 to the server B200, and the server B200 executes the virtual machine 123 based on the received information. Generate a load.
  • the server B 200 can reproduce the processing load when the virtual machine 123 is executed by reflecting the processing load of the virtual machine 123 that is actually being executed by the server A 100.
  • the server A100 intermittently transmits load information, and the server B200 newly predicts a processing load based on the load information and increases / decreases the generated processing load.
  • the server B 200 can reproduce the processing load generated by the virtual machine 123 in the server A 100 in substantially real time.
  • substantially real time means that there is a slight time lag due to various information transmissions and information processing, so that it is not complete real time. Therefore, even if the environmental conditions including the network 500 change from time to time and the resource amount of the server A100 used by the virtual machine 123 changes, the server B200 can reproduce the processing load according to the change.
  • FIG. 4 is a configuration diagram of an information processing system 2000 according to the second embodiment.
  • the information processing system 2000 includes a server A 100, a server B 200, a server C 300, and a management server 400, which are communicably connected via a network 500.
  • the server A100 is an apparatus equivalent to the server A100 of the first embodiment.
  • the server B200 is an apparatus equivalent to the server B200 of the first embodiment, but the test program 223 is not stored in the storage unit 220.
  • the server C300 is an apparatus equivalent to the server B200 of this embodiment, and includes a CPU 310, a storage unit 320, and a communication unit 330.
  • the storage unit 320 stores a host OS 321 that is an operation system installed in the server C300. is doing.
  • the management server 400 includes a CPU 410, a storage unit 420, a communication unit 430, an operation input unit 440, and a display unit 450.
  • the storage unit 420 stores a host OS 421 that is an operation system installed in the management server 400, and further stores a management program 422 and test programs 423 and 424. Note that the test program 423 and the test program 424 are equivalent programs.
  • the display unit 450 displays and outputs an operation screen and the like to the operator of the information processing system 2000. Specifically, a display apparatus etc. are mentioned.
  • the operation input unit 440 receives an operation input from the operator of the information processing system 2000. Specific examples include a keyboard, a mouse pad, and a touch panel. Note that the management server 400 may appropriately display an operation screen on the display unit 450 in order to receive an operator's operation input from the operation input unit 440.
  • Test program 423 and the test program 424 generates a processing load in response to an input index value I n, increase or decrease the processing load of generating the magnitude of the index value I n.
  • index value I n is a generic name of an index value used to generate the processing load on the test program of the present invention, individually index value appearing in the text below I 1 and I A, etc. and n They are distinguished from each other by assigning numerical values or letters instead of.
  • the management server 400 operates as follows when the management program 422 is executed by the CPU 410. First, the management server 400 transmits the test program 423 or the test program 424 to the server B200 or the server C300 selected according to the operation input received by the operation input unit 440. Here, it is assumed that the test program 423 is transmitted to the server B200 and the test program 424 is transmitted to the server C300. That is, the management server 400 that executes the management program 422 functions as a test program transmission unit of the present invention.
  • the server B 200 stores the test program 423 in a part of the storage area of the storage unit 220. Further, the server C300 stores the test program 424 in a part of the storage area of the storage unit 320. That is, the storage unit 220 and the storage unit 320 function as a test program storage unit of the present invention.
  • the management server 400 that executes the management program 422 transmits a request for transmitting load information to the server A100 to the server B200 that transmitted the test program 423 and the server C300 that transmitted the test program 424. That is, the management server 400 that executes the management program 422 functions as a load information transmission request unit of the present invention.
  • the server A100 transmits load information to the server B200 and the server C300 in response to the received request.
  • the server A100 if you enter the first index value I 1 in the test program 423 or 424 in the server A100, the amount of resources of the server A100 to test program 423 or 424 is used by the processing load of generating
  • the first resource amount P 1 indicating the first index value I 1 is stored in advance in a part of the storage area of the storage unit 120. That is, the storage unit 120 functions as a calculation reference storage unit of the present invention.
  • the server A 100 executes the test program 423 or a test program equivalent to the first resource amount P 1 before executing the virtual machine. 1 and the first index value I 1 may be acquired by measuring the. Or, the server A100, the amount of the first resource P 1 and a first index value I 1 from the outside of the device may be received via a network 500.
  • the server A100 obtains the second resource amount P 2 indicating the amount of resources of the server A100 used by the virtual machine 123 is executed. Furthermore, the server A100 is based on the second index value I 2 corresponding to the second resource amount P 2 obtained, to the first resource amount P 1 stored in the storage unit 120 and the first index value I 1 calculated Te, to the server B200 or server C300 a second index value I 2 which is calculated as the load information.
  • the server A100 is the second resource amount P 2 obtained, the second by multiplying the first index value I 1 and the ratio of the first resource amount P 1 to calculate the index value I 2. That is, the following equation (2) is obtained.
  • the server B 200 reads the test program 423 from the storage unit 220 and inputs the index value (second index value I 2 ) received from the server A 100 to the read test program 423 to generate a processing load.
  • the server C300 reads the test program 424 from the storage unit 320, and inputs the index value (second index value I 2 ) received from the server A100 to the read test program 424 to generate a processing load.
  • Server B200 transmits the third resource amount P 31 indicating the amount of resources of the server B200 used by caused the processing load on the management server 400.
  • the server C300 transmits the third resource amount P 32 indicating the amount of resources of the server C300 used by caused the processing load on the management server 400.
  • the time interval at which the server B 200 transmits the third resource amount P 31 or the time interval at which the server C 300 transmits the third resource amount P 32 may be constant or random.
  • each server (server B200, server C300) in shall be transmitted at the time interval T 2.
  • the management server 400 that executes the management program 422 receives the third resource amounts P 31 and P 32 from the server B 200 that has received the test program 423 or the server C 300 that has received the test program 424. Then, the management server 400 displays the received third resource amounts P 31 and P 32 on the display unit 450 and presents them to the administrator. That is, the management server 400 that executes the management program 422 functions as a resource amount receiving unit and a resource amount presenting unit of the present invention.
  • the management server 400 intermittently receives the third resource amounts P 31 and P 32 from the server B 200 or the server C 300. Then, every time the management server 400 receives the third resource amounts P 31 and P 32 , the management server 400 presents the received third resource amounts P 31 and P 32 to the administrator.
  • intermittent means that the time interval may be constant or random.
  • the server B 200 or the server C 300 transmits the third resource amounts P 31 and P 32 at the time interval T 2 , respectively, and these are not synchronized. Therefore, the management server 400 has the third resource amount P 31 , receiving a P 32 at different time intervals.
  • FIG. 5 is a flowchart of an information processing method applied to the information processing system 2000 of the second embodiment.
  • the information processing method includes a first shown if you enter the first index value I 1 in the test program 423 and 424 in the server A100, the amount of resources of the server A100 to be used by the processing load test program 423, 424 is to generate comprises one resource amount P 1, calculation reference storage step of storing in association with the first index value I 1 a (step S101).
  • This information processing method includes an execution step (step S102) in which the server A100 executes the virtual machine 123.
  • the server A100 may autonomously execute the virtual machine 123, or may receive an execution request from the management server 400 and execute the virtual machine 123 accordingly.
  • the management server 400 that receives an operation input from the administrator transmits a test program 423 or a test program 424 to the server B 200 or the server C 300 selected according to the received operation input ( Step S103).
  • the management server 400 transmits the test program 423 to the server B200 and transmits the test program 424 to the server C300.
  • the server B200 stores the received test program 423 in the storage unit 220
  • the server C300 stores the received test program 424 in the storage unit 320.
  • the management server 400 transmits a load information transmission request to the server A100 to the server B200 and the server C300 to which the test programs 423 and 424 are transmitted in the test program transmission step (step S103).
  • a request step (step S104) is provided.
  • This information processing method includes a load information transmission step (step S105) in which the server A100 transmits load information to the server B200 and the server C300 in response to the request transmitted in the load information transmission request step (step S104).
  • the server A100 transmits the index value I n to be input to the test program 423 or the test program 424 as the load information. More specifically, in the load information transmitting step (step S105), obtains the second resource amount P 2 indicating the amount of resources of the server A100 used by the virtual machine 123 is executed, the second resource acquired The second index value I 2 corresponding to the amount P 2 is calculated based on the first resource amount P 1 and the first index value I 1 stored in the calculation reference storing step (step S101), and the calculated second index value I 2 is calculated. to the server B200 index values I 2 as load information.
  • the server B200 or the server C300 reads the test program 423 or the test program 424, and reads the index value (second index value I 2 ) transmitted in the load information transmission step (step S105). 423 or a test program 424, and a load generation step (step S106) for generating a processing load.
  • Load information transmitting step up step S105) time T 1 after is executed has elapsed (NO in step S107), the server B200 and the server C300 continues to occurrence of generated in the load generating step (step S106) the processing load .
  • Load information transmitting step (step S105) is when the time T 1 from being executed has elapsed (YES in step S107), the server A100 again executes the load information transmitting step (step S105).
  • the server B200 or the server C300 receives the load information transmitted in the load information transmission step (step S105)
  • the server B200 or the server C300 generates the load information in the load generation step (step S106) according to the received load information. Increase or decrease the processing load.
  • This information processing method is repeatedly executed while the virtual machine 123 executed in the execution step (step S102) is operating (NO in step S108). However, this information processing method ends when the virtual machine 123 stops (YES in step S108).
  • FIG. 6 is a flowchart of an information processing method applied to the information processing system 2000 according to the second embodiment.
  • This information processing method indicates the third resource amount P 31 indicating the amount of resources of the server B 200 or the amount of resources of the server C 300 used by the processing load generated by the management server 400 in the load generating step (step S106). comprising a resource amount receiving step of receiving a third resource amount P 32 (step S202).
  • the management server 400 receives the third resource amounts P 31 and P 32 from the server B 200 that has received the test program 423 or the server C 300 that has received the test program 424, respectively. .
  • the information processing method further includes a resource amount presentation step (step S203) in which the management server 400 presents the third resource amounts P 31 and P 32 received in the resource amount reception step (step S202) to the administrator.
  • step S201 While the third resource amounts P 31 and P 32 are newly received from the server B 200 or the server C 300 (NO in step S201), this information processing method is in a standby state.
  • the process proceeds to a resource amount receiving step (step S202). Then, the resource amount receiving step (step S202) is repeated intermittently.
  • step S203 each time the third resource amounts P 31 and P 32 are received, the received third resource amounts P 31 and P 32 are presented to the administrator.
  • This information processing method is repeatedly executed while the virtual machine executed in the execution step (step S102) is operating (NO in step S204), as in the flowchart shown in FIG. However, this information processing method ends when the virtual machine is stopped (YES in step S204).
  • the server A100 transmits the index value I n as the load information
  • the server B200 or server C300 generates a running by entering the index value I n received test program processing load.
  • the server A100 may be transmitted by the same index value I n each server B200 or server C300, the arithmetic processing can be reduced, the data capacity of the load information transmitted and received between the server is reduced.
  • the server B200 or the server C300 the prior processing for generating the load is reduced, and the processing load can be generated promptly. Therefore, the time lag from when the processing load caused by the virtual machine 123 occurs in the server A100 to when the processing load is reproduced in the server B200 or the server C300 is reduced, and reproduction close to real time is possible.
  • the server A100 is because the pre-stored first resource amount P 1 and a first index value I 1 in association with the process of calculating the second index value I 2 is simplified Alleviated. Therefore, the time lag from when the processing load due to the virtual machine 123 occurs in the server A100 to when the processing load is reproduced in the server B200 or the server C300 is reduced, and reproduction close to real time is possible.
  • the test program can be transmitted to a server selected according to an operation input by the operator.
  • the processing load of the virtual machine 123 can be reproduced according to the intention of the operator.
  • the resource amount used by the reproduced processing load can be presented to the operator.
  • the operator can check the amount of resources used by the reproduced processing load.
  • a plurality of servers can execute the equivalent test program to reproduce the processing load of the virtual machine 123.
  • the processing load of the virtual machine 123 can be reproduced in a plurality of servers in parallel.
  • FIG. 7 is a configuration diagram of an information processing system 3000 according to the third embodiment.
  • Server A100, server B200, server C300, server D600, management server 400, and server E700 are communicably connected via a network 500.
  • Server A100, server B200, server C300, management server 400, server D600, and server E700 each include a CPU 110, a CPU 210, a CPU 310, a CPU 410, a CPU 610, and a CPU 710, and each CPU has the same processing performance.
  • the processing performance may be different.
  • the server A100, server B200, server C300, management server 400, server D600, and server E700 each include a storage unit 120, a storage unit 220, a storage unit 320, a storage unit 420, a storage unit 620, and a storage unit 720.
  • the storage units may have the same storage capacity or different storage capacities.
  • the server A100, the server B200, the server C300, the management server 400, the server D600, and the server E700 each include a communication unit 130, a communication unit 230, a communication unit 330, a communication unit 430, a communication unit 630, and a communication unit 730.
  • the amount of communication that can be processed by each may be the same or different.
  • the storage unit 120 stores a host OS 121, virtualization software 122, and a virtual machine 123. Although not shown here, it is assumed that the virtual machine 123 includes software corresponding to the guest OS 124 and the application software 126 illustrated in FIG. 1 or 4.
  • the storage unit 220 stores a host OS 221 and virtualization software 222, and the server B200 has an environment in which virtual hardware such as the virtual machine 123 can be realized, like the server A100.
  • the storage unit 320 stores a host OS 321 and virtualization software 322, and the server C300 has an environment capable of realizing virtual hardware, similar to the server A100.
  • the storage unit 620 stores a host OS 621 and virtualization software 622, and the server D600 has an environment capable of realizing virtual hardware, like the server A100.
  • the storage unit 720 stores a host OS 721 and virtualization software 722, and the server E700 has an environment capable of realizing virtual hardware, like the server A100.
  • the management server 400 includes an operation input unit 440 and a display unit 450 in addition to the CPU 410, the storage unit 420, and the communication unit 430 described above.
  • the operation input unit 440 and the display unit 450 are the same as the operation input unit 440 and the display unit 450 of the second embodiment, respectively.
  • the storage unit 420 stores a performance measurement virtual machine 425.
  • the performance measurement virtual machine 425 is virtual hardware, and can execute a test program equivalent to the test program 423 described in the second embodiment on the virtual hardware.
  • the storage unit 420 stores a host OS 421 and a management program 422.
  • the management server 400 operates as follows.
  • FIG. 8 is a flowchart showing the operation of the management server 400 when moving the performance measurement virtual machine 425 to the server A100.
  • the management server 400 acquires from the server A100 the amount of resources used in connection with the execution of the virtual machine 123 in the server A100 (step T1).
  • the management server 400 copies the image of the performance measurement virtual machine 425 registered in the storage unit 420 onto the storage unit 720 of the server E700. Then, the management server 400 requests the server E700 to start the performance measurement virtual machine 425 (step T2).
  • the management server 400 requests the server A100 and the server D600 to save the virtual machine 123 running on the server A100 to the server D600 (step T3).
  • the management server 400 requests the server A100 and the server E700 to move the performance measurement virtual machine 425 on the server E700 to the server A100 (step T4).
  • the management server 400 requests the performance measurement virtual machine 425 moved on the server A100 to generate a processing load using the resource amount acquired in step T1 as a target value. At the same time, the management server 400 requests the server A 100 and the performance measurement virtual machine 425 to periodically acquire the amount of resources used in the execution of the performance measurement virtual machine 425 in the server A 100. (Step T5).
  • FIG. 9 is a flowchart showing the operation of the performance measurement virtual machine 425 executed on the server A100.
  • the performance measurement virtual machine 425 receives the request from the management server 400 in step T5 (step T101).
  • the performance measurement virtual machine 425 generates a processing load in response to the request received in step T101 (step T102).
  • the index value I F for the first time to be entered when starting the test program on performance measurement virtual machine 425 are assumed to be predetermined.
  • Index value I F for the first time may be provided for performance measurement virtual machine 425 from the management server 400 at step T5, it may be included in advance in the performance measurement for the virtual machine 425.
  • the performance measurement virtual machine 425 acquires the resource amount used in connection with the execution of the performance measurement virtual machine 425 in the server A100 in response to the request received in step T101 (step T103).
  • the performance measuring virtual machine 425 adds 1 to the value N of the resource amount acquisition count (step T104). If the value of N is equal to or greater than a predetermined number of skips (YES in step T105), the resource usage acquired in step T103 is employed (step T106). Further, (NO in Step T105) If the value of N is not reached the number skipping predetermined calculates an index value I A newly input performance measurement virtual machine 425 (step T112). Wait until step T103 is executed.
  • the performance measurement virtual machine 425 compares the latest resource amount adopted in step T106 with the resource amount adopted in the previous step T106, and determines whether or not the difference is within a predetermined allowable range. Determination is made (step T107). If the difference is not within the allowable range (NO in step T108), calculates an index value I A newly input performance measurement virtual machine 425 (step T112). The calculation here is also as described above.
  • step T108 When the difference falls within the range (YES in step T108), 1 is added to the value of the determination result good count X (step T109). Then, (NO in Step T110) If the value of X does not reach the number of continuations of predetermined calculates an index value I A newly input performance measurement virtual machine 425 (step T112). The calculation here is also as described above.
  • step T112 If the index value I A at step T112 is calculated, again it proceeds to step T102, the performance measurement for the virtual machine 425 inputs the calculated index value I A to a test program, increase or decrease the processing load that is generating Let Then, the steps after step T103 are repeatedly executed. Again step T105, when it is judged NO at step T108 or step T110, step T112, the index value I A input at step T102 as the current index value I B, calculates an index value I A to enter new .
  • the resource amount corresponding to the index value input at Step T102 (the index value I F for the first time, the index value I A calculated at Step T112 for the second and subsequent times) is obtained. I can do it. Also, the amount of resources acquired before reaching the processing load can be ignored by T105. Accuracy can be improved by keeping the load generated by T108 within a specified range. Whether or not the generated load is stable can be confirmed by T110. Further, the number of skips, the allowable range, and the number of continuations described above may be values fixed by default or values that can be changed as appropriate by the operator.
  • step T111 corresponds to the calculation reference storage step S101 described in the second embodiment.
  • FIG. 10 is a flowchart showing the operation of the management server 400 when the performance measurement virtual machine 425 is moved to the server B200.
  • the management server 400 stores an index value I B sent in step T113 in a part of the storage area of the storage unit 420 (step T201).
  • the management server 400 requests the server A100 and the server E700 to move the performance measurement virtual machine 425 on the server A100 to the server E700 (step T202).
  • step T203 the management server 400 requests the server D600 and the server A100 to move the virtual machine 123 on the server D600 to the server A100 (step T203).
  • the virtual machine 123 executed on the server D600 is executed on the server A100. That is, step T203 corresponds to step S102 described in the second embodiment.
  • the management server 400 When the management server 400 receives an operation input from the operator (step T204), the management server 400 requests the server selected according to the received operation input to move the performance measurement virtual machine 425 on the server E700. (Step T205).
  • the server B200 it is assumed that the server B200 is selected and the performance measurement virtual machine 425 moves to the server B200. Since the performance measurement virtual machine 425 can execute a test program equivalent to the test program 423 of the second embodiment, step T205 corresponds to step S103 of the second embodiment.
  • the management server 400 transmits an index value I B stored in step T201 to the performance measurement virtual machine 425, requests to run by entering the index value I B on the test program (step T206). That is, the management server 400 by sending an index value I B to the performance measurement virtual machine 425 to implement the test program execution request means of the present invention.
  • step T207 corresponds to step S104 of the second embodiment.
  • the index value I c is an index value corresponding to the resource amount that the performance measuring virtual machine 425 periodically acquires.
  • the processing load of the virtual machine 123 running on the server A100 can be reproduced on the server B200. This reproduction corresponds to step S105 to step S107 of the second embodiment.
  • the server A100 is obtained for each resource amount of time T 1 of the server A100 used by the virtual machine 123 is executed, it is acquired the index value I C corresponding to the resource amount, calculated on the basis of the resource amount and the index value I B stored in step T111, and transmits to the server B200 the calculated index value I C as the load information. Note that the above equation (2) is used for this calculation.
  • the server B 200 receives the index value I C from the server A 100, the server B 200 inputs the received index value I C to the test program of the performance measurement virtual machine 425 and increases or decreases the processing load with time.
  • processing related to reproduction is processing executed on the server A 100 (virtual machine 123) or the server B 200 (performance measurement virtual machine 425), and thus represents the operation of the management server 400 in FIG. It is not shown in the flowchart.
  • Management server 400 the performance measurement virtual machine 425 while it does not receive a third resource amount P 31 from (server B200) (NO in step T208), the management server 400 enters a standby state. Further, when the third resource amount P 31 is received from the performance measurement virtual machine 425 (server B 200) (YES in step T 208), the management server 400 performs reception processing of the third resource amount P 31 (step T 209). the third resource amount P 31 received, and display output by the display unit 450 presents to the operator (step T210). That is, the series of processing described in this paragraph corresponds to Step S201 to Step S203 of the second embodiment.
  • the management server 400 does not transmit a test program stop request to the performance measurement virtual machine 425 (NO in step T211), the above-described reproduction operation is repeatedly performed in the server A100 and the server B200.
  • the management server 400 transmits a test program stop request to the performance measurement virtual machine 425 (YES in step T211)
  • the performance measurement virtual machine 425 stops the test program, and the above-described reproduction operation ends.
  • the management server 400 since the management server 400 directly requests the execution of the test program, the generation timing of the processing load by the test program can be controlled. Accordingly, when the test program is executed in a plurality of servers, the start timing can be synchronized.
  • the copy of the performance measurement virtual machine 425 is moved to the server B 200 in a state where it is activated on another server, the processing load is quickly generated.
  • the present embodiment is to temporarily move the performance measurement for the virtual machine 425 to the server A100 calculates an index value I B, then move the performance measurement for the virtual machine 425 to the server B200, using the index value I B Since the processing load is generated, the processing load of the virtual machine 123 can be reproduced with high accuracy from the rising point of the processing load generation.
  • the processing load is generated based on the processing load and usage rate of the CPU 110 of the server A100, but the same processing may be executed based on the values related to other resources.
  • the other resources are, for example, the memory usage of the server A100, the storage capacity of the hard disk of the server A100, the communication volume between the server A100 and the network 500, and the like. Any of these may be used, or a plurality may be used in combination.
  • the server equivalent to the server B200 has been described with reference to only the server C300, but the number of servers equivalent to the server B200 may be further increased. Then, a test program equivalent to the test program 423 may be transmitted to each server to realize the same processing as the test program 423 in the second embodiment.
  • the server D600 as a server for saving the virtual machine 123
  • the server E700 as a server for pooling the performance measurement virtual machine 425
  • the server A100 as a server for executing the virtual machine 123
  • the performance measurement virtual machine 425 the description has been made by selecting the server B200 as the server to be executed, the present invention is not limited to this, and other combinations may be used.
  • the third resource amounts P 31 and P 32 are displayed and output using the display unit 450 as the resource amount presenting unit.
  • the present invention is not limited to this.
  • the third resource amounts P 31 and P 32 may be output as audio using a speaker.
  • the third resource amounts P 31 and P 32 may be printed out using a printing machine. A plurality of display outputs, audio outputs, or print outputs may be combined.
  • step T104 and step T105 are described to be executed every time the resource amount is acquired in step T103, but the present invention is not limited to this. Good.
  • the image of the performance measurement virtual machine 425 is copied to the storage unit of the other server of the movement destination.
  • the performance measurement virtual machine 425 itself can be moved.
  • the information processing method of the present invention describes a plurality of steps in order, the order of description does not limit the order in which the plurality of steps are executed. For this reason, when the information processing method of the present invention is executed, the order of the plurality of steps can be changed within a range that does not hinder the contents.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

 実際に一方のサーバで実行中の仮想マシンの処理負荷を反映して、他方のサーバで当該仮想マシンを実行した場合の処理負荷を再現する情報処理システムを提供する。情報処理システム(1000)は、ネットワーク(500)を介して通信可能なサーバA(100)とサーバB(200)とを備え、サーバA(100)は、仮想マシン(123)を実行し、仮想マシン(123)が実行されているとき、当該仮想マシン(123)の実行に伴ってサーバA(100)に発生している処理負荷を示す負荷情報をサーバB(200)に送信し、サーバB(200)は、サーバA(100)から受信した負荷情報に基づいて処理負荷を発生させる。

Description

情報処理システム、情報処理方法および記憶媒体
 本発明は、情報処理システム、情報処理方法および記憶媒体に関する。特に、一のサーバ上にて実行している仮想マシンの負荷を見積もり、他のサーバ上にて上記見積もりと並行して一のサーバ上の負荷を再現可能な情報処理システム、情報処理方法および記憶媒体に関する。
 近年、仮想化技術を利用したサーバ統合が普及し始めている。サーバ統合後、高負荷・障害等のメンテナンスで性能の異なるサーバ間で仮想マシンの移動(マイグレーション)を行う場合、仮想化方式の違いや、サーバ間のハードウェア性能差などにより、移動後の仮想マシンの負荷を正確に見積もることが困難である。これを解決する方法として、移動先サーバで仮想マシンの負荷をシミュレートすることによって事前に性能を把握する方法が種々考案されている。
 この種の技術として、特許文献1(特開2008-146313号公報)には、以下のような技術が開示されている。ここでは、特許文献1の図1を用いて説明する。本番サーバ10は本番業務を行うコンピュータである。待機サーバ20は本番サーバ10に障害が発生した場合に、本番サーバ10から本番業務を引き継ぐコンピュータである。新設サーバ30は、新規に導入予定のコンピュータである。管理端末40は、新設サーバ30の性能を評価する管理者が使用するコンピュータである。通信ネットワーク50は、例えば、インターネットやLAN(Local Area Network)である。
 管理端末40は、入力データを生成する入力データ生成機能と、入力データに応じてコンピュータのCPUを使用するCPU負荷生成機能を提供するベンチマークプログラムの入力を受け付ける。そして待機サーバ20及び新設サーバ30のそれぞれに、ベンチマークプログラムを実行させる。待機サーバ20は、ベンチマークプログラムの実行に伴う待機サーバ20における処理負荷を測定する。新設サーバ30は、ベンチマークプログラムの実行に伴う新設サーバ30における処理負荷を測定する。管理端末40は、待機サーバ20の処理負荷及び新設サーバ30の処理負荷を出力することでコンピュータの性能評価を容易に行うことができる負荷シミュレートを実現している。
 上記のような構成を利用して、本番サーバ10において実行されている本番業務用のアプリケーションプログラムのうち、処理負荷の高いものの動作を模擬するアプリケーションプログラム(ベンチマークプログラム)を新設サーバ30にインストールし、新設サーバ30において本番サーバ10と同一の入力データをベンチマークプログラムで実行した場合の処理負荷(資源の消費量)を測定する。これにより、本番業務用のアプリケーションプログラムを実行した場合と同等の処理負荷を新設サーバ30で再現することができる。
 さらに、特許文献1にはアプリケーションプログラムの代わりに仮想マシンとしても同様の処理が可能であることも開示している。
特開2008-146313号公報
 しかしながら特許文献1を仮想マシンに適用するとき、その処理負荷の再現性において問題があった。すなわち、仮想マシンは、アプリケーションプログラムと比較して、その動作に関わる要因は複雑である。故に、ある条件下で事前に入力データを生成し、当該入力データに基づいて処理負荷を再現したとしても、完全同一の条件下で仮想マシンが実行される可能性は比較的低く、実際の処理負荷との整合性は低くなる。
 本発明は上記事情に鑑みてなされたものであり、その目的とするところは、実際に一方のサーバで実行中の仮想マシンの処理負荷を反映して、他方のサーバで当該仮想マシンを実行した場合の処理負荷を再現する情報処理システム、情報処理方法および記憶媒体を提供することにある。
 本発明によれば、ネットワークを介して通信可能な第1サーバと第2サーバとを備え、前記第1サーバは、仮想マシンを実行する実行手段と、前記実行手段により前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報を前記第2サーバに送信する負荷情報送信手段と、を含み、前記第2サーバは、前記第1サーバから受信した前記負荷情報に基づいて処理負荷を発生させる負荷発生手段を含むことを特徴とする情報処理システムが提供される。
 また、本発明によれば、第1サーバが仮想マシンを実行する実行ステップと、前記実行ステップで前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報をネットワークを介して第2サーバに送信する負荷情報送信ステップと、前記第1サーバから受信した前記負荷情報に基づいて処理負荷を発生させる負荷発生ステップと、を備えることを特徴とする情報処理方法が提供される。
 また、本発明によれば、ネットワークを介して通信可能な第1サーバと第2サーバとで実行されるプログラムを格納している記憶媒体であって、第1サーバに仮想マシンを実行させる実行処理と、前記実行処理によって前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報を前記第2サーバに送信させる負荷情報送信処理と、前記第1サーバから受信した前記負荷情報に基づいて前記第2サーバに処理負荷を発生させる負荷発生処理と、を前記第1サーバまたは前記第2サーバのいずれかに実行させる前記プログラムを格納していることを特徴とする記憶媒体が提供される。
 本発明によれば、実際に一方のサーバで実行中の仮想マシンの処理負荷を反映して、他方のサーバで当該仮想マシンを実行した場合の処理負荷を再現する情報処理システム、情報処理方法および記憶媒体が提供される。
 上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
第1の実施形態の情報処理システムの構成図である。 第1の実施形態の情報処理システムが備えるサーバのアーキテクチャを示す図である。 第1の実施形態の情報処理システムに適用される情報処理方法を示すフローチャートである。 第2の実施形態の情報処理システムの構成図である。 第2の実施形態の情報処理システムに適用される情報処理方法を示すフローチャートである。 第2の実施形態の情報処理システムに適用される情報処理方法を示すフローチャートである。 第3の実施形態の情報処理システムの構成図である。 サーバAに性能計測用仮想マシンを移動する際の管理サーバの動作を示すフローチャートである。 性能計測用仮想マシンの動作を表すフローチャートである。 サーバBに性能計測用仮想マシンを移動する際の管理サーバの動作を示す管理サーバの動作を示すフローチャートである。
 以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
〔第1の実施形態〕
 図1は、第1の実施形態の情報処理システム1000の構成図である。本実施形態の情報処理システム1000は、ネットワーク500を介して通信可能なサーバA100とサーバB200とを備える。サーバA100およびサーバB200は、それぞれCPU110、210および記憶部120、220を含んでいる。CPU110は、記憶部120に記憶されているプログラムやデータ等を読み出して処理したり、処理したプログラムやデータ等を記憶部120に書き込んだりすることができる。また、CPU210も同様に、記憶部220に記憶されているプログラムやデータ等を読み出して処理したり、処理したプログラムやデータ等を記憶部220に書き込んだりすることができる。
 また、サーバA100およびサーバB200は、それぞれ通信部130、230を含んでいる。通信部130は、CPU110が処理したプログラムやデータ等をネットワーク500を介してサーバB200等の他の装置に送信したり、他の装置からネットワーク500を介してプログラムやデータ等を受信することができる。また、通信部230も同様に、CPU210が処理したプログラムやデータ等をネットワーク500を介してサーバA100等の他の装置に送信したり、他の装置からネットワーク500を介してプログラムやデータ等を受信することができる。
 サーバA100の記憶部120には、サーバA100にインストールされるオペレーションシステムであるホストOS121、仮想的なハードウェアを作り出すソフトウェアである仮想マシン123、ホストOS121上に仮想マシン123を実行可能な環境を提供する仮想化ソフト122、仮想マシン123にインストールされるオペレーションシステムであるゲストOS124等が記憶されている。本実施形態においては、CPU110が記憶部120にアクセスしてホストOS121、仮想化ソフト122および仮想マシン123を実行することにより、サーバA100上で仮想的なハードウェア(仮想マシン123)を実現することができる。すなわち、本実施形態においては、CPU110、ホストOS121および仮想化ソフト122が本発明の実行手段として機能する。
 記憶部120には、さらにゲストOS124上で実行されるアプリケーションソフト126、ホストOS121上で実行されるアプリケーションソフト125が記憶されているものとする。
 図2は、サーバA100のアーキテクチャを示す図である。最下層にサーバA100が提供するハードウェア資源が存在し、その上にホストOS121が存在する。ホストOS121上ではアプリケーションソフト125および仮想化ソフト122が実行される。また、サーバA100は、仮想化ソフト122上で仮想マシン123を実行し、仮想マシン123上ではゲストOS124が実行される。さらに、ゲストOS124上では、アプリケーションソフト126が実行される。
 図2に示すようにサーバA100は、アプリケーションソフト125とアプリケーションソフト126とを、上記アーキテクチャにおける異なる階層で実行することができる。しかし、実際は、サーバA100が備えるCPU110によって記憶部120に記憶されているアプリケーションソフト125とアプリケーションソフト126とを実行しているに過ぎない。
 以下、再び図1を用いて説明する。サーバA100は、CPU110により仮想マシン123が実行されているとき、当該仮想マシン123の実行に伴ってサーバA100に発生している処理負荷を示す負荷情報をサーバB200に送信することができる。
 より具体的には、仮想マシン123はCPU110により実行されると、ホストOS121が有するリソース管理機能によって収集される仮想マシン123が使用しているリソースの使用率を負荷情報として処理し、通信部130を介してサーバB200に送信することができる。すなわち、本実施形態においては、CPU110、通信部130、仮想マシン123およびホストOS121が本発明の負荷情報送信手段として機能する。ここで、リソースの使用率とは、例えばCPU110の使用率R(ある時点における仮想マシン123の実行に伴うCPU110の処理負荷/CPU110の最大許容処理負荷)である。ただし、nは正の整数である。
 なお、本実施形態において仮想マシン123の実行に伴ってサーバA100に発生している処理負荷とは、仮想マシン123の実行のみではなく、仮想マシン123の上の階層で実行されているゲストOS124およびアプリケーションソフト126の実行に伴う処理負荷も含まれている。
 サーバB200が備える記憶部220には、サーバB200にインストールされるオペレーションシステムであるホストOS221が記憶されている。また、記憶部220には、サーバA100から受信した負荷情報に基づいて処理負荷を発生させる試験プログラム223が記憶されている。試験プログラム223は、ホストOS221上で実行される。
 より具体的には、通信部230がサーバA100から負荷情報を受信すると、当該負荷情報はCPU210で処理されて記憶部220に記憶される。
 続いて、CPU210は、記憶部220に記憶されている試験プログラム223を読み出して実行する。試験プログラム223が実行されると、まず試験プログラム223はサーバB200のリソースの最大量を示すデータを収集する。ここでリソースの最大量を示すデータとは、例えば、CPU210の最大許容処理負荷Mである。本実施形態において、これらのデータはホストOS221が管理しているものとする。
 次に、試験プログラム223は、受信した負荷情報と収集したデータとに対して、次式(1)を用いて目標とするリソース量を算出する。なお、次式(1)で用いられるVは、サーバB200が当該仮想マシン123を実行させる場合に、サーバB200に発生する処理負荷の予測値であり、試験プログラム223がCPU210に与える処理負荷の目標値である。
Figure JPOXMLDOC01-appb-M000001
 続いて、試験プログラム223は、ホストOS221が管理しているCPUの処理負荷が、算出された目標値Vになるまで処理負荷を発生させる。具体的には、数値演算プログラムを利用して、一定時間内に演算に掛かった時間と休んでいる時間を収めることにより、CPU使用率を一定で出力させることを可能とする。演算回数を多くすればCPUの処理負荷を高めることができるし、演算回数を少なくすればCPUの処理負荷を低くすることができる。
 以上に説明した方法によって、試験プログラム223は、サーバB200が当該仮想マシン123を実行させる場合に、サーバB200に発生するものと予測される処理負荷を発生させることができる。すなわち、本実施形態においては、CPU210、ホストOS221および試験プログラム223が本発明の負荷発生手段として機能する。
 なお、サーバA100が負荷情報を送信するタイミングは、仮想マシン123が実行されている最中のいずれかの時点である。
 また、サーバA100は、間欠的に負荷情報をサーバB200に送信する。そして、サーバB200(CPU210)は、試験プログラム223を実行しており、試験プログラム223は発生させている処理負荷を、サーバA100から負荷情報を受信する毎に、受信された負荷情報に応じて増減させる。本実施形態において、間欠的とは一定の時間間隔Tごとに送信されるものとするが、これに限らずランダムであってもよい。
 より詳細には、試験プログラム223は、新規で受信したCPU110の使用率RとCPU210の最大許容処理負荷Mとに対して式(1)を用いて、新たな処理負荷の目標値Vを算出し、これに応じた処理負荷をCPU210に発生させる。
 以上説明したように、本実施形態の情報処理システム1000は、本発明の実行手段、負荷情報送信手段および負荷発生手段を、CPU110またはCPU210がソフトウェアを実行することによって実現する。
 すなわち、情報処理システム1000は、サーバA100に仮想マシン123を実行させる実行処理と、実行処理によって仮想マシン123が実行されているとき、当該仮想マシン123の実行に伴ってサーバA100に発生している処理負荷を示す負荷情報をサーバB200に送信させる負荷情報送信処理と、サーバA100から受信した負荷情報に基づいてサーバB200に処理負荷を発生させる負荷発生処理と、をサーバA100(CPU110)またはサーバB200(CPU210)のいずれかに実行させるプログラムによって実現される。
 図3は、本実施形態の情報処理システム1000に適用される情報処理方法を示すフローチャートである。この情報処理方法は、サーバA100が仮想マシン123を実行する実行ステップ(ステップS1)を備える。また、この情報処理方法は、実行ステップ(ステップS1)で仮想マシン123が実行されているとき、当該仮想マシン123の実行に伴ってサーバA100に発生している処理負荷を示す負荷情報をネットワーク500を介してサーバB200に送信する負荷情報送信ステップ(ステップS2)を備える。さらに、この情報処理方法は、サーバB200がサーバA100から受信した負荷情報に基づいて処理負荷を発生させる負荷発生ステップ(ステップS3)を備える。
 負荷情報送信ステップ(ステップS2)が実行されてから時間Tが経過するまで(ステップS4のNO)、サーバB200は、負荷発生ステップ(ステップS3)で発生させた処理負荷の発生を続ける。
 負荷情報送信ステップ(ステップS2)が実行されてから時間Tが経過したとき(ステップS4のYES)、サーバA100は、負荷情報送信ステップ(ステップS2)を再び実行する。そして、サーバB200が負荷情報送信ステップ(ステップS2)で送信された負荷情報を受信する毎に、負荷発生ステップ(ステップS3)では受信された負荷情報に応じて新たに処理負荷を予測し、発生させている処理負荷を増減させる。
 この情報処理方法は、実行ステップ(ステップS1)で実行された仮想マシンが動作している間(ステップS5のNO)は、繰り返し実行される。しかし、この情報処理方法は、当該仮想マシンが停止したとき(ステップS5のYES)、終了となる。
 ここで本実施形態の効果について説明する。サーバA100で仮想マシン123を実行して、その処理負荷を示す情報をサーバA100からサーバB200に送信し、サーバB200は受信した情報に基づいて仮想マシン123を実行した場合に発生すると予測される処理負荷を発生させる。これにより、サーバB200は、実際にサーバA100で実行中の仮想マシン123の処理負荷を反映して、仮想マシン123を実行した場合の処理負荷を再現することができる。
 また、本実施形態は、サーバA100は間欠的に負荷情報を送信し、サーバB200は負荷情報を受信する毎に、それに基づいて新たに処理負荷を予測、発生させている処理負荷を増減させる。これにより、サーバB200は、サーバA100で発生している仮想マシン123による処理負荷を、ほぼ実時間で再現することができる。ここで、「ほぼ実時間」とは、種々の情報伝送や情報処理によるタイムラグが僅かに発生するので、完全な実時間ではないことを意味している。従って、ネットワーク500を含む環境条件が時々刻々変化して、仮想マシン123が使用するサーバA100のリソース量が変化しても、サーバB200は、その変化に応じて処理負荷を再現することができる。
〔第2の実施形態〕
 図4は、第2の実施形態の情報処理システム2000の構成図である。情報処理システム2000は、サーバA100、サーバB200、サーバC300および管理サーバ400を備え、それぞれネットワーク500を介して通信可能に接続されている。
 サーバA100は、第1の実施形態のサーバA100と同等の装置である。また、サーバB200は、第1の実施形態のサーバB200と同等の装置であるが、ただし、試験プログラム223は記憶部220に記憶されていない。サーバC300は、本実施形態のサーバB200と同等の装置であって、CPU310と記憶部320と通信部330とを備え、記憶部320はサーバC300にインストールされているオペレーションシステムであるホストOS321を記憶している。
 管理サーバ400は、CPU410と記憶部420と通信部430と操作入力部440と表示部450とを備える。また、記憶部420には、管理サーバ400にインストールされているオペレーションシステムであるホストOS421を記憶し、さらに管理プログラム422、試験プログラム423、424を記憶している。なお、試験プログラム423と試験プログラム424は同等のプログラムとする。
 表示部450は、情報処理システム2000の運用者に操作画面等を表示出力する。具体的には、ディスプレイ装置等が挙げられる。
 操作入力部440は、情報処理システム2000の運用者から操作入力を受け付ける。具体的には、キーボード、マウスパッド、タッチパネル等が挙げられる。なお、管理サーバ400は、操作入力部440から運用者の操作入力を受け付けるために、表示部450に適宜操作画面を表示してもよい。
 試験プログラム423と試験プログラム424は、指標値Iの入力に応じて処理負荷を発生させ、指標値Iの大小によって発生させる処理負荷を増減させる。ここで指標値Iは、本発明の試験プログラムに処理負荷を発生させるために用いられる指標値の総称であって、以下の文中に登場する指標値は個別にIやI等とnの代わりに数値や英字等を付与して互いに区別する。
 管理サーバ400は、CPU410によって管理プログラム422が実行されると次のように動作する。まず、管理サーバ400は、操作入力部440が受け付けた操作入力に応じて選択されたサーバB200またはサーバC300に、試験プログラム423または試験プログラム424を送信する。ここでは、試験プログラム423をサーバB200に送信し、試験プログラム424をサーバC300に送信するものとして説明する。すなわち、管理プログラム422を実行する管理サーバ400は、本発明の試験プログラム送信手段として機能する。
 サーバB200は、試験プログラム423を記憶部220の記憶領域の一部に記憶する。また、サーバC300は、試験プログラム424を記憶部320の記憶領域の一部に記憶する。すなわち、記憶部220および記憶部320は、本発明の試験プログラム記憶手段として機能する。
 次に、管理プログラム422を実行する管理サーバ400は、試験プログラム423を送信したサーバB200および試験プログラム424を送信したサーバC300に負荷情報を送信する要求を、サーバA100に送信する。すなわち、管理プログラム422を実行する管理サーバ400は、本発明の負荷情報送信要求手段として機能する。
 サーバA100は、受信した要求に応じてサーバB200およびサーバC300に負荷情報を送信する。
 より詳細には、サーバA100は、サーバA100において試験プログラム423または424に第1指標値Iを入力した場合に、試験プログラム423または424が発生させる処理負荷によって使用されるサーバA100のリソースの量を示す第1リソース量Pと、第1指標値Iとを対応付けて、記憶部120の記憶領域の一部に予め記憶している。すなわち、記憶部120は、本発明の算出基準記憶手段として機能する。
 サーバA100は、第1リソース量Pと第1指標値Iとを取得するために、仮想マシンを実行する事前に試験プログラム423、またはそれと同等の試験プログラムを実行し、第1リソース量Pと第1指標値Iとを計測して取得してもよい。または、サーバA100は、第1リソース量Pと第1指標値Iとを外部の装置からネットワーク500を介して受信してもよい。
 そして、サーバA100は、仮想マシン123が実行されることによって使用されるサーバA100のリソース量を示す第2リソース量Pを取得する。さらに、サーバA100は、取得された第2リソース量Pに対応する第2指標値Iを、記憶部120に記憶されている第1リソース量Pと第1指標値Iとに基づいて算出し、算出された第2指標値Iを負荷情報としてサーバB200またはサーバC300に送信する。
 ここでの算出方法をより具体的に説明すると、サーバA100は、取得された第2リソース量Pに、第1指標値Iと第1リソース量Pとの比率を乗算して第2指標値Iを算出する。すなわち次式(2)のようになる。
Figure JPOXMLDOC01-appb-M000002
 サーバB200は、記憶部220から試験プログラム423を読み出し、サーバA100から受信した指標値(第2指標値I)を、読み出した試験プログラム423に入力して処理負荷を発生させる。また、サーバC300は、記憶部320から試験プログラム424を読み出し、サーバA100から受信した指標値(第2指標値I)を、読み出した試験プログラム424に入力して処理負荷を発生させる。
 サーバB200は、発生させた処理負荷によって使用されるサーバB200のリソースの量を示す第3リソース量P31を管理サーバ400に送信する。また、サーバC300は、発生させた処理負荷によって使用されるサーバC300のリソースの量を示す第3リソース量P32を管理サーバ400に送信する。ここで、サーバB200が第3リソース量P31を送信する時間間隔、またはサーバC300が第3リソース量P32を送信する時間間隔は、それぞれ一定であってもよいし、ランダムであってもよい。本実施形態においては、各サーバ(サーバB200、サーバC300)において、時間間隔Tで送信されるものとする。
 管理プログラム422を実行する管理サーバ400は、試験プログラム423を受信したサーバB200または試験プログラム424を受信したサーバC300それぞれから第3リソース量P31、P32を受信する。そして、当該管理サーバ400は、受信された第3リソース量P31、P32を表示部450によって表示出力して管理者に提示する。すなわち、管理プログラム422を実行する管理サーバ400は、本発明のリソース量受信手段、リソース量提示手段として機能する。
 管理サーバ400は、間欠的に第3リソース量P31、P32をサーバB200またはサーバC300から受信する。そして、管理サーバ400は、第3リソース量P31、P32を受信する毎に、受信された第3リソース量P31、P32を管理者に提示する。ここで、間欠的とは、時間間隔が一定であってもよいし、ランダムであってもよい。本実施形態においては、サーバB200またはサーバC300がそれぞれ時間間隔Tで第3リソース量P31、P32を送信し、これらは同期していないので、管理サーバ400は第3リソース量P31、P32を異なる時間間隔で受信する。
 図5は、第2の実施形態の情報処理システム2000に適用される情報処理方法のフローチャートである。
 この情報処理方法は、サーバA100において試験プログラム423、424に第1指標値Iを入力した場合に、試験プログラム423、424が発生させる処理負荷によって使用されるサーバA100のリソースの量を示す第1リソース量Pと、第1指標値Iとを対応付けて記憶する算出基準記憶ステップ(ステップS101)を備える。
 この情報処理方法は、サーバA100が仮想マシン123を実行する実行ステップ(ステップS102)を備える。なお、実行ステップ(ステップS102)において、サーバA100は自律的に仮想マシン123を実行してもよいし、管理サーバ400から実行要求を受信し、それに応じて仮想マシン123を実行してもよい。
 この情報処理方法は、管理者の操作入力を受け付ける管理サーバ400が、受け付けた操作入力に応じて選択されたサーバB200またはサーバC300に、試験プログラム423または試験プログラム424を送信する試験プログラム送信ステップ(ステップS103)を備える。なお、本実施形態において、試験プログラム送信ステップ(ステップS103)では、管理サーバ400はサーバB200に試験プログラム423を送信し、サーバC300に試験プログラム424を送信する。当然、サーバB200は受信した試験プログラム423を記憶部220に記憶し、サーバC300は受信した試験プログラム424を記憶部320に記憶する。
 この情報処理方法は、試験プログラム送信ステップ(ステップS103)で試験プログラム423、424を送信されたサーバB200およびサーバC300に負荷情報を送信する要求を、管理サーバ400がサーバA100に送信する負荷情報送信要求ステップ(ステップS104)を備える。
 この情報処理方法は、負荷情報送信要求ステップ(ステップS104)で送信された要求に応じて、サーバA100がサーバB200およびサーバC300に負荷情報を送信する負荷情報送信ステップ(ステップS105)を備える。
 なお、負荷情報送信ステップ(ステップS105)では、サーバA100が、試験プログラム423または試験プログラム424に入力される指標値Iを負荷情報として送信する。より詳細には、負荷情報送信ステップ(ステップS105)では、仮想マシン123が実行されることによって使用されるサーバA100のリソース量を示す第2リソース量Pを取得し、取得された第2リソース量Pに対応する第2指標値Iを、算出基準記憶ステップ(ステップS101)で記憶した第1リソース量Pと第1指標値Iとに基づいて算出し、算出された第2指標値Iを負荷情報としてサーバB200に送信する。
 この情報処理方法は、サーバB200またはサーバC300が試験プログラム423または試験プログラム424を読み出し、負荷情報送信ステップ(ステップS105)で送信された指標値(第2指標値I)を、読み出した試験プログラム423または試験プログラム424に入力して処理負荷を発生させる負荷発生ステップ(ステップS106)を備える。
 負荷情報送信ステップ(ステップS105)が実行されてから時間Tが経過するまで(ステップS107のNO)、サーバB200およびサーバC300は負荷発生ステップ(ステップS106)で発生させた処理負荷の発生を続ける。
 負荷情報送信ステップ(ステップS105)が実行されてから時間Tが経過したとき(ステップS107のYES)、サーバA100は負荷情報送信ステップ(ステップS105)を再び実行する。そして、サーバB200またはサーバC300は、負荷情報送信ステップ(ステップS105)で送信された負荷情報を受信する毎に、受信された負荷情報に応じて、負荷発生ステップ(ステップS106)で発生させている処理負荷を増減させる。
 この情報処理方法は、実行ステップ(ステップS102)で実行された仮想マシン123が動作している間(ステップS108のNO)は、繰り返し実行される。しかし、この情報処理方法は、当該仮想マシン123が停止したとき(ステップS108のYES)、終了となる。
 図6は、第2の実施形態の情報処理システム2000に適用される情報処理方法のフローチャートである。この情報処理方法は、管理サーバ400が負荷発生ステップ(ステップS106)で発生される処理負荷によって使用されるサーバB200のリソースの量を示す第3リソース量P31またはサーバC300のリソースの量を示す第3リソース量P32を受信するリソース量受信ステップ(ステップS202)を備える。本実施形態において、リソース量受信ステップ(ステップS202)では、管理サーバ400が試験プログラム423を受信したサーバB200または試験プログラム424を受信したサーバC300それぞれから第3リソース量P31、P32を受信する。
 また、この情報処理方法は、管理サーバ400がリソース量受信ステップ(ステップS202)で受信された第3リソース量P31、P32を管理者に提示するリソース量提示ステップ(ステップS203)を備える。
 サーバB200またはサーバC300から新たに第3リソース量P31、P32を受信する間(ステップS201のNO)は、この情報処理方法は待機状態となる。そして、サーバB200またはサーバC300にから新たに第3リソース量P31、P32を受信したとき(ステップS201のYES)、リソース量受信ステップ(ステップS202)に移行する。そして、リソース量受信ステップ(ステップS202)は間欠的に繰り返される。
 そして、リソース量提示ステップ(ステップS203)では、第3リソース量P31、P32を受信する毎に、受信された第3リソース量P31、P32を管理者に提示する。
 この情報処理方法は、図5に示すフローチャート同様に、実行ステップ(ステップS102)で実行された仮想マシンが動作している間(ステップS204のNO)は、繰り返し実行される。しかし、この情報処理方法は、当該仮想マシンが停止したとき(ステップS204のYES)、終了となる。
 ここで、本実施形態の効果について述べる。本実施形態において、サーバA100は負荷情報として指標値Iを送信し、サーバB200またはサーバC300は受信した指標値Iを入力して試験プログラムを実行し処理負荷を発生させる。これにより、サーバA100においては、サーバB200またはサーバC300それぞれに同一の指標値Iを送信すればよく、演算処理が軽減され、サーバ間で送受信する負荷情報のデータ容量が小さくなる。また、サーバB200またはサーバC300においては、負荷を発生させる事前の処理が軽減され、速やかに処理負荷を発生させることができる。従って、サーバA100において仮想マシン123による処理負荷が発生してから、サーバB200またはサーバC300において当該処理負荷を再現するまでのタイムラグが小さくなり、より実時間に近い再現が可能となる。
 また、本実施形態において、サーバA100は事前に第1リソース量Pと第1指標値Iとを対応づけて記憶しているので、第2指標値Iを算出する処理が単純化され、軽減される。従って、サーバA100において仮想マシン123による処理負荷が発生してから、サーバB200またはサーバC300において当該処理負荷を再現するまでのタイムラグが小さくなり、更に実時間に近い再現が可能となる。
 さらに、本実施形態において、運用者の操作入力に応じて選択されたサーバに試験プログラムを送信することができる。これにより、運用者の意図に即して仮想マシン123の処理負荷を再現することができる。
 さらに、本実施形態において、再現された処理負荷によって使用されたリソース量を、運用者に提示することができる。これにより、運用者は再現された処理負荷によって使用されたリソース量を確認することができる。
 さらに、本実施形態において、複数のサーバ(サーバB200およびサーバC300)が同等の試験プログラムを実行して、仮想マシン123の処理負荷を再現することができる。これにより、並行して複数のサーバにおいて仮想マシン123の処理負荷を再現することができる。
 さらに、本実施形態は、再現された処理負荷によって使用された第3リソース量P31、P32を受信する毎に、それを運用者に提示する。これにより、運用者は、ほぼ実時間で更新される第3リソース量P31、P32を、その都度確認することができる。
〔第3の実施形態〕
 図7は、第3の実施形態の情報処理システム3000の構成図である。サーバA100、サーバB200、サーバC300、サーバD600、管理サーバ400およびサーバE700が、ネットワーク500を介して通信可能に接続されている。
 サーバA100、サーバB200、サーバC300、管理サーバ400、サーバD600およびサーバE700は、それぞれがCPU110、CPU210、CPU310、CPU410、CPU610、CPU710を備えており、それぞれのCPUは同一の処理性能であってもよいし、異なる処理性能であってもよい。
 また、サーバA100、サーバB200、サーバC300、管理サーバ400、サーバD600およびサーバE700は、それぞれが記憶部120 、記憶部220、記憶部320、記憶部420、記憶部620、記憶部720を備えており、それぞれの記憶部は同一の記憶容量であってもよいし、異なる記憶容量であってもよい。
 さらに、サーバA100、サーバB200、サーバC300、管理サーバ400、サーバD600およびサーバE700は、それぞれが通信部130、通信部230、通信部330、通信部430、通信部630および通信部730を備えており、それぞれが処理可能な通信量は同一であってもよいし、異なってもよい。
 記憶部120には、ホストOS121、仮想化ソフト122および仮想マシン123が記憶されている。ここでは図示しないが、仮想マシン123には図1または図4で図示したゲストOS124およびアプリケーションソフト126に相当するソフトウェアが内包されているものとする。
 記憶部220には、ホストOS221と仮想化ソフト222が記憶されており、サーバB200はサーバA100と同様に仮想マシン123等の仮想ハードウェアを実現可能な環境を有している。また、記憶部320には、ホストOS321と仮想化ソフト322が記憶されており、サーバC300はサーバA100と同様に仮想ハードウェアを実現可能な環境を有している。さらに、記憶部620には、ホストOS621と仮想化ソフト622が記憶されており、サーバD600はサーバA100と同様に仮想ハードウェアを実現可能な環境を有している。さらに、記憶部720には、ホストOS721と仮想化ソフト722が記憶されており、サーバE700はサーバA100と同様に仮想ハードウェアを実現可能な環境を有している。
 管理サーバ400は、上述したCPU410、記憶部420、通信部430の他に、操作入力部440および表示部450を備えている。操作入力部440および表示部450は、それぞれ第2の実施形態の操作入力部440および表示部450と同様である。
 記憶部420には、性能計測用仮想マシン425が記憶されている。性能計測用仮想マシン425は仮想ハードウェアであって、当該仮想ハードウェア上で第2の実施形態で説明した試験プログラム423と同等の試験プログラムを実行することができる。
 さらに、記憶部420には、ホストOS421と管理プログラム422が記憶されており、CPU410がホストOS421上で管理プログラム422を実行することによって管理サーバ400は以下のように動作する。
 図8は、サーバA100に性能計測用仮想マシン425を移動する際の管理サーバ400の動作を示すフローチャートである。まず、管理サーバ400は、サーバA100において仮想マシン123の実行に伴って使用されるリソース量を、サーバA100から取得する(ステップT1)。
 次に、管理サーバ400は、記憶部420に登録されている性能計測用仮想マシン425のイメージを、サーバE700の記憶部720上にコピーする。そして、管理サーバ400は、サーバE700に性能計測用仮想マシン425を起動するように要求する(ステップT2)。
 続いて、管理サーバ400は、サーバA100上で実行されている仮想マシン123をサーバD600に退避させるように、サーバA100とサーバD600に要求する(ステップT3)。 
 続いて、管理サーバ400は、サーバE700上の性能計測用仮想マシン425をサーバA100上に移動させるように、サーバA100とサーバE700に要求する(ステップT4)。
 管理サーバ400は、サーバA100上に移動した性能計測用仮想マシン425に対して、ステップT1で取得したリソース量を目標値として処理負荷を発生させるように要求する。それとともに、管理サーバ400は、サーバA100において性能計測用仮想マシン425の実行に伴って使用されるリソース量を周期的に取得するように、サーバA100と性能計測用仮想マシン425とに対して要求する(ステップT5)。
 図9は、サーバA100上で実行される性能計測用仮想マシン425の動作を表すフローチャートである。まず、性能計測用仮想マシン425は、ステップT5における管理サーバ400の要求を受信する(ステップT101)。
 性能計測用仮想マシン425は、ステップT101で受信した要求に応じて処理負荷を発生させる(ステップT102)。ただし、性能計測用仮想マシン425上で試験プログラムを起動するときに入力される初回の指標値Iは予め定められているものとする。当該初回の指標値Iは、ステップT5で管理サーバ400から性能計測用仮想マシン425に対して提供してもよいし、予め性能計測用仮想マシン425に内包されていてもよい。
 また、性能計測用仮想マシン425は、ステップT101で受信した要求に応じて、サーバA100において性能計測用仮想マシン425の実行に伴って使用されるリソース量を取得する (ステップT103)。
 性能計測用仮想マシン425は、ステップT103でリソース量が取得されたとき、リソース量の取得回数Nの値に1を加算する(ステップT104)。そして、Nの値が予め定められた読み飛ばし回数以上である場合(ステップT105のYES)、ステップT103で取得されたリソース使用量を採用する(ステップT106)。また、Nの値が予め定められた読み飛ばし回数に達しない場合(ステップT105のNO)、性能計測用仮想マシン425に新たに入力する指標値Iを算出する(ステップT112)。ステップT103が実行されるまで待機する。ステップT112の算出にも式(2)を用いる。具体的には、I=現在の指標値I(初回においてはI=I)、P=ステップT103で取得したリソース量、P=ステップT101で受信したリソース量の目標値としたとき、I=Iである。
 性能計測用仮想マシン425は、ステップT106で採用された最新のリソース量と、前回のステップT106で採用されたリソース量を比較し、その差分が予め定められた許容範囲内に入っているかどうかを判定する(ステップT107)。当該差分が許容範囲内に入っていない場合(ステップT108のNO)、性能計測用仮想マシン425に新たに入力する指標値Iを算出する(ステップT112)。ここでの算出も上述の通りである。
 当該差分が範囲内に入っている場合(ステップT108のYES)、判定結果良好回数Xの値に1を加算する(ステップT109)。そして、Xの値が予め定められた継続回数分に達しない場合(ステップT110のNO)、性能計測用仮想マシン425に新たに入力する指標値Iを算出する(ステップT112)。ここでの算出も上述の通りである。
 ステップT112で指標値Iが算出されると、再びステップT102に移行して、性能計測用仮想マシン425は算出された指標値Iを試験プログラムに入力し、発生させている処理負荷を増減させる。そして、ステップT103以降のステップを繰り返し実行する。再びステップT105、ステップT108またはステップT110でNOと判定されたとき、ステップT112では、ステップT102で入力した指標値Iを現在の指標値Iとして、新たに入力する指標値Iを算出する。
 ステップT103~ステップT110のステップを実行することによって、ステップT102で入力した指標値(初回は指標値I、2回目以降はステップT112で算出された指標値I)に 対応するリソース量を求めることが出来る。また、T105により、処理負荷に達する前に取得されたリソース量を無視することができる。T108により発生した負荷を指定した範囲内に収めることで精度を高めることができる。T110により、発生した負荷が安定しているかどうかを確認することができる。また、上述した読み飛ばし回数、許容範囲、継続回数は、デフォルトで固定された値であってもよいし、運用者によって適宜変更可能な値であってもよい。
 ステップT109で判定結果良好回数Xの値に1を加算して、Xの値が予め定められた継続回数以上である場合(ステップT110のYES)、性能計測用仮想マシン425は、現在の指標値IとステップT106で採用された最新のリソース量を対応付けて記憶部120の記憶領域の一部に記憶する(ステップT111)。すなわち、ステップT111は第2の実施形態で説明した算出基準記憶ステップS101に相当する。
 ステップT111で記憶した指標値Iを管理サーバ400に送信する(ステップT113)。
 図10は、サーバB200に性能計測用仮想マシン425を移動したときの管理サーバ400の動作を示すフローチャートである。管理サーバ400は、ステップT113で送信された指標値Iを記憶部420の記憶領域の一部に記憶する(ステップT201)。
 次に、管理サーバ400は、サーバA100上の性能計測用仮想マシン425をサーバE700上に移動させるように、サーバA100とサーバE700に要求する(ステップT202)。
 続いて、管理サーバ400は、サーバD600上の仮想マシン123をサーバA100上に移動させるように、サーバD600とサーバA100に要求する(ステップT203)。 これにより、サーバD600上で実行されていた仮想マシン123は、サーバA100上で実行される。すなわち、ステップT203は、第2の実施形態で説明したステップS102に相当する。
 そして、管理サーバ400は、運用者の操作入力を受け付けると(ステップT204)、受け付けた操作入力に応じて選択されたサーバに、サーバE700上の性能計測用仮想マシン425を移動させるように要求する(ステップT205)。本実施形態においては、サーバB200が選択され、サーバB200に性能計測用仮想マシン425が移動するものとする。性能計測用仮想マシン425は、第2の実施形態の試験プログラム423と同等の試験プログラムを実行可能なので、ステップT205は第2の実施形態のステップS103に相当する。
 管理サーバ400は、ステップT201で記憶された指標値Iを性能計測用仮想マシン425に送信し、指標値Iを試験プログラムに入力して実行するように要求する(ステップT206)。すなわち、管理サーバ400は指標値Iを性能計測用仮想マシン425に送信することで、本発明の試験プログラム実行要求手段を実現する。
 そして、管理サーバ400は、サーバA100から性能計測用仮想マシン425(サーバB200)に指標値Iを送信するように、サーバA100に要求する(ステップT207)。すなわち、ステップT207は、第2の実施形態のステップS104に相当する。なお、上記の指標値Iとは、性能計測用仮想マシン425が周期的に取得するリソース量に対応する指標値のことである。
 管理サーバ400が、ステップT201~ステップT207を実行することによって、サーバA100で実行している仮想マシン123の処理負荷を、サーバB200上で再現することができる。この再現は、第2の実施形態のステップS105~ステップS107に相当する。
 より具体的には、ステップT207で送信された要求に応じて、サーバA100は、仮想マシン123が実行されることによって使用されるサーバA100のリソース量を時間Tごとに取得し、取得されたリソース量に対応する指標値Iを、ステップT111で記憶したリソース量と指標値Iとに基づいて算出し、算出された指標値Iを負荷情報としてサーバB200に送信する。なお、この算出には上述した式(2)を用いる。サーバB200は、サーバA100から指標値Iを受信する毎に、受信された指標値Iを性能計測用仮想マシン425の試験プログラムに入力し、時間経過とともに処理負荷を増減させる。
 なお、上述した再現に関する処理は、サーバA100上(仮想マシン123)またはサーバB200上(性能計測用仮想マシン425)で実行される処理であるため、管理サーバ400の動作を表している図10のフローチャートにおいては図示されない。
 管理サーバ400は、性能計測用仮想マシン425(サーバB200)から第3リソース量P31を受信しない間(ステップT208のNO)、管理サーバ400は待機状態となる。また、性能計測用仮想マシン425(サーバB200)から第3リソース量P31を受信した時(ステップT208のYES)、管理サーバ400は第3リソース量P31の受信処理をし(ステップT209)、受信した第3リソース量P31を、表示部450によって表示出力し、運用者に提示する(ステップT210)。すなわち、この段落で説明した一連の処理は、第2の実施形態のステップS201~ステップS203に相当する。
 管理サーバ400が性能計測用仮想マシン425に試験プログラムの停止要求を送信しない間(ステップT211のNO)は、サーバA100およびサーバB200において上述した再現動作を繰り返し行う。そして、管理サーバ400が性能計測用仮想マシン425に試験プログラムの停止要求を送信すると(ステップT211のYES)、性能計測用仮想マシン425は試験プログラムを停止し、上述した再現動作は終了となる。
 ここで、本実施形態の効果について述べる。本実施形態は、管理サーバ400が試験プログラムの実行を直接要求するので、試験プログラムによる処理負荷の発生タイミングを制御することができる。従って、複数のサーバにおいて試験プログラムを実行させる場合等は、その開始タイミングを同期させることもできる。
 また、性能計測用仮想マシン425のコピーを他のサーバで起動した状態でサーバB200に移動するので、処理負荷発生の立ち上がりが速やかになる。
 さらに、本実施形態は、サーバA100に性能計測用仮想マシン425を一旦移動して指標値Iを算出し、その後サーバB200に性能計測用仮想マシン425を移動して、指標値I用いて処理負荷を発生させるので、処理負荷発生の立ち上がり時点から高い精度で仮想マシン123の処理負荷を再現することができる。
 以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
 第1~第3の実施形態において、サーバA100のCPU110の処理負荷や使用率に基づいて処理負荷を発生させたが、その他のリソースに関する値に基づいて同様の処理を実行してもよい。ここで、その他のリソースとは、例えば、サーバA100のメモリの使用量、サーバA100のハードディスクの記憶容量、サーバA100とネットワーク500との通信量等である。ここで挙げたいずれを用いてもよいし、複数を組み合わせて用いてもよい。
 第1~第3の実施形態において、仮想マシンの実行環境を持つサーバは、全てホストOSおよび仮想化ソフトを備えるように説明したが、これらが一体となっているソフトウェアを用いてもよい。
 第2の実施形態において、サーバB200と同等のサーバは、サーバC300のみを図示して説明したが、更にサーバB200と同等のサーバを増やしてもよい。そして、それぞれのサーバに試験プログラム423と同等の試験プログラムを送信して、第2の実施形態における試験プログラム423と同様の処理を実現してもよい。
 第3の実施形態において、仮想マシン123を退避させるサーバとしてサーバD600、性能計測用仮想マシン425をプールさせるサーバとしてサーバE700、仮想マシン123を実行するサーバとしてサーバA100、性能計測用仮想マシン425を実行するサーバとしてサーバB200を選択して説明したが、これに限らず、その他の組み合わせであってもよい。
 第2の実施形態において、リソース量提示手段として表示部450を用いて、第3リソース量P31、P32を表示出力する旨を説明したが、これに限らなくてもよい。例えば、スピーカを用いて第3リソース量P31、P32を音声出力してもよい。また、印刷機を用いて第3リソース量P31、P32を印字出力してもよい。また、表示出力、音声出力または印字出力のうち複数を組み合わせてもよい。
 第2、第3の実施形態では管理サーバ400の各種機能は、CPU410が管理プログラム422を実行することによって実現する旨を説明した。しかし、このような各種機能の各々を固有のハードウェアとして形成することもでき、ソフトウェアとハードウェアとの組み合わせとして実現することもできる。
 第3の実施形態において、図9のフローチャートによればステップT104とステップT105の処理は、ステップT103でリソース量を取得する度に実行されるように記載しているが、これに限らなくてもよい。ステップT102で初回の指標値Iを入力して発生した負荷に関するリソース量をステップT103で取得したときのみステップT104とステップT105とが実行され、それ以降はステップT104とステップT105とは実行されなくてもよい。
 第3の実施形態において、管理サーバ400が性能計測用仮想マシン425を他のサーバ装置に移動するとき、移動先の他のサーバの記憶部に性能計測用仮想マシン425のイメージをコピーするように説明したが、Live-Migration技術を適用すれば性能計測用仮想マシン425自体を移動させることも可能である。
 なお、当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。また、上述した実施の形態および変形例では、各構成要素の機能などを具体的に説明したが、その機能などは本願発明を満足する範囲で各種に変更することができる。
 また、本発明の情報処理方法には複数のステップを順番に記載してあるが、その記載の順番は複数のステップを実行する順番を限定するものではない。このため、本発明の情報処理方法を実行するときには、その複数のステップの順番は内容的に支障しない範囲で変更することができる。
 この出願は、日本国特許庁に出願された特願2009-168497号(出願日:2009年7月17日)を基礎とする優先権を主張するものであり、その開示の全ては、本明細書の一部として援用(incorporation herein by reference)される。

Claims (19)

  1.  ネットワークを介して通信可能な第1サーバと第2サーバとを備え、
     前記第1サーバは、
      仮想マシンを実行する実行手段と、
      前記実行手段により前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報を前記第2サーバに送信する負荷情報送信手段と、を含み、
     前記第2サーバは、
      前記第1サーバから受信した前記負荷情報に基づいて処理負荷を発生させる負荷発生手段を含むことを特徴とする情報処理システム。
  2.  請求項1に記載の情報処理システムであって、
     前記第2サーバは、指標値の入力に応じて処理負荷を発生させ、前記指標値の大小によって前記処理負荷を増減させる試験プログラムを記憶している試験プログラム記憶手段を含み、
     前記負荷情報送信手段は、前記指標値を前記負荷情報として送信し、
     前記負荷発生手段は、前記試験プログラム記憶手段から前記試験プログラムを読み出し、前記負荷情報送信手段から受信した前記指標値を、読み出した前記試験プログラムに入力して前記処理負荷を発生させることを特徴とする情報処理システム。
  3.  請求項2に記載の情報処理システムであって、
     前記第1サーバは、前記第1サーバにおいて前記試験プログラムに第1指標値を入力した場合に、前記試験プログラムが発生させる処理負荷によって使用される前記第1サーバのリソースの量を示す第1リソース量と、前記第1指標値とを対応付けて記憶する算出基準記憶手段を含み、
     前記負荷情報送信手段は、前記仮想マシンが実行されることによって使用される前記第1サーバのリソース量を示す第2リソース量を取得し、取得された前記第2リソース量に対応する第2指標値を前記算出基準記憶手段に記憶されている前記第1リソース量と前記第1指標値とに基づいて算出し、算出された前記第2指標値を前記負荷情報として前記第2サーバに送信することを特徴とする情報処理システム。
  4.  請求項3に記載の情報処理システムであって、
     前記負荷情報送信手段は、取得された前記第2リソース量に、前記第1指標値と前記第1リソース量との比率を乗算して前記第2指標値を算出することを特徴とする情報処理システム。
  5.  請求項1乃至4のいずれかに記載の情報処理システムであって、
     前記負荷情報送信手段は、間欠的に前記負荷情報を前記第2サーバに送信し、
     前記負荷発生手段は、発生させている処理負荷を、前記負荷情報送信手段から前記負荷情報を受信する毎に、受信された前記負荷情報に応じて増減させることを特徴とする情報処理システム。
  6.  請求項1乃至5のいずれかに記載の情報処理システムであって、
     管理者の操作入力を受け付ける管理サーバを備え、
     前記管理サーバは、
      受け付けた操作入力に応じて選択された前記第2サーバに、試験プログラムを送信する試験プログラム送信手段と、
      前記試験プログラム送信手段によって前記試験プログラムを送信された前記第2サーバに前記負荷情報を送信する要求を、前記第1サーバに送信する負荷情報送信要求手段と、
      前記負荷発生手段が発生させた処理負荷によって使用される前記第2サーバのリソースの量を示す第3リソース量を受信するリソース量受信手段と、
      前記リソース量受信手段により受信された前記第3リソース量を前記管理者に提示するリソース量提示手段と、を含むことを特徴とする情報処理システム。
  7.  請求項6に記載の情報処理システムであって、
     前記試験プログラム送信手段は、複数の前記第2サーバに前記試験プログラムを送信し、
     前記リソース量受信手段は、前記試験プログラムを受信した前記第2サーバそれぞれから前記第3リソース量を受信することを特徴とする情報処理システム。
  8.  請求項6または7に記載の情報処理システムであって、
     前記リソース量受信手段は、間欠的に前記第3リソース量を前記第2サーバから受信し、
     前記リソース量提示手段は、前記第3リソース量を受信する毎に、受信された前記第3リソース量を前記管理者に提示することを特徴とする情報処理システム。
  9.  請求項6乃至8いずれかに記載の情報処理システムであって、
     前記管理サーバは、前記第2サーバに前記試験プログラムの実行を要求する試験プログラム実行要求手段を備えることを特徴とする情報処理システム。
  10.  第1サーバが仮想マシンを実行する実行ステップと、
     前記実行ステップで前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報をネットワークを介して第2サーバに送信する負荷情報送信ステップと、
     前記第1サーバから受信した前記負荷情報に基づいて処理負荷を発生させる負荷発生ステップと、
    を備えることを特徴とする情報処理方法。
  11.  請求項10に記載の情報処理方法であって、
     前記負荷情報送信ステップでは、指標値の入力に応じて処理負荷を発生させ、前記指標値の大小によって前記処理負荷を増減させる試験プログラムに入力される前記指標値を、前記第1サーバが前記負荷情報として送信し、
     前記負荷発生ステップでは、前記試験プログラムを読み出し、前記負荷情報送信ステップで送信された前記指標値を、読み出した前記試験プログラムに入力して処理負荷を発生させることを特徴とする情報処理方法。
  12.  請求項11に記載の情報処理方法であって、
     前記第1サーバにおいて前記試験プログラムに第1指標値を入力した場合に、前記試験プログラムが発生させる処理負荷によって使用される前記第1サーバのリソースの量を示す第1リソース量と、前記第1指標値とを対応付けて記憶する算出基準記憶ステップを備え、
     前記負荷情報送信ステップでは、前記仮想マシンが実行されることによって使用される前記第1サーバのリソース量を示す第2リソース量を取得し、取得された前記第2リソース量に対応する第2指標値を前記算出基準記憶ステップで記憶した前記第1リソース量と前記第1指標値とに基づいて算出し、算出された前記第2指標値を前記負荷情報として前記第2サーバに送信することを特徴とする情報処理方法。
  13.  請求項12に記載の情報処理方法であって、
     前記負荷情報送信ステップでは、取得された前記第2リソース量に、前記第1指標値と前記第1リソース量との比率を乗算して前記第2指標値を算出することを特徴とする情報処理方法。
  14.  請求項10乃至13のいずれかに記載の情報処理方法であって、
     前記負荷情報送信ステップは間欠的に繰り返され、
     前記負荷情報送信ステップで送信された前記負荷情報を受信する毎に、
     前記負荷発生ステップでは、受信された負荷情報に応じて新たに処理負荷を予測し、発生させている処理負荷を増減させることを特徴とする情報処理方法。
  15.  請求項10乃至14のいずれかに記載の情報処理方法であって、
     管理者の操作入力を受け付ける管理サーバが、受け付けた操作入力に応じて選択された前記第2サーバに、試験プログラムを送信する試験プログラム送信ステップと、
     前記試験プログラム送信ステップで前記試験プログラムを送信された前記第2サーバに前記負荷情報を送信する要求を、前記第1サーバに送信する負荷情報送信要求ステップと、
     前記負荷発生ステップで発生された処理負荷によって使用される前記第2サーバのリソースの量を示す第3リソース量を受信するリソース量受信ステップと、
     前記リソース量受信ステップで受信された前記第3リソース量を前記管理者に提示するリソース量提示ステップと、
    を備えることを特徴とする情報処理方法。
  16.  請求項15に記載の情報処理方法であって、
     前記試験プログラム送信ステップでは、複数の前記第2サーバに前記試験プログラムを送信し、
     前記リソース量受信ステップでは、前記試験プログラムを受信した前記第2サーバそれぞれから前記第3リソース量を受信することを特徴とする情報処理方法。
  17.  請求項15または16に記載の情報処理方法であって、
     前記リソース量受信ステップは間欠的に繰り返され、
     前記リソース量提示ステップでは、前記第3リソース量を受信する毎に、受信された前記第3リソース量を前記管理者に提示することを特徴とする情報処理方法。
  18.  請求項15乃至17いずれかに記載の情報処理方法であって、
     前記管理サーバが前記第2サーバに前記試験プログラムの実行を要求する試験プログラム実行要求ステップを備えることを特徴とする情報処理方法。
  19.  ネットワークを介して通信可能な第1サーバと第2サーバとで実行されるプログラムを格納している記憶媒体であって、
     第1サーバに仮想マシンを実行させる実行処理と、
     前記実行処理によって前記仮想マシンが実行されているとき、当該仮想マシンの実行に伴って前記第1サーバに発生している処理負荷を示す負荷情報を前記第2サーバに送信させる負荷情報送信処理と、
     前記第1サーバから受信した前記負荷情報に基づいて前記第2サーバに処理負荷を発生させる負荷発生処理と、
    を前記第1サーバまたは前記第2サーバのいずれかに実行させる前記プログラムを格納していることを特徴とする記憶媒体。
PCT/JP2010/000284 2009-07-17 2010-01-20 情報処理システム、情報処理方法および記憶媒体 WO2011007463A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011522681A JP5522171B2 (ja) 2009-07-17 2010-01-20 情報処理システム及び情報処理方法
US13/384,080 US8819174B2 (en) 2009-07-17 2010-01-20 Information processing system, information processing method, and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-168497 2009-07-17
JP2009168497 2009-07-17

Publications (1)

Publication Number Publication Date
WO2011007463A1 true WO2011007463A1 (ja) 2011-01-20

Family

ID=43449077

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/000284 WO2011007463A1 (ja) 2009-07-17 2010-01-20 情報処理システム、情報処理方法および記憶媒体

Country Status (3)

Country Link
US (1) US8819174B2 (ja)
JP (1) JP5522171B2 (ja)
WO (1) WO2011007463A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012215915A (ja) * 2011-03-31 2012-11-08 Toshiba Corp リソース利用率測定装置及びプログラム
JP2020123033A (ja) * 2019-01-29 2020-08-13 株式会社リコー シミュレーションシステム、情報処理装置、プログラム及びシミュレーション方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10705933B2 (en) * 2017-07-18 2020-07-07 The Boeing Company System integration using virtualization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006031178A (ja) * 2004-07-13 2006-02-02 Hitachi Ltd 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム
JP2007323245A (ja) * 2006-05-31 2007-12-13 Nec Corp 計算機システムおよび性能計測方法ならびに管理サーバ装置
JP2008146313A (ja) * 2006-12-08 2008-06-26 Chugoku Electric Power Co Inc:The コンピュータの性能評価支援システム及び性能評価支援方法
JP2009134687A (ja) * 2007-11-29 2009-06-18 Hitachi Ltd アプリケーションマイグレーションのための候補データセンタを見つける方法および装置[0001]

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250559B2 (en) * 2006-04-12 2012-08-21 Oracle America, Inc. Supporting per-program classpaths with class sharing in a multi-tasking virtual machine
JP4906686B2 (ja) * 2007-11-19 2012-03-28 三菱電機株式会社 仮想マシンサーバサイジング装置及び仮想マシンサーバサイジング方法及び仮想マシンサーバサイジングプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006031178A (ja) * 2004-07-13 2006-02-02 Hitachi Ltd 負荷テスト実施装置、負荷テスト実施方法、負荷テスト実施プログラム
JP2007323245A (ja) * 2006-05-31 2007-12-13 Nec Corp 計算機システムおよび性能計測方法ならびに管理サーバ装置
JP2008146313A (ja) * 2006-12-08 2008-06-26 Chugoku Electric Power Co Inc:The コンピュータの性能評価支援システム及び性能評価支援方法
JP2009134687A (ja) * 2007-11-29 2009-06-18 Hitachi Ltd アプリケーションマイグレーションのための候補データセンタを見つける方法および装置[0001]

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012215915A (ja) * 2011-03-31 2012-11-08 Toshiba Corp リソース利用率測定装置及びプログラム
JP2020123033A (ja) * 2019-01-29 2020-08-13 株式会社リコー シミュレーションシステム、情報処理装置、プログラム及びシミュレーション方法
JP7151514B2 (ja) 2019-01-29 2022-10-12 株式会社リコー シミュレーションシステム、情報処理装置、プログラム及びシミュレーション方法

Also Published As

Publication number Publication date
US20120124166A1 (en) 2012-05-17
US8819174B2 (en) 2014-08-26
JPWO2011007463A1 (ja) 2012-12-20
JP5522171B2 (ja) 2014-06-18

Similar Documents

Publication Publication Date Title
US10459769B2 (en) Elastic container management system
JP4240062B2 (ja) 計算機システムおよび性能計測方法ならびに管理サーバ装置
US8701108B2 (en) Apparatus and method for controlling live-migrations of a plurality of virtual machines
CN110678844A (zh) 基于租户排名来控制租户服务
JP5600277B2 (ja) クラウドサービス再配置システムと方法およびプログラム
Gupta et al. Power and resource-aware virtual machine placement for IaaS cloud
US8910128B2 (en) Methods and apparatus for application performance and capacity analysis
JP2010244524A (ja) 仮想サーバの移動方法の決定方法及びその管理サーバ
US9794136B1 (en) Distributed resource allocation
US20160156567A1 (en) Allocation method of a computer resource and computer system
JPWO2010109681A1 (ja) コンピュータシステム、コンピュータシステムのリソース資源管理サーバ、及びコンピュータシステムのリソース管理方法
KR20170057558A (ko) 가상 데스크탑 서비스 방법 및 장치
JP2016537705A (ja) 仮想マシンマイグレーション管理の方法、装置およびシステム
Jararweh et al. Energy efficient dynamic resource management in cloud computing based on logistic regression model and median absolute deviation
JP5522171B2 (ja) 情報処理システム及び情報処理方法
JP5112277B2 (ja) 再現処理方法、計算機システムおよびプログラム
US8255535B2 (en) Method and system to generate execution-based scheduling signature for an application
JP6191695B2 (ja) 仮想リソース制御システムおよび仮想リソース制御方法
JP2011192187A (ja) 管理装置、管理方法およびプログラム
JP2012181578A (ja) 更新制御装置及びプログラム
CN109933287A (zh) 基于物联网的数据迁移方法、装置及设备
Sudevalayam et al. Affinity-aware modeling of CPU usage with communicating virtual machines
JP2011013711A (ja) サービスシステム、クラウドコンピューティングシステム及びサービスプログラム
JP2011186821A (ja) 仮想化環境管理システム、装置、方法及びプログラム
Nayyer et al. Revisiting VM performance and optimization challenges for big data

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: 10799527

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13384080

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: 2011522681

Country of ref document: JP

122 Ep: pct application non-entry in european phase

Ref document number: 10799527

Country of ref document: EP

Kind code of ref document: A1