Information processor, method for processing information, and information processing program

The information processing device addresses inefficiencies in virtual machine deployment by copying and sizing software from a running environment, ensuring accurate storage allocation for efficient deployment.

JP2025142336APending Publication Date: 2025-09-30エフサステクノロジーズ株式会社
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2025127524
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-07-30
Publication Date
2025-09-30

AI Technical Summary

Technical Problem

Conventional techniques face challenges in efficiently deploying virtual machines due to mismatches between the storage size provided by the virtual machine provider and the actual deployment size required by the build tool, leading to inefficient implementation.

Method used

An information processing device that copies target software from a running environment, acquires its size, and transmits this information to a requesting environment to facilitate efficient deployment by reserving an appropriate storage area.

Benefits of technology

Enables efficient implementation of target software by accurately determining and reserving the necessary storage space, thereby improving deployment efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025142336000001_ABST
    Figure 2025142336000001_ABST
Patent Text Reader

Abstract

To efficiently implement target software.SOLUTION: An information processor 100 acquires the size of target software from a first environment 101. The information processor 100 duplicates the target software into a predetermined storage region 110 from the first environment 101. The predetermined storage region 110 is a storage region of the information processor 100. The information processor 100 sends the acquired size and information which allows acquisition of the target software duplicated in the predetermined storage region 110, to a second environment 102.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]

[0002] Conventionally, there are construction tools that construct virtualization infrastructures. The construction tool deploys a virtual machine in a specific storage area of ​​a computer and implements the virtual machine. The virtual machine is software provided by a provider other than the provider of the construction tool. For example, the construction tool obtains the size of the storage area in which the virtual machine will be deployed from the virtual machine provider, and then secures storage area of ​​the obtained size and deploys the virtual machine.

[0003] Prior art techniques include, for example, building a commercial server in a commercial environment by copying an image using a release virtual server template, and building an intermediate master image by applying additional processing to a master image up to the point of building a virtual machine image. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2016-45675 [Patent Document 2] International Publication No. 2014 / 155693 Summary of the Invention [Problem to be solved by the invention]

[0005] However, with conventional techniques, it is difficult to efficiently implement a virtual machine. For example, the size obtained from the virtual machine provider may not match the size of the storage area in which the build tool actually deploys the virtual machine. Unless the build tool actually deploys the virtual machine, it cannot determine the exact size of the storage area in which the virtual machine will be deployed, and this may prevent the build tool from efficiently deploying the virtual machine.

[0006] In one aspect, the present invention aims to enable efficient implementation of target software. [Means for solving the problem]

[0007] According to one embodiment, an information processing device, an information processing method, and an information processing program are proposed that copy target software from a first environment in which the target software is running to a specified memory area, obtain the size of the target software, and transmit the obtained size and information that enables the target software copied to the memory area to be obtained to a second environment that requests the target software. [Effects of the Invention]

[0008] According to one aspect, it is possible to enable efficient implementation of the target software. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 1 is an explanatory diagram illustrating an example of an information processing method according to an embodiment. [Figure 2] FIG. 2 is an explanatory diagram illustrating an example of an information processing system 200. As shown in FIG. [Figure 3] FIG. 3 is a block diagram showing an example of the hardware configuration of the information processing device 100. As shown in FIG. [Figure 4] FIG. 4 is an explanatory diagram showing an example of the contents stored in the VM information management table 400. As shown in FIG. [Figure 5] FIG. 5 is a block diagram showing an example of the hardware configuration of first server device 201. As shown in FIG. [Figure 6] FIG. 6 is a block diagram showing an example of the functional configuration of the information processing device 100. As shown in FIG. [Figure 7] FIG. 7 is an explanatory diagram showing the flow of operations of the information processing device 100. [Figure 8] FIG. 8 is an explanatory diagram (part 1) showing an example of the operation of the information processing device 100. [Figure 9] FIG. 9 is an explanatory diagram (part 2) showing an example of the operation of the information processing device 100. [Figure 10] FIG. 10 is an explanatory diagram (part 3) showing an example of the operation of the information processing device 100. [Figure 11] FIG. 11 is an explanatory diagram (part 4) showing an example of the operation of the information processing device 100. [Figure 12] FIG. 12 is an explanatory diagram (part 5) showing an example of the operation of the information processing device 100. [Figure 13] FIG. 13 is an explanatory diagram (part 1) showing another example of the operation of the information processing device 100. [Figure 14] FIG. 14 is an explanatory diagram (part 2) showing another example of the operation of the information processing device 100. [Figure 15] FIG. 15 is an explanatory diagram (part 3) showing another example of the operation of the information processing device 100. [Figure 16] FIG. 16 is a flowchart illustrating an example of an update process procedure. [Figure 17] FIG. 17 is a flowchart illustrating an example of a notification process procedure. [Figure 18] FIG. 18 is a flowchart illustrating an example of a mounting process procedure. DETAILED DESCRIPTION OF THE INVENTION

[0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an information processing device, an information processing method, and an information processing program according to embodiments of the present invention will be described in detail with reference to the accompanying drawings.

[0011] (An example of an information processing method according to an embodiment) 1 is an explanatory diagram showing an example of an information processing method according to an embodiment. An information processing device 100 is a computer that enables efficient implementation of target software in a target computer.

[0012] The target software is, for example, a virtual machine. The target software may also be, for example, an application. In the following description, the virtual machine may be abbreviated as "VM."

[0013] The target computer is, for example, a computer on which the target software is implemented. The target computer is, for example, a server. The target computer implements, for example, a VM and has a construction tool for building a virtualization infrastructure. The construction tool is, for example, software. Specifically, the construction tool is realized on the VM.

[0014] Conventionally, when building a virtualization infrastructure, a construction tool implements a VM by deploying the VM in a specific storage area of ​​a computer. Deployment involves, for example, using a VM installer to generate the VM according to set parameters. The parameters include, for example, the memory size that forms the VM. The installer corresponds to, for example, a VM ISO (International Organization for Standardization) format file.

[0015] For example, the build tool acquires the size of the storage area in which the VM is to be deployed from the provider of the VM, and secures a storage area of ​​the acquired size to deploy the VM. For example, when upgrading the version of a VM, the build tool may similarly acquire the size of the storage area in which the upgraded VM is to be deployed from the provider of the upgraded VM, and secure a storage area of ​​the acquired size to re-deploy the upgraded VM.

[0016] However, it can be difficult to efficiently deploy a VM. For example, the size obtained from the VM provider may not match the size of the storage area where the build tool actually deploys the VM. Even if the build tool has an ISO file, it cannot determine the exact size of the storage area where the VM will be deployed unless it actually deploys the VM, and therefore cannot deploy the VM efficiently.

[0017] For example, when upgrading a VM, the VM provider may publish a storage size for the VM that does not reflect the upgrade. In this case, the size obtained from the VM provider may not match the storage size of the VM that the build tool actually deployed after the upgrade.

[0018] Therefore, in this embodiment, an information processing method that can efficiently install target software in a target computer by using software that has already been installed in another computer will be described.

[0019] In FIG. 1, an information processing device 100 can access a first environment 101. The first environment 101 is, for example, an environment in which target software is running. Specifically, the first environment 101 is realized by a first computer in which the target software is running. For example, the target software has already been installed on the first computer. Specifically, the target software has already been deployed on the first computer. The target software is, for example, a VM. The target software may also be, for example, an application.

[0020] The information processing device 100 can access a second environment 102. The second environment 102 is, for example, an environment that requests the target software and an environment in which the target software is implemented. Specifically, the second environment 102 is realized by a second computer that requests the target software. There may be multiple environments, including the first environment 101, in which different software is running. The information processing device 100 receives designation of the target software from the second environment 102.

[0021] (1-1) The information processing device 100 acquires the size of the target software from the first environment 101. For example, the information processing device 100 acquires in advance the size of the software currently running from each of the multiple environments. For example, when the information processing device 100 receives the designation of the target software, the information processing device 100 acquires the size of the designated target software from the first environment 101 by extracting the size of the designated target software from the sizes acquired in advance.

[0022] (1-2) The information processing device 100 copies the target software from the first environment 101 to a predetermined storage area 110. The predetermined storage area 110 is, for example, a storage area of ​​the information processing device 100. For example, the information processing device 100 previously acquires identification information of running software from each of the multiple environments in association with the environment. For example, based on the identification information previously acquired, the information processing device 100 identifies the first environment 101 in which the specified target software is running among the multiple environments, and copies the specified target software from the identified first environment 101 to the predetermined storage area 110.

[0023] (1-3) The information processing device 100 transmits to the second environment 102 the acquired size and information that enables acquisition of the target software copied to the predetermined storage area 110. The information that enables acquisition of the target software copied to the predetermined storage area 110 is, for example, the address of the predetermined storage area 110 to which the target software is copied. The information that enables acquisition of the target software copied to the predetermined storage area 110 may be, for example, the target software itself. The information processing device 100 transmits to the second environment 102, for example, the acquired size and the address of the predetermined storage area 110 to which the target software is copied.

[0024] This allows the information processing device 100 to provide the second environment 102 with the size of the target software that has been installed and is running in the first environment 101. This allows the information processing device 100 to reserve a storage area of ​​an appropriate size in the second environment 102 as a storage area for storing the target software. The information processing device 100 allows the second environment 102 to store the acquired target software in the reserved storage area. This allows the information processing device 100 to efficiently install the target software in the second environment 102.

[0025] Here, the case where the information processing device 100 acquires the size of the software currently running from each environment in advance has been described, but this is not limiting. For example, the information processing device 100 may not acquire the size of the software currently running from each environment in advance. In this case, for example, when the information processing device 100 receives the designation of target software, it inquires about the size of the designated target software from each of the multiple environments. As a result, the information processing device 100 acquires the size of the designated target software from the first environment 101 included in the multiple environments.

[0026] Here, the case where the information processing device 100 acquires the size of the target software from the first environment 101 has been described, but this is not limiting. For example, the information processing device 100 may acquire the size of the target software by measuring the size of the copied target software.

[0027] Here, the case where the information processing device 100 previously acquires identification information of running software from each of the multiple environments in association with the environment has been described, but this is not limiting. For example, the information processing device 100 may not previously acquire identification information of running software from each of the multiple environments in association with the environment. In this case, for example, when the information processing device 100 receives the designation of target software, it inquires about the designated target software from each of the multiple environments, thereby acquiring the designated target software from the first environment 101 included in the multiple environments.

[0028] Here, the case where the information processing device 100 transmits information to the second environment 102 that enables acquisition of the target software copied to the predetermined storage area 110 has been described, but the present invention is not limited to this. For example, the information processing device 100 may transmit information to the second environment 102 that enables acquisition of the target software running in the first environment 101. The information that enables acquisition of the target software running in the first environment 101 is, for example, the address of the first environment 101 in which the target software is running.

[0029] Here, the case where the predetermined storage area 110 is a storage area of ​​the information processing device 100 has been described, but this is not limiting. For example, the predetermined storage area 110 may be a storage area of ​​another computer other than the information processing device 100. The other computer is, for example, a storage device that can communicate with the information processing device 100.

[0030] (An example of the information processing system 200) Next, an example of an information processing system 200 to which the information processing device 100 shown in FIG. 1 is applied will be described with reference to FIG.

[0031] 2 is an explanatory diagram showing an example of an information processing system 200. In FIG. 2, the information processing system 200 includes an information processing device 100, one or more first server devices 201, and one or more second server devices 202.

[0032] In the information processing system 200, the information processing device 100 and the first server device 201 are connected via a wired or wireless network 210. The network 210 is, for example, a local area network (LAN), a wide area network (WAN), the Internet, etc. In the information processing system 200, the information processing device 100 and the second server device 202 are connected via the wired or wireless network 210.

[0033] The information processing device 100 receives a processing request from any one of the first server devices 201. The processing request includes, for example, identification information of the target VM. The identification information includes, for example, the VM type of the target VM. The identification information includes, for example, the version number of the target VM. The processing request requests the information processing device 100 to perform processing to make it easier to implement the target VM in the first server device 201.

[0034] The information processing device 100 transmits to each second server device 202 an inquiry about the identification information and size of a VM running on the second server device 202. The information processing device 100 acquires the identification information and size of a VM running on each second server device 202 in response to the inquiry, associates the information with the identification information of the second server device 202, and stores the information in a VM information management table 400 described later in FIG.

[0035] For example, the information processing apparatus 100 periodically acquires identification information and sizes of VMs running on each of the second server devices 202, associates the information and sizes with the identification information of the second server devices 202, and stores the information and sizes in a VM information management table 400 described later in Fig. 4. For example, in response to receiving a processing request, the information processing apparatus 100 acquires the identification information and sizes of VMs running on each of the second server devices 202. For example, the information processing apparatus 100 may associate the acquired identification information and sizes of VMs running on each of the second server devices 202 with the identification information of the second server devices 202, and store the information and sizes in the VM information management table 400 described later in Fig. 4.

[0036] The information processing device 100 searches for identification information of the target VM included in the received processing request from the VM information management table 400 described later in Fig. 4. The information processing device 100 acquires the size of the target VM and identification information of any one of the second server devices 202 on which the target VM is running, which are stored in the VM information management table 400 described later in Fig. 4 in association with the identification information of the searched target VM. The information processing device 100 transmits the size of the target VM to the first server device 201.

[0037] The information processing device 100 communicates with any one of the second server devices 202 based on the acquired identification information of the second server device 202, and copies the target VM from the second server device 202 to a predetermined storage area. The information processing device 100 transmits a first notification to any one of the first server devices 201 that is the sender of the processing request. The first notification is, for example, information that enables the target VM copied to the predetermined storage area to be acquired by any one of the first server devices 201 that is the sender of the processing request. Specifically, the first notification may include the address of the storage area where the target VM is copied.

[0038] If the identification information of the target VM is not found, the information processing device 100 transmits a second notification indicating that there is no second server device 202 on which the target VM is running to any one of the first server devices 201 that is the source of the processing request. The information processing device 100 is, for example, a server or a PC (Personal Computer).

[0039] The first server device 201 is a computer that implements a VM. The first server device 201 acquires identification information of the target VM based on a user's operation input. The first server device 201 transmits a processing request including the acquired identification information of the target VM to the information processing device 100. The first server device 201 receives the size of the target VM from the information processing device 100. The first server device 201 reserves a storage area on its own device that is equal to the size of the received target VM. The first server device 201 receives a first notification from the information processing device 100. The first server device 201 acquires the target VM from the storage area of ​​the information processing device 100 based on the first notification. The first server device 201 copies the acquired target VM to the reserved storage area.

[0040] The first server device 201 may receive a second notification instead of the first notification. Upon receiving the second notification, the first server device 201 acquires a predetermined size specified by the provider of the target VM. The first server device 201 reserves a storage area of ​​the acquired predetermined size on its own device. The first server device 201 acquires a deployment file for the target VM. The deployment file is, for example, an installer. Specifically, the deployment file is an ISO file. The first server device 201 deploys the target VM in the reserved storage area based on the deployment file. The first server device 201 is, for example, a server or a PC.

[0041] The second server device 202 is a computer on which a VM is running. The second server device 202 receives an inquiry about the identification information and size of the VM running on the second server device 202 from the information processing device 100. Upon receiving the inquiry, the second server device 202 transmits the identification information and size of the VM running on the second server device 202 to the information processing device 100. The second server device 202 is, for example, a server or a PC.

[0042] Here, for convenience, a case has been described in which the first server device 201 and the second server device 202 are distinguished from each other, but this is not limiting. For example, there may be a single computer that can function as both the first server device 201 and the second server device 202.

[0043] (Example of hardware configuration of information processing device 100) Next, an example of the hardware configuration of the information processing device 100 will be described with reference to FIG.

[0044] Fig. 3 is a block diagram showing an example of the hardware configuration of the information processing device 100. In Fig. 3, the information processing device 100 has a CPU (Central Processing Unit) 301, a memory 302, a network I / F (Interface) 303, a recording medium I / F 304, and a recording medium 305. Furthermore, each component is connected to each other by a bus 300.

[0045] Here, CPU 301 is responsible for overall control of information processing device 100. Memory 302 includes, for example, a read-only memory (ROM), a random access memory (RAM), and a flash ROM. Specifically, for example, the flash ROM or ROM stores various programs, and RAM is used as a work area for CPU 301. The programs stored in memory 302 are loaded into CPU 301, causing CPU 301 to execute coded processes.

[0046] The network I / F 303 is connected to the network 210 via a communication line, and is connected to other computers via the network 210. The network I / F 303 manages the internal interface with the network 210 and controls the input and output of data from other computers. The network I / F 303 is, for example, a modem or a LAN adapter.

[0047] The recording medium I / F 304 controls reading and writing of data from and to the recording medium 305 under the control of the CPU 301. The recording medium I / F 304 is, for example, a disk drive, a solid state drive (SSD), or a universal serial bus (USB) port. The recording medium 305 is a non-volatile memory that stores data written under the control of the recording medium I / F 304. The recording medium 305 is, for example, a disk, a semiconductor memory, or a USB memory. The recording medium 305 may be detachable from the information processing device 100.

[0048] In addition to the components described above, the information processing device 100 may also include, for example, a keyboard, a mouse, a display, a printer, a scanner, a microphone, a speaker, etc. The information processing device 100 may also include a plurality of recording medium I / Fs 304 and recording media 305. The information processing device 100 may also not include the recording medium I / Fs 304 and recording media 305.

[0049] (Storage contents of VM information management table 400) Next, an example of the contents stored in the VM information management table 400 will be described with reference to Fig. 4. The VM information management table 400 is realized by, for example, a storage area such as the memory 302 or the recording medium 305 of the information processing device 100 shown in Fig. 3.

[0050] 4 is an explanatory diagram showing an example of the contents stored in the VM information management table 400. As shown in FIG. 4, the VM information management table 400 has fields for No., VM type, version number, location, and size. The VM information management table 400 stores VM information as record 400-a by setting information in each field for each VM. a is an arbitrary integer.

[0051] The No. field is set with a number assigned to VM information relating to a VM running on any of the second server devices 202. The VM type field is set with the type of the VM that forms the identification information of the VM. The version field is set with the version number of the VM that forms the identification information of the VM. The location field is set with identification information that identifies the second server device 202 on which the VM is running. The size field is set with the size of the VM.

[0052] (Example of Hardware Configuration of First Server Device 201) Next, an example of the hardware configuration of first server device 201 will be described with reference to FIG.

[0053] Fig. 5 is a block diagram showing an example of the hardware configuration of the first server device 201. In Fig. 5, the first server device 201 has a CPU 501, a memory 502, a network I / F 503, a recording medium I / F 504, and a recording medium 505. Furthermore, each component is connected to each other by a bus 500.

[0054] Here, CPU 501 is responsible for overall control of first server device 201. Memory 502 includes, for example, ROM, RAM, and flash ROM. Specifically, for example, flash ROM and ROM store various programs, and RAM is used as a work area for CPU 501. The programs stored in memory 502 are loaded into CPU 501, causing CPU 501 to execute coded processes.

[0055] The network I / F 503 is connected to the network 210 via a communication line, and is connected to other computers via the network 210. The network I / F 503 manages the internal interface with the network 210 and controls the input and output of data from other computers. The network I / F 503 is, for example, a modem or a LAN adapter.

[0056] The recording medium I / F 504 controls reading and writing of data from and to the recording medium 505 under the control of the CPU 501. The recording medium I / F 504 is, for example, a disk drive, an SSD, or a USB port. The recording medium 505 is a non-volatile memory that stores data written under the control of the recording medium I / F 504. The recording medium 505 is, for example, a disk, a semiconductor memory, or a USB memory. The recording medium 505 may be detachable from the first server device 201.

[0057] In addition to the components described above, the first server device 201 may also have, for example, a keyboard, a mouse, a display, a printer, a scanner, a microphone, a speaker, etc. The first server device 201 may also have a plurality of recording medium I / Fs 504 and recording media 505. The first server device 201 may also not have a recording medium I / F 504 or a recording medium 505.

[0058] (Example of Hardware Configuration of Second Server Device 202) The hardware configuration example of the second server device 202 is specifically similar to the hardware configuration example of the first server device 201 shown in FIG. 5, and therefore a description thereof will be omitted.

[0059] (Example of functional configuration of information processing device 100) Next, an example of the functional configuration of the information processing device 100 will be described with reference to FIG.

[0060] 6 is a block diagram showing an example of the functional configuration of the information processing device 100. The information processing device 100 includes a first storage unit 600, a first acquisition unit 601, an identification unit 602, a duplication unit 603, and a first output unit 604.

[0061] The first storage unit 600 is realized by, for example, a storage area such as the memory 302 or the recording medium 305 shown in Fig. 3. In the following, a case where the first storage unit 600 is included in the information processing device 100 will be described, but this is not limiting. For example, the first storage unit 600 may be included in a device different from the information processing device 100, and the stored contents of the first storage unit 600 may be accessible from the information processing device 100.

[0062] The first acquisition unit 601 to the first output unit 604 function as an example of a control unit. Specifically, the first acquisition unit 601 to the first output unit 604 realize their functions by, for example, causing the CPU 301 to execute a program stored in a storage area such as the memory 302 or the recording medium 305 shown in Fig. 3, or by the network I / F 303. The processing results of each functional unit are stored in a storage area such as the memory 302 or the recording medium 305 shown in Fig. 3.

[0063] The first storage unit 600 stores various information that is referenced or updated during processing by each functional unit. The first storage unit 600 stores, for example, the size of software and identification information of the software in association with identification information of an environment in which the software is running among multiple environments. The software is, for example, a VM. The environment is, for example, realized by the second server device 202. The software identification information includes, for example, the type of the software or the version number of the software. The environment identification information includes, for example, the name of the environment or the address of the environment.

[0064] Specifically, the first storage unit 600 stores the VM information management table 400 shown in Fig. 4. The size of the software, the identification information of the software, and the identification information of the environment in which the software is running are acquired by, for example, the first acquisition unit 601.

[0065] The first storage unit 600 stores, for example, software running in any one of a plurality of environments. Specifically, the first storage unit 600 stores a VM running in any one of the plurality of environments. The software is acquired, for example, by the first acquisition unit 601. The first storage unit 600 may store, for example, information that enables the target software to be deployed. The information that enables the target software to be deployed is, for example, an installer for the target software. The installer corresponds, for example, to an ISO file.

[0066] The first acquisition unit 601 acquires various types of information used in processing by each functional unit. The first acquisition unit 601 stores the acquired various types of information in the first storage unit 600 or outputs it to each functional unit. The first acquisition unit 601 may also output the various types of information stored in the first storage unit 600 to each functional unit. The first acquisition unit 601 acquires various types of information based on, for example, a user's operation input. The first acquisition unit 601 may receive various types of information from, for example, a device different from the information processing device 100.

[0067] The first acquisition unit 601 acquires, for example, identification information of the target software from a second environment that requests the target software among the multiple environments. Specifically, the first acquisition unit 601 receives the type and version number of the target software from the second environment.

[0068] The first acquisition unit 601 acquires, for example, from an environment in which the software is running among the multiple environments, the size of the software, identification information of the software, and identification information of the environment in which the software is running. The first acquisition unit 601 associates the acquired size of the software, identification information of the software, and identification information of the environment in which the software is running with each other, and stores them in the first storage unit 600.

[0069] Specifically, the first acquisition unit 601 periodically transmits an inquiry to each environment in which the software is running, requesting the size of the software, the identification information of the software, and the identification information of the environment. Specifically, as a result of the inquiry, the first acquisition unit 601 receives the size of the software, the identification information of the software, and the identification information of the environment from each environment in which the software is running. This allows the first acquisition unit 601 to reduce the time required to identify the environment in which the target software is running from among multiple environments.

[0070] The first acquisition unit 601 may, for example, acquire identification information of the software and identification information of the environment in which the software is running from an environment in which the software is running among the multiple environments. The first acquisition unit 601 may, for example, associate the acquired identification information of the software with the identification information of the environment in which the software is running and store them in the first storage unit 600.

[0071] The first acquisition unit 601 may receive a start trigger for starting processing of any of the functional units. The start trigger may be, for example, a predetermined operational input by a user. The start trigger may be, for example, reception of predetermined information from another computer. The start trigger may be, for example, output of predetermined information by any of the functional units. Specifically, the first acquisition unit 601 may receive acquisition of identification information of the target software as a start trigger for starting processing of the identification unit 602 and the duplication unit 603.

[0072] The identifying unit 602 identifies the size of the target software. For example, the identifying unit 602 identifies the size of the target software by reading the size of the target software associated with the identification information of the target software from the first storage unit 600. This allows the identifying unit 602 to obtain the size of the target software that has been previously obtained from the first environment by reading it from the first storage unit 600.

[0073] For example, when the first acquisition unit 601 acquires identification information of the target software, the identification unit 602 may transmit an inquiry about the size of the target software to each environment. The inquiry includes, for example, the identification information of the target software. For example, as a result of the inquiry, the identification unit 602 receives the size of the target software from the first environment in which the target software is running. Specifically, when the first acquisition unit 601 does not acquire the size of the target software, the identification unit 602 transmits an inquiry about the size of the target software to each environment. This allows the identification unit 602 to suppress an increase in communication volume.

[0074] The identifying unit 602 may identify the size of the target software by, for example, measuring the size of the copied target software after the copying unit 603 copies the target software. Specifically, if the size of the target software is not acquired by the first acquiring unit 601, the identifying unit 602 measures the size of the copied target software. This allows the identifying unit 602 to suppress an increase in communication volume.

[0075] When the copying unit 603 acquires the identification information of the target software, it copies the target software from the first environment to a predetermined storage area. The predetermined storage area is, for example, a storage area of ​​the information processing device 100. Specifically, the predetermined storage area is a storage area of ​​the first storage unit 600. The predetermined storage area may be, for example, a storage area of ​​a computer other than the information processing device 100.

[0076] The duplication unit 603, for example, acquires the target software from the first environment in which the target software is running and stores it in a predetermined storage area. At this time, if the size of the target software has already been identified by the identification unit 602, the duplication unit 603 may reserve a storage area equivalent to the identified size, acquire the target software from the first environment in which the target software is running, and store it in the reserved storage area.

[0077] Specifically, when the duplication unit 603 acquires the identification information of the target software, it reads, from the first storage unit 600, identification information of the first environment in which the target software is running, which is associated with the identification information of the target software. Specifically, the duplication unit 603 transmits an inquiry about the target software to the first environment based on the read identification information. The inquiry includes, for example, the identification information of the target software. Specifically, the duplication unit 603 acquires the target software from the first environment as a result of the inquiry. This allows the duplication unit 603 to easily implement the target software in the second environment.

[0078] For example, when the duplication unit 603 acquires the identification information of the target software, the duplication unit 603 may transmit an inquiry about the target software to each of the multiple environments. The inquiry includes, for example, the identification information of the target software. For example, as a result of the inquiry, the duplication unit 603 acquires the target software from a first environment among the multiple environments in which the target software is running. This allows the duplication unit 603 to easily implement the target software in the second environment.

[0079] The first output unit 604 outputs the processing result of at least one of the functional units. The output format is, for example, display on a display, printout to a printer, transmission to an external device via the network I / F 303, or storage in a storage area such as the memory 302 or the recording medium 305. This allows the first output unit 604 to notify the user of the processing result of at least one of the functional units, thereby improving the convenience of the information processing device 100.

[0080] The first output unit 604 outputs to the second environment the acquired size and information that enables acquisition of the target software copied to the specified storage area. The information that enables acquisition of the target software copied to the specified storage area is, for example, information that indicates the location of the specified storage area to which the target software is copied. The information that indicates the location is, for example, an address. The information that enables acquisition of the target software copied to the specified storage area may be, for example, the target software itself.

[0081] For example, the first output unit 604 transmits to the second environment the acquired size and information indicating the location of the specified storage area where the target software has been copied. As a result, the first output unit 604 can secure a storage area of ​​an appropriate size for deploying the target software in the second environment, can acquire the target software from the specified storage area, and can store the target software in a storage area of ​​the appropriate size. As a result, the first output unit 604 can make it easier to implement the target software in the second environment.

[0082] If the first storage unit 600 does not contain identification information for the target software, the first output unit 604 may transmit the acquired size and information enabling the target software to be deployed to the second environment. For example, the first output unit 604 transmits the acquired size and an installer for the target software to the second environment. This allows the first output unit 604 to secure a storage area of ​​an appropriate size for deploying the target software in the second environment, and enables the target software to be deployed in a storage area of ​​the appropriate size. Therefore, the first output unit 604 can make it easier to implement the target software in the second environment.

[0083] The first output unit 604 may transmit the acquired size and information enabling acquisition of the target software from the first environment to the second environment. For example, the first output unit 604 transmits the acquired size and identification information of the first environment to the second environment. As a result, the first output unit 604 can secure a storage area of ​​an appropriate size for deploying the target software in the second environment, enable the target software to be acquired from the first environment, and enable the target software to be deployed in a storage area of ​​the appropriate size. As a result, the first output unit 604 can facilitate implementation of the target software in the second environment.

[0084] The first server device 201 includes a second storage unit 610, a second acquisition unit 611, a generation unit 612, and a second output unit 613.

[0085] The second storage unit 610 is realized by, for example, a storage area such as the memory 502 or the recording medium 505 shown in Fig. 5. In the following, a case where the second storage unit 610 is included in the first server device 201 will be described, but this is not limiting. For example, the second storage unit 610 may be included in a device different from the first server device 201, and the contents stored in the second storage unit 610 may be accessible from the first server device 201.

[0086] The second acquisition unit 611 to the second output unit 613 function as an example of a control unit. Specifically, the second acquisition unit 611 to the second output unit 613 realize their functions by, for example, causing the CPU 501 to execute a program stored in a storage area such as the memory 502 or the recording medium 505 shown in Fig. 5, or by the network I / F 503. The processing results of each functional unit are stored in, for example, a storage area such as the memory 502 or the recording medium 505 shown in Fig. 5.

[0087] The second storage unit 610 stores various information that is referenced or updated in the processing of each functional unit. The second storage unit 610 stores, for example, identification information of the target software. The identification information of the target software is acquired, for example, by the second acquisition unit 611. The second storage unit 610 stores, for example, information that enables the target software to be acquired from a specified storage area. The information that enables the target software to be acquired from the specified storage area is acquired, for example, by the second acquisition unit 611.

[0088] The second storage unit 610 stores, for example, information that enables the target software to be acquired from the first environment. The information that enables the target software to be acquired from the first environment is acquired, for example, by the second acquisition unit 611. The second storage unit 610 stores, for example, information that enables the target software to be deployed. The information that enables the target software to be deployed is acquired, for example, by the second acquisition unit 611. The second storage unit 610 stores, for example, the target software. The target software is acquired, for example, by the second acquisition unit 611.

[0089] The second acquisition unit 611 acquires various types of information used in the processing of each functional unit. The second acquisition unit 611 stores the acquired various types of information in the second storage unit 610 or outputs it to each functional unit. The second acquisition unit 611 may also output the various types of information stored in the second storage unit 610 to each functional unit. The second acquisition unit 611 acquires the various types of information based on, for example, a user's operation input. The second acquisition unit 611 may receive the various types of information from, for example, a device different from the first server device 201.

[0090] The second acquisition unit 611 acquires, for example, the identification information of the target software. Specifically, the second acquisition unit 611 acquires the identification information of the target software by accepting input of the identification information of the target software based on an operation input by a user.

[0091] The second acquisition unit 611 acquires, for example, the size of the target software. Specifically, the second acquisition unit 611 receives the size of the target software from the information processing device 100. This enables the second acquisition unit 611 to secure, in the second storage unit 610, a storage area of ​​an appropriate size for storing the target software.

[0092] The second acquisition unit 611 acquires, for example, information that enables acquisition of the target software copied to a predetermined storage area. Specifically, the second acquisition unit 611 receives, from the information processing device 100, information that enables acquisition of the target software copied to a predetermined storage area.

[0093] The second acquisition unit 611 may acquire, for example, information that enables the target software to be deployed. Specifically, the second acquisition unit 611 receives the information that enables the target software to be deployed from the information processing device 100. Specifically, the second acquisition unit 611 may acquire the information that enables the target software to be deployed from the developer of the target software.

[0094] The second acquisition unit 611 may acquire, for example, information that enables acquisition of the target software from the first environment. Specifically, the second acquisition unit 611 receives, from the information processing device 100, information that enables acquisition of the target software from the first environment.

[0095] The second acquisition unit 611 may receive a start trigger for starting processing of any of the functional units. The start trigger may be, for example, a predetermined operational input by a user. The start trigger may be, for example, reception of predetermined information from another computer. The start trigger may be, for example, output of predetermined information by any of the functional units. The second acquisition unit 611 may receive, for example, acquisition of the size of the target software as a start trigger for starting processing of the generation unit 612.

[0096] The generation unit 612 reserves a storage area of ​​the second storage unit 610 corresponding to the size acquired by the second acquisition unit 611 as a storage area for storing the target software. This allows the generation unit 612 to make it easier to implement the target software. The generation unit 612 can, for example, avoid a situation in which the size of the storage area for storing the target software is smaller than the size of the target software, resulting in insufficient storage. The generation unit 612 can, for example, avoid a situation in which the size of the storage area for storing the target software is larger than the size of the target software.

[0097] If the second acquisition unit 611 has not acquired the size, the generation unit 612 may reserve a storage area of ​​a predetermined size in the second storage unit 610 as a storage area for storing the target software. The predetermined size is, for example, specified in advance by the developer of the target software. This allows the generation unit 612 to make the target software implementable even if the size of the target software has not been acquired by the information processing device 100.

[0098] The generation unit 612 acquires the target software copied to the predetermined storage area and stores it in the reserved storage area, based on the information that enables acquisition of the target software copied to the predetermined storage area acquired by the second acquisition unit 611. This allows the generation unit 612 to efficiently implement the target software.

[0099] The generating unit 612 may deploy the target software in the secured storage area based on the information that enables deployment of the target software acquired by the second acquiring unit 611. This allows the generating unit 612 to efficiently deploy the target software.

[0100] The generation unit 612 may acquire the target software from the first environment and store it in the reserved storage area based on the information that enables acquisition of the target software from the first environment acquired by the second acquisition unit 611. This allows the generation unit 612 to efficiently implement the target software.

[0101] The second output unit 613 outputs the processing result of at least one of the functional units. The output format is, for example, display on a display, printout to a printer, transmission to an external device via the network I / F 503, or storage in a storage area such as the memory 502 or the recording medium 505. This allows the second output unit 613 to notify the user of the processing result of at least one of the functional units, thereby improving the convenience of the first server device 201.

[0102] The second output unit 613 transmits the identification information of the target software to the information processing device 100. For example, the second output unit 613 transmits the identification information of the target software acquired by the second acquisition unit 611 to the information processing device 100. In this way, the second output unit 613 enables the information processing device 100 to identify the target software.

[0103] (Operation flow of information processing device 100) Next, the flow of operations of the information processing device 100 will be described with reference to FIG.

[0104] 7 is an explanatory diagram showing the flow of operation of the information processing device 100. In FIG. 7, the information processing device 100 is capable of communicating with server a corresponding to the first server device 201, is capable of communicating with server A corresponding to the second server device 202, and is capable of communicating with server B corresponding to the second server device 202. Server a is, for example, unreleased and has not yet started operation. Server A is, for example, released and is in operation. Server B is, for example, released and is in operation. The information processing device 100 has a VM copy area 700 that stores VMs.

[0105] (7-1) The information processing device 100 periodically communicates with server A and acquires the VM type, version number, and size of the VM running on server A. The information processing device 100 associates the VM type, version number, and size of the VM running on server A with server A and stores them in the VM information management table 400. The information processing device 100 periodically communicates with server B and acquires the VM type, version number, and size of the VM running on server B. The information processing device 100 associates the VM type, version number, and size of the VM running on server B with server B and stores them in the VM information management table 400.

[0106] (7-2) The information processing device 100 receives a processing request including a combination of the VM type and version number of VM1 from the construction tool of server a. The information processing device 100 searches the VM information management table 400 for the combination of the VM type and version number of VM1 included in the processing request. The information processing device 100 acquires the size of VM1 stored in the VM information management table 400 in association with the searched combination of VM type and version number. The information processing device 100 identifies server A on which VM1 stored in the VM information management table 400 in association with the searched combination of VM type and version number is located.

[0107] The information processing device 100 copies VM1 from the identified server A to the VM copy area 700. The information processing device 100 sends a notification including the acquired size of VM1 and the address of the VM copy area 700 where VM1 has been copied to the construction tool of server a. The construction tool of server a receives the notification. The construction tool of server a creates a deployment area on its own device that is equal to the size of VM1 included in the notification. Based on the address included in the notification, the construction tool of server a copies VM1 from the VM copy area 700 to the created deployment area.

[0108] This allows the information processing device 100 to easily implement VM 1 on server a. The information processing device 100 can, for example, enable server a to create a deployment area of ​​an appropriate size, thereby preventing a situation in which the size of the deployment area is insufficient for the size of VM 1.

[0109] (An example of the operation of the information processing device 100) Next, an example of the operation of the information processing device 100 will be described with reference to FIGS.

[0110] 8 to 12 are explanatory diagrams showing an example of the operation of the information processing device 100. In Fig. 8 to 12, an information processing system 200 constructs a virtualization infrastructure.

[0111] In Fig. 8, there is a server #n corresponding to the second server device 202. n is, for example, an integer between 1 and 64. Each server #n is connected to, for example, the same network 210. Each server #n has, for example, a plurality of disk devices such as HDDs (Hard Disk Drives) or SSDs. Next, we move on to the description of Fig. 9.

[0112] In Figure 9, the worker sets the BIOS setting values ​​for server #1. The worker installs the hypervisor OS (operating system) on server #1. The worker selects one of the disk devices on server #1 and creates a partition for the construction tool on which the VM on which the construction tool runs is located. The worker installs the VM on which the construction tool runs in the partition for the construction tool. For convenience in the following explanation, the VM on which the construction tool runs may be referred to as the "construction tool." The worker selects another disk device on server #1 and creates a partition for the VM on which the construction tool will place the target VM. Next, we move on to the explanation of Figure 10.

[0113] 10, the construction tool transmits a processing request including a combination of the VM type and version number of the target VM to the information processing device 100. The construction tool generates a processing request including a combination of the VM type and version number based on, for example, an operator's operation input, and transmits the processing request to the information processing device 100. The construction tool may also generate a processing request including a combination of a VM type and version number that is specified in advance, and transmit the processing request to the information processing device 100. Next, the description will move to FIG. 11.

[0114] 11, the information processing device 100 receives a processing request. The information processing device 100 searches the VM information management table 400 for a combination of the VM type and version number included in the received processing request. The information processing device 100 identifies the size of the target VM stored in the VM information management table 400 in association with the searched combination of the VM type and version number.

[0115] The information processing device 100 identifies the location of the target VM stored in the VM information management table 400 in association with the searched combination of VM type and version number. In the example of FIG. 11, the information processing device 100 identifies server A as the location of the target VM. The information processing device 100 copies the target VM from the identified server A to the VM copy area 1100 of its own device. The copy corresponds to a data copy of software. Next, the description will move on to FIG. 12.

[0116] 12, the information processing device 100 transmits a notification including the identified size of the target VM and the address of the VM copy area 1100 where the target VM is copied to the construction tool. The construction tool receives the notification. Based on the size of the target VM included in the notification, the construction tool creates a deployment area of ​​the specified size in the VM partition. The size is, for example, 5 GB.

[0117] The build tool copies the target VM from the VM copy area 1100 to the created deployment area based on the address of the VM copy area 1100 included in the notification. The copy corresponds to copying software data. This allows the build tool to create a deployment area of ​​an appropriate size for placing the target VM, and to efficiently implement the target VM.

[0118] In the past, when the size of a target VM differed from the size of the deployment area, work tended to be carried out to correct the deployment area and to test the operation of the target VM. In contrast, a construction tool can match the size of the target VM with the size of the deployment area. The construction tool can avoid work such as correcting the deployment area and testing the operation of the target VM, thereby avoiding rework and reducing the work time and workload.

[0119] (Another example of the operation of the information processing device 100) Next, another example of the operation of the information processing device 100 will be described with reference to FIGS.

[0120] 13 to 15 are explanatory diagrams showing another example of the operation of the information processing device 100. In the example of Fig. 13, the information processing device 100 can access a first environment 1301. The first environment 1301 is, for example, an environment in which a target VM is running. The first environment 1301 is specifically realized by the second server device 202.

[0121] The information processing device 100 can access the second environment 1302. The second environment 1302 is, for example, an environment that requests a target VM and that implements the target VM. Specifically, the second environment 1302 is realized by the first server device 201. The information processing device 100 receives a designation of the target VM from the second environment 1302.

[0122] (13-1) The information processing device 100 acquires the size of the target VM from the first environment 1301. For example, the information processing device 100 acquires in advance the size of the VM currently in operation from each of a plurality of environments. For example, when the information processing device 100 receives the designation of the target VM, the information processing device 100 acquires the size of the designated target VM from the first environment 1301 by extracting the size of the designated target VM from the sizes acquired in advance.

[0123] (13-2) The information processing device 100 transmits the acquired size and the address of the first environment 1301 in which the target VM is running to the second environment 1302. The second environment 1302 receives the size and the address of the first environment 1301. The second environment 1302 reserves a storage area equivalent to the received size, and copies the target VM from the first environment 1301 to the reserved storage area based on the received address.

[0124] As a result, the information processing apparatus 100 can provide the size of the target VM that is already implemented and running in the first environment 1301 to the second environment 1302. As a result, the information processing apparatus 100 can secure a storage area of ​​an appropriate size in the second environment 1302 as a storage area for storing the target VM. The information processing apparatus 100 can acquire the target VM from the first environment 1301 in the second environment 1302. As a result, the information processing apparatus 100 can efficiently implement the target VM in the second environment 1302. Next, the description will move to FIG. 14.

[0125] 14, the information processing apparatus 100 can access a first environment 1401. The first environment 1401 is, for example, an environment in which a target VM is running. The first environment 1401 is specifically realized by the second server apparatus 202.

[0126] The information processing device 100 can access the second environment 1402. The second environment 1402 is, for example, an environment that requests a target VM and that implements the target VM. Specifically, the second environment 1402 is realized by the first server device 201. The information processing device 100 receives a designation of the target VM from the second environment 1402.

[0127] (14-1) The information processing device 100 acquires the size of the target VM from the first environment 1401. For example, the information processing device 100 acquires in advance the size of the VM currently in operation from each of a plurality of environments. For example, when the information processing device 100 receives the designation of the target VM, the information processing device 100 acquires the size of the designated target VM from the first environment 1401 by extracting the size of the designated target VM from the sizes acquired in advance.

[0128] (14-2) The information processing device 100 transmits the acquired size to the second environment 1402. The second environment 1402 receives the size. The second environment 1402 reserves a storage area equivalent to the received size. The second environment 1402 acquires information that enables the target VM to be deployed. For example, the second environment 1402 acquires an ISO file that serves as an installer for the target VM from the developer of the target VM. The second environment 1402 deploys the target VM in the reserved storage area based on the ISO file.

[0129] As a result, the information processing apparatus 100 can provide the size of the target VM that is already implemented and running in the first environment 1401 to the second environment 1402. As a result, the information processing apparatus 100 can secure a storage area of ​​an appropriate size in the second environment 1402 as a storage area for deploying the target VM. Therefore, the information processing apparatus 100 can efficiently implement the target VM in the second environment 1402. Next, the description will move to FIG. 15.

[0130] 15, the information processing device 100 can access a storage device 1500. The information processing device 100 can access a first environment 1501. The first environment 1501 is, for example, an environment in which a target VM is running. The first environment 1501 is specifically realized by the second server device 202.

[0131] The information processing device 100 can access the second environment 1502. The second environment 1502 is, for example, an environment that requests a target VM and that implements the target VM. Specifically, the second environment 1502 is realized by the first server device 201. The information processing device 100 receives a designation of the target VM from the second environment 1502.

[0132] (15-1) The information processing device 100 acquires the size of the target VM from the first environment 1501. For example, the information processing device 100 acquires in advance the size of the VM currently in operation from each of a plurality of environments. For example, when the information processing device 100 receives the designation of the target VM, the information processing device 100 acquires the size of the designated target VM from the first environment 1501 by extracting the size of the designated target VM from the sizes acquired in advance.

[0133] (15-2) The information processing device 100 acquires a target VM from the first environment 1501 and transmits it to the storage device 1500, thereby storing the target VM in the storage device 1500. For example, the information processing device 100 acquires in advance, from each of a plurality of environments, identification information of a VM in operation in association with the environment. For example, based on the identification information acquired in advance, the information processing device 100 identifies, from the plurality of environments, the first environment 1501 in which a specified target VM is in operation, acquires the specified target VM from the identified first environment 1501, and transmits it to the storage device 1500.

[0134] (15-3) The information processing device 100 transmits the acquired size and the address of the storage device 1500 to the second environment 1502. The second environment 1502 reserves a storage area equal to the received size and, based on the received address, copies the target VM from the storage device 1500 to the reserved storage area. The storage device 1500 may, for example, confirm the legitimacy of the second environment 1502 with the information processing device 100 before providing the target VM to the second environment 1502.

[0135] This allows the information processing apparatus 100 to provide the second environment 1502 with the size of the target VM that has been implemented and is running in the first environment 1501. Therefore, the information processing apparatus 100 can secure a storage area 110 of an appropriate size as the storage area 110 for storing the target VM in the second environment 1502. The information processing apparatus 100 can acquire the target VM from the storage apparatus 1500 in the second environment 1502. Therefore, the information processing apparatus 100 can efficiently implement the target VM in the second environment 1502.

[0136] (Update procedure) Next, an example of an update processing procedure executed by the information processing device 100 will be described with reference to Fig. 16. The update processing is realized by, for example, the CPU 301, storage areas such as the memory 302 and the recording medium 305, and the network I / F 303 shown in Fig. 3.

[0137] 16 is a flowchart showing an example of an update process procedure. In FIG. 16, the information processing device 100 accesses each second server device 202 (step S1601). Then, the information processing device 100 acquires, from each second server device 202, a combination of a VM type and a version number for a virtual machine running on that second server device 202 (step S1602).

[0138] Next, the information processing device 100 determines whether or not there is any combination of the acquired VM types and versions that is not stored in the VM information management table 400 (step S1603). If there is no such combination (step S1603: No), the information processing device 100 proceeds to processing of step S1605. On the other hand, if there is such a combination (step S1603: Yes), the information processing device 100 proceeds to processing of step S1604.

[0139] In step S1604, the information processing apparatus 100 associates any combination of the acquired VM type and version number that is not stored in the VM information management table 400 with the location and size of the VM, and adds the combination to the VM information management table 400 (step S1604). Then, the information processing apparatus 100 proceeds to the process of step S1605.

[0140] In step S1605, the information processing apparatus 100 waits for a certain period of time (step S1605). Then, the information processing apparatus 100 returns to the process of step S1601. This allows the information processing apparatus 100 to update the VM information management table 400 appropriately.

[0141] (Notification Processing Procedure) Next, an example of a notification process procedure executed by the information processing device 100 will be described with reference to Fig. 17. The notification process is realized by, for example, the CPU 301, storage areas such as the memory 302 and the recording medium 305, and the network I / F 303 shown in Fig. 3.

[0142] 17 is a flowchart showing an example of a notification process procedure, in which the information processing apparatus 100 receives a processing request including a combination of a VM type and a version number from the first server apparatus 201 (step S1701).

[0143] Next, the information processing apparatus 100 searches the VM information management table 400 for a combination of the VM type and version number included in the received processing request (step S1702). Then, the information processing apparatus 100 determines whether the combination of the VM type and version number included in the received processing request is stored in the VM information management table 400 (step S1703). If the combination is not stored (step S1703: No), the information processing apparatus 100 proceeds to the processing of step S1706. On the other hand, if the combination is stored (step S1703: Yes), the information processing apparatus 100 proceeds to the processing of step S1704.

[0144] In step S1704, the information processing apparatus 100 copies the VM corresponding to the combination of the VM type and the version number to the copy area based on the access destination information stored in association with the combination in the VM information management table 400 (step S1704). The combination of the VM type and the version number is included in the received processing request.

[0145] Next, the information processing device 100 transmits to the first server device 201 a notification that enables identification of the VM size and copy area stored in association with the combination of the VM type and version number included in the received processing request in the VM information management table 400 (step S1705). Then, the information processing device 100 ends the notification process.

[0146] In step S1706, the information processing device 100 transmits a notification indicating that the combination does not exist to the first server device 201 (step S1706). Then, the information processing device 100 ends the notification process. This enables the information processing device 100 to make it easier to implement a VM in the first server device 201.

[0147] (Implementation procedure) Next, an example of an implementation process procedure executed by the first server device 201 will be described with reference to Fig. 18. The implementation process is realized by, for example, the CPU 501, storage areas such as the memory 502 and the recording medium 505, and the network I / F 503 shown in Fig. 5.

[0148] 18 is a flowchart showing an example of the implementation process procedure, in which the first server device 201 receives input of a combination of a VM type and a version number (step S1801).

[0149] Next, the first server device 201 transmits a processing request including the input combination of VM type and version number to the information processing device 100 (step S1802). Then, the first server device 201 receives a notification from the information processing device 100 (step S1803).

[0150] Next, the first server device 201 determines whether or not a notification that enables identification of a VM size and a copy area has been received (step S1804). If a notification that enables identification of a VM size and a copy area has been received (step S1804: Yes), the first server device 201 proceeds to the processing of step S1805. On the other hand, if a notification indicating that no combination exists has been received (step S1804: No), the first server device 201 proceeds to the processing of step S1808.

[0151] In step S1805, the first server device 201 identifies the VM size based on the notification and creates a deployment area for the VM size (step S1805). Next, the first server device 201 identifies a copy area based on the notification and copies the VM from the copy area to the deployment area (step S1806). Then, the first server device 201 transmits a completion notification to the information processing device 100 (step S1807). Thereafter, the first server device 201 ends the implementation process.

[0152] In step S1808, the first server device 201 creates a deployment area for the VM size provided by the provider of the ISO file of the VM (step S1808). Next, the first server device 201 creates the VM in the deployment area based on the ISO file (step S1809). Then, the first server device 201 ends the implementation process. This allows the first server device 201 to implement the VM.

[0153] Here, the information processing device 100 may change the order of the processes of some steps in the flowcharts of Figures 16 and 17 and execute them. Also, the information processing device 100 may omit some of the processes of some steps in the flowcharts of Figures 16 and 17. The first server device 201 may change the order of the processes of some steps in the flowcharts of Figure 18 and execute them. Also, the first server device 201 may omit some of the processes of some steps in the flowcharts of Figure 18.

[0154] As described above, the information processing device 100 can copy the target software from a first environment in which the target software is running to a predetermined storage area. The information processing device 100 can acquire the size of the target software. The information processing device 100 can transmit the acquired size and information that enables acquisition of the target software copied to the storage area to a second environment that requests the target software. This allows the information processing device 100 to easily implement the target software in the second environment.

[0155] The information processing device 100 can acquire the size of the software and the identification information of the software from the environment in which the software is running, and store the acquired software size and identification information of the software in a table in association with the environment identification information. The information processing device 100 can accept the identification information of the target software from the second environment. The information processing device 100 can acquire the identification information of the first environment associated with the identification information of the target software and the size of the target software based on the table. The information processing device 100 can copy the target software from the first environment to a predetermined storage area based on the acquired identification information of the first environment. This allows the information processing device 100 to identify the first environment in which the target software is running, making it easier to copy the target software and reducing the time required to copy the target software.

[0156] According to the information processing device 100, if the table does not contain identification information of the target software, information that enables the target software to be deployed can be transmitted to the second environment. This allows the information processing device 100 to make the target software deployable in the second environment even if there is no first environment in which the target software is running.

[0157] The information processing device 100 can be applied to a case where the target software is a virtual machine, and thus the information processing device 100 can facilitate the implementation of a virtual machine in the second environment.

[0158] According to the information processing device 100, it is possible to transmit the acquired size and information indicating the location of the storage area where the target software has been copied to the second environment. This allows the information processing device 100 to make the storage area where the target software has been copied accessible in the second environment, and to make the target software installable.

[0159] According to the information processing device 100, the storage area of ​​the information processing device 100 itself can be used as the predetermined storage area, which allows the information processing device 100 to copy the target software from the information processing device 100 in the second environment.

[0160] According to the information processing device 100, it is possible to acquire the size of the target software from the first environment, thereby enabling the information processing device 100 to identify an appropriate size of the storage area for storing the target software.

[0161] According to the information processing device 100, the size of the copied target software can be acquired by measuring the size of the target software, thereby enabling the information processing device 100 to identify an appropriate size for the storage area in which the target software is to be stored.

[0162] According to the information processing device 100, it is possible to transmit to the second environment the acquired size and information that enables acquisition of the target software from the first environment. As a result, the information processing device 100 can make it possible for the second environment to access the first environment in which the target software is running, and to implement the target software.

[0163] According to the information processing device 100, it is possible to transmit the acquired size and information enabling the target software to be deployed to the second environment, thereby enabling the information processing device 100 to deploy the target software in a storage area of ​​an appropriate size in the second environment.

[0164] The information processing method described in this embodiment can be realized by executing a prepared program on a computer such as a PC or a workstation. The information processing program described in this embodiment is recorded on a computer-readable recording medium and executed by being read from the recording medium by the computer. The recording medium may be a hard disk, a flexible disk, a CD (Compact Disc)-ROM, an MO (Magneto Optical disc), a DVD (Digital Versatile Disc), or the like. The information processing program described in this embodiment may also be distributed via a network such as the Internet.

[0165] The following additional notes are provided regarding the above-described embodiment.

[0166] (Appendix 1) Copying the target software from the first environment in which the target software is running to a specified storage area, Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment requesting the target software; An information processing device comprising a control unit.

[0167] (Supplementary Note 2) The control unit acquiring a size of the software and identification information of the software from the environment in which the software is running, and storing the size and identification information of the software in a table in association with the identification information of the environment; receiving identification information of the target software from the second environment; acquiring, based on the table, identification information of the first environment associated with identification information of the target software and a size of the target software; 2. The information processing device according to claim 1, further comprising: copying the target software from the first environment to the specified storage area based on the acquired identification information of the first environment.

[0168] (Supplementary Note 3) The control unit 3. The information processing device according to claim 2, wherein if the table does not include identification information of the target software, information enabling the target software to be deployed is transmitted to the second environment.

[0169] (Supplementary Note 4) The information processing device according to any one of Supplementary Notes 1 to 3, wherein the target software is a virtual machine.

[0170] (Supplementary Note 5) The control unit An information processing device according to any one of appendices 1 to 4, characterized in that it transmits to the second environment the acquired size and information indicating the location of the storage area into which the target software has been copied.

[0171] (Supplementary Note 6) The information processing device according to any one of Supplementary Notes 1 to 5, wherein the predetermined storage area is a storage area of ​​the information processing device.

[0172] (Supplementary Note 7) The control unit 7. The information processing device according to any one of appendices 1 to 6, wherein the size of the target software is acquired from the first environment.

[0173] (Supplementary Note 8) The control unit 8. The information processing device according to any one of appendices 1 to 7, wherein the size of the target software is acquired by measuring the size of the copied target software.

[0174] (Supplementary Note 9) The control unit 9. The information processing device according to any one of appendices 1 to 8, wherein the acquired size and information enabling acquisition of the target software from the first environment are transmitted to the second environment.

[0175] (Supplementary Note 10) The control unit 10. The information processing device according to any one of appendices 1 to 9, further comprising transmitting the acquired size and information enabling the target software to be deployed to the second environment.

[0176] (Appendix 11) Copying the target software from the first environment in which the target software is running to a predetermined storage area, Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment requesting the target software; An information processing method characterized in that the processing is executed by a computer.

[0177] (Appendix 12) Copying the target software from the first environment in which the target software is running to a predetermined storage area; Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment requesting the target software; An information processing program that causes a computer to execute a process. [Explanation of symbols]

[0178] 100 Information processing device 101,1301,1401,1501 1st environment 102,1302,1402,1502 Second environment 110 Storage area 200 Information Processing Systems 201 First server device 202 Second server device 210 Network 300,500 buses 301,501 CPU 302,502 memory 303,503 Network I / F 304,504 Recording media I / F 305,505 Recording media 400 VM Information Management Table 600 1st memory section 601 First acquisition part 602 Specific part 603 Reproduction Department 604 First Output Unit 610 2nd memory section 611 Second Acquisition Department 612 Generation part 613 Second output section 700,1100 VM copy area 1500 storage devices

Claims

1. copying the target software from a first environment in which the target software is running to a predetermined storage area; Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment that requests the target software; An information processing device comprising a control unit.

2. The control unit acquiring a size of the software and identification information of the software from the environment in which the software is running, and storing the size and identification information of the software in a table in association with the identification information of the environment; receiving identification information of the target software from the second environment; acquiring, based on the table, identification information of the first environment associated with identification information of the target software and a size of the target software; 2. The information processing apparatus according to claim 1, wherein the target software is copied from the first environment to the predetermined storage area based on the acquired identification information of the first environment.

3. The control unit 3. The information processing apparatus according to claim 2, wherein if the table does not contain the identification information of the target software, information enabling the target software to be deployed is transmitted to the second environment.

4. copying the target software from a first environment in which the target software is running to a predetermined storage area; Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment that requests the target software; An information processing method characterized in that the processing is executed by a computer.

5. copying the target software from a first environment in which the target software is running to a predetermined storage area; Obtaining the size of the target software; transmitting the acquired size and information enabling acquisition of the target software copied to the storage area to a second environment that requests the target software; An information processing program that causes a computer to execute a process.

Citation Information

Patent Citations

  • Download system, portable information terminal and program managing device

    JP2002215409A

  • Virtual machine management device and program

    JP2005115653A

  • Virtual machine management system

    JP2005332223A

  • Multi-functional simple desk

    JP2009022377A

  • Information processing device, information processing method, and information processing program

    JP7722154B2