WO2014002421A1 - システム構築装置、及び、システム構築方法 - Google Patents

システム構築装置、及び、システム構築方法 Download PDF

Info

Publication number
WO2014002421A1
WO2014002421A1 PCT/JP2013/003758 JP2013003758W WO2014002421A1 WO 2014002421 A1 WO2014002421 A1 WO 2014002421A1 JP 2013003758 W JP2013003758 W JP 2013003758W WO 2014002421 A1 WO2014002421 A1 WO 2014002421A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
configuration information
construction
additional
virtual machine
Prior art date
Application number
PCT/JP2013/003758
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 ES13809194.7T priority Critical patent/ES2655198T3/es
Priority to CN201380034220.XA priority patent/CN104487944B/zh
Priority to US14/409,594 priority patent/US20150370593A1/en
Priority to JP2014522410A priority patent/JP6036823B2/ja
Priority to EP13809194.7A priority patent/EP2866141B1/en
Publication of WO2014002421A1 publication Critical patent/WO2014002421A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Definitions

  • the present invention relates to a system construction apparatus and a system construction method.
  • the system construction is a component necessary for operating the system, such as program modules (hereinafter referred to as modules) such as OS (Operating System), middleware (hereinafter referred to as MW), applications (hereinafter referred to as AP), etc. Deployment (installation and configuration).
  • modules program modules
  • OS Operating System
  • MW middleware
  • AP applications
  • Deployment installation and configuration
  • VM Virtual Machine
  • a system of the specific configuration is provided by deploying on a computer a VM image which is a binary file for constructing a virtual machine of a specific configuration of the system, which has been generated in advance. Easy to build.
  • Non-Patent Document 1 discloses a method of efficiently constructing a system having a different configuration using such a virtual machine.
  • a virtual machine having an OS common to the systems is constructed using a VM image, and on the virtual machine, different MW modules and AP modules for each system are created. Build each system by deploying.
  • Patent Document 1 discloses a technology for managing, on a server, difference data of virtual images used on a client. Further, Patent Document 2 discloses a technology for constructing an operation system and a test system by virtual machines.
  • Non-Patent Document 1 it is necessary for an administrator or the like to generate a binary file of a virtual machine having a common component according to the configuration of a plurality of systems to be constructed.
  • an administrator or the like it is necessary for an administrator or the like to generate a binary file of a virtual machine having a common component according to the configuration of a plurality of systems to be constructed.
  • a burden on a manager or the like for generating such a binary file becomes large.
  • An object of the present invention is a binary file of virtual machines according to the configuration of a plurality of systems to be constructed when solving the above-mentioned problems and constructing systems of different configurations by using virtual machines having common components. , And a system construction method capable of efficiently generating
  • a system construction apparatus comprising: acquiring means for acquiring a plurality of pieces of configuration information of a system including a virtual machine and an additional module deployed on the virtual machine; And a generation unit configured to generate a binary file for operating the matched virtual machine and the additional module when the virtual machine matches and the at least one additional module matches.
  • a system construction method acquires a plurality of pieces of configuration information of a system including a virtual machine and an additional module deployed on the virtual machine, and the virtual machine among the acquired configuration information Match and if at least one of the additional modules matches, a binary file is generated for operating the matched virtual machine and the additional modules.
  • the computer-readable recording medium acquires a plurality of pieces of configuration information of a system including a virtual machine and an additional module deployed on the virtual machine in the computer, and the acquired configuration information Between the virtual machine match and the at least one additional module match, generating a binary file for operating the matched virtual machine and the additional module. Store.
  • An advantage of the present invention is that, when constructing a system with different configurations using virtual machines having common components, it is possible to efficiently generate binary files of virtual machines according to a plurality of systems to be constructed. .
  • FIG. 1 is a block diagram showing a configuration of a system construction system in a first embodiment of the present invention. It is a figure showing an example of system configuration information in a 1st embodiment of the present invention. It is a figure showing an example of system information 161 in a 1st embodiment of the present invention. It is a figure which shows the example of a production
  • FIG. 2 is a block diagram showing a construction of a construction system in the first embodiment of the present invention.
  • the construction system includes a system construction apparatus 100 and a processing apparatus 200.
  • the system construction apparatus 100 and the processing apparatus 200 are communicably connected by a network or the like.
  • the system configuration is defined as a basic VM image and an additional module as components.
  • the system is built by deploying a basic VM image on the processing device 200 to construct a virtual machine, and further deploying an additional module on the virtual machine.
  • deployment transmits a VM image or an identifier of a module to the processing apparatus 200, and causes the processing apparatus 200 to execute construction of a virtual machine based on the VM image or installation of a module on the virtual machine. It is.
  • the VM image is a binary file (image file) for activating a virtual machine configured by a specific module on the processing device 200.
  • the VM image is generated, for example, based on data on storage at a certain point of time of a virtual machine constructed by deploying a specific module.
  • the VM image includes each module in a deployed (installed) state, and binary data integrated with the configuration (configuration) for each module.
  • the VM image may include information (resource information) related to resources (number of CPUs (Central Processing Units), memory size, disk size, etc.) required by the virtual machine.
  • the basic VM image is a VM image of an underlying virtual machine, which is first constructed in constructing a system.
  • the basic VM image is, for example, a VM image of a virtual machine having a common OS among a plurality of systems.
  • the additional module is a module deployed on a virtual machine constructed by the basic VM image.
  • the additional modules are modules specific to the system, such as MW and AP.
  • the system construction apparatus 100 constructs a system on the processing apparatus 200 in accordance with system configuration information (system configuration information) included in a system construction request input from a user or the like.
  • FIG. 3 is a diagram showing an example of system configuration information in the first embodiment of the present invention.
  • configuration information of a system or VM image to be described later is described as a procedure (construction procedure) for constructing a system or VM image.
  • the configuration information includes a basic VM image identifier (basic VM image ID) and a list of additional construction processes to be executed on a virtual machine constructed using the basic VM image.
  • the order from the top in the list of additional construction processes indicates the order in which each additional construction process is to be executed.
  • the additional construction process includes a command for executing an installation program operating on an OS or the like on the virtual machine, and an identifier of a module to which the installation program is to be deployed (installed).
  • a common OS among a plurality of systems and a VM image (initial VM image) including resource information, which are generated in advance by a manager or the like, are specified as basic VM images.
  • a process for deploying a module specific to the system, such as MW or AP, is specified.
  • an initial VM image "VM001” is specified in the basic VM image, and "Install_A”, “Install_C”, and “Install_G” are specified in the additional construction process.
  • This system configuration information can be obtained by executing an installation program executed by the command "Install” on the virtual machine constructed by the initial VM image "VM001", for the modules "A", “C”, and “G”. It shows that the installation is performed in order.
  • the command specified in the additional construction process may be a command other than "Install" as long as the module can be installed on the virtual machine.
  • the construction unit 150 or a predetermined program on the virtual machine may convert the description of the additional construction process into a command to be executed on the virtual machine.
  • the system construction apparatus 100 includes a VM image generation unit (or generation unit) 110, a system information acquisition unit (or acquisition unit) 120, a VM image deletion unit 130, a configuration information conversion unit 140, a construction unit 150, and a system information storage unit. And 160, a VM image information storage unit 170, a VM image use history storage unit 180, and an additional construction process history storage unit 190.
  • system information storage unit 160 stores system information 161 (161a, 161b,9) Which is information related to each system that has received the system construction request.
  • FIG. 4 is a diagram showing an example of the system information 161 in the first embodiment of the present invention.
  • the system information 161 includes the time when the system construction request is accepted, and the system configuration information included in the system construction request.
  • the system information acquisition unit 120 acquires system configuration information from the system information storage unit 160.
  • the VM image generation unit 110 generates a VM image that can be used as a basic VM image common to different systems based on the plurality of acquired system configuration information.
  • the VM image information storage unit 170 stores VM image information 171 (171a, 171b,%) Which is information related to each generated VM image.
  • FIG. 6 is a diagram showing an example of VM image information 171 in the first embodiment of the present invention.
  • the VM image information 171 includes an identifier of a generated VM image (VM image ID), configuration information of the VM image (VM image configuration information), and a data size of the VM image.
  • a VM image in which VM image configuration information is set such as a VM image “VM101”, is a VM image generated by the VM image generation unit 110.
  • the VM image for which the VM image configuration information is not set is the above-described initial VM image generated in advance by the administrator or the like.
  • the configuration information conversion unit 140 converts system configuration information input from a user or the like into system configuration information in which a VM image generated by the VM image generation unit 110 is set as a basic VM image.
  • the construction unit 150 constructs a system on the processing device 200 according to the system configuration information converted by the configuration information conversion unit 140.
  • the VM image use history storage unit 180 stores VM image use history 181 (181a, 181b,).
  • the VM image usage history 181 indicates a history in which a VM image is used as a basic VM image in system construction.
  • FIG. 8 is a diagram showing an example of the VM image use history 181 in the first embodiment of the present invention.
  • the VM image use history 181 includes the VM image identifier and the time when the VM image is used as a basic VM image.
  • the additional construction process history storage unit 190 stores the additional construction process history 191 (191a, 191b,).
  • the additional construction process history 191 indicates a history in which the additional construction process has been executed in the system construction.
  • FIG. 9 is a diagram showing an example of the additional construction process history 191 in the first embodiment of the present invention.
  • the additional construction process history 191 includes an additional construction process and a processing time required for the additional construction process.
  • the processing time may be the average processing time of each additional construction process.
  • the VM image deletion unit 130 deletes the VM image based on the VM image use history 181 and the additional construction process history 191.
  • the VM image generation unit 110, the system information acquisition unit 120, the VM image deletion unit 130, the configuration information conversion unit 140, and the construction unit 150 include a CPU and a storage medium storing a program, and a computer that operates under control based on the program. It may be In addition, the system information storage unit 160, the VM image information storage unit 170, the VM image use history storage unit 180, and the additional construction processing history storage unit 190 are each configured as a single storage medium even though they are individual storage media. May be
  • system information storage unit 160 the VM image information storage unit 170, the VM image use history storage unit 180, and the additional construction processing history storage unit 190 is communicably connected to the system construction apparatus 100. It may be included in other devices.
  • the processing device 200 is a computer including resources such as a CPU, a memory, and a disk, and includes a VM management unit 210, a VM image storage unit 230, and a module storage unit 240.
  • the VM management unit 210 is a program that manages a virtual machine (VM 220), such as a hypervisor.
  • the VM management unit 210 secures necessary resources for the virtual machine to be constructed according to the resource information included in the VM image specified from the system construction apparatus 100. Then, the VM management unit 210 constructs the VM 220 using binary data included in the VM image. Also, the VM management unit 210 generates a VM image for a system built on the VM 220.
  • the installation program on the VM 220 installs the module designated from the system configuration apparatus 100 on the VM 220.
  • the VM image storage unit 230 stores a VM image and an entity (data file) of an initial VM image generated in advance by a manager or the like.
  • the module storage unit 240 stores the entities (data files) of various modules deployed on the VM 220.
  • FIG. 12 is a flowchart showing VM image generation processing according to the first embodiment of this invention.
  • system information 161a to 161c in FIG. 4 is stored in the system information storage unit 160
  • VM image information 171a to 171c in FIG. 6 is stored in the VM image information storage unit 170.
  • the system construction apparatus 100 receives from the user an input of a new system construction request including system configuration information (step S101).
  • the system construction apparatus 100 receives an input of a new system construction request including the system configuration information shown in FIG.
  • the system construction device 100 stores the system information 161 including the system configuration information included in the system construction request in the system information storage unit 160 (step S102).
  • the system construction device 100 stores the system information 161 d in FIG. 4 in the system information storage unit 160.
  • the VM image generation unit 110 acquires system configuration information stored in the system information storage unit 160 via the system information acquisition unit 120, and determines whether a VM image generation condition is satisfied (step S103). .
  • the VM image generation unit 110 has, as a generation condition, system configuration information in which the basic VM images are the same and the additional construction processing is the same in at least one sequential order from the top of the list of the additional construction processing. It is determined whether or not a set of s exists in the system information storage unit 160.
  • step S103 when the generation condition is satisfied (step S103 / Y), the VM image generation unit 110 generates VM image configuration information for a set of system configuration information that satisfies the generation condition (step S104).
  • the VM image generation unit 110 generates the identifier of the basic VM image of the set of system configuration information satisfying the generation condition, and the same additional construction processing in the consecutive order from the top of the list of the additional construction processing.
  • the VM image configuration information is generated by setting the identifier of the basic VM image and the additional construction process.
  • the VM image generation unit 110 sets the set of system configuration information with the largest number of same additional construction processes in consecutive order from the top of the list of additional construction processes. , VM image configuration information may be generated.
  • FIG. 5 is a diagram showing an example of generation of VM image configuration information in the first embodiment of the present invention.
  • the basic VM image "VM001" is the same between the system configuration information of the system information 161d and the system configuration information of 161a to 161c, and the additional configuration processing "Install_A" is started from the top of the list of additional configuration processing.
  • the above generation condition is satisfied.
  • system configuration information of the system information 161 d and the system configuration information of 161 b are the same as the basic VM image “VM001” and the additional construction processing “Install_A”, “ Since “Install_C” is identical, the above generation condition is satisfied.
  • the VM image generation unit 110 uses the basic VM image “VM001” for the set of the system configuration information of the system information 161d and the system configuration information of 161b having the largest number of additional construction processes that are the same. , Additional construction processing "Install_A”, “Install_C” is set, generates VM image configuration information.
  • the VM image generation unit 110 determines whether the VM image information 171 having the generated VM image configuration information exists in the VM image information storage unit 170 (step S105).
  • step S105 when the VM image information 171 having the generated VM image configuration information does not exist (step S105 / N), the VM image generation unit 110 follows the generated VM image configuration information via the construction unit 150. A virtual machine is constructed, and a VM image of the virtual machine is generated (step S106).
  • the VM image generation unit 110 transmits the generated VM image configuration information to the construction unit 150.
  • the construction unit 150 constructs a virtual machine according to the VM image configuration information on the processing device 200 by the same processing as the system construction processing (step S203 in FIG. 13) described later.
  • the construction unit 150 instructs the VM management unit 210 of the processing device 200 to generate a VM image of the constructed virtual machine.
  • the VM management unit 210 generates a VM image of the constructed virtual machine, and stores the generated VM image in the VM image storage unit 230.
  • the VM image generation unit 110 acquires an identifier of the generated VM image through the construction unit 150.
  • the VM image generation unit 110 generates a VM image according to the VM image configuration information illustrated in FIG. 5 and acquires an identifier “VM 103” of the generated VM image.
  • the VM image generation unit 110 stores the generated VM image identifier, VM image configuration information, and data size as VM image information 171 in the VM image information storage unit 170 (step S107), and ends the process.
  • the VM image generation unit 110 stores VM image information 171 d related to the VM image “VM 103” in the VM image information storage unit 170.
  • step S103 if the generation condition is not satisfied in step S103 (step S103 / N), or if the VM image information 171 having the generated VM image configuration information already exists in step S105 (step S105 / Y), the VM image The generation unit 110 ends the process.
  • FIG. 13 is a flowchart showing system construction processing in the first embodiment of the present invention.
  • the system construction process is executed subsequently to the above-described VM image generation process when the system construction apparatus 100 receives a new system construction request from the user.
  • VM image information 171a-d in FIG. 6 is stored in VM image information storage unit 170.
  • the VM image usage histories 181a and 181b in FIG. 8 are stored in the VM image usage history storage unit 180, and the additional construction processing history 191a to f in FIG. 9 are stored in the additional construction processing history storage unit 190. Suppose that it is done.
  • the configuration information conversion unit 140 of the system construction apparatus 100 acquires system configuration information included in a new system construction request from the system information storage unit 160 via the system information acquisition unit 120, and converts the system configuration information. It is determined whether there is a VM image that satisfies the conditions (step S201).
  • the basic VM image is the same as the basic VM image of the system configuration information
  • all additional construction processing is included in the additional construction processing of the system configuration information
  • each additional construction processing It is determined whether a VM image having VM image configuration information whose order of the same as the order of the same additional construction processing in the system configuration information exists in the VM image information storage unit 170.
  • step S201 when there is a VM image satisfying the conversion condition (step S201 / Y), the configuration information conversion unit 140 converts system configuration information using VM image configuration information of the VM image satisfying the conversion condition. (Step S202).
  • the configuration information conversion unit 140 adds a process of adding an identifier of the VM image satisfying the conversion condition and a process of adding the process of adding the VM image configuration information satisfying the conversion condition from the process of adding the system configuration information.
  • the system configuration information is converted by setting the basic VM image identifier and the additional construction process, respectively.
  • the configuration information conversion unit 140 When there are a plurality of VM images that satisfy the conversion condition, the configuration information conversion unit 140 outputs VM image configuration information of the VM image having the largest number of additional construction processes (the above-mentioned VM image having the smallest number of additional construction processes of the difference).
  • the system configuration information may be converted using VM image configuration information).
  • FIG. 7 is a diagram showing an example of conversion of system configuration information in the first embodiment of the present invention.
  • the basic VM image "VM001" in the VM image configuration information is the same as the basic VM image of the system configuration information (before conversion), and additional construction processing is performed. Since “Install_A” is included in the additional construction processing of the system configuration information, and the order of “Install_A” is the same as the system configuration information, the above-mentioned conversion condition is satisfied.
  • the basic VM image “VM001” in the VM image configuration information is the same as the basic VM image of the system configuration information (before conversion), and additional construction processing “Install_A”, Since “Install_C” is included in the additional construction processing of the system configuration information, and the order of “Install_A” and “Install_C” is the same as the system configuration information, the above-mentioned conversion condition is satisfied.
  • the configuration information conversion unit 140 converts system configuration information using the VM image configuration information of the VM image “VM 103” with the largest number of additional construction processes.
  • the configuration information conversion unit 140 sets the system configuration information (before conversion) to the basic VM image “VM 103”, the additional construction processing, and the system configuration information additional construction processing of the VM image “VM 103”. Convert to system configuration information (after conversion) in which "Install_G" is set excluding the additional construction processing.
  • step S201 if there is no VM image that satisfies the conversion condition in step S201 (step S201 / N), the configuration information conversion unit 140 proceeds to processing in step S203 and subsequent steps without converting the system configuration information.
  • the construction unit 150 constructs a system on the processing device 200 according to the system configuration information. (Step S203).
  • the construction unit 150 instructs the VM management unit 210 of the processing device 200 to construct the VM 220 by specifying the identifier of the basic VM image specified in the system configuration information.
  • the VM management unit 210 acquires the specified basic VM image from the VM image storage unit 230, and constructs a VM 220.
  • the construction unit 150 executes the commands specified in each additional construction processing of the system configuration information on the VM 220 in order from the top.
  • the installation program on the VM 220 acquires the module designated with the command from the module storage unit 240 and deploys it on the VM 220.
  • the construction unit 150 acquires the processing time required for each additional construction process.
  • the construction unit 150 deploys the basic VM image “VM 103” in the processing device 200 according to the system configuration information (after conversion) of FIG. 7. Then, the construction unit 150 deploys the module “G” to the processing device 200 by executing the additional construction process “Install_G”.
  • the construction unit 150 stores the VM image use history 181 related to the deployed VM image in the VM image use history storage unit 180 (step S204).
  • the construction unit 150 sets and stores the identifier of the deployed VM image and the deployed (utilized) time in the VM image usage history 181.
  • the construction unit 150 stores, for the VM image “VM 103”, the VM image use history 181c shown in FIG. 8 in the VM image use history storage unit 180.
  • the construction unit 150 stores the additional construction process history 191 related to each additional construction process in the additional construction process history storage unit 190 (step S205).
  • the construction unit 150 sets, in the additional construction processing history 191, the executed additional construction processing and the processing time required for the additional construction processing, and stores the processing time.
  • the construction unit 150 stores the additional construction process history 191 g shown in FIG. 9 in the additional construction process history storage unit 190 for the additional construction process “Install_G”.
  • FIG. 14 is a flowchart showing VM image deletion processing according to the first embodiment of this invention.
  • the VM image deletion process is executed, for example, periodically. Also, the VM image deletion process may be executed in response to a request from the user. Also, the VM image deletion process may be executed after receiving a system construction request from the user (step S101) in the above-described VM image generation process (FIG. 12).
  • the VM image deletion unit 130 determines whether the deletion condition of the VM image is satisfied (step S301).
  • the VM image deletion unit 130 determines, as a deletion condition, whether a VM image having a usage frequency equal to or lower than a predetermined threshold value exists.
  • the use frequency is calculated based on the VM image use history 181 of the VM image use history storage unit 180, for example, by the number of times of use for a predetermined period.
  • FIG. 10 is a diagram showing an example of the calculation result of the usage frequency of the VM image in the first embodiment of the present invention.
  • the VM image usage histories 181a to 181e in FIG. 8 are stored in the VM image usage history storage unit 180, and the usage frequency is calculated as “the number of usage in the last 3 months”.
  • the usage frequency of each VM image is calculated as shown in FIG.
  • the deletion condition is “presence of a VM image with a usage frequency of 0”
  • the VM image “VM101” satisfies the deletion condition.
  • step S301 when the deletion condition is satisfied (step S301 / Y), the VM image deletion unit 130 deletes the VM image satisfying the deletion condition (step S302).
  • the VM image deletion unit 130 instructs the VM management unit 210 of the processing device 200 to delete a VM image that satisfies the deletion condition.
  • the VM management unit 210 deletes the instructed VM image from the VM image storage unit 230.
  • the VM image deletion unit 130 deletes the VM image “VM101”.
  • the VM image deletion unit 130 deletes the VM image information 171 related to the deleted VM image from the VM image information storage unit 170 (step S303).
  • the VM image deletion unit 130 deletes the VM image information 171 b related to the VM image “VM 101” in FIG. 6 from the VM image information storage unit 170.
  • the VM image deletion unit 130 may determine, as a deletion condition, whether or not there is a VM image whose processing efficiency improvement degree is equal to or less than a predetermined threshold.
  • the total value of the processing times of each additional construction process in the VM image configuration information calculated based on the additional construction process history 191 of the additional construction process history storage unit 190 is used. be able to.
  • the difference in the time required to deploy a VM image between a VM image in which a certain additional module has been deployed and a VM image in which the additional module has not been deployed It is assumed that the time required for (additional construction processing) is sufficiently smaller. In this case, by constructing a system using a VM image, it is considered that the system construction time can be shortened by the time indicated by the degree of improvement in processing efficiency, as compared with the case of executing each additional construction process of VM images.
  • FIG. 11 is a diagram showing an example of the calculation result of the processing efficiency improvement degree of the VM image in the first embodiment of the present invention.
  • the additional construction process history storage unit 190 stores the additional construction process histories 191a to 191g in FIG.
  • the processing efficiency improvement of each VM image is calculated as shown in FIG. In FIG. 11, for example, by constructing a system using the VM image “VM 102”, it is expected to shorten the system construction time by 12 minutes as compared with the case where the additional construction processing “Install_A” and “Install_B” are executed.
  • the additional construction processing “Install_A” and “Install_B” are executed.
  • shortening of the system construction time by 5 minutes can be expected compared to the case of executing the additional construction processing “Install_A” and “Install_C”.
  • VM images “VM101” and “VM103” satisfy the deletion condition.
  • the VM image deletion unit 130 deletes the VM images “VM101” and “VM103”.
  • the VM image deletion unit 130 may determine, as a deletion condition, whether or not the sum of data sizes of VM images is equal to or greater than a predetermined threshold.
  • the sum of the data sizes of VM images is calculated by the data size set in the VM image information 171 of each VM image.
  • the VM image information 171a to 171d in FIG. 6 are stored in the VM image information storage unit 170.
  • the sum of data sizes of VM images is 13 GB.
  • the deletion condition is "the sum of the data sizes of VM images is 10 GB or more", the deletion condition is satisfied.
  • the VM image deletion unit 130 deletes the VM image with the largest data size.
  • the VM image deletion unit 130 deletes the VM image “VM 103”.
  • the VM image deleting unit 130 determines that the above-described use frequency, processing efficiency improvement degree, or both use frequency and processing efficiency improvement degree are predetermined.
  • a VM image smaller than or equal to the threshold of, or smaller than another VM image may be deleted.
  • step S301 when the deletion condition is not satisfied (step S301 / N), the VM image deletion unit 130 ends the processing.
  • FIG. 1 is a block diagram showing a characteristic configuration of the first embodiment of the present invention.
  • the system configuration apparatus 100 includes a system information acquisition unit 120 and a VM image generation unit 110.
  • the system information acquisition unit 120 acquires a plurality of pieces of configuration information of a system including a virtual machine and additional modules deployed on the virtual machine.
  • the VM image generation unit 110 When the virtual machine matches and the at least one additional module matches between the acquired configuration information, the VM image generation unit 110 generates a binary file for operating the matched virtual machine and the additional module. Generate
  • the reason is that the VM image generation unit 110 operates the matched virtual machine and the additional module when the virtual machine matches and the at least one additional module matches among the configuration information of a plurality of systems.
  • a specific module such as an OS is used as a component.
  • System construction can be performed more efficiently than when using a VM image of a virtual machine.
  • the VM image generation unit 110 generates a VM image for a set of systems having the same number of additional construction processes.
  • the number of additional construction processes is reduced, and the time required for system construction is further shortened.
  • the VM image generation unit 110 generates a VM image based on a plurality of system configuration information including the system configuration information of the new system construction request. It is for.
  • management of VM images can be performed efficiently.
  • the reason is that the VM image deletion unit 130 deletes the VM image based on the usage frequency of the VM image, the improvement degree of the processing efficiency, and the predetermined condition of the data size.
  • a set capable of generating VM image configuration information with the highest improvement in processing efficiency when there are a plurality of sets of system configuration information that satisfy the generation condition, a set capable of generating VM image configuration information with the highest improvement in processing efficiency , It differs from the first embodiment of the present invention in that a VM image is generated.
  • the configuration of the second embodiment of the present invention is the same as the configuration (FIG. 2) of the first embodiment of the present invention.
  • the modules deployed by the additional construction process are independent of each other, and the order of each additional construction process can be changed.
  • the order of the additional construction process may not be compared.
  • FIG. 15 is a diagram showing an example of system configuration information in the second embodiment of the present invention.
  • FIG. 16 is a diagram showing an example of the system information 161 in the second embodiment of the present invention.
  • FIG. 19 is a diagram showing an example of VM image information 171 in the second embodiment of the present invention.
  • system information 161e and 161f in FIG. 16 are stored in the system information storage unit 160, and the VM image information 171e and 171f in FIG. 19 are stored in the VM image information storage unit 170. Do.
  • system construction apparatus 100 receives an input of a system construction request including the system configuration information shown in FIG. 15, and stores the system information 161g in FIG. 16 in the system information storage unit 160.
  • the VM image generation unit 110 determines whether a VM image generation condition is satisfied.
  • the VM image generation unit 110 determines, as a generation condition, whether or not there is a set of system configuration information in which the basic VM images are the same and at least one of the additional construction processes is the same.
  • step S104 the VM image generation unit 110 generates VM image configuration information for the set of system configuration information with the highest degree of improvement in processing efficiency.
  • FIG. 17 is a diagram showing an example of generation of VM image configuration information in the second embodiment of the present invention.
  • the basic VM image "VM001" is the same between the system configuration information of the system information 161g and the system configuration information of the 161e, and the additional construction processing "Install_A” and “Install_B” are the same. The above generation condition is satisfied.
  • system configuration information of the system information 161g and the system configuration information of 161f have the same basic VM image "VM001" and the same additional construction processing "Install_B” and “Install_C", The above generation condition is satisfied.
  • the VM image generation unit 110 includes the configuration information candidate (# 1) in which the basic VM image "VM001” and the additional construction processing "Install_A” and “Install_B” are set, and the basic VM image "VM001"
  • the configuration information candidate (# 2) in which the additional construction process "Install_B” and “Install_C” are set is generated.
  • the VM image generation unit 110 calculates the processing efficiency improvement degree for the generated configuration information candidate by the same method as step S303 in the VM image deletion process (FIG. 14).
  • FIG. 18 is a diagram showing an example of the calculation result of the processing efficiency improvement with respect to VM image configuration information in the second embodiment of the present invention.
  • the VM image generation unit 110 calculates the processing efficiency improvement degree for each configuration information candidate.
  • the VM image generation unit 110 selects a configuration information candidate with the highest degree of improvement in processing efficiency as VM image configuration information.
  • the VM image generation unit 110 selects, as VM image configuration information, the configuration information candidate (# 2) in FIG. 17 in which the degree of improvement in processing efficiency is large.
  • step S106 the VM image generation unit 110 generates a VM image according to the selected VM image configuration information.
  • the VM image generation unit 110 acquires the identifier “VM 201” of the VM image generated according to the configuration information candidate (# 2) of FIG. As illustrated in FIG. 19, the VM image generation unit 110 stores VM image information 171 g related to the VM image “VM 201” in the VM image information storage unit 170.
  • the configuration information conversion unit 140 determines whether there is a VM image that satisfies the conversion condition of the system configuration information.
  • the configuration information conversion unit 140 is configured such that the basic VM image is the same as the basic VM image of the system configuration information, and all additional construction processing is included in the additional construction processing of system configuration information. It is determined whether there is a VM image having information.
  • step 202 the configuration information conversion unit 140 converts system configuration information using VM image configuration information that satisfies the conversion condition.
  • FIG. 20 is a diagram showing an example of conversion of system configuration information in the second embodiment of the present invention.
  • the basic VM image "VM001" in the VM image configuration information is the same as the basic VM image of the system configuration information (before conversion), and additional construction processing is performed. Since “Install_B” is included in the additional construction processing of the system configuration information, the above conversion condition is satisfied.
  • the basic VM image “VM001” in the VM image configuration information is the same as the basic VM image of the system configuration information (before conversion), and additional construction processing “Install_B”, Since “Install_C” is included in the additional construction process of the system configuration information, the above conversion condition is satisfied.
  • the configuration information conversion unit 140 converts system configuration information using the VM image configuration information of the VM image “VM 202” with the largest number of additional construction processes.
  • the configuration information conversion unit 140 sets the system configuration information (before conversion) to the basic VM image “VM 202”, the additional construction processing, and the system configuration information additional construction processing of the VM image “VM 202”. Convert to system configuration information (after conversion) in which “Install_A” is set excluding the additional construction processing of VM image configuration information.
  • step 203 the construction unit 150 constructs a system on the processing device 200 according to the converted system configuration information.
  • the construction unit 150 deploys the basic VM image “VM 202” in the processing device 200 according to the system configuration information (after conversion) of FIG. Then, the construction unit 150 deploys the module “A” on the VM image “VM 202” by executing the additional construction process “Install_A”.
  • the VM image generation unit 110 in the VM image generation process, when there are a plurality of sets of system configuration information that satisfy the generation condition, the VM image generation unit 110 has the largest improvement in processing efficiency.
  • a set capable of generating VM image configuration information is selected to generate a VM image.
  • the configuration information conversion unit 140 may select a VM image with the highest degree of improvement in processing efficiency and convert the system configuration information.
  • the VM image generation unit 110 generates a VM image for a set of system configuration information in which VM image configuration information with the highest degree of improvement in processing efficiency is set.
  • system configuration information can be converted using a VM image with a large improvement in processing efficiency as a basic VM image, and the time required for system construction can be further reduced.
  • the third embodiment of the present invention is different from the first embodiment of the present invention in that VM images of other systems already constructed in the system construction process are used as basic VM images of system configuration information. .
  • the configuration of the third embodiment of the present invention is the same as that of the first embodiment of the present invention (FIG. 2).
  • the VM image generation process in the third embodiment of the present invention is the same as that of the first embodiment (FIG. 12) of the present invention.
  • FIG. 21 is a diagram showing an example of system configuration information in the third embodiment of the present invention.
  • FIG. 22 is a diagram showing an example of VM image information 171 in the third embodiment of the present invention.
  • VM image information 171 a to d and 171 h in FIG. 22 are stored in the VM image information storage unit 170.
  • the VM image information 171 h is generated after the system is constructed by executing the additional construction process “Install_G” on the basic VM image “VM 103” as in the example described in the first embodiment of the present invention. It is information related to a VM image “VM301” generated for the system.
  • step 201 of the system construction process the configuration information conversion unit 140 adds the following to the VM image satisfying the conversion condition (first conversion condition) described in the first embodiment as a conversion condition: It is determined whether there is a VM image that satisfies the second conversion condition of.
  • the VM image satisfying the second conversion condition is a VM image in which another VM image satisfying the first conversion condition is set in the basic VM image, and all additional construction processing is included in the additional construction processing of the system configuration information It is an image.
  • the configuration information conversion unit 140 may recursively repeat the determination as to whether or not there is a VM image that satisfies the second conversion condition.
  • FIG. 23 is a diagram showing an example of conversion of system configuration information in the third embodiment of the present invention.
  • the basic VM image "VM001" is the same as the basic VM image of the system configuration information (before conversion), and the additional construction processing "Install_A", " Since “Install_C” is included in the additional construction processing of the system configuration information, the first conversion condition is satisfied.
  • the VM image “VM301” of the VM image information 171 h is a VM image in which the basic VM image “VM103” satisfies the conversion condition (first conversion condition), and the additional construction process “Install_G” adds the system configuration information As included in the construction process, the second conversion condition is satisfied.
  • the configuration information conversion unit 140 sets the system configuration information (before conversion) to “VM 301” as the basic VM image, adds an additional construction process, and adds an additional construction process of the system configuration information to a VM image “VM 103” It converts into system configuration information (after conversion) in which "Install_H” excluding the additional construction processing of "VM301" is set.
  • step 203 the construction unit 150 constructs a system on the processing device 200 according to the system configuration information (after conversion).
  • the construction unit 150 deploys the basic VM image “VM301” in the processing device 200 according to the system configuration information (after conversion) of FIG. Then, the construction unit 150 deploys the module “H” on the VM image “VM301” by executing the additional construction process “Install_H”.
  • a VM image of a system which has already been constructed using system configuration information converted in the system construction process as a basic VM image in another system construction process. it can.
  • the reason is that the configuration information conversion unit 140 determines whether or not a VM image for which another VM image satisfying the conversion condition is set in the basic VM image is also used as the basic VM image in the system configuration information conversion.
  • system configuration device 110 VM image generation unit 120 system information acquisition unit 130 VM image deletion unit 140 configuration information conversion unit 150 construction unit 160 system information storage unit 161 system information 170 VM image information storage unit 171 VM image information 180 VM image use history Storage unit 181 VM image use history 190 additional construction process history storage unit 191 additional construction process history 200 processing device 210 VM management unit 220 VM 230 VM image storage unit 240 module storage unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成する。 システム構築装置100は、システム情報取得部120と、VMイメージ生成部110とを含む。システム情報取得部120は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する。VMイメージ生成部110は、取得された構成情報の間で、仮想マシンが一致し、かつ、少なくとも1つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。

Description

システム構築装置、及び、システム構築方法
 本発明はシステム構築装置、及び、システム構築方法に関する。
 システム構築とは、システムが稼動するために必要な構成要素である、OS(Operating System)、ミドルウェア(以下、MW)、アプリケーション(以下、AP)等のプログラムモジュール(以下、モジュール)を、コンピュータ上に配備(インストール、及び、設定)する作業である。
 近年、システム構築に、仮想マシン(VM(Virtual Machine))の技術が用いられてきている。仮想マシンを用いたシステム構築では、コンピュータ上に、予め生成された、特定の構成のシステムの仮想マシンを構築するためのバイナリファイルであるVMイメージを配備することによって、当該特定の構成のシステムが容易に構築される。
 このような仮想マシンを用いて異なる構成のシステムを効率的に構築する方法が、例えば、非特許文献1に開示されている。非特許文献1に開示された技術では、システム間で共通なOSを構成要素とする仮想マシンを、VMイメージを用いて構築し、当該仮想マシン上に、システムごとに異なるMWモジュールやAPモジュールを配備することによって、各システムを構築する。
 なお、関連技術として、特許文献1には、クライアント上で用いる仮想イメージの差分データをサーバ上で管理する技術が開示されている。また、特許文献2には、運用系システムとテスト系システムを、それぞれ、仮想マシンによって構築する技術が開示されている。
特開2012-078893号公報 特開2010-102414号公報
Cristian Magherusan-Stanciu, et al.、"Grid Site Installation, Management and Monitoring Application"、Proc. of 10th International Symposium on Parallel and Distributed Computing、IEEE Computer Society、2011、p.25-32
 上述の非特許文献1では、管理者等が、構築する複数のシステムの構成に応じて、共通な構成要素を有する仮想マシンのバイナリファイルを生成する必要がある。ここで、データセンタのように、多様な異なる構成のシステムを構築する場合、このようなバイナリファイルを生成するための、管理者等の負担が大きくなるという課題がある。
 本発明の目的は、上述の課題を解決し、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムの構成に応じた仮想マシンのバイナリファイルを、効率的に生成できるシステム構築装置、及び、システム構築方法を提供することにある。
 本発明の一態様におけるシステム構築装置は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する取得手段と、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する生成手段とを備える。
 本発明の一態様におけるシステム構築方法は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。
 本発明の一態様におけるコンピュータが読み取り可能な記録媒体は、コンピュータに、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、処理を実行させるプログラムを格納する。
 本発明の効果は、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成できることである。
本発明の第1の実施の形態の特徴的な構成を示すブロック図である。 本発明の第1の実施の形態における、システム構築システムの構成を示すブロック図である。 本発明の第1の実施の形態における、システム構成情報の例を示す図である。 本発明の第1の実施の形態における、システム情報161の例を示す図である。 本発明の第1の実施の形態における、VMイメージ構成情報の生成例を示す図である。 本発明の第1の実施の形態における、VMイメージ情報171の例を示す図である。 本発明の第1の実施形態における、システム構成情報の変換例を示す図である。 本発明の第1の実施の形態における、VMイメージ利用履歴181の例を示す図である。 本発明の第1の実施の形態における、追加構築処理履歴191の例を示す図である。 本発明の第1の実施の形態における、VMイメージの利用頻度の算出結果の例を示す図である。 本発明の第1の実施の形態における、VMイメージの処理効率向上度の算出結果の例を示す図である。 本発明の第1の実施の形態における、VMイメージ生成処理を示すフローチャートである。 本発明の第1の実施の形態における、システム構築処理を示すフローチャートである。 本発明の第1の実施の形態における、VMイメージ削除処理を示すフローチャートである。 本発明の第2の実施の形態における、システム構成情報の例を示す図である。 本発明の第2の実施の形態における、システム情報161の例を示す図である。 本発明の第2の実施の形態における、VMイメージ構成情報の生成例を示す図である。 本発明の第2の実施の形態における、VMイメージ構成情報に対する、処理効率向上度の算出結果の例を示す図である。 本発明の第2の実施の形態における、VMイメージ情報171の例を示す図である。 本発明の第2の実施形態における、システム構成情報の変換例を示す図である。 本発明の第3の実施の形態における、システム構成情報の例を示す図である。 本発明の第3の実施の形態における、VMイメージ情報171の例を示す図である。 本発明の第3の実施形態における、システム構成情報の変換例を示す図である。
 (第1の実施の形態)
 次に、本発明の第1の実施の形態について説明する。
 はじめに、本発明の第1の実施の形態の構成について説明する。図2は、本発明の第1の実施の形態における、構築システムの構成を示すブロック図である。
 図2を参照すると、本発明の第1の実施の形態の構築システムは、システム構築装置100と処理装置200とを含む。システム構築装置100と処理装置200とは、ネットワーク等により通信可能に接続される。
 本発明の第1の実施の形態においては、システムの構成は、基本VMイメージ、及び、追加モジュールを構成要素として定義される。システムは、処理装置200上に基本VMイメージを配備することにより仮想マシンを構築し、さらに、当該仮想マシン上に、追加モジュールを配備することにより構築される。
 ここで、配備とは、処理装置200にVMイメージやモジュールの識別子を送信し、処理装置200に対して、当該VMイメージによる仮想マシンの構築、または、仮想マシン上でのモジュールのインストールを実行させることである。
 VMイメージは、処理装置200上で、特定のモジュールにより構成される仮想マシンを起動させるためのバイナリファイル(イメージファイル)である。VMイメージは、例えば、特定のモジュールを配備することによって構築される仮想マシンの、ある時点の記憶部上のデータをもとに生成される。VMイメージは、配備(インストール)された状態の各モジュール、及び、各モジュールに対する設定(コンフィギュレーション)を統合したバイナリデータを含む。また、VMイメージは、仮想マシンが必要とするリソース(CPU(Central Processing Unit)の数、メモリサイズ、ディスクサイズ等)に関する情報(リソース情報)を含んでいてもよい。VMイメージを処理装置200上に配備することにより、特定のモジュールの各々を個別に配備することなく、処理装置200上に、特定のモジュールにより構成される仮想マシンを構築できる。
 基本VMイメージは、システムを構築するにあたって、最初に構築される、基礎となる仮想マシンのVMイメージである。基本VMイメージは、例えば、複数のシステム間で共通なOSを構成要素とする仮想マシンのVMイメージである。
 追加モジュールは、基本VMイメージにより構築された仮想マシン上に配備されるモジュールである。追加モジュールは、例えばMW、AP等、システムに特有なモジュールである。
 システム構築装置100は、利用者等から入力されたシステム構築要求に含まれるシステムの構成情報(システム構成情報)に従って、処理装置200上にシステムを構築する。
 図3は、本発明の第1の実施の形態における、システム構成情報の例を示す図である。
 本発明の第1の実施の形態においては、システムや後述するVMイメージの構成情報は、システムやVMイメージを構築するための手順(構築手順)として記載される。構成情報は、基本VMイメージの識別子(基本VMイメージID)と、当該基本VMイメージを用いて構築された仮想マシン上で実行される追加構築処理のリストとを含む。ここで、追加構築処理のリストにおける先頭からの順序が、各追加構築処理を実行する順序を示す。追加構築処理は、仮想マシン上のOS等で動作するインストールプログラムを実行するためのコマンドと、当該インストールプログラムが配備(インストール)すべきモジュールの識別子を含む。
 システム構成情報では、基本VMイメージとして、管理者等により予め生成されている、例えば、複数のシステム間で共通なOS、及び、リソース情報を含むVMイメージ(初期VMイメージ)が指定される。また、追加構築処理として、例えばMW、AP等、システムに特有なモジュールを配備するための処理が指定される。
 図3に示されるシステム構成情報では、基本VMイメージに、初期VMイメージ「VM001」、追加構築処理に「Install_A」、「Install_C」、「Install_G」が指定されている。このシステム構成情報は、初期VMイメージ「VM001」により構築された仮想マシン上で、コマンド「Install」で実行されるインストールプログラムを実行することにより、モジュール「A」、「C」、「G」のインストールを順番に実行することを示している。
 なお、追加構築処理で指定されるコマンドは、仮想マシン上でモジュールのインストールができるコマンドであれば「Install」以外のコマンドでもよい。また、構築部150や仮想マシン上の所定のプログラムが、追加構築処理の記述を、仮想マシン上で実行されるコマンドに変換してもよい。
 システム構築装置100は、VMイメージ生成部(または、生成部)110、システム情報取得部(または、取得部)120、VMイメージ削除部130、構成情報変換部140、構築部150、システム情報記憶部160、VMイメージ情報記憶部170、VMイメージ利用履歴記憶部180、及び、追加構築処理履歴記憶部190を含む。
 ここで、システム情報記憶部160は、システム構築要求を受け付けた各システムに係る情報であるシステム情報161(161a、161b、…)を記憶する。
 図4は、本発明の第1の実施の形態における、システム情報161の例を示す図である。図4に示すように、システム情報161は、システム構築要求を受け付けた時刻、及び、当該システム構築要求に含まれるシステム構成情報を含む。
 システム情報取得部120は、システム情報記憶部160からシステム構成情報を取得する。
 VMイメージ生成部110は、取得された複数のシステム構成情報をもとに、異なるシステム間で共通の基本VMイメージとして利用可能なVMイメージを生成する。
 VMイメージ情報記憶部170は、生成済みの各VMイメージに係る情報であるVMイメージ情報171(171a、171b、…)を記憶する。
 図6は、本発明の第1の実施の形態における、VMイメージ情報171の例を示す図である。図6の例では、VMイメージ情報171は、生成済みのVMイメージの識別子(VMイメージID)、当該VMイメージの構成情報(VMイメージ構成情報)、及び、当該VMイメージのデータサイズを含む。なお、図6において、VMイメージ「VM101」のように、VMイメージ構成情報が設定されているVMイメージは、VMイメージ生成部110により生成されたVMイメージである。また、VMイメージ「VM001」のように、VMイメージ構成情報が設定されていないVMイメージは、上述の、管理者等により予め生成された初期VMイメージである。
 構成情報変換部140は、利用者等から入力されたシステム構成情報を、VMイメージ生成部110により生成されたVMイメージを基本VMイメージに設定したシステム構成情報に変換する。
 構築部150は、構成情報変換部140によって変換されたシステム構成情報に従って、処理装置200上にシステムを構築する。
 VMイメージ利用履歴記憶部180は、VMイメージ利用履歴181(181a、181b、…)を記憶する。VMイメージ利用履歴181は、VMイメージが、システム構築における基本VMイメージとして利用された履歴を示す。図8は、本発明の第1の実施の形態における、VMイメージ利用履歴181の例を示す図である。図8の例では、VMイメージ利用履歴181は、VMイメージの識別子と、当該VMイメージが、基本VMイメージとして利用された時刻を含む。
 追加構築処理履歴記憶部190は、追加構築処理履歴191(191a、191b、…)を記憶する。追加構築処理履歴191は、追加構築処理が、システム構築において実行された履歴を示す。図9は、本発明の第1の実施の形態における、追加構築処理履歴191の例を示す図である。図9の例では、追加構築処理履歴191は、追加構築処理と、当該追加構築処理に要した処理時間を含む。なお、処理時間は、各追加構築処理の平均処理時間であってもよい。
 VMイメージ削除部130は、VMイメージ利用履歴181や追加構築処理履歴191をもとに、VMイメージを削除する。
 VMイメージ生成部110、システム情報取得部120、VMイメージ削除部130、構成情報変換部140、及び、構築部150は、CPUとプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。また、システム情報記憶部160と、VMイメージ情報記憶部170と、VMイメージ利用履歴記憶部180と、追加構築処理履歴記憶部190とは、それぞれ個別の記憶媒体でも、1つの記憶媒体によって構成されてもよい。
 また、システム情報記憶部160、VMイメージ情報記憶部170、VMイメージ利用履歴記憶部180、及び、追加構築処理履歴記憶部190の内の少なくとも一つが、システム構築装置100と通信可能に接続される他の装置に含まれていてもよい。
 処理装置200は、CPU、メモリ、ディスク等のリソースを備えたコンピュータであり、VM管理部210、VMイメージ記憶部230、及び、モジュール記憶部240を含む。
 VM管理部210は、例えばハイパーバイザ等、仮想マシン(VM220)を管理するプログラムである。VM管理部210は、システム構築装置100から指定されたVMイメージに含まれるリソース情報に従って、構築する仮想マシンに必要なリソースを確保する。そして、VM管理部210は、VMイメージに含まれるバイナリデータを用いてVM220を構築する。また、VM管理部210は、VM220上に構築されたシステムについて、VMイメージを生成する。
 VM220上のインストールプログラムは、システム構築装置100から指定されたモジュールをVM220上にインストールする。
 VMイメージ記憶部230は、VMイメージ、及び、管理者等により予め生成された初期VMイメージの実体(データファイル)を記憶する。
 モジュール記憶部240は、VM220上に配備される各種モジュールの実体(データファイル)を記憶する。
 次に、本発明の第1の実施の形態におけるシステム構築装置100の動作について説明する。
 <VMイメージ生成処理>
 はじめに、VMイメージを生成する処理(VMイメージ生成処理)について説明する。図12は、本発明の第1の実施の形態における、VMイメージ生成処理を示すフローチャートである。
 ここでは、システム情報記憶部160に、図4における、システム情報161a~161cが記憶されており、VMイメージ情報記憶部170に、図6における、VMイメージ情報171a~171cが記憶されていると仮定する。
 システム構築装置100は、利用者から、システム構成情報を含む、新たなシステム構築要求の入力を受け付ける(ステップS101)。
 例えば、システム構築装置100は、図3に示されるシステム構成情報を含む、新たなシステム構築要求の入力を受け付ける。
 システム構築装置100は、システム構築要求に含まれるシステム構成情報を含むシステム情報161を、システム情報記憶部160に保存する(ステップS102)。
 例えば、システム構築装置100は、システム情報記憶部160に、図4における、システム情報161dを保存する。
 VMイメージ生成部110は、システム情報取得部120を介して、システム情報記憶部160に記憶されているシステム構成情報を取得し、VMイメージの生成条件が成立するかどうかを判定する(ステップS103)。
 ここで、VMイメージ生成部110は、生成条件として、基本VMイメージが同一であり、かつ、追加構築処理のリストの先頭からの連続した少なくとも一つの順序において追加構築処理が同一であるシステム構成情報の組が、システム情報記憶部160に存在するかどうかを判定する。
 ステップS103において、生成条件が成立する場合(ステップS103/Y)、VMイメージ生成部110は、当該生成条件を満たすシステム構成情報の組について、VMイメージ構成情報を生成する(ステップS104)。
 ここで、VMイメージ生成部110は、生成条件を満たすシステム構成情報の組の基本VMイメージの識別子、及び、追加構築処理のリストの先頭からの連続した順序における同一の追加構築処理を、それぞれ、基本VMイメージの識別子、及び、追加構築処理に設定することにより、VMイメージ構成情報を生成する。
 生成条件を満たすシステム構成情報の組が複数存在する場合、VMイメージ生成部110は、追加構築処理のリストの先頭からの連続した順序における同一の追加構築処理の数が最も多いシステム構成情報の組について、VMイメージ構成情報を生成してもよい。
 図5は、本発明の第1の実施の形態における、VMイメージ構成情報の生成例を示す図である。
 例えば、図5において、システム情報161dのシステム構成情報と、161a~cのシステム構成情報とでは、基本VMイメージ「VM001」が同一であり、追加構築処理のリストの先頭から追加構築処理「Install_A」が同一であるため、上述の生成条件を満たす。
 また、図5において、システム情報161dのシステム構成情報と、161bのシステム構成情報とは、基本VMイメージ「VM001」が同一であり、追加構築処理のリストの先頭から追加構築処理「Install_A」、「Install_C」が同一であるため、上述の生成条件を満たす。
 VMイメージ生成部110は、図5に示すように、同一である追加構築処理の数が最も多い、システム情報161dのシステム構成情報と161bのシステム構成情報との組について、基本VMイメージ「VM001」、追加構築処理「Install_A」、「Install_C」が設定された、VMイメージ構成情報を生成する。
 VMイメージ生成部110は、生成したVMイメージ構成情報を有するVMイメージ情報171が、VMイメージ情報記憶部170に存在するかどうかを判定する(ステップS105)。
 ステップS105で、生成したVMイメージ構成情報を有するVMイメージ情報171が存在しない場合(ステップS105/N)、VMイメージ生成部110は、構築部150を介して、生成したVMイメージ構成情報に従った仮想マシンを構築し、当該仮想マシンのVMイメージを生成する(ステップS106)。
 ここで、VMイメージ生成部110は、生成したVMイメージ構成情報を構築部150に送信する。構築部150は、後述するシステム構築処理(図13、ステップS203)と同様の処理により、処理装置200上に、当該VMイメージ構成情報に従った仮想マシンを構築する。構築部150は、処理装置200のVM管理部210に、構築した仮想マシンのVMイメージの生成を指示する。VM管理部210は、構築された仮想マシンのVMイメージを生成し、生成したVMイメージをVMイメージ記憶部230に保存する。VMイメージ生成部110は、構築部150を介して、生成されたVMイメージの識別子を取得する。
 例えば、VMイメージ生成部110は、図5に示されるVMイメージ構成情報に従ってVMイメージを生成し、生成したVMイメージの識別子「VM103」を取得する。
 VMイメージ生成部110は、生成したVMイメージの識別子、VMイメージ構成情報、及びデータサイズを、VMイメージ情報171としてVMイメージ情報記憶部170に保存し(ステップS107)、処理を終了する。
 例えば、VMイメージ生成部110は、図6に示すように、VMイメージ「VM103」に係るVMイメージ情報171dをVMイメージ情報記憶部170に保存する。
 一方、ステップS103において、生成条件が成立しない場合(ステップS103/N)や、ステップS105において、生成したVMイメージ構成情報を有するVMイメージ情報171が既に存在する場合(ステップS105/Y)、VMイメージ生成部110は、処理を終了する。
 <システム構築処理>
 次に、利用者等から入力されたシステム構築要求に従って、システムを構築する処理(システム構築処理)について説明する。図13は、本発明の第1の実施の形態における、システム構築処理を示すフローチャートである。
 システム構築処理は、システム構築装置100が利用者から新たなシステム構築要求を受け付けた場合に、上述のVMイメージ生成処理に引き続いて実行される。
 ここでは、図3に示されるシステム構成情報を含む新たなシステム構築要求に対してVMイメージ構築処理を実行した結果、VMイメージ情報記憶部170に、図6における、VMイメージ情報171a~dが記憶されていると仮定する。また、VMイメージ利用履歴記憶部180に、図8における、VMイメージ利用履歴181a、181bが記憶されており、追加構築処理履歴記憶部190に、図9における、追加構築処理履歴191a~fが記憶されていると仮定する。
 システム構築装置100の構成情報変換部140は、システム情報取得部120を介して、システム情報記憶部160から、新たなシステム構築要求に含まれるシステム構成情報を取得し、当該システム構成情報について、変換条件を満たすVMイメージが存在するかどうかを判定する(ステップS201)。
 ここで、構成情報変換部140は、変換条件として、基本VMイメージがシステム構成情報の基本VMイメージと同一であり、全追加構築処理がシステム構成情報の追加構築処理に含まれ、各追加構築処理の順序がシステム構成情報における同じ追加構築処理の順序と同一であるVMイメージ構成情報を有するVMイメージが、VMイメージ情報記憶部170に存在するかどうかを判定する。
 ステップS201において、変換条件を満たすVMイメージが存在する場合(ステップS201/Y)、構成情報変換部140は、当該変換条件を満たすVMイメージのVMイメージ構成情報を用いて、システム構成情報を変換する(ステップS202)。
 ここで、構成情報変換部140は、変換条件を満たすVMイメージの識別子、及び、システム構成情報の追加構築処理から当該変換条件を満たすVMイメージ構成情報の追加構築処理を除いた差分の追加構築処理を、それぞれ、基本VMイメージの識別子、及び、追加構築処理に設定することにより、システム構成情報を変換する。
 変換条件を満たすVMイメージが複数存在する場合、構成情報変換部140は、追加構築処理の数が最も多いVMイメージのVMイメージ構成情報(上記差分の追加構築処理の数が最も少なくなるVMイメージのVMイメージ構成情報)を用いて、システム構成情報を変換してもよい。
 図7は、本発明の第1の実施形態における、システム構成情報の変換例を示す図である。
 例えば、図7において、VMイメージ情報171bのVMイメージ「VM101」は、VMイメージ構成情報における基本VMイメージ「VM001」が、システム構成情報(変換前)の基本VMイメージと同一であり、追加構築処理「Install_A」がシステム構成情報の追加構築処理に含まれ、「Install_A」の順序がシステム構成情報と同一であるため、上述の変換条件を満たす。
 また、VMイメージ情報171dのVMイメージ「VM103」は、VMイメージ構成情報における基本VMイメージ「VM001」が、システム構成情報(変換前)の基本VMイメージと同一であり、追加構築処理「Install_A」、「Install_C」がシステム構成情報の追加構築処理に含まれ、「Install_A」、「Install_C」の順序がシステム構成情報と同一であるため、上述の変換条件を満たす。
 構成情報変換部140は、追加構築処理の数が最も多いVMイメージ「VM103」のVMイメージ構成情報を用いて、システム構成情報を変換する。
 構成情報変換部140は、図7に示すように、システム構成情報(変換前)を、基本VMイメージに「VM103」、追加構築処理に、システム構成情報の追加構築処理からVMイメージ「VM103」の追加構築処理を除いた「Install_G」が設定された、システム構成情報(変換後)に変換する。
 一方、ステップS201において、変換条件を満たすVMイメージが存在しない場合(ステップS201/N)、構成情報変換部140は、システム構成情報を変換せずに、ステップS203以降の処理に進む。
 次に、構築部150は、システム構成情報に従って、処理装置200上にシステムを構築する。(ステップS203)。
 ここで、構築部150は、処理装置200のVM管理部210に、システム構成情報で指定された基本VMイメージの識別子を指定して、VM220の構築を指示する。VM管理部210は、VMイメージ記憶部230から、指定された基本VMイメージを取得し、VM220を構築する。
 さらに、構築部150は、システム構成情報の各追加構築処理で指定されたコマンドを、先頭から順番に、VM220上で実行する。VM220上のインストールプログラムは、モジュール記憶部240から、コマンドと共に指定されたモジュールを取得し、VM220上に配備する。ここで、構築部150は、各追加構築処理に要した処理時間を取得する。
 例えば、構築部150は、図7のシステム構成情報(変換後)に従って、基本VMイメージ「VM103」を処理装置200に配備する。そして、構築部150は、追加構築処理「Install_G」を実行することにより、モジュール「G」を処理装置200に配備する。
 これにより、図7のシステム構成情報(変換前)に従って構築されるシステムと同じ構成のシステムが、図7のシステム構成情報(変換後)に従って構築される。
 構築部150は、配備したVMイメージに係るVMイメージ利用履歴181をVMイメージ利用履歴記憶部180に保存する(ステップS204)。ここで、構築部150は、VMイメージ利用履歴181に、配備したVMイメージの識別子と、配備(利用)した時刻を設定し、保存する。
 例えば、構築部150は、VMイメージ「VM103」について、図8に示すVMイメージ利用履歴181cをVMイメージ利用履歴記憶部180に保存する。
 構築部150は、各追加構築処理に係る追加構築処理履歴191を追加構築処理履歴記憶部190に保存する(ステップS205)。ここで、構築部150は、追加構築処理履歴191に、実行した追加構築処理と、当該追加構築処理に要した処理時間を設定し、保存する。
 例えば、構築部150は、追加構築処理「Install_G」について、図9に示す追加構築処理履歴191gを追加構築処理履歴記憶部190に保存する。
 <VMイメージ削除処理>
 次に、VMイメージを削除する処理(VMイメージ削除処理)について説明する。図14は、本発明の第1の実施の形態における、VMイメージ削除処理を示すフローチャートである。
 VMイメージ削除処理は、例えば、定期的に実行される。また、VMイメージ削除処理は、利用者からの要求に応じて実行されてもよい。また、VMイメージ削除処理は、上述のVMイメージ生成処理(図12)における、利用者からのシステム構築要求の受け付け(ステップS101)後に実行されてもよい。
 VMイメージ削除部130は、VMイメージの削除条件が成立するかどうかを判定する(ステップS301)。
 ここで、VMイメージ削除部130は、削除条件として、利用頻度が所定の閾値以下のVMイメージが存在するかどうかを判定する。利用頻度は、VMイメージ利用履歴記憶部180のVMイメージ利用履歴181をもとに、例えば、所定期間の利用回数により算出される。
 図10は、本発明の第1の実施の形態における、VMイメージの利用頻度の算出結果の例を示す図である。
 例えば、VMイメージ利用履歴記憶部180に、図8における、VMイメージ利用履歴181a~181eが記憶されており、利用頻度が「直近3ヶ月の利用回数」で算出されると仮定する。この場合、各VMイメージの利用頻度は、図10のように算出される。ここで、削除条件が、「利用頻度が0のVMイメージの存在」である場合、VMイメージ「VM101」が削除条件を満たす。
 ステップS301において、削除条件が成立する場合(ステップS301/Y)VMイメージ削除部130は、削除条件を満たすVMイメージを削除する(ステップS302)。
 ここで、VMイメージ削除部130は、処理装置200のVM管理部210に、削除条件を満たすVMイメージの削除を指示する。VM管理部210は、指示されたVMイメージをVMイメージ記憶部230から削除する。
 例えば、VMイメージ削除部130は、VMイメージ「VM101」を削除する。
 VMイメージ削除部130は、VMイメージ情報記憶部170から、削除したVMイメージに係るVMイメージ情報171を削除する(ステップS303)。
 例えば、VMイメージ削除部130は、図6における、VMイメージ「VM101」に係るVMイメージ情報171bをVMイメージ情報記憶部170から削除する。
 なお、ステップS301において、VMイメージ削除部130は、削除条件として、処理効率向上度が所定の閾値以下のVMイメージが存在するかどうかを判定してもよい。
 ここで、処理効率向上度には、例えば、追加構築処理履歴記憶部190の追加構築処理履歴191をもとに算出される、VMイメージ構成情報における各追加構築処理の処理時間の合計値を用いることができる。
 本発明の実施の形態においては、ある追加モジュールが配備済みのVMイメージと、当該追加モジュールが配備済みでないVMイメージとの間の、VMイメージの配備に要する時間の差は、当該追加モジュールの配備(追加構築処理)に要する時間より十分小さいものと仮定する。この場合、VMイメージを用いてシステム構築することによって、VMイメージの各追加構築処理を実行する場合に比べて、処理効率向上度で示される時間、システム構築時間が短縮されると考えられる。
 図11は、本発明の第1の実施の形態における、VMイメージの処理効率向上度の算出結果の例を示す図である。
 例えば、追加構築処理履歴記憶部190に、図9における、追加構築処理履歴191a~191gが記憶されていると仮定する。この場合、各VMイメージの処理効率向上度は、図11のように算出される。図11において、例えば、VMイメージ「VM102」を用いてシステム構築することによって、追加構築処理「Install_A」、「Install_B」を実行する場合に比べて、12分のシステム構築時間の短縮が期待できる。また、VMイメージ「VM103」を用いてシステム構築することによって、追加構築処理「Install_A」、「Install_C」を実行する場合に比べて、5分のシステム構築時間の短縮が期待できる。
 ここで、削除条件が、「処理効率向上度が10分未満のVMイメージの存在」である場合、VMイメージ「VM101」、「VM103」が削除条件を満たす。VMイメージ削除部130は、VMイメージ「VM101」、「VM103」を削除する。
 なお、処理効率向上度の算出には、各追加構築処理の処理時間以外に、各追加構築処理実行時のCPU使用率や、メモリ使用率等、各追加構築処理の処理負荷を表す他の値を用いてもよい。
 また、ステップS301において、VMイメージ削除部130は、削除条件として、VMイメージのデータサイズの総和が所定の閾値以上かどうかを判定してもよい。
 この場合、VMイメージのデータサイズの総和は、各VMイメージのVMイメージ情報171に設定されたデータサイズにより算出される。
 例えば、VMイメージ情報記憶部170に、図6における、VMイメージ情報171a~171dが記憶されていると仮定する。この場合、VMイメージのデータサイズの総和は、13GBである。ここで、削除条件が、「VMイメージのデータサイズの総和が10GB以上」である場合、削除条件が成立する。
 そして、VMイメージ削除部130は、例えば、データサイズが最も大きいVMイメージを削除する。
 例えば、VMイメージ削除部130は、VMイメージ「VM103」を削除する。
 なお、ここで、データサイズが最も大きいVMイメージを削除する代わりに、VMイメージ削除部130は、上述の利用頻度、処理効率向上度、あるいは、利用頻度と処理効率向上度との双方が、所定の閾値以下、または、他のVMイメージより小さいVMイメージを削除してもよい。
 一方、ステップS301において、削除条件が成立しない場合(ステップS301/N)、VMイメージ削除部130は、処理を終了する。
 以上により、本発明の第1の実施の形態の動作が完了する。
 次に、本発明の第1の実施の形態の特徴的な構成を説明する。図1は、本発明の第1の実施の形態の特徴的な構成を示すブロック図である。
 図1を参照すると、システム構築装置100は、システム情報取得部120と、VMイメージ生成部110とを含む。
 ここで、システム情報取得部120は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する。
 VMイメージ生成部110は、取得された構成情報の間で、仮想マシンが一致し、かつ、少なくとも1つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。
 本発明の第1の実施の形態によれば、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成できる。
 その理由は、VMイメージ生成部110が、複数のシステムの構成情報の間で、仮想マシンが一致し、かつ、少なくとも1つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイル(VMイメージ)を生成するためである。
 また、本発明の第1の実施の形態によれば、共通な構成要素を有する仮想マシンのVMイメージを用いて、異なる構成のシステム構築を行う場合に、OS等の特定のモジュールを構成要素とする仮想マシンのVMイメージを用いる場合に比べて、システム構築をより効率的に行うことができる。
 その理由は、VMイメージ生成部110が、同一の追加構築処理の数が最も多いシステムの組についてVMイメージを生成するためである。これにより、構成情報変換部140が当該VMイメージを用いて変換したシステム構成情報において、追加構築処理の数が少なくなり、システム構築に要する時間がより短縮される。
 また、本発明の第1の実施の形態によれば、構築するシステムの構成が事前に明らかでない場合や変化する場合でも、構築するシステムの構成に適合したVMイメージを生成できる。
 その理由は、VMイメージ生成部110が、新たなシステム構築要求が入力された場合に、当該新たなシステム構築要求のシステム構成情報を含む複数のシステム構成情報をもとに、VMイメージを生成するためである。
 また、本発明の第1の実施の形態によれば、VMイメージの管理を効率的に行うことができる。その理由は、VMイメージ削除部130が、VMイメージの利用頻度、処理効率向上度、データサイズの所定の条件をもとに、VMイメージを削除するためである。
 (第2の実施の形態)
 次に、本発明の第2の実施の形態について説明する。
 本発明の第2の実施の形態は、VMイメージ生成処理において、生成条件を満たすシステム構成情報の組が複数存在する場合に、処理効率向上度が最も大きいVMイメージ構成情報を生成可能な組について、VMイメージを生成する点において、本発明の第1の実施の形態と異なる。
 本発明の第2の実施の形態の構成は、本発明の第1の実施の形態の構成(図2)と同様である。
 次に、本発明の第2の実施の形態におけるシステム構築装置100の動作について説明する。
 本発明の第2の実施の形態では、追加構築処理によって配備されるモジュールは互いに独立しており、各追加構築処理の順序は変更可能である仮定する。この場合、VMイメージの生成条件の判定や、システム構成情報の変換条件の判定では、追加構築処理の順序を比較しなくてもよい。
 <VMイメージ生成処理>
 はじめに、VMイメージ生成処理について説明する。
 図15は、本発明の第2の実施の形態における、システム構成情報の例を示す図である。また、図16は、本発明の第2の実施の形態における、システム情報161の例を示す図である。図19は、本発明の第2の実施の形態における、VMイメージ情報171の例を示す図である。
 ここでは、システム情報記憶部160に、図16における、システム情報161e、161fが記憶されており、VMイメージ情報記憶部170に、図19における、VMイメージ情報171e、171fが記憶されていると仮定する。
 さらに、システム構築装置100が、図15に示すシステム構成情報を含むシステム構築要求の入力を受け付け、システム情報記憶部160に、図16における、システム情報161gを保存したと仮定する。
 VMイメージ生成処理(図12)における、ステップ103において、VMイメージ生成部110は、VMイメージの生成条件が成立するかどうかを判定する。ここで、VMイメージ生成部110は、生成条件として、基本VMイメージが同一であり、追加構築処理の少なくとも一つが同一であるシステム構成情報の組が存在するかどうかを判定する。
 次に、ステップS104において、VMイメージ生成部110は、処理効率向上度が最も大きいシステム構成情報の組について、VMイメージ構成情報を生成する。
 図17は、本発明の第2の実施の形態における、VMイメージ構成情報の生成例を示す図である。
 例えば、図17において、システム情報161gのシステム構成情報と、161eのシステム構成情報とでは、基本VMイメージ「VM001」が同一であり、追加構築処理「Install_A」、「Install_B」が同一であるため、上述の生成条件を満たす。
 また、図17において、システム情報161gのシステム構成情報と、161fのシステム構成情報とは、基本VMイメージ「VM001」が同一であり、追加構築処理「Install_B」、「Install_C」が同一であるため、上述の生成条件を満たす。
 VMイメージ生成部110は、図17に示すように基本VMイメージ「VM001」、追加構築処理「Install_A」、「Install_B」が設定された、構成情報候補(#1)と、基本VMイメージ「VM001」、追加構築処理「Install_B」、「Install_C」が設定された、構成情報候補(#2)とを生成する。
 VMイメージ生成部110は、VMイメージ削除処理(図14)におけるステップS303と同様の方法により、生成した構成情報候補に対して、処理効率向上度を算出する。
 図18は、本発明の第2の実施の形態における、VMイメージ構成情報に対する、処理効率向上度の算出結果の例を示す図である。
 例えば、VMイメージ生成部110は、図18に示すように、それぞれの構成情報候補について、処理効率向上度を算出する。
 VMイメージ生成部110は、処理効率向上度が最も大きい構成情報候補を、VMイメージ構成情報として選択する。
 例えば、VMイメージ生成部110は、処理効率向上度が大きい、図17の構成情報候補(#2)を、VMイメージ構成情報として選択する。
 次に、ステップS106において、VMイメージ生成部110は、選択したVMイメージ構成情報に従って、VMイメージを生成する。
 例えば、VMイメージ生成部110は、図17の構成情報候補(#2)従って生成されたVMイメージの識別子「VM201」を取得する。VMイメージ生成部110は、図19に示すように、VMイメージ「VM201」に係るVMイメージ情報171gをVMイメージ情報記憶部170に保存する。
 <システム構築処理>
 次に、システム構築処理について説明する。
 システム構築処理(図13)における、ステップ201において、構成情報変換部140は、システム構成情報の変換条件を満たすVMイメージが存在するかどうかを判定する。ここで、構成情報変換部140は、変換条件として、基本VMイメージがシステム構成情報の基本VMイメージと同一であり、全追加構築処理がシステム構成情報の追加構築処理に含まれるようなVMイメージ構成情報を有するVMイメージが存在するかどうかを判定する。
 ステップ202において、構成情報変換部140は、変換条件を満たすVMイメージ構成情報を用いて、システム構成情報を変換する。
 図20は、本発明の第2の実施形態における、システム構成情報の変換例を示す図である。
 例えば、図20において、VMイメージ情報171fのVMイメージ「VM201」は、VMイメージ構成情報における基本VMイメージ「VM001」が、システム構成情報(変換前)の基本VMイメージと同一であり、追加構築処理「Install_B」がシステム構成情報の追加構築処理に含まれるため、上述の変換条件を満たす。
 また、VMイメージ情報171gのVMイメージ「VM202」は、VMイメージ構成情報における基本VMイメージ「VM001」が、システム構成情報(変換前)の基本VMイメージと同一であり、追加構築処理「Install_B」、「Install_C」がシステム構成情報の追加構築処理に含まれるため、上述の変換条件を満たす。
 構成情報変換部140は、追加構築処理の数が最も大きいVMイメージ「VM202」のVMイメージ構成情報を用いて、システム構成情報を変換する。
 構成情報変換部140は、図20に示すように、システム構成情報(変換前)を、基本VMイメージに「VM202」、追加構築処理に、システム構成情報の追加構築処理からVMイメージ「VM202」のVMイメージ構成情報の追加構築処理を除いた「Install_A」が設定された、システム構成情報(変換後)に変換する。
 次に、ステップ203において、構築部150は、変換したシステム構成情報に従って、処理装置200上にシステムを構築する。
 例えば、構築部150は、図20のシステム構成情報(変換後)に従って、基本VMイメージ「VM202」を処理装置200に配備する。そして、構築部150は、追加構築処理「Install_A」を実行することにより、モジュール「A」をVMイメージ「VM202」上に配備する。
 以上により、本発明の第2の実施の形態の動作が完了する。
 なお、本発明の第2の実施の形態においては、VMイメージ生成処理において、生成条件を満たすシステム構成情報の組が複数存在する場合に、VMイメージ生成部110が、処理効率向上度が最も大きいVMイメージ構成情報を生成可能な組を選択し、VMイメージを生成している。同様に、システム構築処理において、変換条件を満たすVMイメージが複数存在する場合、構成情報変換部140は、処理効率向上度が最も大きいVMイメージを選択し、システム構成情報を変換してもよい。
 本発明の第2の実施の形態によれば、共通な構成要素を有する仮想マシンのVMイメージを用いて、異なる構成のシステム構築を行う場合に、第1の実施の形態に比べて、システム構築をさらに効率的に行うことができる。
 その理由は、VMイメージ生成部110が、処理効率向上度が最も大きいVMイメージ構成情報が設定されるシステム構成情報の組について、VMイメージを生成するためである。これにより、処理効率向上度が大きいVMイメージを基本VMイメージとして用いて、システム構成情報を変換でき、システム構築に要する時間がさらに短縮される。
 (第3の実施の形態)
 次に、本発明の第3の実施の形態について説明する。
 本発明の第3の実施の形態は、システム構築処理において構築済みの他のシステムのVMイメージが、システム構成情報の基本VMイメージとして用いられる点において、本発明の第1の実施の形態と異なる。
 本発明の第3の実施の形態の構成は、本発明の第1の実施の形態の構成(図2)と同様である。
 次に、本発明の第3の実施の形態におけるシステム構築装置100の動作について説明する。
 <VMイメージ生成処理>
 本発明の第3の実施の形態における、VMイメージ生成処理は、本発明の第1の実施の形態(図12)と同様である。
 <システム構築処理>
 次に、システム構築処理について説明する。
 図21は、本発明の第3の実施の形態における、システム構成情報の例を示す図である。また、図22は、本発明の第3の実施の形態における、VMイメージ情報171の例を示す図である。
 ここでは、VMイメージ情報記憶部170に、図22における、VMイメージ情報171a~d、及び、171hが記憶されていると仮定する。
 VMイメージ情報171hは、本発明の第1の実施の形態で説明した例のように、基本VMイメージ「VM103」上に、追加構築処理「Install_G」を実行することによりシステムを構築した後で、当該システムについて生成されたVMイメージ「VM301」に係る情報である。
 システム構築処理(図13)における、ステップ201において、構成情報変換部140は、変換条件として、第1の実施形態で述べた変換条件(第1の変換条件)を満たすVMイメージに加えて、以下の第2の変換条件を満たすVMイメージが存在するかどうかを判定する。
 第2の変換条件を満たすVMイメージとは、基本VMイメージに、第1の変換条件を満たす他のVMイメージが設定されており、全追加構築処理がシステム構成情報の追加構築処理に含まれるVMイメージである。構成情報変換部140は、第2の変換条件を満たすVMイメージが存在するかどうかの判定を、再帰的に繰り返してもよい。
 図23は、本発明の第3の実施形態における、システム構成情報の変換例を示す図である。
 例えば、図23において、VMイメージ情報171dのVMイメージ「VM103」は、基本VMイメージ「VM001」が、システム構成情報(変換前)の基本VMイメージと同一であり、追加構築処理「Install_A」、「Install_C」がシステム構成情報の追加構築処理に含まれるため、第1の変換条件を満たす。
 また、VMイメージ情報171hのVMイメージ「VM301」は、基本VMイメージ「VM103」が、変換条件(第1の変換条件)を満たすVMイメージであり、追加構築処理「Install_G」がシステム構成情報の追加構築処理に含まれるため、第2の変換条件を満たす。
 構成情報変換部140は、図23に示すように、システム構成情報(変換前)を、基本VMイメージに「VM301」、追加構築処理に、システム構成情報の追加構築処理からVMイメージ「VM103」、「VM301」の追加構築処理を除いた「Install_H」が設定された、システム構成情報(変換後)に変換する。
 次に、ステップ203において、構築部150は、システム構成情報(変換後)に従って、処理装置200上にシステムを構築する。
 例えば、構築部150は、図23のシステム構成情報(変換後)に従って、基本VMイメージ「VM301」を処理装置200に配備する。そして、構築部150は、追加構築処理「Install_H」を実行することにより、モジュール「H」をVMイメージ「VM301」上に配備する。
 以上により、本発明の第3の実施の形態の動作が完了する。
 本発明の第3の実施の形態によれば、システム構築処理において変換されたシステム構成情報を用いて構築済みのシステムのVMイメージを、別のシステム構築処理における基本VMイメージとして有効に用いることができる。
 その理由は、構成情報変換部140が、システム構成情報の変換において、基本VMイメージに変換条件を満たす他のVMイメージが設定されているVMイメージについても、基本VMイメージとして用いられるかどうかを判定するためである。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2012年6月26日に出願された日本出願特願2012-142899を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 100  システム構築装置
 110  VMイメージ生成部
 120  システム情報取得部
 130  VMイメージ削除部
 140  構成情報変換部
 150  構築部
 160  システム情報記憶部
 161  システム情報
 170  VMイメージ情報記憶部
 171  VMイメージ情報
 180  VMイメージ利用履歴記憶部
 181  VMイメージ利用履歴
 190  追加構築処理履歴記憶部
 191  追加構築処理履歴
 200  処理装置
 210  VM管理部
 220  VM
 230  VMイメージ記憶部
 240  モジュール記憶部

Claims (17)

  1.  仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する取得手段と、
     前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する生成手段とを備えるシステム構築装置。
  2.  前記複数の構成情報の各々は、構成要素である、前記仮想マシンを構築するための基本VMイメージ、及び、当該仮想マシン上に配備される前記追加モジュールの識別子を示し、
     前記生成手段は、前記複数の構成情報の内、基本VMイメージが同一であり、追加モジュールの内の少なくとも一つが同一である組を抽出し、当該抽出した組に係る基本VMイメージ、及び、同一の追加モジュールを構成要素としたVMイメージを前記バイナリファイルとして生成し、当該VMイメージの識別子と当該VMイメージの構成情報とを出力する、請求項1に記載のシステム構築装置。
  3.  さらに、追加モジュールの各々に配備順序が付与され、
     前記生成手段は、前記複数の構成情報の内、基本VMイメージが同一であり、かつ、配備順序の先頭から連続した少なくとも一つの配備順序において追加モジュールが同一である組を抽出し、当該抽出した組に係る基本VMイメージ、及び、配備順序の先頭から連続した配備順序における同一の追加モジュールを構成要素としたVMイメージを生成する請求項2に記載のシステム構築装置。
  4.  前記生成手段は、複数の前記組の内、同一である追加モジュールの数が最も多い組を選択する請求項2または3に記載のシステム構築装置。
  5.  前記生成手段は、複数の前記組の内、当該組をもとに生成されるVMイメージの構成情報における、各追加モジュールの配備に要する負荷をもとに算出される、当該VMイメージの処理効率向上度が最も大きい組を選択する請求項2または3に記載のシステム構築装置。
  6.  さらに、
     前記生成手段により生成されたVMイメージの各々の識別子対応に、当該VMイメージの構成情報を記憶するVMイメージ情報記憶手段と、
     構築対象システムの構成情報が入力された場合に、前記VMイメージ記憶手段に記憶されたVMイメージの内、基本VMイメージが構築対象システムの基本VMイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールに含まれるVMイメージを抽出し、当該抽出したVMイメージ、及び、前記構築対象システムの追加モジュールから当該抽出したVMイメージの追加モジュールを除いた追加モジュールの識別子を構成要素として、前記構築対象システムの構成情報を変換し、出力する構成情報変換手段を備えた請求項2乃至5のいずれかに記載のシステム構築装置。
  7.  さらに、追加モジュールの各々に配備順序が付与され、
     前記構成情報変換手段は、前記VMイメージ記憶手段に記憶されたVMイメージの内、基本VMイメージが前記構築対象システムの基本VMイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールが当該VMイメージの全追加モジュールに含まれ、全追加モジュールの配備順序が対応する前記構築対象システムの追加モジュールの配備順序と同一であるVMイメージを抽出する請求項6に記載のシステム構築装置。
  8.  前記構成情報変換手段は、前記抽出したVMイメージの内、追加モジュールの数が最も多いVMイメージを選択する請求項6または7に記載のシステム構築装置。
  9.  前記構成情報変換手段は、前記抽出したVMイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該VMイメージの処理効率向上度が最も大きいVMイメージを選択する請求項6または7に記載のシステム構築装置。
  10.  前記VMイメージ情報記憶手段は、さらに、前記変換された構成情報に従って構築されたシステムのVMイメージの識別子に対応付けて、当該変換された構成情報を記憶する請求項6乃至9のいずれかに記載のシステム構築装置。
  11.  前記構成情報変換手段は、さらに、前記抽出したVMイメージが基本VMイメージに設定されたVMイメージであり、前記構築対象システムの追加モジュールがVMイメージの全追加モジュールを含むVMイメージを抽出する請求項10に記載のシステム構築装置。
  12.  前記生成手段は、前記構築対象システムの構成情報が新たに入力された場合に、当該新たな前記構築対象システムの構成情報を含む前記複数の構成情報をもとに、VMイメージを生成する請求項6乃至11のいずれかに記載のシステム構築装置。
  13.  さらに、前記VMイメージ記憶手段に記憶されたVMイメージの内、システム構築における利用頻度が所定の閾値以下のVMイメージを削除するVMイメージ削除手段を備えた、請求項6乃至12のいずれかに記載のシステム構築装置。
  14.  さらに、前記VMイメージ情報記憶手段に記憶されたVMイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該VMイメージの処理効率向上度が所定の閾値以下のVMイメージを削除するVMイメージ削除手段を備えた、請求項6乃至12のいずれかに記載のシステム構築装置。
  15.  さらに、前記VMイメージ情報記憶手段に記憶されたVMイメージのデータサイズの総和が所定の閾値以上の場合に、前記VMイメージ情報記憶手段に記憶されたVMイメージのいずれかを削除するVMイメージ削除手段を備えた、請求項6乃至12のいずれかに記載のシステム構築装置。
  16.  仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
     前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、システム構築方法。
  17.  コンピュータに、
     仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
     前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも1つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、処理を実行させるプログラムを格納する、コンピュータが読み取り可能な記録媒体。
PCT/JP2013/003758 2012-06-26 2013-06-17 システム構築装置、及び、システム構築方法 WO2014002421A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
ES13809194.7T ES2655198T3 (es) 2012-06-26 2013-06-17 Dispositivo de construcción de sistema y método de construcción de sistema
CN201380034220.XA CN104487944B (zh) 2012-06-26 2013-06-17 系统构造设备和系统构造方法
US14/409,594 US20150370593A1 (en) 2012-06-26 2013-06-17 System construction device and system construction method
JP2014522410A JP6036823B2 (ja) 2012-06-26 2013-06-17 システム構築装置、及び、システム構築方法
EP13809194.7A EP2866141B1 (en) 2012-06-26 2013-06-17 System construction device and system construction method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012142899 2012-06-26
JP2012-142899 2012-06-26

Publications (1)

Publication Number Publication Date
WO2014002421A1 true WO2014002421A1 (ja) 2014-01-03

Family

ID=49782621

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/003758 WO2014002421A1 (ja) 2012-06-26 2013-06-17 システム構築装置、及び、システム構築方法

Country Status (6)

Country Link
US (1) US20150370593A1 (ja)
EP (1) EP2866141B1 (ja)
JP (1) JP6036823B2 (ja)
CN (1) CN104487944B (ja)
ES (1) ES2655198T3 (ja)
WO (1) WO2014002421A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017151647A (ja) * 2016-02-23 2017-08-31 キヤノン株式会社 管理システム、制御方法
JP2019506682A (ja) * 2016-06-07 2019-03-07 株式会社日立製作所 アプリケーションの頻度及び変化量に基づいて適切なitリソース上にアプリケーションを配備するための方法及び装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3317763B1 (en) * 2015-06-30 2023-11-29 Telefonaktiebolaget LM Ericsson (PUBL) Commissioning of virtualized entities
US11385919B1 (en) * 2016-07-12 2022-07-12 Amazon Technologies, Inc. Machine image launch system
EP3721341A1 (en) * 2017-12-04 2020-10-14 British Telecommunications Public Limited Company Portable virtual machine image
CN108628652B (zh) * 2018-03-13 2023-02-28 Oppo广东移动通信有限公司 用户界面渲染方法、装置及终端
CN110781005B (zh) * 2019-10-25 2022-09-30 新华三大数据技术有限公司 资源回收方法、装置及节点

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219866A (ja) * 2006-02-17 2007-08-30 Hitachi Ltd 業務運用環境の構築方法
JP2009522676A (ja) * 2006-01-09 2009-06-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 異なる仮想マシン・イメージ間でファイルを共有するための方法、システム、およびコンピュータ読み取り可能媒体
JP2010102414A (ja) 2008-10-22 2010-05-06 Fujitsu Ltd 仮想システム制御プログラム、方法及び装置
JP2011221597A (ja) * 2010-04-05 2011-11-04 Hitachi Solutions Ltd クローンディスク作成方法およびプログラム
JP2012053869A (ja) * 2011-08-09 2012-03-15 Toshiba Corp 情報処理装置及びクライアント管理方法
JP2012078893A (ja) 2010-09-30 2012-04-19 Hitachi Solutions Ltd 計算機システム、及び管理計算機

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577722B1 (en) * 2002-04-05 2009-08-18 Vmware, Inc. Provisioning of computer systems using virtual machines
US8191065B2 (en) * 2009-04-06 2012-05-29 Red Hat Israel, Ltd. Managing virtual machine images
US8627310B2 (en) * 2010-09-30 2014-01-07 International Business Machines Corporation Capturing multi-disk virtual machine images automatically
US8584121B2 (en) * 2010-11-19 2013-11-12 International Business Machines Corporation Using a score-based template to provide a virtual machine
US8615588B2 (en) * 2011-01-20 2013-12-24 International Business Machines Corporation Accelerate copying of virtual machine images
JP5772127B2 (ja) * 2011-03-25 2015-09-02 富士通株式会社 仮想マシン管理方法、情報処理装置および仮想マシン管理プログラム
CN102404385A (zh) * 2011-10-25 2012-04-04 华中科技大学 面向高性能计算的虚拟集群部署系统和部署方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009522676A (ja) * 2006-01-09 2009-06-11 インターナショナル・ビジネス・マシーンズ・コーポレーション 異なる仮想マシン・イメージ間でファイルを共有するための方法、システム、およびコンピュータ読み取り可能媒体
JP2007219866A (ja) * 2006-02-17 2007-08-30 Hitachi Ltd 業務運用環境の構築方法
JP2010102414A (ja) 2008-10-22 2010-05-06 Fujitsu Ltd 仮想システム制御プログラム、方法及び装置
JP2011221597A (ja) * 2010-04-05 2011-11-04 Hitachi Solutions Ltd クローンディスク作成方法およびプログラム
JP2012078893A (ja) 2010-09-30 2012-04-19 Hitachi Solutions Ltd 計算機システム、及び管理計算機
JP2012053869A (ja) * 2011-08-09 2012-03-15 Toshiba Corp 情報処理装置及びクライアント管理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CRISTIAN MAGHERUSAN-STANCIU ET AL.: "Proc. of 10th International Symposium on Parallel and Distributed Computing", 2011, IEEE COMPUTER SOCIETY, article "Grid Site Installation, Management and Monitoring Application", pages: 25 - 32

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017151647A (ja) * 2016-02-23 2017-08-31 キヤノン株式会社 管理システム、制御方法
JP2019506682A (ja) * 2016-06-07 2019-03-07 株式会社日立製作所 アプリケーションの頻度及び変化量に基づいて適切なitリソース上にアプリケーションを配備するための方法及び装置

Also Published As

Publication number Publication date
CN104487944B (zh) 2017-07-14
JPWO2014002421A1 (ja) 2016-05-30
EP2866141B1 (en) 2017-10-04
US20150370593A1 (en) 2015-12-24
EP2866141A4 (en) 2016-03-02
ES2655198T3 (es) 2018-02-19
JP6036823B2 (ja) 2016-11-30
EP2866141A1 (en) 2015-04-29
CN104487944A (zh) 2015-04-01

Similar Documents

Publication Publication Date Title
WO2014002421A1 (ja) システム構築装置、及び、システム構築方法
US11048560B2 (en) Replication management for expandable infrastructures
CN107463582B (zh) 分布式部署Hadoop集群的方法及装置
JP2016103144A (ja) 仮想マシン配備方法、仮想マシン配備プログラム及び仮想マシン配備システム
KR101660514B1 (ko) 분산 렌더링 시스템
JP2015215885A (ja) 変更計画システム、変更計画方法および変更計画プログラム
US9558076B2 (en) Methods and systems of cloud-based disaster recovery
TW201234199A (en) Multi-machine deployment and configuration of multi-tiered applications
US20140101213A1 (en) Computer-readable recording medium, execution control method, and information processing apparatus
US10334028B2 (en) Apparatus and method for processing data
US9317521B1 (en) Cloud object store for checkpoints of high performance computing applications using decoupling middleware
JP2011096110A (ja) ジョブネット制御プログラムおよびジョブネット制御装置
US9736035B2 (en) Method and apparatus for providing information for selecting clouds
US20150227392A1 (en) Enabling Dynamic Job Configuration in Mapreduce
KR102177440B1 (ko) 빅데이터 처리 장치 및 방법
JP7251649B2 (ja) グラフ関連付けシステムおよびグラフ関連付け方法
KR101635273B1 (ko) 가상 데스크탑 기반의 데이터 처리 장치 및 방법
US9552182B2 (en) Printing using multiple print processing resources
JP6957910B2 (ja) 情報処理装置
KR101753897B1 (ko) 연속적인 데이터 수집 및 적재 방법, 그리고 그 방법을 위한 시스템
WO2012056611A1 (ja) 可用性モデル生成装置
Panitkin et al. ATLAS Cloud Computing R&D; project
Kovács et al. Modelling of virtualized servers
JP2011107862A (ja) 最大スループット評価システム、評価装置、評価方法、及び評価プログラム
JP2013196146A (ja) Ft図データ管理システム、ft図データ管理システムに用いられるクライアント及びサーバ、並びに、ft図データ管理方法

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014522410

Country of ref document: JP

Kind code of ref document: A

REEP Request for entry into the european phase

Ref document number: 2013809194

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2013809194

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14409594

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE