WO2013035134A1 - Virtual computer provision system and provision method - Google Patents

Virtual computer provision system and provision method Download PDF

Info

Publication number
WO2013035134A1
WO2013035134A1 PCT/JP2011/005049 JP2011005049W WO2013035134A1 WO 2013035134 A1 WO2013035134 A1 WO 2013035134A1 JP 2011005049 W JP2011005049 W JP 2011005049W WO 2013035134 A1 WO2013035134 A1 WO 2013035134A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
program
search
unit
name
Prior art date
Application number
PCT/JP2011/005049
Other languages
French (fr)
Japanese (ja)
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 JP2013532328A priority Critical patent/JP5732138B2/en
Priority to PCT/JP2011/005049 priority patent/WO2013035134A1/en
Publication of WO2013035134A1 publication Critical patent/WO2013035134A1/en

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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

Definitions

  • the present invention relates to a virtual machine providing system and a providing method, and is particularly suitable for application to a virtual machine providing system and a providing method for providing a new virtual machine to a user by duplicating and initializing an existing virtual machine.
  • the construction of the computer environment is the construction of the computer so that it can be used.
  • the hardware and software suitable for the user's purpose are procured from the vendor, the procured hardware is installed, and the installed hardware is installed. For example, to set up software.
  • Virtual machine replication works on all hardware that has a hypervisor set up.
  • the hypervisor is a control program for realizing a virtual computer, and is also called a virtualization monitor or a virtualization OS.
  • Patent Document 1 discloses a technique for creating a virtual machine that satisfies a user's request. Specifically, a virtual machine template having a minimum OS (Operating System) is prepared in advance, and a desired program selected by the user is set up for a virtual machine created by duplicating the virtual machine template. This is a technique for creating a virtual machine that satisfies the user's request. Note that the user selectable program is provided in the repository server.
  • OS Operating System
  • Patent Document 1 merely discloses preparing a virtual machine template having a minimum OS and setting up various programs provided by a repository server. Therefore, in the virtual computer creation method of Patent Document 1, after all, a setup work is required separately, and there is a problem that a lot of time is required until the virtual computer is provided to the user. In particular, the more programs that need to be set up, the more time it takes to provide a virtual machine.
  • the present invention has been made in consideration of the above points, and is intended to provide a virtual computer providing system, a virtual computer providing method, and a program that can quickly provide a new virtual computer that satisfies a user's request. is there.
  • a replication source virtual machine search unit for searching for a virtual machine including a request program requested by a user from an existing virtual machine group connected on a network, and the search
  • a replicated virtual machine providing unit that provides a new virtual machine by duplicating and initializing the virtual machine obtained as a result, and a use program management for managing a use program used by a virtual machine that constitutes the existing virtual machine group Information, dependency management information for managing dependency between the programs used, user-specific data management information for managing user-specific data included in the virtual machine, and organization-specific data included in the virtual machine
  • a storage unit that stores machine-specific data management information for the virtual machine including the request program from the existing virtual machine group with reference to the use program management information.
  • the virtual machine including the program necessary for the operation of the requested program is retrieved from the virtual machine including the requested program by referring to the dependency management information, and the duplicate virtual machine providing unit retrieves the retrieved After copying the resulting virtual machine, the user-specific data, organization-specific data and machine included in the copied virtual machine with reference to the user-specific data management information, the organization-specific data management information and the machine management information
  • the copied virtual machine is initialized by deleting or changing the unique data.
  • a second unit that provides a new virtual machine by duplicating and initializing the virtual machine obtained as a result of the search by the providing unit and a virtual machine that constitutes the existing virtual computer group is used by the storage unit
  • a virtual machine including the request program is searched from the group of existing virtual machines, and a program necessary for the operation of the request program is retrieved from the virtual machine including the
  • the duplicate virtual machine providing unit duplicates the virtual machine obtained as a result of the search, and then the user specific data management information, the organization specific data management information, and With reference to the machine management information, user-specific data, organization-specific data and data included in the copied virtual machine It characterized by initializing the virtual machine to which the replication by deleting or changing the machine-specific data.
  • a virtual computer providing system that can provide a new virtual computer to a user by duplicating and initializing a virtual computer currently being provided to another user. Will be described.
  • FIG. 1 shows a logical configuration of a virtual machine providing system 1A according to the first embodiment.
  • the virtual machine providing system 1A includes a virtual machine providing service management server device 10 and a virtual computer host device 20.
  • the virtual machine provision service management server apparatus 10 and the virtual machine host apparatus 20 are connected to each other via the network 5.
  • a plurality of virtual machine host devices 20 are connected to the network 5 according to the scale of the virtual machine providing system 1A.
  • the virtual machine provision service management server device 10 includes a CPU (Central Processing Unit) 101, a main storage device 102, a secondary storage device 103, a display device 104, and a communication interface 105.
  • the CPU 101, the main storage device 102, the secondary storage device 103, the display device 104, and the communication interface 105 are communicably connected to each other via a bus 106.
  • the communication interface 105 is connected to the network 5.
  • the main storage device 102 includes a replication source virtual machine search unit 1021, a virtualization environment management program 1022, a replication virtual computer provision unit 1023, and a necessary program list creation unit 1024 that are executed by the CPU 101.
  • a search result list 1025 generated by execution and an initialization information list 1026 used for executing various programs and the like are provided.
  • the copy source virtual machine search unit 1021 includes a use search unit 10211, a user name organization name search unit 10212, a program name search unit 10213, and a program license confirmation unit 10214.
  • the virtual environment management program 1022 includes a virtual machine duplicating unit 10221 and a virtual machine starting unit 10222.
  • the replicated virtual machine provision unit 1023 is configured to include a replicated virtual machine environment initialization unit 10231, and the replicated virtual machine environment initialization unit 10231 includes a program addition unit 102311, a program deletion unit 102312, and a virtual computer data change unit 102313. Configured.
  • the search result list 1025 is a storage area for temporarily storing the search results searched by the replication source virtual machine search unit 1021.
  • the initialization information list 1026 is a storage area for storing information for initializing the virtual machine environment initialization unit 10231 by the virtual machine environment initialization unit 10231 obtained as a result of the search by the replication source virtual machine search unit 1021.
  • FIG. 2 shows a logical configuration of the virtual machine host device 20 of the virtual machine providing system 1A of FIG.
  • the virtual machine host device 20 includes a CPU 201, a main storage device 202, a secondary storage device 203, and a communication interface 204.
  • the CPU 201, the main storage device 202, the secondary storage device 203, and the communication interface 204 are communicably connected to each other via a bus 205.
  • the communication interface 204 is connected to the network 5.
  • the main storage device 202 includes a virtualization mechanism 2021 that is executed by the CPU 201, and the virtualization mechanism 2021 includes a virtual computer 20211 and a hypervisor 20212.
  • the virtual computer 20211 is a virtual main storage device for operating the virtual computer host device 20 created on the main storage device 202 by the hypervisor 20212, and executes processing of a program operating on the virtual computer host device 20 The data used for is stored.
  • the hypervisor 20212 is an execution platform for operating the virtual computer 20211. Note that the virtual machine 20211 functions as the virtual machine 20211 only when it operates in cooperation with a virtual machine image 2031 described later.
  • the secondary storage device 203 is configured to include a virtual machine image 2031.
  • the virtual machine image 2031 is a package of virtual machine configuration information necessary for configuring the virtual machine 20211 and data of a virtual secondary storage device for the virtual machine 20211 as one file.
  • FIG. 3 shows a logical configuration of the secondary storage device 103 of the virtual machine providing system 1A of FIG.
  • the secondary storage device 103 includes a program management table 10301, a virtual machine image management table 10302, a used program management table 10303, a program license management table 10304, a user specific data management table 10305, an organization specific data management table 10306, and a machine specific data management table. 10307, a dependency relationship management table 10308, and a program storage area 1030A.
  • the program management table 10301 is a table for managing programs used by the virtual machine 20211 of the virtual machine host device 20.
  • the virtual machine image management table 10302 is a table for managing the virtual machine image 2031 included in the secondary storage device 203 of the virtual machine host device 20.
  • the used program management table 10303 is a table for managing programs included in the virtual machine image 2031.
  • the program license management table 10304 is a table for managing licenses of programs used in the virtual machine 20211 of the virtual machine host device 20.
  • the user-specific data management table 10305 is a table for managing user-specific data of a user who uses the virtual machine 20211.
  • the user-specific data is data personally created and used by the user, and is data relating to setting information such as a document file, an image file, account information, or wallpaper or sound, for example.
  • the organization specific data management table 10306 is a table for managing the organization specific data of the organization to which the user using the virtual machine 20211 belongs.
  • the organization-specific data is data used by a specific organization. For example, a proxy server or file server commonly used by organizations used when a user using the virtual machine 20211 connects to the network 5. Data such as setting information.
  • the machine unique data management table 10307 is a table for managing machine unique data of the virtual machine 20211.
  • the machine specific data is data used by a specific machine, such as data such as an IP address and a host name.
  • the dependency relationship management table 10308 is a table for managing dependency information between programs used by the virtual machine 20211 managed by the program management table 10301.
  • the program storage area 1030A is a storage location for temporarily storing programs used in the virtual machine 20211 managed by the program management table 10301.
  • FIG. 4A shows a conceptual diagram of the search result list 1025 of the virtual machine providing system 1A of FIG.
  • the search result list 1025 stores information on the virtual machine 20211 that satisfies the search condition specified by the user.
  • Search conditions specified by the user include, for example, usage, user name, organization name, or program name.
  • Information on the virtual machine 20211 that satisfies the search conditions specified by the user is searched by the usage search unit 10211, the user name organization name search unit 10212, and the program name search unit 10213 in the replication source virtual machine search unit 1021. Further, the information of the searched virtual machine 20211 is displayed on the display device 104.
  • the search result list 1025 includes a virtual machine name column 10251, an environment initialization information column 10252, a user name column 10253, an organization name column 10254, an OS name column 10255, a usage column 10256, a cost column 10257, and a request satisfaction level column 10258.
  • the virtual machine name column 10251 stores the virtual machine name of the replication source virtual machine 20211.
  • the environment initialization information column 10252 stores information necessary for initialization when the user-specified virtual machine 20211 searched by the copy source virtual machine search unit 1021 is copied and the computer environment is initialized.
  • the computer environment is various unique data and various programs included in the virtual computer 20211.
  • Various unique data are user specific data, organization specific data, machine specific data, and the like, and various programs are a request program requested by the user, a program necessary for the operation of the request program, and the like.
  • Initialization refers to a process of deleting or changing various unique data and various programs included in the virtual machine 20211 immediately after copying before providing the copied new virtual machine to the user. Initialization is performed by the duplicate virtual machine environment initialization unit 10231.
  • the information necessary for initialization is here the row number of the initialization information list 1026 (see FIG. 4B).
  • the user name column 10253 stores the user name of the virtual machine 20211 that is the replication source.
  • the organization name column 10254 stores the name of the organization to which the user of the copy source virtual machine 20211 belongs.
  • the OS name column 10255 stores the OS name of the OS included in the copy source virtual machine 20211.
  • the usage column 10256 stores the usage of the copy source virtual machine 20211.
  • the cost column 10257 stores a monetary cost necessary for replicating and initializing the copy source virtual machine 20211 and providing a new virtual machine to the user.
  • the monetary cost includes, for example, a charge amount for using the virtual machine 20211 in a virtual machine providing service, a license fee for software, and the like.
  • the request satisfaction level column 10258 stores a value calculated for the degree to which a user's request is satisfied when the replication source virtual machine 20211 is copied and initialized to provide a new virtual machine to the user.
  • the initialization is performed in the initialization information list 1026 (see FIG. 4B). Reference is made to the information in the “1” line.
  • the virtual machine 20211 “VM5” is a user with a user name “User02” and a user who belongs to an organization with an organization name “Org02” is a virtual machine currently being used. Yes.
  • the OS having the OS name “os_a5.5” is operating in the virtual machine 20211 “VM5”.
  • a cost of “5000” is required, and it is shown that the user's request is satisfied “100%”.
  • FIG. 4B shows a conceptual diagram of the initialization information list 1026 of the virtual machine providing system 1A of FIG.
  • the initialization information list 1026 stores information necessary for initializing the computer environment of the copy source virtual machine 20211. Information necessary for initialization is stored in the main storage device 102 of FIG. Initialization is performed by the duplicate virtual machine environment initialization unit 10231.
  • the initialization information list 1026 is associated with information stored in the environment initialization information column 10252 of the search result list 1025, and includes a line number column 10261, a used program list column 10262, a feature program list column 10263, and a common program list.
  • a line number is stored in the line number column 10261. This line number is used when referring to the initialization information list 1026 from the search result list 1025 (see FIG. 4A).
  • the used program list column 10262 stores the ID of a used program scheduled to be used by a new virtual machine after copying.
  • the ID of this use program is stored by the program adding unit 102311 and the program deleting unit 102312.
  • the feature program list column 10263 when a plurality of virtual machines 20211 are obtained as search results as a result of searching the copy source virtual machines 20211 by the copy source virtual machine search unit 1021, they are included in the respective virtual machines 20211.
  • An ID of a characteristic program that is a characteristic program among the programs is stored.
  • the feature program is a program that is included in any one of the virtual machines 20211 but is not included in the other virtual machines 20211 among the programs included in each of the plurality of virtual machines 20211.
  • the common program list column 10264 when a plurality of virtual machines 20211 are obtained as search results as a result of searching for a copy source virtual machine by the copy source virtual machine search unit 1021, each of the plurality of virtual machines 20211 is displayed.
  • the ID of the common program included in common is stored.
  • the ID of the common program is used when the feature program is extracted by the copy source virtual machine search unit 1021.
  • the missing program list column 10265 stores the ID of a missing program that needs to be additionally set up for the new virtual machine copied.
  • the ID of the missing program is retrieved and stored by the program name retrieval unit 10213.
  • the deficient program is added to a new virtual machine by the program adding unit 102311.
  • the replicable program list column 10266 may store the ID of a replicable program that is a program that satisfies the license condition among the use programs stored in the use program list column 10262. Whether or not the license condition is satisfied is determined by the program license confirmation unit 10214. The ID of the duplicatable program is used when the duplicating virtual machine environment initialization unit 10231 determines whether the program can be left in the new virtual machine.
  • the ID of a non-replicatable program that is a program that does not satisfy the license condition among the use programs stored in the use program list column 10262 is stored. Whether or not the license condition is satisfied is determined by the program license confirmation unit 10214. The ID of the non-duplicatable program is used when the program deletion unit 10212 deletes a program that cannot be used in the software license from the new virtual machine immediately after copying.
  • the necessary program list column 10268 stores the program requested by the user and the ID of the necessary program which is a program necessary for the operation of the program requested by the user.
  • the ID of the necessary program is stored by the necessary program list creation unit 1024. Further, the ID of the necessary program is used when the program name search unit 10213 extracts the missing program and the unnecessary program.
  • the unnecessary program list column 10269 stores an ID of an unnecessary program that is not a necessary program among the replicable programs stored in the replicable program list column 10266.
  • the ID of the unnecessary program is stored by the program name search unit 10213.
  • the ID of the unnecessary program is used when the program deletion unit 10212 deletes a program unnecessary to satisfy the user's request from the new virtual machine after copying.
  • the initialization information of the line number “1” is used for the initialization. (See FIGS. 4A and 4B).
  • the initialization information of the line number “1” includes a use program with an ID “PG1, PG7, PG9, PG10, PG11, PG12”, and among these, the program with an ID “PG9” is “VM5”. It is shown that this is a characteristic program that is not included in another virtual machine 20211 called “VM6” that is different from the virtual machine 20211 called “VM6”.
  • the initialization information of line number “1” indicates that there is no missing program.
  • the initialization information of the line number “1” is licensed by the program with the ID “PG1, PG7, PG9, PG10, PG11” among the usage programs with the ID “PG1, PG7, PG9, PG10, PG11, PG12” It is shown that it is a duplicatable program that can be used and the program with the ID “PG12” is a non-duplicatable program that cannot be used on the license.
  • the initialization information of the line number “1” is a request program requested to a new virtual machine copied by the program with the ID “PG1, PG7, PG8 or PG9, PG10”. It is shown that the user's request is satisfied if the copied new virtual machine includes any one of the programs with IDs “PG8” and “PG9”. Further, it is indicated that the new virtual machine does not require the program with the ID “PG11” and is an unnecessary program.
  • the programs with IDs “PG1, PG7, PG9, PG10, PG11, PG12” are specifically referred to by referring to a program management table 10301 (see FIG. 5) to be described later, specifically “os_a5.5, lang_r3. 0, db_a1.0, web_app_a1.0, web_app_b1.0, web_app_c1.0 ”.
  • FIG. 5 shows a conceptual diagram of the program management table 10301 in FIG.
  • the program management table 10301 is a table for managing program information used by each virtual machine 20211 of the virtual machine providing system 1A.
  • the program name search unit 10213 searches for a program included in each virtual machine 20211, Used for.
  • the program management table 10301 includes an ID column 103011, a program name column 103012, a version column 1030301, an architecture column 103014, a storage location column 103015, and a setup program name column 103016.
  • ID column 103011 a character string for specifying a program in the virtual machine providing system 1A is stored.
  • an ID assigned to the program is stored.
  • the program name column 103012 the program name is stored. Version information is stored in the version column 103013.
  • the architecture column 103014 stores a character string indicating a hardware architecture condition that is a premise of the operation.
  • the storage location column 103015 stores the storage location of the program.
  • the setup program name column 103016 stores a program name to be executed when setting up the program.
  • the program with the ID “PG1” has the program name “os_a”, the version “5.5”, the operation architecture “arc_32”, and the storage location of the program is “/Srv/os/setup/os_a5.5/” and the setup program name is “setup”.
  • FIG. 6A shows a conceptual diagram of the virtual machine image management table 10302 of FIG.
  • the virtual machine image management table 10302 is a table for managing all virtual machine images 2031 provided in the virtual machine providing system 1A, and includes a usage search unit 10211, a user name organization name search unit 10212, and a program name search unit. This is used when the virtual machine 20211 satisfying the search condition specified by the user is searched by the user 10213.
  • the virtual machine image management table 10302 includes a virtual machine name column 103021, a user name column 103022, an organization name column 1030303, an OS name column 103024, and a usage column 103030.
  • the virtual machine name column 103021 stores the virtual machine name of the replication source virtual machine 20211.
  • the user name column 103022 stores the user name of the user using the virtual machine 20211.
  • the organization name column 103023 stores the organization name of the organization to which the user using the virtual machine 20211 belongs.
  • the OS name column 103024 stores the OS name of the OS included in the virtual machine 20211.
  • the usage column 103025 stores a character string indicating the usage of the virtual machine 20211.
  • the virtual machine 20211 with a virtual machine name “VM0” is a user with a user name “user00” and a user who belongs to an organization with an organization name “org00” is currently using it. It is shown to be a virtual machine inside. Further, it is indicated that an OS with an OS name “os_a5.5” is operating in the virtual machine 20211 “VM0”. Further, it is shown that the virtual machine 20211 “VM0” is used for the purpose of “Web server”.
  • the “AP server” is an application server
  • the “DB server” is a database server.
  • FIG. 6B shows a conceptual diagram of the used program management table 10303 in FIG.
  • the use program management table 10303 is a table for managing programs included in each virtual machine image 2031 provided in the virtual machine providing system 1A.
  • the program specified by the user as a search condition by the program name search unit 10213 is used. It is used when searching for a virtual machine 20211 that includes it.
  • the used program management table 10303 includes a virtual machine name column 103031 and a program ID list column 103032.
  • the virtual machine name column 103031 stores the virtual machine name of the virtual machine 20211.
  • the program ID list column 103032 stores the IDs of programs included in the virtual machine 20211.
  • the virtual machine 20211 with the virtual machine name “VM0” is shown to include a program with an ID “PG1, PG3”.
  • FIG. 7 shows a conceptual diagram of the program license management table 10304 of FIG.
  • the program license management table 10304 is a table for managing licenses of programs provided in the virtual machine providing system 1A.
  • the program license confirmation unit 10214 determines that the program included in the new virtual machine after copying is licensed. Used to determine whether or not it can be used.
  • the program license management table 10304 includes a program ID column 103041, a license type column 103042, a setup number column 103043, an owned license number column 103044, and a license cost column 103045.
  • the program ID column 103041 stores the program ID.
  • the license form column 103042 stores a character string indicating the license form of the program.
  • the number of setups column 103043 stores the number of virtual machines 20211 whose programs are set up in the virtual machine providing system 1A.
  • the owned license number column 103044 stores the maximum number of virtual machines 20211 that can set up the program in the virtual machine providing system 1A.
  • the license cost column 103045 stores the amount of license cost required to use one program.
  • the program with the ID “PG1” has a license form of “free software license” and is already set up in “7” virtual machines 20211 in the virtual machine providing system 1A. Has been.
  • the license cost is “0” yen.
  • FIG. 8 shows a conceptual diagram of the dependency management table 10308 of FIG.
  • the dependency management table 10308 is a table for managing the dependency between programs provided in the virtual machine providing system 1A, and is necessary for the operation of the program specified by the user as a search condition by the necessary program list creation unit 1024. Used when creating a list of programs.
  • the dependency relationship management table 10308 includes a dependency relationship ID column 103081, a program ID column 103082, a dependency program name column 103083, a dependency version column 103084, and a dependency architecture column 103085.
  • the dependency ID column 103081 stores an ID for identifying the dependency.
  • the program ID column 103082 stores the program ID.
  • the dependency program name column 103083 stores the program name of the program necessary for operating the program having the ID stored in the program ID column 103082.
  • the dependency version column 103084 stores the version range.
  • the dependency architecture column 103085 stores a character string indicating a hardware architecture condition that is a premise of the operation.
  • the dependency relationship of the ID “DPG1” indicates that the program with the ID “PG8” and the program “db_a” or “db_b” are in a dependency relationship. Specifically, it is indicated that when the program with the ID “PG8” is operated, the program “db_a” or “db_b” is necessary. More specifically, it is indicated that the program “db_a” needs to have a version “1.0” or higher and an architecture “arc_32”. Further, it is shown that the program “db_b” needs to have a version “2.0” or higher and an architecture “arc_32”.
  • FIG. 9A shows a conceptual diagram of the user-specific data management table 10305 of FIG.
  • the user-specific data management table 10305 is a table for managing the storage location of user-specific data for each program, and the virtual machine data change unit 102313 uses the copy source virtual machine 20211 from the copied new virtual machine. This is used to delete user-specific data of a user who
  • the user-specific data management table 10305 includes a program ID column 103051, a data name column 103052, a data format column 103053, a storage location column 103054, and a description column 103055.
  • the program ID column 103051 stores the program ID.
  • a character string indicating the data content is stored.
  • the data format column 103053 stores a character string for distinguishing the data format.
  • the storage location column 103054 stores a character string indicating a data storage location on the file system of the virtual machine 20211.
  • the description column 103055 when the data format indicated by the character string stored in the data format column 103053 is a character string indicating a part of the file, a character string indicating the location of the data in the file is stored.
  • FIG. 9B shows a conceptual diagram of the organization-specific data management table 10306 of FIG.
  • the organization-specific data management table 10306 is a table for managing the storage location of the organization-specific data, and the organization-specific data indicating the organization to which the user belongs in the new virtual machine copied by the virtual machine data changing unit 102313 Used when changing.
  • the organization-specific data management table 10306 includes a program ID column 103061, a data name column 103062, a data format column 103063, a storage location column 103064, and a description column 103065. Since the information stored in each column is the same as that in the user-specific data management table 10305, description thereof is omitted here.
  • FIG. 9C shows a conceptual diagram of the machine specific data management table 10307 of FIG.
  • the machine specific data management table 10307 is a table for managing the data storage location specific to the virtual machine 20211.
  • the virtual machine data change unit 102313 receives the data specific to the copy source virtual machine 20211 from the new virtual machine copied. Used when changing.
  • the machine specific data management table 10307 includes a program ID column 103071, a data name column 103072, a data format column 103073, a storage location column 103074, and a description column 103075. Since the information stored in each column is the same as that in the user-specific data management table 10305, description thereof is omitted here.
  • FIG. 10 is a conceptual diagram showing the flow of processing for providing a new virtual machine 20211A to the user by copying and initializing the virtual machine 20211 that is the copy source.
  • the replication source virtual computer will be described as “virtual computer 20211”
  • the new virtual computer after replication will be described as “virtual computer 20211A” to distinguish between them.
  • the usage search unit 10211, the user name organization name search unit 10212, and the program name search unit 10213 satisfy the user B request.
  • the original virtual machine 20211 is searched.
  • the virtual machine 20211 currently used by the user A is obtained as a search result will be described.
  • the retrieved virtual machine 20211 is duplicated by the virtual machine duplicating unit 10221 of the virtualization environment management program 1022.
  • the virtual machine 20211A including the OS (M1010) and programs (M1006, M1007) requested by the user B can be quickly provided.
  • the virtual machine 20211A immediately after the duplication is simply a duplication of the virtual machine 20211 currently used by the user A, the user specific data M1003A of the user A, the organization specific data M1004A of the organization to which the user A belongs, The machine-specific data M1005A of the replication source virtual machine 20211 is also copied as it is. Therefore, the virtual machine 20211A immediately after copying cannot be provided to the user B as it is.
  • the virtual machine data changing unit 102313 deletes the user specific data M1003A and changes the organization specific data M1004A and the machine specific data M1005A.
  • the program deletion unit 102312 deletes the program M1008A unnecessary for the user B.
  • the program adding unit 102311 adds a program M1009A that is necessary for the user B and that is not included in the copy source virtual machine 20211.
  • FIG. 11 is a screen configuration diagram of the usage search screen M1101 displayed on the display device 104 of FIG.
  • the usage search screen M1101 is displayed on the display device 104 by the usage search unit 10211 of the replication source virtual machine search unit 1021.
  • the application search screen M1101 is used when searching for a virtual machine 20211 as a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A based on the application.
  • the usage search screen M1101 includes a usage search tab C01, a user name organization name search tab C02, a program name search tab C03, a usage input field M1102, an OS name input field M1103, a search button M1104, a search result display field M1105, and a copy source selection button.
  • the usage search tab C01 is a tab for displaying the usage search screen M1101.
  • the user name organization name search tab C02 is a tab for displaying a user name organization name search screen M1201 (see FIG. 12).
  • the program name search tab C03 is a tab for displaying a program name search screen M1301 (see FIG. 13).
  • the usage input field M1102 is a field for inputting the usage of the virtual machine 20211 that is the search source replication source.
  • the OS name input field M1103 is a field for inputting the OS name of the OS included in the virtual machine 20211 that is the search source replication source.
  • search button M1104 When the search button M1104 is pressed in the use input field M1102 and the OS name is input in the OS name input field M1103 and then the search button M1104 is pressed, the search button M1104 is input by the use search unit 10211. This button is used to search for the virtual machine 20211 that is the copy source based on the name.
  • the usage search unit 10211 executes the following process.
  • the usage search unit 10211 refers to the virtual machine image management table 10302 (see FIG. 6A), the usage stored in the usage column 103025 matches the input usage, and the OS name column 103024 is entered. A row in which the stored OS name matches the input OS name is extracted from the virtual machine image management table 10302.
  • the usage search unit 10211 creates a new line in the search result list 1025 (see FIG. 4A).
  • the usage search unit 10211 extracts the row extracted from the virtual machine image management table 10302 in each column of the virtual machine name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row. Virtual machine name, user name, organization name, OS name, and usage information are stored.
  • the usage search unit 10211 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
  • the usage search unit 10211 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the newly created line in the search result list 1025 described above. To do.
  • the search result display field M1105 is a field for displaying information related to a newly created row in the search result list 1025 by the usage search unit 10211.
  • the search result display field M1105 is configured to display information related to the newly created row in the search result list 1025.
  • the replication source selection button M1106 is a button for selecting one replication source virtual machine 20211 from a plurality of replication source virtual machine 20211 candidates displayed in the search result display field M1105.
  • the virtual machine name display field R01 the virtual machine name of the virtual machine 20211 that is a candidate for the copy source is displayed.
  • the user name display field R02 displays the user name of the user who is currently using the virtual machine 20211 that is a candidate for the copy source.
  • the organization name display field R03 the organization name of the organization to which the user who currently uses the virtual machine 20211 that is the candidate for the copy belongs is displayed.
  • the OS name display field R04 displays the OS name of the OS included in the virtual machine 20211 that is a candidate for the copy source.
  • the characteristic program display field R06 displays the ID of a characteristic program included in the virtual machine 20211 that is a copy source candidate.
  • the missing program display field R07 the ID of a program that needs to be additionally set up is displayed for the copied new virtual machine 20211A.
  • the user request satisfaction level display field R08 the degree to which the user's request is satisfied when the copy source virtual machine 20211 is copied and provided to the user is displayed.
  • the cost display field R09 a monetary cost required for copying the copy source virtual machine 20211 and providing the user with the new virtual machine 20211A is displayed.
  • the virtual machine 20211 is used as a “Web server” and is searched using the virtual machine 20211 including the OS “os_a” as a search condition.
  • the search result display field M1105 indicates that virtual machines 20211 “VM0” and “VM1” are obtained as search results.
  • the virtual machine 20211 of “VM0” is shown to be currently being used by a user “user00” who belongs to the organization “org00”. Further, it is shown that the virtual machine 20211 of “VM0” is operated by the OS “os_a5.5”. Further, it is indicated that the virtual machine 20211 of “VM0” is used for the purpose of “Web server”.
  • the virtual machine 20211 of “VM0” has no deficient program and therefore has a user request satisfaction level of “100%”. Further, it is indicated that when the virtual machine 20211 of “VM0” is used as a copy source, a monetary cost of “5000” yen is necessary.
  • the virtual machine duplication initialization button M1107 is a button for duplicating and initializing the duplication source virtual machine 20211 selected by the duplication source selection button M1106.
  • the replication virtual machine provision unit 1023 executes replication and initialization of the replication source virtual machine 20211 (see FIG. 21).
  • the virtual machine name input field M1108 is a field for inputting the virtual machine name of the new virtual machine 20211A.
  • User name input field M1109 is a field for inputting a user name of a user who uses the new virtual machine 20211A.
  • the organization name input field M1110 is a field for inputting the organization name of the organization to which the user who uses the new virtual machine 20211A belongs.
  • the usage input field M1111 is a field for inputting the usage of the new virtual machine 20211A.
  • FIG. 12 is a screen configuration diagram of the user name / organization name search screen M1201 displayed on the display device 104 of FIG.
  • the user name / organization name search screen M1201 is displayed on the display device 104 by the user name / organization name search unit 10212 of the copy source virtual machine search unit 1021.
  • the user name / organization name search screen M1201 is used when searching based on a user name or organization name when searching for a virtual machine 20211 as a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A.
  • the user name / organization name search screen M1201 includes a user name input field M1202 and an organization name input field M1203 instead of the usage input field M1102 and the OS name input field M1103 in FIG.
  • the user name input field M1202 is a field for inputting the user name of the user who uses the virtual machine 20211 that is the search source replication source.
  • the organization name input field M1203 is a field for inputting the organization name of the organization to which the user who uses the virtual machine 20211 that is the search target replication source belongs.
  • the user name / organization name search unit 10212 executes the following process when the search button M1204 is pressed after the user name and the organization name are input.
  • the user name organization name search unit 10212 refers to the virtual machine image management table 10302 (see FIG. 6A), and the user name stored in the user name column 103022 matches the input user name, and , A row in which the organization name stored in the organization name column 103023 matches the inputted organization name is extracted from the virtual machine image management table 10302.
  • the user name / organization name search unit 10212 creates a new line in the search result list 1025 (see FIG. 4A). Then, the user name / organization name search unit 10212 stores the virtual computer name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row from the virtual computer image management table 10302. The virtual machine name, user name, organization name, OS name, and usage information of the extracted row are stored.
  • the user name / organization name search unit 10212 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
  • the user name organization name search unit 10212 sets the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 to the environment initialization information column of the newly created line in the search result list 1025 described above. 10252.
  • the search result display field M1205 is a field for displaying information related to a newly created line in the search result list 1025 by the user name organization name search unit 10212. Since the information displayed in the search result display field M1205 is the same as the information displayed in the search result display field M1105 in FIG. 11, the description thereof is omitted here.
  • FIG. 13 is a screen configuration diagram of the program name search screen M1301 displayed on the display device 104 of FIG.
  • the program name search screen M1301 is displayed on the display device 104 by the program name search unit 10213 of the copy source virtual machine search unit 1021.
  • the program name search screen M1301 is used when searching for a virtual machine 20211 that is a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A based on the program name.
  • the program name search screen M1301 includes a program name input field M1302 instead of the usage input field M1102 and the OS name input field M1103 in FIG.
  • the program name input field M1302 is a field for inputting the program name and version condition of the program included in the virtual machine 20211 that is the search source replication source.
  • the other configuration of the program name search screen M1301 is the same as that of the usage search screen M1101, and thus the description thereof is omitted here.
  • the program name search unit 10213 executes the following processing.
  • the program name search unit 10213 refers to the used program management table 10303 (see FIG. 6B), searches for a virtual machine 20211 including a program with the input program name, and obtains the virtual machine 20211 virtual obtained by the search.
  • the computer name is extracted from the use program management table 10303.
  • the program name search unit 10213 refers to the program management table 10301 (see FIG. 5) and determines whether or not the input version satisfies the version condition. Then, the program name search unit 10213 extracts, from the virtual machine image management table 10302, the row of the virtual machine 20211 including the program that satisfies the version condition among the virtual machines 20211 having the virtual machine name extracted previously.
  • the program name search unit 10213 creates a new line in the search result list 1025 (see FIG. 4A). Then, the program name search unit 10213 extracts from the virtual machine image management table 10302 to the virtual machine name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row. The virtual computer name, user name, organization name, OS name, and usage information of the row are stored.
  • the program name search unit 10213 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
  • the program name search unit 10213 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the line newly created in the search result list 1025 described above. Store.
  • the search result display field M1304 is a field for displaying information related to a newly created line in the search result list by the program name search unit 10213.
  • the information displayed in the search result display field M1304 is the same as the information displayed in the search result display field M1105 in FIG. 11, and thus the description thereof is omitted here.
  • FIG. 14 shows a processing procedure of a usage search process performed by the usage search unit 10211 that has received an execution instruction from the replication source virtual machine search unit 1021.
  • the use search unit 10211 receives an execution instruction from the copy source virtual machine search unit 1021, and in accordance with the processing procedure shown in FIG. Search processing based on usage is executed from the virtual machine 20211.
  • the usage search unit 10211 searches the row including the usage and OS name input on the usage search screen M1101 with reference to the virtual machine image management table 10302. Then, the usage search unit 10211 extracts a row obtained as a result of the search from the virtual machine image management table 10302 (S1001).
  • the usage search unit 10211 creates a new row in the search result list 1025 and the initialization information list 1026, and the virtual machine name column 10251, user name column 10253, organization name column 10254, and OS name column 10255 of the created row.
  • the virtual machine name, the user name, the organization name, the OS name, and the usage included in the row extracted in step S1001 are stored in the respective fields of the and usage column 10256 (S1002), and this processing is terminated.
  • FIG. 15 shows a processing procedure of a license confirmation process performed by the program license confirmation unit 10214 that has received an execution instruction from the replication source virtual machine search unit 1021.
  • the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the copy source virtual machine search unit 1021 instructs the use search unit 10211 to execute the above-described search processing shown in FIG.
  • An instruction to execute program license confirmation processing is issued to 10214.
  • the program license confirmation unit 10214 receives an instruction to execute the program license confirmation process from the copy source virtual machine search unit 1021, the copy license obtained as a search result by the search process shown in FIG. 14 according to the process procedure shown in FIG. For the original virtual machine 20211, a process of extracting a program that can be used on the license and a program that cannot be used on the license is executed.
  • the program license confirmation unit 10214 refers to the used program management table 10303 (see FIG. 6B) and stores the virtual machine name stored in the virtual machine name field 103031 and the virtual machine name field 10251 of the search result list 1025. A row that matches the virtual machine name that has been extracted is extracted from the use program management table 10303. Then, the program license confirmation unit 10214 stores the available programs stored in the program ID list column 103032 in the row extracted from the used program management table 10303 in the used program list column 10262 of the initialization information list 1026 (S1011). .
  • the program license confirmation unit 10214 refers to the program license management table 10304 (see FIG. 7) and stores the program ID stored in the program ID column 103041 and the used program list column 10262 of the initialization information list 1026. A row that matches the ID of the registered program is extracted from the program license management table 10304. Then, the program license confirmation unit 10214 refers to the license form information stored in the license form column 103042 of the row extracted from the program license management table 10304, and the program of the ID stored in the used program list field 10262 in step S1011 is stored. It is determined whether the license is available (S1012).
  • step S1012 if the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is free software, the program license confirmation unit 10214 stores it in the used program list field 10262. It is determined that the program with the ID is a program that can be used for license.
  • the program license confirmation unit 10214 indicates that the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is a volume license and the setup number field 103043 If the number of setups stored is less than or equal to the number of owned licenses stored in the owned license number column 103044, it is determined that the program with the ID stored in the used program list column 10262 is a program that can be used for the license, and the number of setups Is greater than the number of owned licenses, it is determined that the program with the ID stored in the used program list column 10262 is an unusable program in terms of license.
  • step S1012 if the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is a site license, the program license confirmation unit 10214 uses the ID stored in the used program list field 10262. It is determined that the program is a program that can be used under a license.
  • the above-mentioned free software, volume license, and site license are shown as examples of license forms.
  • the virtual machine providing system 1A may handle a program that adopts a license form other than the license described above.
  • the program license confirmation unit 10214 When the program license confirmation unit 10214 obtains a positive result in the determination at step S1012, the program license confirmation unit 10214 stores the ID of the program available for use in the license in the duplicatable program list column 10266 of the initialization information list 1026 (S1013).
  • the program license confirmation unit 10214 when the program license confirmation unit 10214 obtains a negative result in the determination at step S1012, the program license confirmation unit 10214 stores the ID of the program that cannot be used in the license in the non-duplicatable program list column 10267 of the initialization information list 1026 (S1014). .
  • the program license confirmation unit 10214 determines whether or not the above-described steps S1011 to S1014 have been performed on all the rows of the search result list 1025 and the initialization information list 1026 (S1015).
  • program license confirmation unit 10214 obtains an affirmative result in this determination, it ends this processing. On the other hand, when the program license confirmation unit 10214 obtains a negative result in this determination, it performs the processing of steps S1011 to S1014 described above for other rows, and performs the processing of steps S1011 to S1014 described above for all rows. After the execution, this process is terminated.
  • FIG. 16 shows a processing procedure of the feature program extraction process performed by the copy source virtual machine search unit 1021.
  • the duplication source virtual machine search unit 1021 When the search button M1104 on the usage search screen M1101 in FIG. 11 is pressed, the duplication source virtual machine search unit 1021 performs the above-described search process shown in FIG. 14 and the license confirmation process shown in FIG. Perform the process shown. Specifically, the duplication source virtual machine search unit 1021 performs a characteristic program for a plurality of duplication source virtual machines 20211 obtained as search results by the search processing shown in FIG. 14 according to the processing procedure shown in FIG. Execute the process to extract.
  • the copy source virtual machine search unit 1021 stores the copyable program ID stored in the copyable program list column 10266 and the unnecessary program list column 10269 in each row of the initialization information list 1026 created by the processing of FIG. The difference from the stored unnecessary program ID is calculated. Processing for storing unnecessary programs in the unnecessary program list column 10269 will be described later (see FIG. 20). Then, the replication source virtual machine search unit 1021 stores the calculated difference in the feature program list column 10263 of the initialization information list 1026 (S1021).
  • the copy source virtual machine search unit 1021 stores the ID of the missing program stored in the missing program list column 10265 in the feature program list column 10263 (S1022).
  • the replication source virtual machine search unit 1021 has the ID stored in the feature program list column 10263 of another row among the IDs stored in the feature program list column 10263 in each row of the initialization information list 1026. To extract.
  • the replication source virtual machine search unit 1021 stores the extracted ID in the common program list column 10264 (S1023).
  • the copy source virtual machine search unit 1021 deletes the ID stored in the common program list column 10264 from the ID stored in the feature program list column 10263 in each row of the initialization information list 1026 (S1024).
  • the copy source virtual machine search unit 1021 can store the feature program IDs in the feature program list column 10263 for all rows of the initialization information list 1026.
  • FIG. 17 shows a processing procedure of request satisfaction degree extraction processing performed by the replication source virtual machine search unit 1021.
  • the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the copy source virtual machine search unit 1021 searches the search process shown in FIG. 14, the license confirmation process shown in FIG. 15, and the feature program extraction shown in FIG. In addition to processing, the processing shown in FIG. 17 is performed.
  • the copy source virtual machine search unit 1021 satisfies the user's request with respect to a plurality of copy source virtual machines 20211 obtained as search results by the search process shown in FIG. 14 according to the process shown in FIG. Execute the process to extract the degree.
  • the replication source virtual machine search unit 1021 determines whether or not the search is based on a program name (S1031).
  • the replication source virtual machine search unit 1021 obtains a negative result.
  • the duplication source virtual machine search unit 1021 obtains a negative result.
  • the duplication source virtual machine search unit 1021 obtains a positive result.
  • the duplication source program ID column 10266 of the initialization information list 1026 uses the number of duplication program IDs stored in the usage program list column 10262. Is divided by the number of IDs of the utilization programs stored in the table, and the required value is calculated by multiplying the obtained value by the number 100.
  • the replication source virtual machine search unit 1021 stores the calculated request satisfaction degree in the request satisfaction degree column 10258 of the search result list 1025 (S1033), and ends this process.
  • the copy source virtual machine search unit 1021 determines that the search is based on the program name, and is stored in the copyable program list column 10266 of the initialization information list 1026. The difference between the number of copyable program IDs and the number of unnecessary program IDs stored in the unnecessary program list column 10269 is calculated. Then, the copy source virtual machine search unit 1021 divides the calculated difference by the number of IDs of the necessary programs stored in the necessary program list column 10268 and multiplies the obtained value by the number 100 to calculate the required satisfaction level. . The replication source virtual machine search unit 1021 stores the calculated request satisfaction level in the request satisfaction level column 10258 of the search result list 1025 (S1032), and ends this processing.
  • FIG. 18 shows a processing procedure of a cost calculation process performed by the copy source virtual machine search unit 1021.
  • the copy source virtual machine search unit 1021 performs the processing shown in FIG. Specifically, the replication source virtual machine search unit 1021 obtains a new virtual machine 20211A from a plurality of replication source virtual machines 20211 obtained as a search result by the search process shown in FIG. 14 according to the process shown in FIG. Execute processing to calculate the cost required for creation.
  • the copy source virtual machine search unit 1021 refers to the initialization information list 1026 and refers to the ID of the copyable program stored in the copyable program list column 10266 and the unnecessary program list stored in the unnecessary program list column 10269. The difference from the program ID is calculated.
  • the replication source virtual machine search unit 1021 refers to the program license management table 10304 and extracts from the program license management table 10304 a row in which the ID stored in the program ID column 103041 matches the calculated difference ID. To do.
  • the replication source virtual machine search unit 1021 stores the license cost stored in the license cost column 103045 of the extracted row in the cost column 10257 of the search result list 1025 (S1041).
  • the replication source virtual machine search unit 1021 stores a predetermined charge amount in the cost column 10257 of the search result list 1025 (S1042).
  • step S1042 or the amount of money may be constant for the entire service providing the virtual machine, or may be changed depending on the configuration of the virtual machine (number of virtual CPUs, memory capacity, storage capacity, etc.).
  • FIG. 19 shows a processing procedure of user name / organization name search processing performed by the user name / organization name search unit 10212 that has received an execution instruction from the copy source virtual computer search unit 1021.
  • the search button M1204 on the user name / organization name search screen M1201 in FIG. 12 is pressed, the user name / organization name search unit 10212 receives an execution instruction from the copy source virtual machine search unit 1021 and follows the processing procedure shown in FIG. Then, search processing based on the user name and organization name is executed from a plurality of copy source virtual machines 20211.
  • the user name / organization name search unit 10212 refers to the virtual machine image management table 10302 and searches for a line including the user name and the organization name input on the user name / organization name search screen M1201.
  • the user name / organization name search unit 10212 extracts a row obtained as a result of the search from the virtual machine image management table 10302 (S1051).
  • the user name / organization name search unit 10212 creates a new row in the search result list 1025 and the initialization information list 1026, and the virtual machine name column 10251, user name column 10253, organization name column 10254, OS of the created row.
  • the virtual machine name, user name, organization name, OS name, and usage included in the row extracted in step S1001 are stored in the name column 10255 and the usage column 10256 (S1052), and this processing ends. .
  • FIG. 20 shows a processing procedure of a program name search process performed by the program name search unit 10213 that has received an execution instruction from the copy source virtual machine search unit 1021.
  • the program name search unit 10213 receives an execution instruction from the copy source virtual machine search unit 1021 and, according to the processing procedure shown in FIG. Search processing based on the program name is executed from the original virtual machine 20211.
  • the program name search unit 10213 when receiving the program name and version condition information input on the program name search screen M1301, the program name search unit 10213 reads the used program management table 10303 (see FIG. 6B) and the program management table 10301 (see FIG. 5).
  • the virtual machine 20211 including the program that satisfies the received program name and version condition is searched for, and a row including the virtual machine 20211 obtained by the search is extracted from the virtual machine image management table 10302 (see FIG. 6A).
  • the program name search unit 10213 creates a new line in the search result list 1025 (see FIG.
  • the program name search unit 10213 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created line in the initialization information list 1026 will be described later.
  • the program name search unit 10213 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the newly created line in the search result list 1025 described above. (S1501).
  • the program name search unit 10213 executes the program license confirmation unit 10214.
  • the program license confirmation unit 10214 receives an execution instruction from the program name search unit 10213
  • the program license confirmation unit 10214 refers to the program license management table 10304 (see FIG. 7), and uses the program license among the programs included in the virtual machine 20211 that is the copy source. Extract possible programs and programs that cannot be used under license.
  • the program license confirmation unit 10214 displays the ID of the program that can be used on the extracted license and the program that cannot be used on the license in each column of the duplicatable program list column 10266 and the non-duplicatable program list column 10267 of the initialization information list 1026. Are stored respectively (S1502).
  • the program name search unit 10213 executes the necessary program list creation unit 1024.
  • the necessary program list creation unit 1024 Upon receiving an execution instruction from the program name search unit 10213, the necessary program list creation unit 1024 refers to the dependency management table 10308 (see FIG. 8) and the program management table 10301 (see FIG. 3), and allows the user to perform a search condition.
  • the program having the program name specified in the above and the program necessary for this program to operate are extracted.
  • the necessary program list creation unit 1024 stores the extracted program ID in the necessary program list column 10268 of the initialization information list 1026 (S1503).
  • the program name search unit 10213 refers to the initialization information list 1026 and determines whether or not the ID of the duplicatable program stored in the duplicatable program list column 10266 is included in the necessary program list column 10268 ( S1504).
  • the program name search unit 10213 obtains a negative result in this determination, it determines that the program with this ID that is a duplicatable program and is not a necessary program is an unnecessary program, and stores the ID of this unnecessary program in the unnecessary program list column 10269. (S1505).
  • the program name search unit 10213 determines whether the ID of the necessary program stored in the necessary program list column 10268 is included in the duplicatable program list column 10266. (S1506).
  • the program name search unit 10213 obtains a negative result in this determination, it determines that the program with this ID that is a necessary program and is not a copyable program is a deficient program, and stores the ID of this deficient program in the deficient program list column 10265. (S1507).
  • step S1502 described above is performed for all the rows newly created in the search result list 1025 and the initialization information list 1026 at step S1501. It is determined whether the processes up to S1507 have been performed (S1508).
  • program name search unit 10213 obtains a positive result in this determination, it ends this processing. On the other hand, if the program name search unit 10213 obtains a negative result in this determination, it performs the above-described steps S1502 to S1507 for the other rows, and performs the above-described steps S1502 to S1507 for all the rows. When finished, this process ends.
  • FIG. 21 shows a processing procedure of data change processing performed by the virtual machine data change unit 102313 of the duplicate virtual machine environment initialization unit 10231.
  • the duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied.
  • the virtual machine data changing unit 102313 is instructed to delete or change the user unique data M1003, the organization unique data M1004, and the machine unique data M1005 included in the copied new virtual machine 20211A.
  • the virtual machine data change unit 102313 receives a deletion or change instruction from the duplicate virtual machine environment initialization unit 10231, the virtual machine data change unit 102313 stores the user-specific information stored in the new virtual machine 20211A immediately after duplication according to the processing procedure shown in FIG. Processing for deleting or changing the data M1003, the organization-specific data M1004, and the machine-specific data M1005 is executed.
  • the virtual machine data changing unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103051 of the user-specific data management table 10305, and the ID stored in the used program list column 10262. A line that matches the ID stored in the program ID column 103051 is extracted from the user-specific data management table 10305.
  • the virtual machine data changing unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103061 of the organization specific data management table 10306, and selects a row having the same ID as the organization specific data management table. 10306 is extracted.
  • the virtual machine data change unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103071 of the machine specific data management table 10307 to determine the line with the matching ID as the machine specific data management. Extract from table 10307.
  • the virtual machine data change unit 102313 deletes user-specific data, changes organization-specific data, and changes machine-specific data. Therefore, the user-specific data management table 10305, the organization-specific data management table 10306, and the machine-specific data management table 10307 are used. Referring to the respective lines extracted from, it is determined whether the data format of the user-specific data, the organization-specific data, and the machine-specific data is a directory or a file or a part of the file (S1601).
  • each storage of the user specific data management table 10305, the organization specific data management table 10306, and the machine specific data management table 10307 is stored.
  • the directory or file of the new virtual machine 20211A is deleted or changed (S1602), and this process ends.
  • the virtual machine data changing unit 102313 obtains the determination result that the data format is a part of the file in the determination in step S1601
  • the virtual machine data change unit 102313 and the machine-specific data management table 10306 and the machine-specific data The description in the file of the new virtual machine 20211A is deleted or changed by referring to the storage location columns 103054, 103064, and 103074 of the data management table 10307 and the description columns 103055, 103065, and 103075 (S1603). The process ends.
  • the duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied.
  • the program deletion unit 10212 is instructed to execute the program deletion processing for the programs included in the copied new virtual machine 20211A and programs unnecessary for the license and programs unnecessary for the user to operate. To do.
  • the program deletion unit 10212 Upon receiving an instruction to execute the program deletion process from the duplicate virtual machine environment initialization unit 10231, the program deletion unit 10212 deletes the program stored in the new virtual machine 20211A immediately after duplication according to the processing procedure described below. Execute the process.
  • the program deletion unit 102312 refers to the initialization information list 1026 associated with the copied new virtual machine 20211A and refers to the ID program and unnecessary program list column 10269 stored in the non-replicatable program list column 10267. Is deleted from the new virtual machine 20211A which is a duplicate of the program stored in ID.
  • the program deletion unit 102312 has an ID program stored in the non-duplicatable program list column 10267 and an ID stored in the unnecessary program list column 10269 among the programs with IDs stored in the used program list column 10262. Are deleted from the initialization information list 1026.
  • the duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied.
  • the program addition unit 102311 is instructed to execute the program addition process for a program necessary for operating the program requested by the user among the programs included in the copied new virtual machine 20211A.
  • the program addition unit 102311 receives an instruction to execute the program addition process from the duplicate virtual machine environment initialization unit 10231, the program addition unit 102311 adds a program stored in the new virtual machine 20211A immediately after duplication according to the processing procedure described below. Execute the process.
  • the program adding unit 102311 refers to the ID column 103011 of the program management table 10301 and the missing program list column 10265 of the initialization information list 1026 associated with the new virtual machine 20211A, and sets the matching line to the program management table 10301. Extract from
  • the program adding unit 102311 refers to the storage location column 103015 of the extracted row and adds all files in the storage location stored in the storage location column 103015 to the new virtual machine 20211A.
  • the program adding unit 102311 refers to the setup program name column 103016 of the extracted row and executes the program having the setup name stored in the setup program name column 103016 in the new virtual computer 20211A.
  • the program addition unit 102311 deletes the program ID stored in the missing program list column 10265 of the initialization information list 1026 and adds the deleted ID to the used program list column 10262.
  • the program adding unit 102311 can add a program to the new virtual machine 20211A.
  • the duplicate virtual machine providing unit 1023 reflects the information of the new virtual machine 20211A duplicated in the virtual machine image management table 10302 and the used program management table 10303. Specifically, the duplicate virtual machine providing unit 1023 executes the following process.
  • the duplicate virtual machine providing unit 1023 creates a new line in the virtual machine image management table 10302, and creates a virtual machine name field 103021, a user name field 103302, an organization name field 103030, and an OS name field 103024 of the created new line.
  • the virtual machine name, user name, organization name, OS name, and usage of the new virtual machine 20211A copied and initialized are stored in the respective fields of the usage field 103025.
  • the duplicate virtual machine providing unit 1023 creates a new row in the use program management table 10303, and duplicates and initializes the virtual machine name column 103031 and the program ID one column 103032 in the created new row.
  • the virtual machine name of the new virtual machine 20211A and the ID of the use program are stored.
  • the duplicate virtual machine providing unit 1023 refers to the used program list column 10262.
  • the duplicate virtual machine providing unit 1023 notifies the user that the creation of the new virtual machine 20211A has been completed.
  • the virtual machine providing system 1A when a new virtual machine 20211A is requested by the user, the virtual machine currently being provided to other users in the virtual machine providing system 1A.
  • a virtual machine 20211 that can satisfy the user's request can be searched from 20211. Then, by copying and initializing the searched virtual machine 20211, a new virtual machine 20211A can be quickly provided to the user.
  • Second Embodiment not only copying and initializing a virtual machine being provided to other users, but also a replication dedicated prepared in advance as a virtual machine to be copied
  • a virtual machine providing system 1B that can provide a new virtual machine by copying and initializing the virtual machine template will be described.
  • FIG. 22 shows a logical configuration of the virtual machine providing system 1B in the second embodiment.
  • the virtual machine providing system 1B shown in FIG. 21 is configured in the same manner as the virtual machine providing system 1A in the first embodiment, except that the duplicate virtual machine environment initialization unit 10231A is a template-compatible version. Yes.
  • the duplicate virtual machine environment initialization unit 10231A duplicates and initializes the virtual machine template.
  • the contents of the virtual machine template are not rewritten, and the virtual machine template does not include user-specific data. Therefore, the duplicate virtual machine environment initialization unit 10231A does not delete the user specific data M1003 at the time of initialization.
  • FIG. 23 shows a logical configuration of the virtual machine host device 20 in the second embodiment.
  • the virtual machine host device 20 shown in FIG. 23 is configured in the same manner as the virtual machine host device 20 in the first embodiment, except that the secondary computer 203 is configured to include a virtual machine template 2032. Has been.
  • the virtual machine host device 20 creates a virtual machine image 2031 by duplicating the virtual machine template 2032 by the duplicate virtual machine environment initialization unit 10231A.
  • FIGS. 3 to 9 various tables (see FIGS. 3 to 9), an outline of a flow for providing a new virtual machine 20211A (see FIG. 10), a screen configuration (see FIGS. 11 to 13), and a processing procedure (see FIGS. 14 to 20). ) Is the same as in the first embodiment, and a description thereof is omitted here.
  • the virtual machine providing system 1B when a new virtual machine 20211A is requested from the user, the virtual machine currently being provided to other users in the virtual machine providing system 1B.
  • the virtual machine 20211 that can satisfy the user's request can be searched from the 20211 and the virtual machine template 2032. Then, by copying and initializing the searched virtual machine 20211 or virtual machine template 2032, a new virtual machine 20211A can be quickly provided to the user.
  • FIG. 24 shows a logical configuration of the virtual machine providing system 1C in the third embodiment.
  • the duplicate virtual machine environment initialization unit 10231B is a version corresponding to a plurality of virtual machine configurations, and a connection virtual machine determination unit 102314, a connection setting change unit 10232, and an affected virtual machine extraction unit 10233
  • the configuration is the same as that of the virtual machine providing system 1A in the first embodiment except that the configuration is provided.
  • connection virtual machine determination unit 102314 searches for a virtual machine 20211 including a program that is lacking in the copied new virtual machine 20211A in a plurality of virtual machine configurations.
  • the affected virtual machine extraction unit 10233 searches the virtual machine configuration for a virtual machine 20211 that requires a program included in the copied new virtual machine 20211A.
  • connection setting change unit 10232 performs a program setting change process for connecting the virtual machines 20211 obtained as a search result by the connection virtual machine determination unit 102314 or the influence virtual machine extraction unit 10233 in a plurality of virtual machine configurations.
  • FIG. 25 shows a logical configuration of the secondary storage device 103 according to the third embodiment.
  • the secondary storage device 103 shown in FIG. 25 is the second storage device 103 according to the first embodiment, except that the secondary storage device 103 includes a multiple virtual machine configuration table 10309, a connection setting value table 10310, and a connection setting item table 10311.
  • the configuration is the same as that of the next storage device 103.
  • FIG. 26A shows a conceptual diagram of the multiple virtual machine configuration table 10309.
  • the multiple virtual machine configuration table 10309 is a table for managing the multiple virtual machine configuration configured by the multiple virtual machines 20211 in the virtual machine providing system 1C.
  • the multiple virtual machine configuration table 10309 is configured by the affected virtual machine extraction unit 10233 and the connected virtual machine determination unit 102314. It is used when acquiring the virtual machine 20211 in the multiple virtual machine configuration.
  • the multiple virtual machine configuration table 10309 includes a multiple virtual machine configuration name column 103091 and a virtual computer list column 103092.
  • the multiple virtual machine configuration name column 103091 stores the multiple virtual machine configuration name of the multiple virtual machine configuration provided by the virtual machine providing system 1C.
  • the virtual machine list column 103092 stores the virtual machine names of the virtual machines 20211 constituting the multiple virtual machine configuration.
  • the multiple virtual machine configuration with the multiple virtual machine configuration name “grp0” is configured only from the virtual machine 20211 with the virtual machine name “VM0”.
  • the multiple virtual machine configuration with the multiple virtual machine configuration name “grp3” is composed of the virtual machines 20211 with the two virtual machine names “VM3 and VM4”.
  • FIG. 26B shows a conceptual diagram of the connection setting value table 10310.
  • the connection setting value table 10310 is a table for managing connection setting values for connecting to a connection destination program.
  • the connection setting changing unit 10232 acquires setting values for connecting to a connection destination program. Used for.
  • the connection setting value table 10310 includes a virtual machine name column 103101, a program ID column 103102, a connection parameter column 103103, and a connection parameter value column 103104.
  • the virtual machine name column 103101 stores the virtual machine name of the connection destination virtual machine 20211.
  • the program ID column 103102 stores the ID of the connection destination program.
  • connection parameter column 103103 stores parameters used for connecting to the program having the ID stored in the program ID column 103102.
  • the connection parameter value column 103104 stores values to be set for the parameters stored in the connection parameter column 103103.
  • a parameter “$ hostname $” is used to connect to the program with the ID “PG7” included in the virtual machine 20211 with the virtual machine name “VM3”. It is shown that the value “192.168.11.4” is set.
  • FIG. 26C shows a conceptual diagram of the connection setting item table 10311.
  • the connection setting item table 10311 is a table for managing the setting items of the connection source program that needs to be changed in order to connect to the connection destination program. Used when getting a description.
  • the connection setting item table 10311 includes a program ID column 103111, a connection destination program ID column 103112, a file column 103113, and a description column 103114.
  • the program ID column 103111 stores the ID of the connection source program.
  • the connection destination program ID column 103112 stores the ID of the connection destination program.
  • the file column 103113 stores the file name of the connection source program whose settings need to be changed in order to connect to the connection destination program.
  • the description field 103114 stores a description in the file of the file name stored in the file field 103113.
  • FIG. 27 shows a conceptual diagram of the flow of processing when incorporating a duplicate of a virtual machine into a multiple virtual machine configuration.
  • An outline of a flow for creating a new virtual machine 20211A in response to a request from user B (see FIG. 10) is the same as that in the first embodiment, and a description thereof will be omitted here.
  • the duplicate virtual machine providing unit 1023 incorporates the virtual machine 20211A into the existing virtual machine B1 (20211D) and the virtual machine configuration B (202112) used by the user B. Connect to B2 (20211E).
  • the duplicate virtual machine providing unit 1023 instructs the connection virtual machine determining unit 102314 to find a virtual machine connected to the program of the virtual machine 20211A. Specifically, the virtual machine 20211A is instructed to find a virtual machine that includes a program necessary for the operation of the program. As a result, when the virtual machine B1 (20211D) is found, the connection setting changing unit 10232 changes the setting of the program of the virtual machine 20211A so that it can be connected to the program of the virtual machine B1 (20211D).
  • the duplicate virtual machine providing unit 1023 instructs the affected virtual machine extracting unit 10233 to find a virtual machine connected to the virtual machine 20211A. Specifically, an instruction is given to find a virtual machine including a program that requires a program included in the virtual machine 20211A among the virtual machines of the multiple virtual machine configuration B. As a result, when the virtual computer B2 (20211E) is found, the connection setting changing unit 10232 changes the program setting of the virtual computer B2 (20211E) so that it can be connected to the program of the virtual computer 20211A.
  • the new virtual machine 20211A after duplication can be incorporated into the multiple virtual machine configuration B (202112) used by the user B.
  • FIG. 28 shows a screen configuration diagram of the program name search screen M1301 in the third embodiment.
  • the program name search screen M1301 shown in FIG. 28 has a radio button M2211 to M2218 for selecting an additional setting for the configuration of a plurality of virtual machines and a method for dealing with a missing program that is missing in the copied new virtual machine 20211A.
  • the duplicate virtual machine providing unit 1023 selects an additional setting for the multiple virtual machine configuration with the radio buttons M2211 to M2218, and selects a countermeasure method for the missing program with the radio buttons M2219 to M2221. Thereafter, when the virtual machine copy initialization button 1306 is pressed, the following processing is executed according to the selected combination of radio buttons. If radio button M2211 is selected, radio button M2220 cannot be selected.
  • the duplicate virtual machine providing unit 1023 executes the same processing as the duplicate virtual machine providing unit 1023 in the first embodiment.
  • the duplicate virtual machine providing unit 1023 executes processes other than the process by the program adding unit 102311 among the processes of the duplicate virtual machine providing unit 1023 in the first embodiment.
  • the duplicate virtual machine providing unit 1023 performs the first implementation. After executing the same processing as that of the duplicate virtual machine providing unit 1023 in the form of the above and completing the creation of the new virtual machine 20211A, a new virtual machine 20211A is obtained from a program included in another virtual machine 20211 having a plurality of virtual machine configurations. Settings for connecting to other programs To run the management.
  • the duplicate virtual machine providing unit 1023 performs the first implementation.
  • the program of the other virtual machine 20211 after executing a process other than the process of the program adding unit 102311, the program of the other virtual machine 20211 having a plurality of virtual machine configurations from the program included in the replicated new virtual machine 20211A Connection setting to connect to Process to run.
  • the duplicate virtual machine providing unit 1023 performs the first implementation.
  • the program of the other virtual machine 20211 after executing a process other than the process of the program adding unit 102311, the program of the other virtual machine 20211 having a plurality of virtual machine configurations from the program included in the replicated new virtual machine 20211A Connection setting to connect to Process to run.
  • the duplicate virtual machine providing unit 1023 When a combination of any one of the radio buttons M2212 to M2218 and the radio button M2221 is selected, that is, for additional setting to the multiple virtual computer configuration, a new virtual computer is added to any multiple virtual computer configuration When it is selected to add 20211A and nothing is selected as a countermeasure for the insufficient program, the duplicate virtual machine providing unit 1023 performs the process of the duplicate virtual machine providing unit 1023 in the first embodiment. Among these, processing other than the processing by the program addition unit 102311 is executed.
  • FIG. 29 shows a processing procedure of the influence virtual machine extraction process performed by the influence virtual machine extraction unit 10233 that has received the execution instruction from the duplicate virtual machine provision unit 1023.
  • the duplicate virtual machine providing unit 1023 is an influence virtual machine extraction unit in a connection setting process for connecting a program included in the virtual machine 20211 in the multiple virtual machine configuration and a program included in the new duplicated virtual machine 20211A. 10233 is instructed to execute the affected virtual machine extraction process.
  • the influence virtual machine extraction unit 10233 receives an instruction to execute the influence virtual machine extraction process from the duplicate virtual machine provision part 1023, the program included in the new duplicate virtual machine 20211A according to the extraction process shown in FIG.
  • the virtual computer 20211 including the program required by is executed from a plurality of virtual computer configurations.
  • the influence virtual machine extraction unit 10233 refers to the multiple virtual machine configuration table 10309 (see FIG. 26A), the multiple virtual machine configuration name stored in the multiple virtual machine configuration name column 103091, and the third embodiment.
  • the program name search screen M1301 in the form a row that matches the multiple virtual computer configuration names selected by the radio buttons M2212 to M2218 is extracted from the multiple virtual computer configuration table 10309.
  • the affected virtual machine extraction unit 10233 acquires the virtual machine name stored in the virtual machine list column 103092 of the extracted row (S2301).
  • the affected virtual machine extraction unit 10233 refers to the use program management table 10303 (see FIG. 6B) to determine the virtual machine name stored in the virtual machine name column 103031 and the virtual machine name acquired in step S2301. A matching line is extracted from the use program management table 10303. Then, the influence virtual machine extraction unit 10233 acquires the ID of the program stored in the program ID list column 103032 of the extracted row (S2302).
  • the affected virtual machine extraction unit 10233 executes the necessary program list creation unit 1024.
  • the necessary program list creation unit 1024 refers to the dependency management table 10308 (see FIG. 8) and the program management table 10301 (see FIG. 3), and in step S2302.
  • the ID of the acquired program and the ID of the program having a dependency relationship with the program are extracted, and the extracted ID is stored in the necessary program list column 10268 of the initialization information list 1026 (see FIG. 4B) (S2303).
  • the influence virtual machine extraction unit 10233 calculates the difference between the ID of the retained program in the multiple virtual machine configuration acquired in step S2302 and the ID of the necessary program acquired in step S2303, and initializes the calculated difference to the initialization information. It is stored in the missing program list column 10265 of the list 1026 (S2304).
  • the affected virtual machine extraction unit 10233 has the program ID stored in the used program list column 10262 of the initialization information list 1026 and the program ID stored in the insufficient program list column 10265 stored in step S2304. Are compared to determine whether there is a duplicate program (S2305).
  • the influence virtual machine extraction unit 10233 determines that there is no insufficient program among the programs used in the new virtual machine 20211A, and proceeds to step S2309.
  • the affected virtual machine extraction unit 10233 determines that there is a missing program among the programs used in the new virtual machine 20211A.
  • a program that is a program is set as a connection destination program (S2306).
  • the affected virtual machine extraction unit 10233 refers to the program management table 10301 (see FIG. 5), and the ID stored in the ID column 103011 matches the ID of the connection destination program set in step S2306. A row is extracted from the program management table 10301. Then, the affected virtual machine extraction unit 10233 acquires program name, version condition, and architecture information from the program name column 103012, the version column 1030301, and the architecture column 103014 of the extracted row, respectively. Then, the affected virtual machine extraction unit 10233 refers to the dependency management table 10308, the program name stored in the dependency program name column 103083 matches the acquired program name, and is stored in the dependency version column 103084.
  • a row in which the version condition satisfies the acquired version condition and the architecture stored in the dependency architecture column 103085 matches the acquired architecture is extracted from the dependency management table 10308. Then, the affected virtual machine extraction unit 10233 sets the ID program stored in the program ID column 103082 of the extracted row as the connection source program (S2307).
  • the affected virtual machine extraction unit 10233 instructs the connection setting change unit 10232 to execute the connection process.
  • the connection setting change unit 10232 receives the execution instruction from the influence virtual machine extraction unit 10233, the connection setting change unit 10232 rewrites the setting of the connection source program included in the connection source virtual machine 20211 so that the connection source program and the connection destination program are changed.
  • a connection process for connecting to a connection destination program included in the virtual machine 20211A is executed (S2308).
  • connection setting change unit 10232 sends the virtual machine name of the connection source virtual machine 20211, the ID of the connection source program, the virtual machine name of the connection destination virtual machine 20211A and the connection from the affected virtual machine extraction unit 10233. Receive the ID of the previous program.
  • connection setting change unit 10232 refers to the connection setting value table 10310 (see FIG. 26B), extracts the virtual machine name and ID stored in the virtual machine name column 103101 and the program ID column 103102, and the influence virtual computer extraction. A row in which the virtual machine name of the connection destination virtual machine 20211A received from the unit 10233 and the ID of the connection destination program match is extracted from the connection setting value table 10310.
  • connection setting change unit 10232 refers to the connection setting item table 10311 (see FIG. 26C), and stores the connection source program ID stored in the program ID column 103111 and the connection destination program ID column 103112. ID of the connection destination program, the ID of the connection source program included in the connection source virtual machine 20211 received from the affected virtual machine extraction unit 10233, and the ID of the connection destination program included in the connection destination virtual computer 20211A Are extracted from the connection setting item table 10311.
  • connection setting change unit 10232 matches the character string stored in the connection parameter column 103103 of the line extracted from the connection setting value table 10310 among the character strings stored in the description column 103114 of the extracted line.
  • a character string in which the character string of the place is replaced with the connection parameter value stored in the connection parameter value column 103104 is temporarily stored in the variable S.
  • connection setting change unit 10232 changes the character string of the portion that matches the character string stored in the description column 103114 out of the character string of the file name stored in the file column 103113 of the extracted line to the variable S. Replace with the character string stored in.
  • connection setting change unit 10232 can connect to a program included in the new virtual machine 20211A that is a duplicate of the program included in the virtual machine 20211 in the multiple virtual machine configuration.
  • FIG. 30 shows a processing procedure of a connection virtual machine determination process performed by the connection virtual machine determination unit 102314 that has received an execution instruction from the duplicate virtual machine provision unit 1023.
  • the duplicate virtual machine providing unit 1023 determines a connection virtual machine in connection setting processing for connecting a program contained in the new duplicated virtual machine 20211A and a program contained in another virtual machine 20211 having a plurality of virtual machine configurations.
  • the unit 102314 is instructed to execute connection virtual machine determination processing.
  • the connection virtual machine determination unit 102314 receives an instruction to execute the connection virtual machine determination process from the duplicate virtual machine provision unit 1023, the virtual machine including the deficient program of the copied new virtual machine 20211A according to the determination process shown in FIG.
  • a process of searching for a computer from the virtual machines 20211 in the configuration of a plurality of virtual machines and determining a virtual machine to be connected is executed.
  • connection virtual machine determination unit 102314 refers to the multiple virtual machine configuration table 10309 (see FIG. 26A), the multiple virtual machine configuration name stored in the multiple virtual machine configuration name column 103091, and the third embodiment.
  • the program name search screen M1301 in the form, a row that matches the multiple virtual computer configuration name of the multiple virtual computer configuration selected is extracted from the multiple virtual computer configuration table 10309. Then, the connection virtual machine determination unit 102314 acquires the virtual machine name stored in the virtual machine list column 103092 of the extracted row (S2401).
  • connection virtual machine determination unit 102314 refers to the use program management table 10303 (see FIG. 6B), and obtains the virtual machine name stored in the virtual machine name field 103031 and the virtual machine name acquired in step S2401. A matching line is extracted from the use program management table 10303. Then, the connection virtual machine determination unit 102314 acquires the ID of the program stored in the program ID list field 103032 of the extracted row, and the initial ID associated with the acquired program ID and the copied new virtual machine 20211. Programs that are lacking in the new virtual machine 20211A among the use programs included in the existing virtual machine 20211 by comparing the IDs of the missing programs stored in the missing program list column 10265 of the computerized information list 1026 Is included (S2402).
  • connection virtual machine determination unit 102314 determines that a program lacking in the new virtual machine 20211A is not included in the use programs included in the existing virtual machine 20211. The process proceeds to step S2406.
  • connection virtual machine determination unit 102314 obtains a positive result in the determination in step S2402, among the use programs included in the existing virtual machine 20211, a program that is missing in the new virtual machine 20211A is included. It is determined that the program is a program to be used and is a deficient program (S2403).
  • connection virtual machine determination unit 102314 refers to the program management table 10301 (see FIG. 5), and the ID stored in the ID column 103011 matches the ID of the connection destination program set in step S2403. A row is extracted from the program management table 10301. Then, the connection virtual machine determination unit 102314 obtains the program name, version condition, and architecture information from the program name column 103012, the version column 103013, and the architecture column 103014 of the extracted row, respectively. Then, the connection virtual machine determination unit 102314 refers to the dependency management table 10308, the program name stored in the dependency program name column 103083 matches the acquired program name, and is stored in the dependency version column 103084.
  • connection virtual machine determination unit 102314 sets the ID program stored in the program ID column 103082 of the extracted row as the connection source program (S2404).
  • connection virtual machine determination unit 102314 instructs the connection setting change unit 10232 to execute connection processing.
  • the connection setting change unit 10232 receives the execution instruction from the connection virtual machine determination unit 102314, the connection setting change unit 10232 rewrites the connection source program setting included in the connection source virtual machine 20211A, so that the connection source program and the connection destination program are rewritten.
  • a connection process for connecting to a connection destination program included in the virtual machine 20211 is executed (S2405).
  • connection process executed by the connection setting change unit 10232 is the same as the process described with reference to FIG. 29, and thus the description thereof is omitted here.
  • connection setting change unit 10232 can connect the program included in the copied new virtual machine 20211A to the program included in the virtual machine 20211 in the multiple virtual machine configuration.
  • the present invention is not necessarily limited to the first to third embodiments described above.
  • the present invention does not have to include all the configurations described above, and among the configurations in the first to third embodiments, some of the configurations in any of the embodiments are the same as those in the other embodiments. Configurations may be added, deleted or replaced.
  • the configurations, functions, processing units, etc. in the first to third embodiments described above may be realized by software.
  • information such as programs, tables or files for realizing each configuration, function, processing unit, etc. is recorded on a recording device such as a memory, hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card or DVD. You may store in.
  • a recording device such as a memory, hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card or DVD. You may store in.
  • control lines and information lines do not necessarily indicate all control lines and information lines on the product, and actually all the configurations may be mutually connected.
  • the present invention can be widely applied to a virtual computer providing system, a virtual computer providing method, and a program for providing a new virtual computer by duplicating and initializing the virtual computer.
  • Virtual computer provision system 10 Virtual computer provision service management server apparatus 1021 Replication source virtual computer search unit 10211 Usage search unit 10212 User name organization name search unit 10213 Program name search unit 10214 Program license confirmation unit 1023 Provision of duplicate virtual computer Unit 10231 Duplicate virtual machine environment initialization unit 102311 Program addition unit 102312 Program deletion unit 102313 Virtual machine data change unit 102314 Connection virtual machine determination unit 10232 Connection setting change unit 10233 Influence virtual machine extraction unit 1024 Necessary program list creation unit 10301 Program management table 10302 Virtual machine image management table 10303 Use program management table 10304 Program license management table 10308 Dependency management table 10310 Connection setting value table 10311 Connection setting item table

Abstract

Provided are a virtual computer provision system, virtual computer provision method, and program capable of rapidly providing a virtual computer that satisfies requirements of a user. The present invention is provided with: a replication origin virtual computer search unit for retrieving a virtual computer which includes a requested program requested by a user; a replica virtual computer provision unit which replicates and initializes the virtual computer acquired as a result of the retrieved results; and a storage unit which stores a used program management table, a dependency relationship management table, a user unique data management table, an organization unique data management table, and a machine unique data management table. The replication origin virtual computer search unit retrieves a virtual computer that includes the requested program, and additionally retrieves a virtual computer that includes programs necessary for operation of the requested program. The replica virtual computer provision unit, after replicating the virtual computer acquired as a result of the retrieved results, deletes or modifies user-unique data, organization-unique data, and machine-unique data included in the replicated virtual computer in order to perform initialization.

Description

仮想計算機提供システム及び提供方法Virtual computer providing system and providing method
 本発明は、仮想計算機提供システム及び提供方法に関し、特に既存の仮想計算機を複製及び初期化して新規の仮想計算機をユーザに提供する仮想計算機提供システム及び提供方法に適用して好適なものである。 The present invention relates to a virtual machine providing system and a providing method, and is particularly suitable for application to a virtual machine providing system and a providing method for providing a new virtual machine to a user by duplicating and initializing an existing virtual machine.
 従来、ユーザが計算機の利用を新たに開始するためには、計算機環境の構築作業が必要となる。計算機環境の構築作業とは、計算機を利用可能に構築する作業であり、具体的にはユーザの目的に適うハードウェア及びソフトウェアをベンダーから調達し、調達したハードウェアを設置し、設置したハードウェアにソフトウェアをセットアップする作業等である。 Conventionally, in order for a user to newly start using a computer, it is necessary to construct a computer environment. The construction of the computer environment is the construction of the computer so that it can be used. Specifically, the hardware and software suitable for the user's purpose are procured from the vendor, the procured hardware is installed, and the installed hardware is installed. For example, to set up software.
 この計算機環境の構築作業には、大きな時間的コストが必要となる。特に様々なハードウェア及びソフトウェアの組み合わせパターンについての動作テストが必要となるソフトウェア開発では、計算機環境の構築作業を何度も繰り返す必要がある。従ってその結果、ユーザが計算機の利用を実際に開始することができるまでには多くの時間が費やされることとなる。 This construction of the computer environment requires a large time cost. In particular, in software development that requires operation tests for various combinations of hardware and software, it is necessary to repeat the construction of the computer environment many times. Therefore, as a result, much time is spent before the user can actually start using the computer.
 近年、この時間的コストを削減するため、仮想化技術を利用することが提案されている。仮想化技術を利用して作成する仮想計算機においては、その構成情報及びデータが1つのファイルにパッケージ化される。このパッケージ化された情報を仮想計算機イメージと呼ぶ。そしてこの仮想計算機イメージを利用することにより、既存の仮想計算機の複製を容易に作成することができる。 Recently, in order to reduce this time cost, it has been proposed to use virtualization technology. In a virtual machine created using virtualization technology, its configuration information and data are packaged into one file. This packaged information is called a virtual machine image. By using this virtual machine image, it is possible to easily create a duplicate of the existing virtual machine.
 仮想計算機の複製は、ハイパーバイザがセットアップされた全てのハードウェアで動作する。ハイパーバイザとは、仮想計算機を実現するための制御プログラムであり、仮想化モニタや仮想化OSとも呼ばれる。 ∙ Virtual machine replication works on all hardware that has a hypervisor set up. The hypervisor is a control program for realizing a virtual computer, and is also called a virtualization monitor or a virtualization OS.
 従って、仮想化技術を用いることにより、計算機環境の構築作業により一度構築した計算機環境(既存の計算機環境)を別の新たな計算機環境(新規の計算機環境)の構築に再利用することが可能となる。よって環境構築作業に必要な時間的コストを削減することができるようになる。 Therefore, by using virtualization technology, it is possible to reuse a computer environment (existing computer environment) that has been constructed once by the construction work of the computer environment to construct another new computer environment (new computer environment). Become. Therefore, the time cost required for the environment construction work can be reduced.
 ところで、ユーザの中には多様なソフトウェアを組み合わせた計算機環境を要求する者も多い。このような場合、上述した従来の仮想化技術を利用して既存の計算機環境から新規の計算機環境を構築したとしても、新規の計算機環境にユーザの要求を満たす仮想計算機イメージが存在しなければ、結局のところユーザの要求を満たすソフトウェアをセットアップする必要がある。そしてこの場合、新規の計算機環境を提供するまでには多くの時間が費やされることになる。 By the way, many users require a computer environment that combines various software. In such a case, even if a new computer environment is constructed from the existing computer environment using the conventional virtualization technology described above, if there is no virtual computer image that satisfies the user's request in the new computer environment, After all, you need to set up software that meets your needs. In this case, it takes a lot of time to provide a new computer environment.
 ここで、特許文献1には、ユーザの要求を満たす仮想計算機を作成する技術が開示されている。具体的には、最小限のOS(Operating System)を備えた仮想計算機テンプレートを予め用意しておき、この仮想計算機テンプレートを複製して作成した仮想計算機に対してユーザが選択した所望のプログラムをセットアップすることにより、ユーザの要求を満たす仮想計算機を作成するという技術である。なおユーザが選択可能なプログラムは、リポジトリサーバにおいて提供されるとしている。 Here, Patent Document 1 discloses a technique for creating a virtual machine that satisfies a user's request. Specifically, a virtual machine template having a minimum OS (Operating System) is prepared in advance, and a desired program selected by the user is set up for a virtual machine created by duplicating the virtual machine template. This is a technique for creating a virtual machine that satisfies the user's request. Note that the user selectable program is provided in the repository server.
米国特許出願公開第20090300151号明細書US Patent Application Publication No. 20090300151
 しかし、特許文献1には、単に最小限のOSを備えた仮想計算機テンプレートを用意すること及びリポジトリサーバにより提供される各種プログラムをセットアップすることが開示されているだけである。従ってこの特許文献1の仮想計算機作成方法では、結局のところセットアップの作業が別途必要となり、ユーザに仮想計算機を提供するまでにかかる時間は依然として多く費やされるという問題がある。特にセットアップを必要とするプログラムが多ければ多いほど、仮想計算機を提供するまでには多くの時間が費やされるという問題がある。 However, Patent Document 1 merely discloses preparing a virtual machine template having a minimum OS and setting up various programs provided by a repository server. Therefore, in the virtual computer creation method of Patent Document 1, after all, a setup work is required separately, and there is a problem that a lot of time is required until the virtual computer is provided to the user. In particular, the more programs that need to be set up, the more time it takes to provide a virtual machine.
 そこで、本発明は以上の点を考慮してなされたもので、ユーザの要求を満たす新規の仮想計算機を迅速に提供し得る仮想計算機提供システム、仮想計算機提供方法及びプログラムを提供しようとするものである。 Therefore, the present invention has been made in consideration of the above points, and is intended to provide a virtual computer providing system, a virtual computer providing method, and a program that can quickly provide a new virtual computer that satisfies a user's request. is there.
 かかる課題を解決するために、本発明においては、ネットワーク上に接続されている既存の仮想計算機群からユーザが要求した要求プログラムを含む仮想計算機を検索する複製元仮想計算機検索部と、前記検索した結果得られた仮想計算機を複製及び初期化して新規の仮想計算機を提供する複製仮想計算機提供部と、前記既存の仮想計算機群を構成する仮想計算機が利用する利用プログラムを管理するための利用プログラム管理情報、前記利用プログラム間の依存関係を管理するための依存関係管理情報、前記仮想計算機に含まれるユーザ固有データを管理するためのユーザ固有データ管理情報、前記仮想計算機に含まれる組織固有データを管理するための組織固有データ管理情報及び前記仮想計算機に含まれるマシン固有データを管理するためのマシン固有データ管理情報を記憶する記憶部とを備え、前記複製元仮想計算機検索部は、前記利用プログラム管理情報を参照して、前記既存の仮想計算機群から前記要求プログラムを含む仮想計算機を検索し、更に前記依存関係管理情報を参照して、前記要求プログラムを含む仮想計算機から前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索し、前記複製仮想計算機提供部は、前記検索した結果得られた仮想計算機を複製した後、前記ユーザ固有データ管理情報、前記組織固有データ管理情報及び前記マシン管理情報を参照して、複製した仮想計算機に含まれるユーザ固有データ、組織固有データ及びマシン固有データを削除又は変更することにより前記複製した仮想計算機を初期化することを特徴とする。 In order to solve such a problem, in the present invention, a replication source virtual machine search unit for searching for a virtual machine including a request program requested by a user from an existing virtual machine group connected on a network, and the search A replicated virtual machine providing unit that provides a new virtual machine by duplicating and initializing the virtual machine obtained as a result, and a use program management for managing a use program used by a virtual machine that constitutes the existing virtual machine group Information, dependency management information for managing dependency between the programs used, user-specific data management information for managing user-specific data included in the virtual machine, and organization-specific data included in the virtual machine To manage organization-specific data management information and machine-specific data included in the virtual machine A storage unit that stores machine-specific data management information for the virtual machine including the request program from the existing virtual machine group with reference to the use program management information. The virtual machine including the program necessary for the operation of the requested program is retrieved from the virtual machine including the requested program by referring to the dependency management information, and the duplicate virtual machine providing unit retrieves the retrieved After copying the resulting virtual machine, the user-specific data, organization-specific data and machine included in the copied virtual machine with reference to the user-specific data management information, the organization-specific data management information and the machine management information The copied virtual machine is initialized by deleting or changing the unique data.
 また、本発明においては、複製元仮想計算機検索部により、ネットワーク上に接続されている既存の仮想計算機群からユーザが要求した要求プログラムを含む仮想計算機を検索する第1のステップと、複製仮想計算機提供部により、前記検索した結果得られた仮想計算機を複製及び初期化して新規の仮想計算機を提供する第2のステップと、記憶部により、前記既存の仮想計算機群を構成する仮想計算機が利用する利用プログラムを管理するための利用プログラム管理情報、前記利用プログラム間の依存関係を管理するための依存関係管理情報、前記仮想計算機に含まれるユーザ固有データを管理するためのユーザ固有データ管理情報、前記仮想計算機に含まれる組織固有データを管理するための組織固有データ管理情報及び前記仮想計算機に含まれるマシン固有データを管理するためのマシン固有データ管理情報を記憶する第3のステップとを備え、前記第1のステップにおいて、前記複製元仮想計算機検索部は、前記利用プログラム管理情報を参照して、前記既存の仮想計算機群から前記要求プログラムを含む仮想計算機を検索し、更に前記依存関係管理情報を参照して、前記要求プログラムを含む仮想計算機から前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索し、前記第2のステップにおいて、前記複製仮想計算機提供部は、前記検索した結果得られた仮想計算機を複製した後、前記ユーザ固有データ管理情報、前記組織固有データ管理情報及び前記マシン管理情報を参照して、複製した仮想計算機に含まれるユーザ固有データ、組織固有データ及びマシン固有データを削除又は変更することにより前記複製した仮想計算機を初期化することを特徴とする。 Further, in the present invention, a first step of searching for a virtual machine including a request program requested by a user from an existing virtual machine group connected on the network by a copy source virtual machine search unit, and a copy virtual machine A second unit that provides a new virtual machine by duplicating and initializing the virtual machine obtained as a result of the search by the providing unit and a virtual machine that constitutes the existing virtual computer group is used by the storage unit Utilization program management information for managing utilization programs, dependency relationship management information for managing dependency relations between the utilization programs, user unique data management information for managing user unique data included in the virtual machine, Organization-specific data management information for managing organization-specific data included in a virtual machine and the virtual calculation A third step of storing machine-specific data management information for managing the machine-specific data included in the virtual machine, wherein in the first step, the replication source virtual machine search unit refers to the use program management information Then, a virtual machine including the request program is searched from the group of existing virtual machines, and a program necessary for the operation of the request program is retrieved from the virtual machine including the request program by referring to the dependency management information. In the second step, the duplicate virtual machine providing unit duplicates the virtual machine obtained as a result of the search, and then the user specific data management information, the organization specific data management information, and With reference to the machine management information, user-specific data, organization-specific data and data included in the copied virtual machine It characterized by initializing the virtual machine to which the replication by deleting or changing the machine-specific data.
 本発明によれば、ユーザの要求を満たす新規の仮想計算機を迅速に提供することができる。 According to the present invention, it is possible to quickly provide a new virtual machine that satisfies the user's request.
仮想計算機提供システムの論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a virtual machine provision system. 仮想計算機ホスト装置の論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a virtual machine host apparatus. 二次記憶装置の論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a secondary storage device. 検索結果リストを示す概念図である。It is a conceptual diagram which shows a search result list. 初期化リストを示す概念図である。It is a conceptual diagram which shows an initialization list. プログラム管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a program management table. 仮想計算機イメージ管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a virtual machine image management table. 利用プログラム管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a utilization program management table. プログラムライセンス管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a program license management table. 依存関係管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a dependence relationship management table. ユーザ固有データ管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a user specific data management table. 組織固有データ管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of an organization specific data management table. マシン固有データ管理テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a machine specific data management table. 新規の仮想計算機をユーザに提供するまでの処理を示す概念図である。It is a conceptual diagram which shows a process until a new virtual machine is provided to a user. 用途検索画面を示す画面構成図である。It is a screen block diagram which shows a use search screen. ユーザ名組織名検索画面を示す画面構成図である。It is a screen block diagram which shows a user name organization name search screen. プログラム名検索画面を示す画面構成図である。It is a screen block diagram which shows a program name search screen. 用途検索処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a use search process. ライセンス確認処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a license confirmation process. 特徴プログラム抽出処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a characteristic program extraction process. 要求満足度抽出処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a request satisfaction extraction process. コスト算出処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a cost calculation process. ユーザ名組織名検索処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a user name organization name search process. プログラム名検索処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a program name search process. データ変更処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a data change process. 仮想計算機提供システムの論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a virtual machine provision system. 仮想計算機ホスト装置の論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a virtual machine host apparatus. 仮想計算機提供システムの論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a virtual machine provision system. 二次記憶装置の論理構成を示す概念図である。It is a conceptual diagram which shows the logical structure of a secondary storage device. 複数仮想計算機構成テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a several virtual machine structure table. 接続設定値テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a connection setting value table. 接続設定項目テーブルの構成を示す概念図である。It is a conceptual diagram which shows the structure of a connection setting item table. 複数仮想計算機構成に複製を組み入れる際の処理を示す概念図である。It is a conceptual diagram which shows the process at the time of incorporating a replication in a multiple virtual machine structure. プログラム名検索画面を示す画面構成図である。It is a screen block diagram which shows a program name search screen. 影響仮想計算機抽出処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of an influence virtual machine extraction process. 接続仮想計算機決定処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a connection virtual machine determination process.
 以下図面について、本発明の一実施の形態を詳述する。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
(1)第1の実施の形態
 第1の実施の形態では、他のユーザに現在提供中の仮想計算機を複製及び初期化することにより、ユーザに新規の仮想計算機を提供し得る仮想計算機提供システムについて説明する。
(1) First Embodiment In the first embodiment, a virtual computer providing system that can provide a new virtual computer to a user by duplicating and initializing a virtual computer currently being provided to another user. Will be described.
 図1は、第1の実施の形態における仮想計算機提供システム1Aの論理構成を示す。仮想計算機提供システム1Aは、仮想計算機提供サービス管理サーバ装置10及び仮想計算機ホスト装置20から構成される。 FIG. 1 shows a logical configuration of a virtual machine providing system 1A according to the first embodiment. The virtual machine providing system 1A includes a virtual machine providing service management server device 10 and a virtual computer host device 20.
 仮想計算機提供サービス管理サーバ装置10及び仮想計算機ホスト装置20は、ネットワーク5を介して相互に接続される。なお仮想計算機ホスト装置20は、仮想計算機提供システム1Aの規模に応じて、複数台がネットワーク5に接続される。 The virtual machine provision service management server apparatus 10 and the virtual machine host apparatus 20 are connected to each other via the network 5. A plurality of virtual machine host devices 20 are connected to the network 5 according to the scale of the virtual machine providing system 1A.
 仮想計算機提供サービス管理サーバ装置10は、CPU(Central Processing Unit)101、主記憶装置102、二次記憶装置103、表示装置104及び通信インタフェース105を備えて構成される。これらCPU101、主記憶装置102、二次記憶装置103、表示装置104及び通信インタフェース105は、バス106により互いに通信可能に接続される。また通信インタフェース105は、ネットワーク5に接続される。 The virtual machine provision service management server device 10 includes a CPU (Central Processing Unit) 101, a main storage device 102, a secondary storage device 103, a display device 104, and a communication interface 105. The CPU 101, the main storage device 102, the secondary storage device 103, the display device 104, and the communication interface 105 are communicably connected to each other via a bus 106. The communication interface 105 is connected to the network 5.
 主記憶装置102は、CPU101により実行される複製元仮想計算機検索部1021、仮想化環境管理プログラム1022、複製仮想計算機提供部1023及び必要プログラム一覧作成部1024を備えて構成され、その他各種プログラム等の実行により生成される検索結果リスト1025及び各種プログラム等の実行に用いられる初期化情報リスト1026を備えて構成される。 The main storage device 102 includes a replication source virtual machine search unit 1021, a virtualization environment management program 1022, a replication virtual computer provision unit 1023, and a necessary program list creation unit 1024 that are executed by the CPU 101. A search result list 1025 generated by execution and an initialization information list 1026 used for executing various programs and the like are provided.
 複製元仮想計算機検索部1021は、用途検索部10211、ユーザ名組織名検索部10212、プログラム名検索部10213及びプログラムライセンス確認部10214を備えて構成される。 The copy source virtual machine search unit 1021 includes a use search unit 10211, a user name organization name search unit 10212, a program name search unit 10213, and a program license confirmation unit 10214.
 仮想化環境管理プログラム1022は、仮想計算機複製部10221及び仮想計算機起動部10222を備えて構成される。 The virtual environment management program 1022 includes a virtual machine duplicating unit 10221 and a virtual machine starting unit 10222.
 複製仮想計算機提供部1023は、複製仮想計算機環境初期化部10231を備えて構成され、複製仮想計算機環境初期化部10231は、プログラム追加部102311、プログラム削除部102312及び仮想計算機データ変更部102313を備えて構成される。 The replicated virtual machine provision unit 1023 is configured to include a replicated virtual machine environment initialization unit 10231, and the replicated virtual machine environment initialization unit 10231 includes a program addition unit 102311, a program deletion unit 102312, and a virtual computer data change unit 102313. Configured.
 検索結果リスト1025は、複製元仮想計算機検索部1021により検索された検索結果を一時的に格納する記憶領域である。 The search result list 1025 is a storage area for temporarily storing the search results searched by the replication source virtual machine search unit 1021.
 初期化情報リスト1026は、複製元仮想計算機検索部1021により検索された結果得られた仮想計算機の環境を複製仮想計算機環境初期化部10231により初期化するための情報を格納する記憶領域である。 The initialization information list 1026 is a storage area for storing information for initializing the virtual machine environment initialization unit 10231 by the virtual machine environment initialization unit 10231 obtained as a result of the search by the replication source virtual machine search unit 1021.
 図2は、図1の仮想計算機提供システム1Aの仮想計算機ホスト装置20の論理構成を示す。仮想計算機ホスト装置20は、CPU201、主記憶装置202、二次記憶装置203及び通信インタフェース204から構成される。これらCPU201、主記憶装置202、二次記憶装置203及び通信インタフェース204は、バス205により互いに通信可能に接続される。また通信インタフェース204は、ネットワーク5に接続される。 FIG. 2 shows a logical configuration of the virtual machine host device 20 of the virtual machine providing system 1A of FIG. The virtual machine host device 20 includes a CPU 201, a main storage device 202, a secondary storage device 203, and a communication interface 204. The CPU 201, the main storage device 202, the secondary storage device 203, and the communication interface 204 are communicably connected to each other via a bus 205. The communication interface 204 is connected to the network 5.
 主記憶装置202は、CPU201により実行される仮想化機構2021を備えて構成され、仮想化機構2021は、仮想計算機20211及びハイパーバイザ20212を備えて構成される。 The main storage device 202 includes a virtualization mechanism 2021 that is executed by the CPU 201, and the virtualization mechanism 2021 includes a virtual computer 20211 and a hypervisor 20212.
 仮想計算機20211は、ハイパーバイザ20212により主記憶装置202上に作成された仮想計算機ホスト装置20の動作用の仮想的な主記憶装置であり、仮想計算機ホスト装置20上で動作するプログラムの処理の実行に用いられるデータが格納される。ハイパーバイザ20212は、仮想計算機20211を動作させる実行基盤である。なお仮想計算機20211は、後述する仮想計算機イメージ2031と協働して動作することにより初めて仮想計算機20211として機能する。 The virtual computer 20211 is a virtual main storage device for operating the virtual computer host device 20 created on the main storage device 202 by the hypervisor 20212, and executes processing of a program operating on the virtual computer host device 20 The data used for is stored. The hypervisor 20212 is an execution platform for operating the virtual computer 20211. Note that the virtual machine 20211 functions as the virtual machine 20211 only when it operates in cooperation with a virtual machine image 2031 described later.
 二次記憶装置203は、仮想計算機イメージ2031を備えて構成される。仮想計算機イメージ2031は、仮想計算機20211を構成するために必要な仮想計算機構成情報及び仮想計算機20211用の仮想的な二次記憶装置のデータを1つのファイルとしてパッケージ化したものである。 The secondary storage device 203 is configured to include a virtual machine image 2031. The virtual machine image 2031 is a package of virtual machine configuration information necessary for configuring the virtual machine 20211 and data of a virtual secondary storage device for the virtual machine 20211 as one file.
 図3は、図1の仮想計算機提供システム1Aの二次記憶装置103の論理構成を示す。二次記憶装置103は、プログラム管理テーブル10301、仮想計算機イメージ管理テーブル10302、利用プログラム管理テーブル10303、プログラムライセンス管理テーブル10304、ユーザ固有データ管理テーブル10305、組織固有データ管理テーブル10306、マシン固有データ管理テーブル10307、依存関係管理テーブル10308及びプログラム保管エリア1030Aを備えて構成される。 FIG. 3 shows a logical configuration of the secondary storage device 103 of the virtual machine providing system 1A of FIG. The secondary storage device 103 includes a program management table 10301, a virtual machine image management table 10302, a used program management table 10303, a program license management table 10304, a user specific data management table 10305, an organization specific data management table 10306, and a machine specific data management table. 10307, a dependency relationship management table 10308, and a program storage area 1030A.
 プログラム管理テーブル10301は、仮想計算機ホスト装置20の仮想計算機20211により利用されるプログラムを管理するためのテーブルである。 The program management table 10301 is a table for managing programs used by the virtual machine 20211 of the virtual machine host device 20.
 仮想計算機イメージ管理テーブル10302は、仮想計算機ホスト装置20の二次記憶装置203に含まれる仮想計算機イメージ2031を管理するためのテーブルである。 The virtual machine image management table 10302 is a table for managing the virtual machine image 2031 included in the secondary storage device 203 of the virtual machine host device 20.
 利用プログラム管理テーブル10303は、仮想計算機イメージ2031に含まれるプログラムを管理するためのテーブルである。 The used program management table 10303 is a table for managing programs included in the virtual machine image 2031.
 プログラムライセンス管理テーブル10304は、仮想計算機ホスト装置20の仮想計算機20211において利用されるプログラムのライセンスを管理するためのテーブルである。 The program license management table 10304 is a table for managing licenses of programs used in the virtual machine 20211 of the virtual machine host device 20.
 ユーザ固有データ管理テーブル10305は、仮想計算機20211を利用するユーザのユーザ固有データを管理するためのテーブルである。ユーザ固有データとは、ユーザが個人的に作成して利用するデータのことであり、例えば文書ファイル、画像ファイル、アカウント情報又は壁紙やサウンド等の設定情報に関するデータである。 The user-specific data management table 10305 is a table for managing user-specific data of a user who uses the virtual machine 20211. The user-specific data is data personally created and used by the user, and is data relating to setting information such as a document file, an image file, account information, or wallpaper or sound, for example.
 組織固有データ管理テーブル10306は、仮想計算機20211を利用するユーザが所属する組織の組織固有データを管理するためのテーブルである。組織固有データとは、特定の組織が利用するデータのことであり、例えば仮想計算機20211を利用するユーザがネットワーク5に接続する際に使用する組織が共通で使用しているプロキシサーバやファイルサーバの設定情報等のデータである。 The organization specific data management table 10306 is a table for managing the organization specific data of the organization to which the user using the virtual machine 20211 belongs. The organization-specific data is data used by a specific organization. For example, a proxy server or file server commonly used by organizations used when a user using the virtual machine 20211 connects to the network 5. Data such as setting information.
 マシン固有データ管理テーブル10307は、仮想計算機20211のマシン固有データを管理するためのテーブルである。マシン固有データとは、特定のマシンが利用するデータのことであり、例えばIPアドレスやホスト名等のデータである。 The machine unique data management table 10307 is a table for managing machine unique data of the virtual machine 20211. The machine specific data is data used by a specific machine, such as data such as an IP address and a host name.
 依存関係管理テーブル10308は、プログラム管理テーブル10301が管理する仮想計算機20211により利用されるプログラム間の依存関係情報を管理するためのテーブルである。 The dependency relationship management table 10308 is a table for managing dependency information between programs used by the virtual machine 20211 managed by the program management table 10301.
 プログラム保管エリア1030Aは、プログラム管理テーブル10301が管理する仮想計算機20211において利用されるプログラムを一時的に保管する保管場所である。 The program storage area 1030A is a storage location for temporarily storing programs used in the virtual machine 20211 managed by the program management table 10301.
 図4Aは、図1の仮想計算機提供システム1Aの検索結果リスト1025の概念図を示す。検索結果リスト1025には、ユーザが指定した検索条件を満たす仮想計算機20211の情報が格納される。ユーザが指定する検索条件には、例えば用途、ユーザ名、組織名又はプログラム名等がある。ユーザが指定した検索条件を満たす仮想計算機20211の情報は、複製元仮想計算機検索部1021内の用途検索部10211、ユーザ名組織名検索部10212及びプログラム名検索部10213により検索される。また検索された仮想計算機20211の情報は、表示装置104により表示される。 FIG. 4A shows a conceptual diagram of the search result list 1025 of the virtual machine providing system 1A of FIG. The search result list 1025 stores information on the virtual machine 20211 that satisfies the search condition specified by the user. Search conditions specified by the user include, for example, usage, user name, organization name, or program name. Information on the virtual machine 20211 that satisfies the search conditions specified by the user is searched by the usage search unit 10211, the user name organization name search unit 10212, and the program name search unit 10213 in the replication source virtual machine search unit 1021. Further, the information of the searched virtual machine 20211 is displayed on the display device 104.
 検索結果リスト1025は、仮想計算機名欄10251、環境初期化情報欄10252、ユーザ名欄10253、組織名欄10254、OS名欄10255、用途欄10256、コスト欄10257及び要求満足度欄10258から構成される。 The search result list 1025 includes a virtual machine name column 10251, an environment initialization information column 10252, a user name column 10253, an organization name column 10254, an OS name column 10255, a usage column 10256, a cost column 10257, and a request satisfaction level column 10258. The
 仮想計算機名欄10251には、複製元の仮想計算機20211の仮想計算機名が格納される。 The virtual machine name column 10251 stores the virtual machine name of the replication source virtual machine 20211.
 環境初期化情報欄10252には、複製元仮想計算機検索部1021により検索されたユーザ指定の仮想計算機20211が複製されて計算機環境が初期化される際、その初期化に必要な情報が格納される。なお計算機環境とは、仮想計算機20211に含まれる各種固有データや各種プログラムである。各種固有データとは、ユーザ固有データ、組織固有データ及びマシン固有データ等であり、各種プログラムとは、ユーザが要求する要求プログラム及び要求プログラムの動作に必要なプログラム等である。また初期化とは、複製した新規の仮想計算機をユーザに提供する前に、複製直後の仮想計算機20211に含まれる各種固有データや各種プログラムを削除又は変更する処理をいう。初期化は、複製仮想計算機環境初期化部10231により行われる。また初期化に必要な情報とは、ここでは初期化情報リスト1026(図4B参照)の行番号である。 The environment initialization information column 10252 stores information necessary for initialization when the user-specified virtual machine 20211 searched by the copy source virtual machine search unit 1021 is copied and the computer environment is initialized. . The computer environment is various unique data and various programs included in the virtual computer 20211. Various unique data are user specific data, organization specific data, machine specific data, and the like, and various programs are a request program requested by the user, a program necessary for the operation of the request program, and the like. Initialization refers to a process of deleting or changing various unique data and various programs included in the virtual machine 20211 immediately after copying before providing the copied new virtual machine to the user. Initialization is performed by the duplicate virtual machine environment initialization unit 10231. The information necessary for initialization is here the row number of the initialization information list 1026 (see FIG. 4B).
 ユーザ名欄10253には、複製元の仮想計算機20211のユーザ名が格納される。また組織名欄10254には、複製元の仮想計算機20211のユーザが所属する組織名が格納される。またOS名欄10255には、複製元の仮想計算機20211に含まれるOSのOS名が格納される。また用途欄10256には、複製元の仮想計算機20211の使用用途が格納される。 The user name column 10253 stores the user name of the virtual machine 20211 that is the replication source. The organization name column 10254 stores the name of the organization to which the user of the copy source virtual machine 20211 belongs. The OS name column 10255 stores the OS name of the OS included in the copy source virtual machine 20211. The usage column 10256 stores the usage of the copy source virtual machine 20211.
 コスト欄10257には、複製元の仮想計算機20211を複製及び初期化して新規の仮想計算機をユーザに提供する場合に必要な金銭的コストが格納される。金銭的コストには、例えば仮想計算機提供サービスにおいて仮想計算機20211の利用にかかる課金額やソフトウェアのライセンス料金等が含まれる。 The cost column 10257 stores a monetary cost necessary for replicating and initializing the copy source virtual machine 20211 and providing a new virtual machine to the user. The monetary cost includes, for example, a charge amount for using the virtual machine 20211 in a virtual machine providing service, a license fee for software, and the like.
 要求満足度欄10258には、複製元の仮想計算機20211を複製及び初期化して新規の仮想計算機をユーザに提供する場合にそのユーザの要求が満たされる度合いについて算出した値が格納される。 The request satisfaction level column 10258 stores a value calculated for the degree to which a user's request is satisfied when the replication source virtual machine 20211 is copied and initialized to provide a new virtual machine to the user.
 従って、図4Aの場合、例えば「VM5」という仮想計算機名の仮想計算機20211を複製して計算機環境を初期化しようとする場合、その初期化には初期化情報リスト1026(図4B参照)の「1」行目の情報を参照することが示されている。また「VM5」という仮想計算機20211は、「User02」というユーザ名のユーザであって、「Org02」という組織名の組織に所属しているユーザが現在利用中の仮想計算機であることが示されている。また「VM5」という仮想計算機20211では、「os_a5.5」というOS名のOSが動作していることが示されている。また「VM5」という仮想計算機20211を複製する場合、「5000」円のコストが必要となり、ユーザの要求は「100%」満たされることが示されている。 Therefore, in the case of FIG. 4A, for example, when the virtual machine 20211 having the virtual machine name “VM5” is duplicated and the computer environment is to be initialized, the initialization is performed in the initialization information list 1026 (see FIG. 4B). Reference is made to the information in the “1” line. The virtual machine 20211 “VM5” is a user with a user name “User02” and a user who belongs to an organization with an organization name “Org02” is a virtual machine currently being used. Yes. In addition, it is indicated that the OS having the OS name “os_a5.5” is operating in the virtual machine 20211 “VM5”. Further, when replicating the virtual machine 20211 of “VM5”, a cost of “5000” is required, and it is shown that the user's request is satisfied “100%”.
 図4Bは、図1の仮想計算機提供システム1Aの初期化情報リスト1026の概念図を示す。初期化情報リスト1026には、複製元の仮想計算機20211の計算機環境を初期化する際に必要な情報が格納される。初期化する際に必要な情報は、図1の主記憶装置102に格納される。また初期化は、複製仮想計算機環境初期化部10231により行われる。 FIG. 4B shows a conceptual diagram of the initialization information list 1026 of the virtual machine providing system 1A of FIG. The initialization information list 1026 stores information necessary for initializing the computer environment of the copy source virtual machine 20211. Information necessary for initialization is stored in the main storage device 102 of FIG. Initialization is performed by the duplicate virtual machine environment initialization unit 10231.
 初期化情報リスト1026は、検索結果リスト1025の環境初期化情報欄10252に格納されている情報に関連付けられており、行番号欄10261、利用プログラム一覧欄10262、特徴プログラム一覧欄10263、共通プログラム一覧欄10264、不足プログラム一覧欄10265、複製可能プログラム一覧欄10266、複製不可プログラム一覧欄10267、必要プログラム一覧欄10268及び不要プログラム一覧欄10269から構成される。 The initialization information list 1026 is associated with information stored in the environment initialization information column 10252 of the search result list 1025, and includes a line number column 10261, a used program list column 10262, a feature program list column 10263, and a common program list. A column 10264, a deficient program list column 10265, a copyable program list column 10266, a copy impossible program list column 10267, a necessary program list column 10268, and an unnecessary program list column 10269.
 行番号欄10261には、行番号が格納される。この行番号は、検索結果リスト1025(図4A参照)から初期化情報リスト1026を参照する際に用いられる。 In the line number column 10261, a line number is stored. This line number is used when referring to the initialization information list 1026 from the search result list 1025 (see FIG. 4A).
 利用プログラム一覧欄10262には、複製後の新規の仮想計算機により利用される予定の利用プログラムのIDが格納される。この利用プログラムのIDは、プログラム追加部102311及びプログラム削除部102312により格納される。 The used program list column 10262 stores the ID of a used program scheduled to be used by a new virtual machine after copying. The ID of this use program is stored by the program adding unit 102311 and the program deleting unit 102312.
 特徴プログラム一覧欄10263には、複製元仮想計算機検索部1021により複製元の仮想計算機20211が検索された結果、複数の仮想計算機20211が検索結果として得られた場合、それぞれの仮想計算機20211に含まれるプログラムのうちの特徴的なプログラムである特徴プログラムのIDが格納される。特徴プログラムとは、複数の仮想計算機20211のそれぞれに含まれるプログラムのうち、何れか一の仮想計算機20211には含まれるが他の仮想計算機20211には含まれないプログラムである。 In the feature program list column 10263, when a plurality of virtual machines 20211 are obtained as search results as a result of searching the copy source virtual machines 20211 by the copy source virtual machine search unit 1021, they are included in the respective virtual machines 20211. An ID of a characteristic program that is a characteristic program among the programs is stored. The feature program is a program that is included in any one of the virtual machines 20211 but is not included in the other virtual machines 20211 among the programs included in each of the plurality of virtual machines 20211.
 共通プログラム一覧欄10264には、複製元仮想計算機検索部1021により複製元の仮想計算機が検索された結果、複数の仮想計算機20211が検索結果として得られた場合、その複数の仮想計算機20211のそれぞれに共通して含まれる共通プログラムのIDが格納される。共通プログラムのIDは、複製元仮想計算機検索部1021により特徴プログラムを抽出する場合に用いられる。 In the common program list column 10264, when a plurality of virtual machines 20211 are obtained as search results as a result of searching for a copy source virtual machine by the copy source virtual machine search unit 1021, each of the plurality of virtual machines 20211 is displayed. The ID of the common program included in common is stored. The ID of the common program is used when the feature program is extracted by the copy source virtual machine search unit 1021.
 不足プログラム一覧欄10265には、複製した新規の仮想計算機に対し、追加でセットアップする必要のある不足プログラムのIDが格納される。不足プログラムのIDは、プログラム名検索部10213により検索されて格納される。また不足プログラムは、プログラム追加部102311により新規の仮想計算機に追加される。 The missing program list column 10265 stores the ID of a missing program that needs to be additionally set up for the new virtual machine copied. The ID of the missing program is retrieved and stored by the program name retrieval unit 10213. The deficient program is added to a new virtual machine by the program adding unit 102311.
 複製可能プログラム一覧欄10266には、利用プログラム一覧欄10262に格納されている利用プログラムのうち、ライセンス条件を満たしているプログラムである複製可能プログラムのIDが格納されえる。ライセンス条件を満たしているか否かについては、プログラムライセンス確認部10214により判断される。複製可能プログラムのIDは、複製仮想計算機環境初期化部10231により、新規の仮想計算機に残して良いプログラムであるか否かを判断する場合に用いられる。 The replicable program list column 10266 may store the ID of a replicable program that is a program that satisfies the license condition among the use programs stored in the use program list column 10262. Whether or not the license condition is satisfied is determined by the program license confirmation unit 10214. The ID of the duplicatable program is used when the duplicating virtual machine environment initialization unit 10231 determines whether the program can be left in the new virtual machine.
 複製不可プログラム一覧欄10267には、利用プログラム一覧欄10262に格納されている利用プログラムのうち、ライセンス条件を満たしていないプログラムである複製不可プログラムのIDが格納される。ライセンス条件を満たしているか否かについては、プログラムライセンス確認部10214により判断される。複製不可プログラムのIDは、プログラム削除部102312により、ソフトウェアライセンス上利用することができないプログラムを複製直後の新規の仮想計算機から削除する場合に用いられる。 In the non-replicatable program list column 10267, the ID of a non-replicatable program that is a program that does not satisfy the license condition among the use programs stored in the use program list column 10262 is stored. Whether or not the license condition is satisfied is determined by the program license confirmation unit 10214. The ID of the non-duplicatable program is used when the program deletion unit 10212 deletes a program that cannot be used in the software license from the new virtual machine immediately after copying.
 必要プログラム一覧欄10268には、ユーザが要求するプログラム及びユーザが要求するプログラムの動作に必要なプログラムである必要プログラムのIDが格納される。必要プログラムのIDは、必要プログラム一覧作成部1024により格納される。また必要プログラムのIDは、プログラム名検索部10213により、不足プログラム及び不要プログラムを抽出する場合に用いられる。 The necessary program list column 10268 stores the program requested by the user and the ID of the necessary program which is a program necessary for the operation of the program requested by the user. The ID of the necessary program is stored by the necessary program list creation unit 1024. Further, the ID of the necessary program is used when the program name search unit 10213 extracts the missing program and the unnecessary program.
 不要プログラム一覧欄10269には、複製可能プログラム一覧欄10266に格納されている複製可能プログラムのうち、必要プログラムではないプログラムである不要プログラムのIDが格納される。不要プログラムのIDは、プログラム名検索部10213により格納される。また不要プログラムのIDは、プログラム削除部102312により、ユーザの要求を満たすためには不要なプログラムを複製後の新規の仮想計算機から削除する場合に用いられる。 The unnecessary program list column 10269 stores an ID of an unnecessary program that is not a necessary program among the replicable programs stored in the replicable program list column 10266. The ID of the unnecessary program is stored by the program name search unit 10213. The ID of the unnecessary program is used when the program deletion unit 10212 deletes a program unnecessary to satisfy the user's request from the new virtual machine after copying.
 従って、図4Bの場合、例えば「VM5」という仮想計算機名の仮想計算機20211の計算機環境を初期化する場合、初期化に際しては行番号「1」の初期化情報が用いられることが示されている(図4A、図4B参照)。 Therefore, in the case of FIG. 4B, for example, when the computer environment of the virtual machine 20211 with the virtual machine name “VM5” is initialized, the initialization information of the line number “1” is used for the initialization. (See FIGS. 4A and 4B).
 また、行番号「1」の初期化情報は、「PG1、PG7、PG9、PG10、PG11、PG12」というIDの利用プログラムが含まれており、このうち「PG9」というIDのプログラムは、「VM5」という仮想計算機20211とは異なる「VM6」という他の仮想計算機20211には含まれていない特徴的なプログラムであることが示されている。 In addition, the initialization information of the line number “1” includes a use program with an ID “PG1, PG7, PG9, PG10, PG11, PG12”, and among these, the program with an ID “PG9” is “VM5”. It is shown that this is a characteristic program that is not included in another virtual machine 20211 called “VM6” that is different from the virtual machine 20211 called “VM6”.
 また、行番号「1」の初期化情報は、不足プログラムがないことが示されている。また行番号「1」の初期化情報は、「PG1、PG7、PG9、PG10、PG11、PG12」というIDの利用プログラムのうち、「PG1、PG7、PG9、PG10、PG11」というIDのプログラムがライセンス上利用可能な複製可能プログラムであり、「PG12」というIDのプログラムがライセンス上利用不可である複製不可プログラムであることが示されている。 Also, the initialization information of line number “1” indicates that there is no missing program. In addition, the initialization information of the line number “1” is licensed by the program with the ID “PG1, PG7, PG9, PG10, PG11” among the usage programs with the ID “PG1, PG7, PG9, PG10, PG11, PG12” It is shown that it is a duplicatable program that can be used and the program with the ID “PG12” is a non-duplicatable program that cannot be used on the license.
 また、行番号「1」の初期化情報は、「PG1、PG7、PG8又はPG9、PG10」というIDのプログラムが複製した新規の仮想計算機に要求する要求プログラムであることが示されている。なお複製した新規の仮想計算機には、「PG8」及び「PG9」というIDのプログラムのうち、何れか一方のプログラムが含まれていればユーザの要求は満たされることが示されている。また新規の仮想計算機には、「PG11」というIDのプログラムは不要であり不要プログラムであることが示されている。 Also, it is indicated that the initialization information of the line number “1” is a request program requested to a new virtual machine copied by the program with the ID “PG1, PG7, PG8 or PG9, PG10”. It is shown that the user's request is satisfied if the copied new virtual machine includes any one of the programs with IDs “PG8” and “PG9”. Further, it is indicated that the new virtual machine does not require the program with the ID “PG11” and is an unnecessary program.
 なお、これら「PG1、PG7、PG9、PG10、PG11、PG12」というIDのプログラムは、後述するプログラム管理テーブル10301(図5参照)を参照することにより、具体的には「os_a5.5、lang_r3.0、db_a1.0、web_app_a1.0、web_app_b1.0、web_app_c1.0」であることが分かる。 The programs with IDs “PG1, PG7, PG9, PG10, PG11, PG12” are specifically referred to by referring to a program management table 10301 (see FIG. 5) to be described later, specifically “os_a5.5, lang_r3. 0, db_a1.0, web_app_a1.0, web_app_b1.0, web_app_c1.0 ”.
 図5は、図3のプログラム管理テーブル10301の概念図を示す。プログラム管理テーブル10301は、仮想計算機提供システム1Aの各仮想計算機20211が利用するプログラムの情報を管理するためのテーブルであり、プログラム名検索部10213により、各仮想計算機20211に含まれるプログラムを検索する場合に用いられる。 FIG. 5 shows a conceptual diagram of the program management table 10301 in FIG. The program management table 10301 is a table for managing program information used by each virtual machine 20211 of the virtual machine providing system 1A. When the program name search unit 10213 searches for a program included in each virtual machine 20211, Used for.
 プログラム管理テーブル10301は、ID欄103011、プログラム名欄103012、バージョン欄103013、アーキテクチャ欄103014、保管場所欄103015及びセットアッププログラム名欄103016から構成される。 The program management table 10301 includes an ID column 103011, a program name column 103012, a version column 1030301, an architecture column 103014, a storage location column 103015, and a setup program name column 103016.
 ID欄103011には、仮想計算機提供システム1Aにおいてプログラムを特定するための文字列が格納される。ここではプログラムに付与されるIDが格納される。 In the ID column 103011, a character string for specifying a program in the virtual machine providing system 1A is stored. Here, an ID assigned to the program is stored.
 プログラム名欄103012には、プログラム名が格納される。バージョン欄103013には、バージョン情報が格納される。アーキテクチャ欄103014には、動作の前提となるハードウェアアーキテクチャ条件を示した文字列が格納される。 In the program name column 103012, the program name is stored. Version information is stored in the version column 103013. The architecture column 103014 stores a character string indicating a hardware architecture condition that is a premise of the operation.
 保管場所欄103015には、プログラムの保管場所が格納される。セットアッププログラム名欄103016には、プログラムをセットアップする際に実行するプログラム名が格納される。 The storage location column 103015 stores the storage location of the program. The setup program name column 103016 stores a program name to be executed when setting up the program.
 従って、図5の場合、例えば「PG1」というIDのプログラムは、プログラム名が「os_a」であり、バージョンは「5.5」であり、動作アーキテクチャは「arc_32」であり、プログラムの保管場所は「/srv/os/setup/os_a5.5/」であり、セットアッププログラム名は「setup」であることが示されている。 Therefore, in the case of FIG. 5, for example, the program with the ID “PG1” has the program name “os_a”, the version “5.5”, the operation architecture “arc_32”, and the storage location of the program is “/Srv/os/setup/os_a5.5/” and the setup program name is “setup”.
 図6Aは、図3の仮想計算機イメージ管理テーブル10302の概念図を示す。仮想計算機イメージ管理テーブル10302は、仮想計算機提供システム1Aにおいて提供されている全ての仮想計算機イメージ2031を管理するためのテーブルであり、用途検索部10211、ユーザ名組織名検索部10212及びプログラム名検索部10213により、ユーザが指定した検索条件を満たす仮想計算機20211を検索する場合に用いられる。 FIG. 6A shows a conceptual diagram of the virtual machine image management table 10302 of FIG. The virtual machine image management table 10302 is a table for managing all virtual machine images 2031 provided in the virtual machine providing system 1A, and includes a usage search unit 10211, a user name organization name search unit 10212, and a program name search unit. This is used when the virtual machine 20211 satisfying the search condition specified by the user is searched by the user 10213.
 仮想計算機イメージ管理テーブル10302は、仮想計算機名欄103021、ユーザ名欄103022、組織名欄103023、OS名欄103024及び用途欄103025から構成される。 The virtual machine image management table 10302 includes a virtual machine name column 103021, a user name column 103022, an organization name column 1030303, an OS name column 103024, and a usage column 103030.
 仮想計算機名欄103021には、複製元の仮想計算機20211の仮想計算機名が格納される。ユーザ名欄103022には、仮想計算機20211を利用しているユーザのユーザ名が格納される。組織名欄103023には、仮想計算機20211を利用しているユーザが所属する組織の組織名が格納される。OS名欄103024には、仮想計算機20211に含まれるOSのOS名が格納される。用途欄103025には、仮想計算機20211の用途を示す文字列が格納される。 The virtual machine name column 103021 stores the virtual machine name of the replication source virtual machine 20211. The user name column 103022 stores the user name of the user using the virtual machine 20211. The organization name column 103023 stores the organization name of the organization to which the user using the virtual machine 20211 belongs. The OS name column 103024 stores the OS name of the OS included in the virtual machine 20211. The usage column 103025 stores a character string indicating the usage of the virtual machine 20211.
 従って、図6Aの場合、例えば「VM0」という仮想計算機名の仮想計算機20211は、「user00」というユーザ名のユーザであって、「org00」という組織名の組織に所属しているユーザが現在利用中の仮想計算機であることが示されている。また「VM0」という仮想計算機20211では、「os_a5.5」というOS名のOSが動作していることが示されている。また「VM0」という仮想計算機20211は、「Webサーバ」の用途で用いられていることが示されている。なお「APサーバ」とは、アプリケーションサーバであり、「DBサーバ」とは、データベースサーバである。 Accordingly, in the case of FIG. 6A, for example, the virtual machine 20211 with a virtual machine name “VM0” is a user with a user name “user00” and a user who belongs to an organization with an organization name “org00” is currently using it. It is shown to be a virtual machine inside. Further, it is indicated that an OS with an OS name “os_a5.5” is operating in the virtual machine 20211 “VM0”. Further, it is shown that the virtual machine 20211 “VM0” is used for the purpose of “Web server”. The “AP server” is an application server, and the “DB server” is a database server.
 図6Bは、図3の利用プログラム管理テーブル10303の概念図を示す。利用プログラム管理テーブル10303は、仮想計算機提供システム1Aにおいて提供される各仮想計算機イメージ2031に含まれるプログラムを管理するためのテーブルであり、プログラム名検索部10213により、ユーザが検索条件に指定したプログラムを含む仮想計算機20211を検索する場合に用いられる。 FIG. 6B shows a conceptual diagram of the used program management table 10303 in FIG. The use program management table 10303 is a table for managing programs included in each virtual machine image 2031 provided in the virtual machine providing system 1A. The program specified by the user as a search condition by the program name search unit 10213 is used. It is used when searching for a virtual machine 20211 that includes it.
 利用プログラム管理テーブル10303は、仮想計算機名欄103031及びプログラムID一覧欄103032から構成される。仮想計算機名欄103031には、仮想計算機20211の仮想計算機名が格納される。プログラムID一覧欄103032には、仮想計算機20211に含まれるプログラムのIDが格納される。 The used program management table 10303 includes a virtual machine name column 103031 and a program ID list column 103032. The virtual machine name column 103031 stores the virtual machine name of the virtual machine 20211. The program ID list column 103032 stores the IDs of programs included in the virtual machine 20211.
 従って、図6Bの場合、例えば「VM0」という仮想計算機名の仮想計算機20211は、「PG1、PG3」というIDのプログラムを含んでいることが示されている。 Therefore, in the case of FIG. 6B, for example, the virtual machine 20211 with the virtual machine name “VM0” is shown to include a program with an ID “PG1, PG3”.
 図7は、図3のプログラムライセンス管理テーブル10304の概念図を示す。プログラムライセンス管理テーブル10304は、仮想計算機提供システム1Aにおいて提供されているプログラムのライセンスを管理するためのテーブルであり、プログラムライセンス確認部10214により、複製後の新規の仮想計算機に含まれるプログラムがライセンス上利用できるか否かを判断する場合に用いられる。 FIG. 7 shows a conceptual diagram of the program license management table 10304 of FIG. The program license management table 10304 is a table for managing licenses of programs provided in the virtual machine providing system 1A. The program license confirmation unit 10214 determines that the program included in the new virtual machine after copying is licensed. Used to determine whether or not it can be used.
 プログラムライセンス管理テーブル10304は、プログラムID欄103041、ライセンス形態欄103042、セットアップ数欄103043、所有ライセンス数欄103044及びライセンスコスト欄103045から構成される。 The program license management table 10304 includes a program ID column 103041, a license type column 103042, a setup number column 103043, an owned license number column 103044, and a license cost column 103045.
 プログラムID欄103041には、プログラムのIDが格納される。ライセンス形態欄103042には、プログラムのライセンス形態を示す文字列が格納される。セットアップ数欄103043には、仮想計算機提供システム1Aにおいてそのプログラムがセットアップされている仮想計算機20211の数が格納される。所有ライセンス数欄103044には、仮想計算機提供システム1Aにおいてそのプログラムをセットアップすることができる仮想計算機20211の最大数が格納される。ライセンスコスト欄103045には、プログラムを1個使用するのに必要なライセンスコストの金額が格納される。 The program ID column 103041 stores the program ID. The license form column 103042 stores a character string indicating the license form of the program. The number of setups column 103043 stores the number of virtual machines 20211 whose programs are set up in the virtual machine providing system 1A. The owned license number column 103044 stores the maximum number of virtual machines 20211 that can set up the program in the virtual machine providing system 1A. The license cost column 103045 stores the amount of license cost required to use one program.
 従って、図7の場合、例えば「PG1」というIDのプログラムは、ライセンス形態が「フリーソフトウェアライセンス」であり、仮想計算機提供システム1Aにおいて既に「7」つの仮想計算機20211にセットアップされていることが示されている。また所有ライセンス数に上限はなく、ライセンスコストは「0」円であることが示されている。 Therefore, in the case of FIG. 7, for example, the program with the ID “PG1” has a license form of “free software license” and is already set up in “7” virtual machines 20211 in the virtual machine providing system 1A. Has been. In addition, there is no upper limit to the number of owned licenses, and the license cost is “0” yen.
 図8は、図3の依存関係管理テーブル10308の概念図を示す。依存関係管理テーブル10308は、仮想計算機提供システム1Aにおいて提供されるプログラム間の依存関係を管理するためのテーブルであり、必要プログラム一覧作成部1024により、ユーザが検索条件に指定したプログラムの動作に必要なプログラムの一覧を作成する場合に用いられる。 FIG. 8 shows a conceptual diagram of the dependency management table 10308 of FIG. The dependency management table 10308 is a table for managing the dependency between programs provided in the virtual machine providing system 1A, and is necessary for the operation of the program specified by the user as a search condition by the necessary program list creation unit 1024. Used when creating a list of programs.
 依存関係管理テーブル10308は、依存関係ID欄103081、プログラムID欄103082、依存プログラム名欄103083、依存バージョン欄103084及び依存アーキテクチャ欄103085から構成される。 The dependency relationship management table 10308 includes a dependency relationship ID column 103081, a program ID column 103082, a dependency program name column 103083, a dependency version column 103084, and a dependency architecture column 103085.
 依存関係ID欄103081には、依存関係を識別するためのIDが格納される。プログラムID欄103082には、プログラムのIDが格納される。依存プログラム名欄103083には、プログラムID欄103082に格納されたIDのプログラムを動作させるために必要なプログラムのプログラム名が格納される。依存バージョン欄103084には、バージョン範囲が格納される。依存アーキテクチャ欄103085には、動作の前提となるハードウェアアーキテクチャ条件を示した文字列が格納される。 The dependency ID column 103081 stores an ID for identifying the dependency. The program ID column 103082 stores the program ID. The dependency program name column 103083 stores the program name of the program necessary for operating the program having the ID stored in the program ID column 103082. The dependency version column 103084 stores the version range. The dependency architecture column 103085 stores a character string indicating a hardware architecture condition that is a premise of the operation.
 従って、図8の場合、例えば「DPG1」というIDの依存関係は、「PG8」というIDのプログラムと、「db_a」又は「db_b」というプログラムとが依存関係にあることが示されている。具体的には「PG8」というIDのプログラムを動作させる場合には、「db_a」又は「db_b」というプログラムが必要であることが示されている。また詳細には「db_a」というプログラムは、バージョンが「1.0」以上であって、アーキテクチャが「arc_32」である必要があることが示されている。また「db_b」というプログラムは、バージョンが「2.0」以上であって、アーキテクチャが「arc_32」である必要があることが示されている。 Therefore, in the case of FIG. 8, for example, the dependency relationship of the ID “DPG1” indicates that the program with the ID “PG8” and the program “db_a” or “db_b” are in a dependency relationship. Specifically, it is indicated that when the program with the ID “PG8” is operated, the program “db_a” or “db_b” is necessary. More specifically, it is indicated that the program “db_a” needs to have a version “1.0” or higher and an architecture “arc_32”. Further, it is shown that the program “db_b” needs to have a version “2.0” or higher and an architecture “arc_32”.
 図9Aは、図3のユーザ固有データ管理テーブル10305の概念図を示す。ユーザ固有データ管理テーブル10305は、プログラムごとにユーザ固有データの保管場所を管理するためのテーブルであり、仮想計算機データ変更部102313により、複製した新規の仮想計算機から複製元の仮想計算機20211を利用しているユーザのユーザ固有データを削除する場合に用いられる。 FIG. 9A shows a conceptual diagram of the user-specific data management table 10305 of FIG. The user-specific data management table 10305 is a table for managing the storage location of user-specific data for each program, and the virtual machine data change unit 102313 uses the copy source virtual machine 20211 from the copied new virtual machine. This is used to delete user-specific data of a user who
 ユーザ固有データ管理テーブル10305は、プログラムID欄103051、データ名欄103052、データ形式欄103053、保管場所欄103054及び記述欄103055から構成される。 The user-specific data management table 10305 includes a program ID column 103051, a data name column 103052, a data format column 103053, a storage location column 103054, and a description column 103055.
 プログラムID欄103051には、プログラムのIDが格納される。データ名欄103052には、データ内容を示す文字列が格納される。データ形式欄103053には、データの形式を区別するための文字列が格納される。保管場所欄103054には、仮想計算機20211のファイルシステム上におけるデータの保管場所を示す文字列が格納される。記述欄103055には、データ形式欄103053に格納される文字列が示すデータ形式がファイルの一部を示す文字列である場合、ファイル内のデータの場所を示す文字列が格納される。 The program ID column 103051 stores the program ID. In the data name column 103052, a character string indicating the data content is stored. The data format column 103053 stores a character string for distinguishing the data format. The storage location column 103054 stores a character string indicating a data storage location on the file system of the virtual machine 20211. In the description column 103055, when the data format indicated by the character string stored in the data format column 103053 is a character string indicating a part of the file, a character string indicating the location of the data in the file is stored.
 従って、図9Aの場合、例えば「PG1」というIDのプログラムのユーザディレクトリが「/usr/」であることが示されている。 Therefore, in the case of FIG. 9A, for example, it is indicated that the user directory of the program with the ID “PG1” is “/ usr /”.
 図9Bは、図3の組織固有データ管理テーブル10306の概念図を示す。組織固有データ管理テーブル10306は、組織固有データの保管場所を管理するためのテーブルであり、仮想計算機データ変更部102313により、複製した新規の仮想計算機においてユーザが所属している組織を示す組織固有データを変更する場合に用いられる。 FIG. 9B shows a conceptual diagram of the organization-specific data management table 10306 of FIG. The organization-specific data management table 10306 is a table for managing the storage location of the organization-specific data, and the organization-specific data indicating the organization to which the user belongs in the new virtual machine copied by the virtual machine data changing unit 102313 Used when changing.
 組織固有データ管理テーブル10306は、プログラムID欄103061、データ名欄103062、データ形式欄103063、保管場所欄103064及び記述欄103065から構成される。各欄に格納される情報は、ユーザ固有データ管理テーブル10305と同様であるため、ここでの説明は省略する。 The organization-specific data management table 10306 includes a program ID column 103061, a data name column 103062, a data format column 103063, a storage location column 103064, and a description column 103065. Since the information stored in each column is the same as that in the user-specific data management table 10305, description thereof is omitted here.
 従って、図9Bの場合、例えば「PG1」というIDのプログラムのプログラム内のプロキシ設定は、「/etc/proxy.conf」というファイル内の「Proxy=xxxx」という記述であることが示されている。 Therefore, in the case of FIG. 9B, for example, the proxy setting in the program with the ID “PG1” is described as “Proxy = xxxx” in the file “/etc/proxy.conf”. .
 図9Cは、図3のマシン固有データ管理テーブル10307の概念図を示す。マシン固有データ管理テーブル10307は、仮想計算機20211固有のデータ保管場所を管理するためのテーブルであり、仮想計算機データ変更部102313により、複製した新規の仮想計算機から複製元の仮想計算機20211固有のデータを変更する場合に用いられる。 FIG. 9C shows a conceptual diagram of the machine specific data management table 10307 of FIG. The machine specific data management table 10307 is a table for managing the data storage location specific to the virtual machine 20211. The virtual machine data change unit 102313 receives the data specific to the copy source virtual machine 20211 from the new virtual machine copied. Used when changing.
 マシン固有データ管理テーブル10307は、プログラムID欄103071、データ名欄103072、データ形式欄103073、保管場所欄103074及び記述欄103075から構成される。各欄に格納される情報は、ユーザ固有データ管理テーブル10305と同様であるため、ここでの説明は省略する。 The machine specific data management table 10307 includes a program ID column 103071, a data name column 103072, a data format column 103073, a storage location column 103074, and a description column 103075. Since the information stored in each column is the same as that in the user-specific data management table 10305, description thereof is omitted here.
 従って、図9Cの場合、例えば「PG1」というIDのプログラムのipアドレス設定は、「/etc/ntwk/ipcfg」というファイル内の「IPADDR=xxxx」という記述であることが示されている。 Therefore, in the case of FIG. 9C, for example, the ip address setting of the program with the ID “PG1” is described as “IPADDR = xxxx” in the file “/ etc / ntwk / ipcfg”.
 図10は、複製元の仮想計算機20211を複製及び初期化することにより新規の仮想計算機20211Aをユーザに提供する処理の流れの概念図を示す。なおこれ以降、複製元の仮想計算機を「仮想計算機20211」と記載し、複製後の新規の仮想計算機を「仮想計算機20211A」と記載して両者を区別して説明する。 FIG. 10 is a conceptual diagram showing the flow of processing for providing a new virtual machine 20211A to the user by copying and initializing the virtual machine 20211 that is the copy source. Hereinafter, the replication source virtual computer will be described as “virtual computer 20211”, and the new virtual computer after replication will be described as “virtual computer 20211A” to distinguish between them.
 まず、仮想計算機提供システム1Aにおいて、ユーザBから新規の仮想計算機20211Aの要求があると、用途検索部10211、ユーザ名組織名検索部10212及びプログラム名検索部10213により、ユーザBの要求を満たす複製元の仮想計算機20211が検索される。ここでは、ユーザAが現在利用中の仮想計算機20211が検索結果として得られた場合について説明する。 First, in the virtual machine providing system 1A, when a request for a new virtual machine 20211A is received from the user B, the usage search unit 10211, the user name organization name search unit 10212, and the program name search unit 10213 satisfy the user B request. The original virtual machine 20211 is searched. Here, a case where the virtual machine 20211 currently used by the user A is obtained as a search result will be described.
 次いで、仮想化環境管理プログラム1022の仮想計算機複製部10221により、検索された複製元の仮想計算機20211が複製される。 Next, the retrieved virtual machine 20211 is duplicated by the virtual machine duplicating unit 10221 of the virtualization environment management program 1022.
 ここで、この複製直後の仮想計算機20211AをユーザBに提供することにより、ユーザBが要求したOS(M1010)やプログラム(M1006、M1007)を備えた仮想計算機20211Aを迅速に提供することができる。 Here, by providing the user B with the virtual machine 20211A immediately after duplication, the virtual machine 20211A including the OS (M1010) and programs (M1006, M1007) requested by the user B can be quickly provided.
 しかし、この複製直後の仮想計算機20211Aは、ユーザAが現在利用中の仮想計算機20211を単に複製したものであるため、ユーザAのユーザ固有データM1003A、ユーザAが所属する組織の組織固有データM1004A及び複製元の仮想計算機20211のマシン固有データM1005Aもそのまま複製されてしまっている。従ってこの複製直後の仮想計算機20211AをそのままユーザBに提供することはできない。 However, since the virtual machine 20211A immediately after the duplication is simply a duplication of the virtual machine 20211 currently used by the user A, the user specific data M1003A of the user A, the organization specific data M1004A of the organization to which the user A belongs, The machine-specific data M1005A of the replication source virtual machine 20211 is also copied as it is. Therefore, the virtual machine 20211A immediately after copying cannot be provided to the user B as it is.
 そこで、複製仮想計算機環境初期化部10231により、複製直後の仮想計算機20211Aの計算機環境を初期化する必要がある。計算機環境の初期化では、仮想計算機データ変更部102313により、ユーザ固有データM1003Aが削除され、組織固有データM1004A及びマシン固有データM1005Aが変更される。またプログラム削除部102312により、ユーザBにとって不要なプログラムM1008Aが削除される。更にプログラム追加部102311により、ユーザBが必要としているプログラムであって、複製元の仮想計算機20211には含まれていなかったプログラムM1009Aが追加される。 Therefore, it is necessary to initialize the computer environment of the virtual machine 20211A immediately after duplication by the duplicating virtual machine environment initialization unit 10231. In the initialization of the computer environment, the virtual machine data changing unit 102313 deletes the user specific data M1003A and changes the organization specific data M1004A and the machine specific data M1005A. Further, the program deletion unit 102312 deletes the program M1008A unnecessary for the user B. Further, the program adding unit 102311 adds a program M1009A that is necessary for the user B and that is not included in the copy source virtual machine 20211.
 以上の処理により、ユーザAが利用中の仮想計算機20211を複製して初期化することにより、ユーザBの要求に応じた新規の仮想計算機20211AをユーザBに提供することができる。 Through the above processing, by replicating and initializing the virtual machine 20211 being used by the user A, a new virtual machine 20211A according to the request of the user B can be provided to the user B.
 図11は、図1の表示装置104において表示される用途検索画面M1101の画面構成図を示す。用途検索画面M1101は、複製元仮想計算機検索部1021の用途検索部10211により、表示装置104に表示される。また用途検索画面M1101は、仮想計算機提供システム1Aにおける複数の仮想計算機20211から複製元となる仮想計算機20211を検索する際、用途に基づいて検索する場合に用いられる。 FIG. 11 is a screen configuration diagram of the usage search screen M1101 displayed on the display device 104 of FIG. The usage search screen M1101 is displayed on the display device 104 by the usage search unit 10211 of the replication source virtual machine search unit 1021. The application search screen M1101 is used when searching for a virtual machine 20211 as a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A based on the application.
 用途検索画面M1101は、用途検索タブC01、ユーザ名組織名検索タブC02、プログラム名検索タブC03、用途入力フィールドM1102、OS名入力フィールドM1103、検索ボタンM1104、検索結果表示フィールドM1105、複製元選択ボタンM1106、仮想計算機複製初期化ボタンM1107、仮想計算機名入力フィールドM1108、ユーザ名入力フィールドM1109、組織名入力フィールドM1110及び用途入力フィールドM1111から構成される。 The usage search screen M1101 includes a usage search tab C01, a user name organization name search tab C02, a program name search tab C03, a usage input field M1102, an OS name input field M1103, a search button M1104, a search result display field M1105, and a copy source selection button. M1106, virtual machine copy initialization button M1107, virtual machine name input field M1108, user name input field M1109, organization name input field M1110, and usage input field M1111.
 用途検索タブC01は、用途検索画面M1101を表示させるためのタブである。ユーザ名組織名検索タブC02は、ユーザ名組織名検索画面M1201(図12参照)を表示させるためのタブである。プログラム名検索タブC03は、プログラム名検索画面M1301(図13参照)を表示させるためのタブである。 The usage search tab C01 is a tab for displaying the usage search screen M1101. The user name organization name search tab C02 is a tab for displaying a user name organization name search screen M1201 (see FIG. 12). The program name search tab C03 is a tab for displaying a program name search screen M1301 (see FIG. 13).
 用途入力フィールドM1102は、検索対象の複製元の仮想計算機20211の用途を入力するためのフィールドである。 The usage input field M1102 is a field for inputting the usage of the virtual machine 20211 that is the search source replication source.
 OS名入力フィールドM1103は、検索対象の複製元の仮想計算機20211に含まれるOSのOS名を入力するためのフィールドである。 The OS name input field M1103 is a field for inputting the OS name of the OS included in the virtual machine 20211 that is the search source replication source.
 検索ボタンM1104は、用途入力フィールドM1102に用途が入力され、OS名入力フィールドM1103にOS名が入力された後、検索ボタンM1104が押下された場合、用途検索部10211により、入力された用途及びOS名に基づいて、複製元の仮想計算機20211を検索させるためのボタンである。 When the search button M1104 is pressed in the use input field M1102 and the OS name is input in the OS name input field M1103 and then the search button M1104 is pressed, the search button M1104 is input by the use search unit 10211. This button is used to search for the virtual machine 20211 that is the copy source based on the name.
 用途検索部10211は、検索ボタンM1104が押下されると、次に述べる処理を実行する。 When the search button M1104 is pressed, the usage search unit 10211 executes the following process.
 まず、用途検索部10211は、仮想計算機イメージ管理テーブル10302(図6A参照)を参照して、用途欄103025に格納されている用途と入力された用途とが一致し、かつ、OS名欄103024に格納されているOS名と入力されたOS名とが一致する行を仮想計算機イメージ管理テーブル10302から抽出する。 First, the usage search unit 10211 refers to the virtual machine image management table 10302 (see FIG. 6A), the usage stored in the usage column 103025 matches the input usage, and the OS name column 103024 is entered. A row in which the stored OS name matches the input OS name is extracted from the virtual machine image management table 10302.
 次いで、用途検索部10211は、検索結果リスト1025(図4A参照)に新たに行を作成する。そして用途検索部10211は、作成した行における仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255、用途欄10256の各欄に、仮想計算機イメージ管理テーブル10302から抽出した行の仮想計算機名、ユーザ名、組織名、OS名、用途の情報をそれぞれ格納する。 Next, the usage search unit 10211 creates a new line in the search result list 1025 (see FIG. 4A). The usage search unit 10211 extracts the row extracted from the virtual machine image management table 10302 in each column of the virtual machine name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row. Virtual machine name, user name, organization name, OS name, and usage information are stored.
 次いで、用途検索部10211は、初期化情報リスト1026(図4B参照)に新たに行を作成する。初期化情報リスト1026に新たに作成した行の各欄に各種情報を格納する処理については後述する(図14~図18参照)。 Next, the usage search unit 10211 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
 用途検索部10211は、初期化情報リスト1026に新たに作成した行の行番号欄10261に格納された行番号を上述の検索結果リスト1025に新たに作成した行の環境初期化情報欄10252に格納する。 The usage search unit 10211 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the newly created line in the search result list 1025 described above. To do.
 検索結果表示フィールドM1105は、用途検索部10211により検索結果リスト1025に新たに作成した行にかかる情報を表示するフィールドである。 The search result display field M1105 is a field for displaying information related to a newly created row in the search result list 1025 by the usage search unit 10211.
 検索結果表示フィールドM1105は、検索結果リスト1025に新たに作成した行にかかる情報を表示する構成として、複製元選択ボタンM1106、仮想計算機名表示フィールドR01、ユーザ名表示フィールドR02、組織名表示フィールドR03、OS名表示フィールドR04、用途表示フィールドR05、特徴プログラム表示フィールドR06、不足プログラム表示フィールドR07、ユーザ要求満足度表示フィールドR08及びコスト表示フィールドR09から構成される。 The search result display field M1105 is configured to display information related to the newly created row in the search result list 1025. The copy source selection button M1106, the virtual machine name display field R01, the user name display field R02, and the organization name display field R03 , OS name display field R04, usage display field R05, feature program display field R06, insufficient program display field R07, user requirement satisfaction display field R08, and cost display field R09.
 複製元選択ボタンM1106は、検索結果表示フィールドM1105に表示された複数の複製元の仮想計算機20211の候補から一の複製元の仮想計算機20211を選択するためのボタンである。 The replication source selection button M1106 is a button for selecting one replication source virtual machine 20211 from a plurality of replication source virtual machine 20211 candidates displayed in the search result display field M1105.
 仮想計算機名表示フィールドR01には、複製元の候補となる仮想計算機20211の仮想計算機名が表示される。ユーザ名表示フィールドR02には、複製元の候補となる仮想計算機20211を現在利用しているユーザのユーザ名が表示される。 In the virtual machine name display field R01, the virtual machine name of the virtual machine 20211 that is a candidate for the copy source is displayed. The user name display field R02 displays the user name of the user who is currently using the virtual machine 20211 that is a candidate for the copy source.
 組織名表示フィールドR03には、複製元の候補となる仮想計算機20211を現在利用しているユーザが所属している組織の組織名が表示される。OS名表示フィールドR04には、複製元の候補となる仮想計算機20211に含まれるOSのOS名が表示される。 In the organization name display field R03, the organization name of the organization to which the user who currently uses the virtual machine 20211 that is the candidate for the copy belongs is displayed. The OS name display field R04 displays the OS name of the OS included in the virtual machine 20211 that is a candidate for the copy source.
 用途表示フィールドR05には、複製元の候補となる仮想計算機20211の用途が表示される。特徴プログラム表示フィールドR06には、複製元の候補となる仮想計算機20211に含まれる特徴的なプログラムのIDが表示される。 In the usage display field R05, the usage of the virtual machine 20211 that is a candidate for the copy source is displayed. The characteristic program display field R06 displays the ID of a characteristic program included in the virtual machine 20211 that is a copy source candidate.
 不足プログラム表示フィールドR07には、複製した新規の仮想計算機20211Aに対し、追加でセットアップする必要のあるプログラムのIDが表示される。ユーザ要求満足度表示フィールドR08には、複製元の仮想計算機20211を複製してユーザに提供した場合にそのユーザの要求が満たされる度合いが表示される。コスト表示フィールドR09には、複製元の仮想計算機20211を複製して新規の仮想計算機20211Aをユーザに提供するまでにかかる必要な金銭的コストが表示される。 In the missing program display field R07, the ID of a program that needs to be additionally set up is displayed for the copied new virtual machine 20211A. In the user request satisfaction level display field R08, the degree to which the user's request is satisfied when the copy source virtual machine 20211 is copied and provided to the user is displayed. In the cost display field R09, a monetary cost required for copying the copy source virtual machine 20211 and providing the user with the new virtual machine 20211A is displayed.
 従って、図11の場合、例えば「Webサーバ」という用途の仮想計算機20211であって、「os_a」というOSが含まれる仮想計算機20211を検索条件として検索されたことが示されている。そして検索ボタンM1104の押下により検索された結果、検索結果表示フィールドM1105には、「VM0」及び「VM1」という仮想計算機20211が検索結果として得られたことが示されている。また「VM0」の仮想計算機20211は、「user00」というユーザであって、「org00」という組織に所属しているユーザが現在利用中であることが示されている。また「VM0」の仮想計算機20211は、「os_a5.5」というOSにより動作することが示されている。また「VM0」の仮想計算機20211は、「Webサーバ」の用途で用いられることが示されている。また「VM0」の仮想計算機20211は、不足プログラムがなく、そのため「100%」のユーザ要求満足度であることが示されている。また「VM0」の仮想計算機20211を複製元として利用する場合、「5000」円の金銭的コストが必要であることが示されている。 Therefore, in the case of FIG. 11, for example, it is indicated that the virtual machine 20211 is used as a “Web server” and is searched using the virtual machine 20211 including the OS “os_a” as a search condition. As a result of the search performed by pressing the search button M1104, the search result display field M1105 indicates that virtual machines 20211 “VM0” and “VM1” are obtained as search results. The virtual machine 20211 of “VM0” is shown to be currently being used by a user “user00” who belongs to the organization “org00”. Further, it is shown that the virtual machine 20211 of “VM0” is operated by the OS “os_a5.5”. Further, it is indicated that the virtual machine 20211 of “VM0” is used for the purpose of “Web server”. Further, it is indicated that the virtual machine 20211 of “VM0” has no deficient program and therefore has a user request satisfaction level of “100%”. Further, it is indicated that when the virtual machine 20211 of “VM0” is used as a copy source, a monetary cost of “5000” yen is necessary.
 仮想計算機複製初期化ボタンM1107は、複製元選択ボタンM1106により選択された複製元の仮想計算機20211について、複製及び初期化を実行するためのボタンである。この仮想計算機複製初期化ボタンM1107が押下されると、複製仮想計算機提供部1023により、複製元の仮想計算機20211の複製及び初期化が実行されることになる(図21参照)。 The virtual machine duplication initialization button M1107 is a button for duplicating and initializing the duplication source virtual machine 20211 selected by the duplication source selection button M1106. When the virtual machine replication initialization button M1107 is pressed, the replication virtual machine provision unit 1023 executes replication and initialization of the replication source virtual machine 20211 (see FIG. 21).
 仮想計算機名入力フィールドM1108は、新規の仮想計算機20211Aの仮想計算機名を入力するためのフィールドである。 The virtual machine name input field M1108 is a field for inputting the virtual machine name of the new virtual machine 20211A.
 ユーザ名入力フィールドM1109は、新規の仮想計算機20211Aを利用するユーザのユーザ名を入力するためのフィールドである。 User name input field M1109 is a field for inputting a user name of a user who uses the new virtual machine 20211A.
 組織名入力フィールドM1110は、新規の仮想計算機20211Aを利用するユーザが所属する組織の組織名を入力するためのフィールドである。 The organization name input field M1110 is a field for inputting the organization name of the organization to which the user who uses the new virtual machine 20211A belongs.
 用途入力フィールドM1111は、新規の仮想計算機20211Aの用途を入力するためのフィールドである。 The usage input field M1111 is a field for inputting the usage of the new virtual machine 20211A.
 図12は、図1の表示装置104において表示されるユーザ名組織名検索画面M1201の画面構成図を示す。ユーザ名組織名検索画面M1201は、複製元仮想計算機検索部1021のユーザ名組織名検索部10212により、表示装置104に表示される。またユーザ名組織名検索画面M1201は、仮想計算機提供システム1Aにおける複数の仮想計算機20211から複製元となる仮想計算機20211を検索する際、ユーザ名又は組織名に基づいて検索する場合に用いられる。 FIG. 12 is a screen configuration diagram of the user name / organization name search screen M1201 displayed on the display device 104 of FIG. The user name / organization name search screen M1201 is displayed on the display device 104 by the user name / organization name search unit 10212 of the copy source virtual machine search unit 1021. The user name / organization name search screen M1201 is used when searching based on a user name or organization name when searching for a virtual machine 20211 as a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A.
 ユーザ名組織名検索画面M1201は、図11の用途入力フィールドM1102及びOS名入力フィールドM1103に替えて、ユーザ名入力フィールドM1202及び組織名入力フィールドM1203を備えて構成される。 The user name / organization name search screen M1201 includes a user name input field M1202 and an organization name input field M1203 instead of the usage input field M1102 and the OS name input field M1103 in FIG.
 ユーザ名入力フィールドM1202は、検索対象の複製元の仮想計算機20211を利用するユーザのユーザ名を入力するためのフィールドである。 The user name input field M1202 is a field for inputting the user name of the user who uses the virtual machine 20211 that is the search source replication source.
 組織名入力フィールドM1203は、検索対象の複製元の仮想計算機20211を利用するユーザが所属する組織の組織名を入力するためのフィールドである。 The organization name input field M1203 is a field for inputting the organization name of the organization to which the user who uses the virtual machine 20211 that is the search target replication source belongs.
 ユーザ名組織名検索画面M1201のその他の構成は、用途検索画面M1101と同様に構成されるため、ここでの説明は省略する。 Other configurations of the user name / organization name search screen M1201 are configured in the same manner as the usage search screen M1101, and thus the description thereof is omitted here.
 ユーザ名組織名検索部10212は、ユーザ名及び組織名が入力された後、検索ボタンM1204が押下されると、次に述べる処理を実行する。 The user name / organization name search unit 10212 executes the following process when the search button M1204 is pressed after the user name and the organization name are input.
 まず、ユーザ名組織名検索部10212は、仮想計算機イメージ管理テーブル10302(図6A参照)を参照して、ユーザ名欄103022に格納されているユーザ名と入力されたユーザ名とが一致し、かつ、組織名欄103023に格納されている組織名と入力された組織名とが一致する行を仮想計算機イメージ管理テーブル10302から抽出する。 First, the user name organization name search unit 10212 refers to the virtual machine image management table 10302 (see FIG. 6A), and the user name stored in the user name column 103022 matches the input user name, and , A row in which the organization name stored in the organization name column 103023 matches the inputted organization name is extracted from the virtual machine image management table 10302.
 次いで、ユーザ名組織名検索部10212は、検索結果リスト1025(図4A参照)に新たに行を作成する。そしてユーザ名組織名検索部10212は、作成した行における仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255及び用途欄10256の各欄に、仮想計算機イメージ管理テーブル10302から抽出した行の仮想計算機名、ユーザ名、組織名、OS名及び用途の情報をそれぞれ格納する。 Next, the user name / organization name search unit 10212 creates a new line in the search result list 1025 (see FIG. 4A). Then, the user name / organization name search unit 10212 stores the virtual computer name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row from the virtual computer image management table 10302. The virtual machine name, user name, organization name, OS name, and usage information of the extracted row are stored.
 次いで、ユーザ名組織名検索部10212は、初期化情報リスト1026(図4B参照)に新たに行を作成する。初期化情報リスト1026に新たに作成した行の各欄に各種情報を格納する処理については後述する(図14~図18参照)。 Next, the user name / organization name search unit 10212 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
 ユーザ名組織名検索部10212は、初期化情報リスト1026に新たに作成した行の行番号欄10261に格納された行番号を上述の検索結果リスト1025に新たに作成した行の環境初期化情報欄10252に格納する。 The user name organization name search unit 10212 sets the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 to the environment initialization information column of the newly created line in the search result list 1025 described above. 10252.
 検索結果表示フィールドM1205は、ユーザ名組織名検索部10212により検索結果リスト1025に新たに作成した行にかかる情報を表示するフィールドである。この検索結果表示フィールドM1205で表示される情報は、図11の検索結果表示フィールドM1105で表示される情報と同様であるため、ここでの説明は省略する。 The search result display field M1205 is a field for displaying information related to a newly created line in the search result list 1025 by the user name organization name search unit 10212. Since the information displayed in the search result display field M1205 is the same as the information displayed in the search result display field M1105 in FIG. 11, the description thereof is omitted here.
 図13は、図1の表示装置104において表示されるプログラム名検索画面M1301の画面構成図を示す。プログラム名検索画面M1301は、複製元仮想計算機検索部1021のプログラム名検索部10213により、表示装置104に表示される。またプログラム名検索画面M1301は、仮想計算機提供システム1Aにおける複数の仮想計算機20211から複製元となる仮想計算機20211を検索する際、プログラム名に基づいて検索する場合に用いられる。 FIG. 13 is a screen configuration diagram of the program name search screen M1301 displayed on the display device 104 of FIG. The program name search screen M1301 is displayed on the display device 104 by the program name search unit 10213 of the copy source virtual machine search unit 1021. The program name search screen M1301 is used when searching for a virtual machine 20211 that is a replication source from a plurality of virtual machines 20211 in the virtual machine providing system 1A based on the program name.
 プログラム名検索画面M1301は、図11の用途入力フィールドM1102及びOS名入力フィールドM1103に替えて、プログラム名入力フィールドM1302を備えて構成される。 The program name search screen M1301 includes a program name input field M1302 instead of the usage input field M1102 and the OS name input field M1103 in FIG.
 プログラム名入力フィールドM1302は、検索対象の複製元の仮想計算機20211に含まれるプログラムのプログラム名及びバージョン条件を入力するためのフィールドである。 The program name input field M1302 is a field for inputting the program name and version condition of the program included in the virtual machine 20211 that is the search source replication source.
 プログラム名検索画面M1301のその他の構成は、用途検索画面M1101と同様に構成されるため、ここでの説明は省略する。 The other configuration of the program name search screen M1301 is the same as that of the usage search screen M1101, and thus the description thereof is omitted here.
 プログラム名検索部10213は、プログラム名及びバージョン条件が入力された後、検索ボタンM1303が押下されると、次に述べる処理を実行する。 When the search button M1303 is pressed after the program name and version conditions are input, the program name search unit 10213 executes the following processing.
 まず、プログラム名検索部10213は、利用プログラム管理テーブル10303(図6B参照)を参照して、入力されたプログラム名のプログラムを含む仮想計算機20211を検索し、検索により得られた仮想計算機20211の仮想計算機名を利用プログラム管理テーブル10303から抽出する。またプログラム名検索部10213は、プログラム管理テーブル10301(図5参照)を参照して、入力されたバージョンがバージョン条件を満たすか否か判断する。そしてプログラム名検索部10213は、先に抽出した仮想計算機名の仮想計算機20211のうち、バージョン条件を満たすプログラムを含む仮想計算機20211の行を仮想計算機イメージ管理テーブル10302から抽出する。 First, the program name search unit 10213 refers to the used program management table 10303 (see FIG. 6B), searches for a virtual machine 20211 including a program with the input program name, and obtains the virtual machine 20211 virtual obtained by the search. The computer name is extracted from the use program management table 10303. Further, the program name search unit 10213 refers to the program management table 10301 (see FIG. 5) and determines whether or not the input version satisfies the version condition. Then, the program name search unit 10213 extracts, from the virtual machine image management table 10302, the row of the virtual machine 20211 including the program that satisfies the version condition among the virtual machines 20211 having the virtual machine name extracted previously.
 次いで、プログラム名検索部10213は、検索結果リスト1025(図4A参照)に新たに行を作成する。そしてプログラム名検索部10213は、作成した行における仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255及び用途欄10256の各欄に、仮想計算機イメージ管理テーブル10302から抽出した行の仮想計算機名、ユーザ名、組織名、OS名及び用途の情報をそれぞれ格納する。 Next, the program name search unit 10213 creates a new line in the search result list 1025 (see FIG. 4A). Then, the program name search unit 10213 extracts from the virtual machine image management table 10302 to the virtual machine name column 10251, the user name column 10253, the organization name column 10254, the OS name column 10255, and the usage column 10256 in the created row. The virtual computer name, user name, organization name, OS name, and usage information of the row are stored.
 次いで、プログラム名検索部10213は、初期化情報リスト1026(図4B参照)に新たに行を作成する。初期化情報リスト1026に新たに作成した行の各欄に各種情報を格納する処理については後述する(図14~図18参照)。 Next, the program name search unit 10213 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created row in the initialization information list 1026 will be described later (see FIGS. 14 to 18).
 プログラム名検索部10213は、初期化情報リスト1026に新たに作成した行の行番号欄10261に格納された行番号を上述の検索結果リスト1025に新たに作成した行の環境初期化情報欄10252に格納する。 The program name search unit 10213 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the line newly created in the search result list 1025 described above. Store.
 検索結果表示フィールドM1304は、プログラム名検索部10213により検索結果リストに新たに作成した行にかかる情報を表示するフィールドである。この検索結果表示フィールドM1304で表示される情報は、図11の検索結果表示フィールドM1105で表示される情報と同様であるため、ここでの説明は省略する。 The search result display field M1304 is a field for displaying information related to a newly created line in the search result list by the program name search unit 10213. The information displayed in the search result display field M1304 is the same as the information displayed in the search result display field M1105 in FIG. 11, and thus the description thereof is omitted here.
 図14は、複製元仮想計算機検索部1021からの実行指示を受け付けた用途検索部10211により行われる用途検索処理の処理手順を示す。用途検索部10211は、図11の用途検索画面M1101の検索ボタンM1104が押下されると複製元仮想計算機検索部1021からの実行指示を受け付け、この図14に示す処理手順に従って、複数の複製元の仮想計算機20211から用途に基づく検索処理を実行する。 FIG. 14 shows a processing procedure of a usage search process performed by the usage search unit 10211 that has received an execution instruction from the replication source virtual machine search unit 1021. When the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the use search unit 10211 receives an execution instruction from the copy source virtual machine search unit 1021, and in accordance with the processing procedure shown in FIG. Search processing based on usage is executed from the virtual machine 20211.
 まず、用途検索部10211は、仮想計算機イメージ管理テーブル10302を参照して、用途検索画面M1101において入力された用途及びOS名を含む行を検索する。そして用途検索部10211は、検索した結果得られた行を仮想計算機イメージ管理テーブル10302から抽出する(S1001)。 First, the usage search unit 10211 searches the row including the usage and OS name input on the usage search screen M1101 with reference to the virtual machine image management table 10302. Then, the usage search unit 10211 extracts a row obtained as a result of the search from the virtual machine image management table 10302 (S1001).
 次いで、用途検索部10211は、検索結果リスト1025及び初期化情報リスト1026に新たに行を作成し、作成した行の仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255及び用途欄10256の各欄に、ステップS1001で抽出した行に含まれる仮想計算機名、ユーザ名、組織名、OS名及び用途のそれぞれを格納して(S1002)、本処理を終了する。 Next, the usage search unit 10211 creates a new row in the search result list 1025 and the initialization information list 1026, and the virtual machine name column 10251, user name column 10253, organization name column 10254, and OS name column 10255 of the created row. The virtual machine name, the user name, the organization name, the OS name, and the usage included in the row extracted in step S1001 are stored in the respective fields of the and usage column 10256 (S1002), and this processing is terminated.
 図15は、複製元仮想計算機検索部1021からの実行指示を受け付けたプログラムライセンス確認部10214により行われるライセンス確認処理の処理手順を示す。複製元仮想計算機検索部1021は、図11の用途検索画面M1101の検索ボタンM1104が押下されると、上述した図14に示す検索処理の実行を用途検索部10211に指示するとともに、プログラムライセンス確認部10214にプログラムライセンス確認処理の実行を指示する。プログラムライセンス確認部10214は、複製元仮想計算機検索部1021からのプログラムライセンス確認処理の実行指示を受け付けると、この図15に示す処理手順に従って、図14に示す検索処理により検索結果として得られた複製元の仮想計算機20211について、ライセンス上利用可能なプログラムと、ライセンス上利用不可能なプログラムとを抽出する処理を実行する。 FIG. 15 shows a processing procedure of a license confirmation process performed by the program license confirmation unit 10214 that has received an execution instruction from the replication source virtual machine search unit 1021. When the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the copy source virtual machine search unit 1021 instructs the use search unit 10211 to execute the above-described search processing shown in FIG. An instruction to execute program license confirmation processing is issued to 10214. When the program license confirmation unit 10214 receives an instruction to execute the program license confirmation process from the copy source virtual machine search unit 1021, the copy license obtained as a search result by the search process shown in FIG. 14 according to the process procedure shown in FIG. For the original virtual machine 20211, a process of extracting a program that can be used on the license and a program that cannot be used on the license is executed.
 まず、プログラムライセンス確認部10214は、利用プログラム管理テーブル10303(図6B参照)を参照して、仮想計算機名欄103031に格納されている仮想計算機名と検索結果リスト1025の仮想計算機名欄10251に格納されている仮想計算機名とが一致する行を利用プログラム管理テーブル10303から抽出する。そしてプログラムライセンス確認部10214は、利用プログラム管理テーブル10303から抽出した行のプログラムID一覧欄103032に格納されている利用可能なプログラムを初期化情報リスト1026の利用プログラム一覧欄10262に格納する(S1011)。 First, the program license confirmation unit 10214 refers to the used program management table 10303 (see FIG. 6B) and stores the virtual machine name stored in the virtual machine name field 103031 and the virtual machine name field 10251 of the search result list 1025. A row that matches the virtual machine name that has been extracted is extracted from the use program management table 10303. Then, the program license confirmation unit 10214 stores the available programs stored in the program ID list column 103032 in the row extracted from the used program management table 10303 in the used program list column 10262 of the initialization information list 1026 (S1011). .
 次いで、プログラムライセンス確認部10214は、プログラムライセンス管理テーブル10304(図7参照)を参照して、プログラムID欄103041に格納されているプログラムのIDと初期化情報リスト1026の利用プログラム一覧欄10262に格納されているプログラムのIDとが一致する行をプログラムライセンス管理テーブル10304から抽出する。そしてプログラムライセンス確認部10214は、プログラムライセンス管理テーブル10304から抽出した行のライセンス形態欄103042に格納されたライセンス形態の情報を参照して、ステップS1011で利用プログラム一覧欄10262に格納したIDのプログラムがライセンス上利用可能であるか否か判断する(S1012)。 Next, the program license confirmation unit 10214 refers to the program license management table 10304 (see FIG. 7) and stores the program ID stored in the program ID column 103041 and the used program list column 10262 of the initialization information list 1026. A row that matches the ID of the registered program is extracted from the program license management table 10304. Then, the program license confirmation unit 10214 refers to the license form information stored in the license form column 103042 of the row extracted from the program license management table 10304, and the program of the ID stored in the used program list field 10262 in step S1011 is stored. It is determined whether the license is available (S1012).
 具体的には、ステップS1012において、プログラムライセンス確認部10214は、プログラムライセンス管理テーブル10304から抽出した行のライセンス形態欄103042に格納されているライセンス形態がフリーソフトの場合、利用プログラム一覧欄10262に格納したIDのプログラムはライセンス上利用可能なプログラムであると判断する。 Specifically, in step S1012, if the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is free software, the program license confirmation unit 10214 stores it in the used program list field 10262. It is determined that the program with the ID is a program that can be used for license.
 また、ステップS1012において、プログラムライセンス確認部10214は、プログラムライセンス管理テーブル10304から抽出した行のライセンス形態欄103042に格納されているライセンス形態がボリュームライセンスの場合であって、かつ、セットアップ数欄103043に格納されているセットアップ数が所有ライセンス数欄103044に格納された所有ライセンス数以下である場合、利用プログラム一覧欄10262に格納したIDのプログラムはライセンス上利用可能なプログラムであると判断し、セットアップ数が所有ライセンス数より多い場合、利用プログラム一覧欄10262に格納したIDのプログラムはライセンス上利用不可能なプログラムであると判断する。 In step S1012, the program license confirmation unit 10214 indicates that the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is a volume license and the setup number field 103043 If the number of setups stored is less than or equal to the number of owned licenses stored in the owned license number column 103044, it is determined that the program with the ID stored in the used program list column 10262 is a program that can be used for the license, and the number of setups Is greater than the number of owned licenses, it is determined that the program with the ID stored in the used program list column 10262 is an unusable program in terms of license.
 また、ステップS1012において、プログラムライセンス確認部10214は、プログラムライセンス管理テーブル10304から抽出した行のライセンス形態欄103042に格納されているライセンス形態がサイトライセンスの場合、利用プログラム一覧欄10262に格納したIDのプログラムはライセンス上利用可能なプログラムであると判断する。なお上述したフリーソフト、ボリュームライセンス及びサイトライセンスは、ライセンス形態の一例として示したものである。仮想計算機提供システム1Aは、上述したライセンス以外のライセンス形態を採用するプログラムを扱う場合もある。 In step S1012, if the license form stored in the license form column 103042 in the row extracted from the program license management table 10304 is a site license, the program license confirmation unit 10214 uses the ID stored in the used program list field 10262. It is determined that the program is a program that can be used under a license. The above-mentioned free software, volume license, and site license are shown as examples of license forms. The virtual machine providing system 1A may handle a program that adopts a license form other than the license described above.
 プログラムライセンス確認部10214は、ステップS1012の判断で肯定結果を得ると、ライセンス上利用可能なプログラムのIDを初期化情報リスト1026の複製可能プログラム一覧欄10266に格納する(S1013)。 When the program license confirmation unit 10214 obtains a positive result in the determination at step S1012, the program license confirmation unit 10214 stores the ID of the program available for use in the license in the duplicatable program list column 10266 of the initialization information list 1026 (S1013).
 これに対し、プログラムライセンス確認部10214は、ステップS1012の判断で否定結果を得ると、ライセンス上利用不可能なプログラムのIDを初期化情報リスト1026の複製不可プログラム一覧欄10267に格納する(S1014)。 On the other hand, when the program license confirmation unit 10214 obtains a negative result in the determination at step S1012, the program license confirmation unit 10214 stores the ID of the program that cannot be used in the license in the non-duplicatable program list column 10267 of the initialization information list 1026 (S1014). .
 プログラムライセンス確認部10214は、検索結果リスト1025及び初期化情報リスト1026の全ての行について、上述してきたステップS1011~S1014までの処理を行ったか否か判断する(S1015)。 The program license confirmation unit 10214 determines whether or not the above-described steps S1011 to S1014 have been performed on all the rows of the search result list 1025 and the initialization information list 1026 (S1015).
 プログラムライセンス確認部10214は、この判断で肯定結果を得ると、本処理を終了する。これに対し、プログラムライセンス確認部10214は、この判断で否定結果を得ると、他の行についても上述してきたステップS1011~S1014の処理を行い、全ての行について上述のステップS1011~S1014の処理を行った後、本処理を終了する。 If the program license confirmation unit 10214 obtains an affirmative result in this determination, it ends this processing. On the other hand, when the program license confirmation unit 10214 obtains a negative result in this determination, it performs the processing of steps S1011 to S1014 described above for other rows, and performs the processing of steps S1011 to S1014 described above for all rows. After the execution, this process is terminated.
 図16は、複製元仮想計算機検索部1021により行われる特徴プログラム抽出処理の処理手順を示す。複製元仮想計算機検索部1021は、図11の用途検索画面M1101の検索ボタンM1104が押下されると、上述した図14に示す検索処理及び図15に示すライセンス確認処理を行うとともに、この図16に示す処理を行う。具体的には、複製元仮想計算機検索部1021は、この図16に示す処理手順に従って、図14に示す検索処理により検索結果として得られた複数の複製元の仮想計算機20211について、特徴的なプログラムを抽出する処理を実行する。 FIG. 16 shows a processing procedure of the feature program extraction process performed by the copy source virtual machine search unit 1021. When the search button M1104 on the usage search screen M1101 in FIG. 11 is pressed, the duplication source virtual machine search unit 1021 performs the above-described search process shown in FIG. 14 and the license confirmation process shown in FIG. Perform the process shown. Specifically, the duplication source virtual machine search unit 1021 performs a characteristic program for a plurality of duplication source virtual machines 20211 obtained as search results by the search processing shown in FIG. 14 according to the processing procedure shown in FIG. Execute the process to extract.
 まず、複製元仮想計算機検索部1021は、図14の処理により作成した初期化情報リスト1026の各行において、複製可能プログラム一覧欄10266に格納されている複製可能プログラムのIDと不要プログラム一覧欄10269に格納されている不要プログラムのIDとの差分を算出する。不要プログラム一覧欄10269に不要プログラムを格納する処理については、後述する(図20参照)。そして複製元仮想計算機検索部1021は、算出した差分を初期化情報リスト1026の特徴プログラム一覧欄10263に格納する(S1021)。 First, the copy source virtual machine search unit 1021 stores the copyable program ID stored in the copyable program list column 10266 and the unnecessary program list column 10269 in each row of the initialization information list 1026 created by the processing of FIG. The difference from the stored unnecessary program ID is calculated. Processing for storing unnecessary programs in the unnecessary program list column 10269 will be described later (see FIG. 20). Then, the replication source virtual machine search unit 1021 stores the calculated difference in the feature program list column 10263 of the initialization information list 1026 (S1021).
 次いで、複製元仮想計算機検索部1021は、不足プログラム一覧欄10265に格納されている不足プログラムのIDを特徴プログラム一覧欄10263に格納する(S1022)。 Next, the copy source virtual machine search unit 1021 stores the ID of the missing program stored in the missing program list column 10265 in the feature program list column 10263 (S1022).
 不足プログラム一覧欄10265に不足プログラムを格納する処理については、後述する(図20参照)。 The process of storing the missing program in the missing program list column 10265 will be described later (see FIG. 20).
 次いで、複製元仮想計算機検索部1021は、初期化情報リスト1026の各行において、特徴プログラム一覧欄10263に格納されているIDのうち、他の行の特徴プログラム一覧欄10263にも格納されているIDを抽出する。複製元仮想計算機検索部1021は、抽出したIDを共通プログラム一覧欄10264に格納する(S1023)。 Next, the replication source virtual machine search unit 1021 has the ID stored in the feature program list column 10263 of another row among the IDs stored in the feature program list column 10263 in each row of the initialization information list 1026. To extract. The replication source virtual machine search unit 1021 stores the extracted ID in the common program list column 10264 (S1023).
 そして、複製元仮想計算機検索部1021は、初期化情報リスト1026の各行において、特徴プログラム一覧欄10263に格納されているIDから共通プログラム一覧欄10264に格納されているIDを削除する(S1024)。 Then, the copy source virtual machine search unit 1021 deletes the ID stored in the common program list column 10264 from the ID stored in the feature program list column 10263 in each row of the initialization information list 1026 (S1024).
 以上の処理により、複製元仮想計算機検索部1021は、初期化情報リスト1026の全ての行について、特徴プログラム一覧欄10263に特徴プログラムのIDを格納することができる。 Through the above processing, the copy source virtual machine search unit 1021 can store the feature program IDs in the feature program list column 10263 for all rows of the initialization information list 1026.
 図17は、複製元仮想計算機検索部1021により行われる要求満足度抽出処理の処理手順を示す。複製元仮想計算機検索部1021は、図11の用途検索画面M1101の検索ボタンM1104が押下されると、上述した図14に示す検索処理、図15に示すライセンス確認処理及び図16に示す特徴プログラム抽出処理を行うとともに、この図17に示す処理を行う。具体的には、複製元仮想計算機検索部1021は、この図17に示す処理に従って、図14に示す検索処理により検索結果として得られた複数の複製元の仮想計算機20211について、ユーザの要求に対する満足度を抽出する処理を実行する。 FIG. 17 shows a processing procedure of request satisfaction degree extraction processing performed by the replication source virtual machine search unit 1021. When the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the copy source virtual machine search unit 1021 searches the search process shown in FIG. 14, the license confirmation process shown in FIG. 15, and the feature program extraction shown in FIG. In addition to processing, the processing shown in FIG. 17 is performed. Specifically, the copy source virtual machine search unit 1021 satisfies the user's request with respect to a plurality of copy source virtual machines 20211 obtained as search results by the search process shown in FIG. 14 according to the process shown in FIG. Execute the process to extract the degree.
 まず、複製元仮想計算機検索部1021は、プログラム名に基づく検索であるか否かを判断する(S1031)。 First, the replication source virtual machine search unit 1021 determines whether or not the search is based on a program name (S1031).
 なお、ここでは用途検索部10211により用途に基づく検索が行われる場合について説明しているため、複製元仮想計算機検索部1021は否定結果を得ることになる。またユーザ名及び組織名に基づく検索の場合も同様に、複製元仮想計算機検索部1021は否定結果を得ることになる。プログラム名に基づく検索の場合、複製元仮想計算機検索部1021は肯定結果を得ることになる。 In addition, since the case where the search based on the application is performed by the application search unit 10211 is described here, the replication source virtual machine search unit 1021 obtains a negative result. Similarly, in the case of a search based on the user name and the organization name, the duplication source virtual machine search unit 1021 obtains a negative result. In the case of a search based on the program name, the duplication source virtual machine search unit 1021 obtains a positive result.
 複製元仮想計算機検索部1021は、ステップS1031の判断で否定結果を得ると、初期化情報リスト1026の複製可能プログラム一覧欄10266に格納されている複製可能プログラムのIDの個数を利用プログラム一覧欄10262に格納されている利用プログラムのIDの個数で割り、得られた値に数字の100を掛けて要求満足度を算出する。複製元仮想計算機検索部1021は、算出した要求満足度を検索結果リスト1025の要求満足度欄10258に格納して(S1033)、本処理を終了する。 When the duplication source virtual machine search unit 1021 obtains a negative result in the determination at step S1031, the duplication source program ID column 10266 of the initialization information list 1026 uses the number of duplication program IDs stored in the usage program list column 10262. Is divided by the number of IDs of the utilization programs stored in the table, and the required value is calculated by multiplying the obtained value by the number 100. The replication source virtual machine search unit 1021 stores the calculated request satisfaction degree in the request satisfaction degree column 10258 of the search result list 1025 (S1033), and ends this process.
 これに対し、複製元仮想計算機検索部1021は、ステップS1031の判断で肯定結果を得ると、プログラム名に基づく検索であると判断し、初期化情報リスト1026の複製可能プログラム一覧欄10266に格納されている複製可能プログラムのIDの個数と、不要プログラム一覧欄10269に格納されている不要プログラムのIDの個数との差分を算出する。そして複製元仮想計算機検索部1021は、算出した差分を必要プログラム一覧欄10268に格納されている必要プログラムのIDの個数で割り、得られた値に数字の100を掛けて要求満足度を算出する。複製元仮想計算機検索部1021は、算出した要求満足度を検索結果リスト1025の要求満足度欄10258に格納して(S1032)、本処理を終了する。 On the other hand, if the copy source virtual machine search unit 1021 obtains a positive result in the determination in step S1031, the copy source virtual computer search unit 1021 determines that the search is based on the program name, and is stored in the copyable program list column 10266 of the initialization information list 1026. The difference between the number of copyable program IDs and the number of unnecessary program IDs stored in the unnecessary program list column 10269 is calculated. Then, the copy source virtual machine search unit 1021 divides the calculated difference by the number of IDs of the necessary programs stored in the necessary program list column 10268 and multiplies the obtained value by the number 100 to calculate the required satisfaction level. . The replication source virtual machine search unit 1021 stores the calculated request satisfaction level in the request satisfaction level column 10258 of the search result list 1025 (S1032), and ends this processing.
 図18は、複製元仮想計算機検索部1021により行われるコスト算出処理の処理手順を示す。複製元仮想計算機検索部1021は、図11の用途検索画面M1101の検索ボタンM1104が押下されると、この図18に示す処理を行う。具体的には、複製元仮想計算機検索部1021は、この図18に示す処理に従って、図14に示す検索処理により検索結果として得られた複数の複製元の仮想計算機20211から新規の仮想計算機20211Aを作成した場合に必要なコストを算出する処理を実行する。 FIG. 18 shows a processing procedure of a cost calculation process performed by the copy source virtual machine search unit 1021. When the search button M1104 on the use search screen M1101 in FIG. 11 is pressed, the copy source virtual machine search unit 1021 performs the processing shown in FIG. Specifically, the replication source virtual machine search unit 1021 obtains a new virtual machine 20211A from a plurality of replication source virtual machines 20211 obtained as a search result by the search process shown in FIG. 14 according to the process shown in FIG. Execute processing to calculate the cost required for creation.
 まず、複製元仮想計算機検索部1021は、初期化情報リスト1026を参照して、複製可能プログラム一覧欄10266に格納されている複製可能プログラムのIDと、不要プログラム一覧欄10269に格納されている不要プログラムのIDとの差分を算出する。次いで複製元仮想計算機検索部1021は、プログラムライセンス管理テーブル10304を参照して、プログラムID欄103041に格納されているIDと、算出した差分のIDとが一致する行をプログラムライセンス管理テーブル10304から抽出する。次いで、複製元仮想計算機検索部1021は、抽出した行のライセンスコスト欄103045に格納されているライセンスコストを検索結果リスト1025のコスト欄10257に格納する(S1041)。 First, the copy source virtual machine search unit 1021 refers to the initialization information list 1026 and refers to the ID of the copyable program stored in the copyable program list column 10266 and the unnecessary program list stored in the unnecessary program list column 10269. The difference from the program ID is calculated. Next, the replication source virtual machine search unit 1021 refers to the program license management table 10304 and extracts from the program license management table 10304 a row in which the ID stored in the program ID column 103041 matches the calculated difference ID. To do. Next, the replication source virtual machine search unit 1021 stores the license cost stored in the license cost column 103045 of the extracted row in the cost column 10257 of the search result list 1025 (S1041).
 次いで、複製元仮想計算機検索部1021は、予め定められた課金額を検索結果リスト1025のコスト欄10257に格納する(S1042)。 Next, the replication source virtual machine search unit 1021 stores a predetermined charge amount in the cost column 10257 of the search result list 1025 (S1042).
 なお、ステップS1042で格納するか金額は、仮想計算機を提供するサービス全体で一定としてもよいし、仮想計算機の構成(仮想CPUの個数、メモリ容量又はストレージ容量等)により変更してもよい。 Note that the amount stored in step S1042 or the amount of money may be constant for the entire service providing the virtual machine, or may be changed depending on the configuration of the virtual machine (number of virtual CPUs, memory capacity, storage capacity, etc.).
 以上の処理(図14~図18参照)により、検索結果リスト1025及び初期化情報リスト1026の各欄に各種情報を格納することができる。よって複製元仮想計算機検索部1021は、図11の用途検索画面M1101の検索ボタンM1104が押下された場合、検索結果リスト1025及び初期化情報リスト1026の各欄に格納した各種情報に基づいて、検索結果を検索結果表示フィールドM1105に表示することができる。 Through the above processing (see FIGS. 14 to 18), various information can be stored in each column of the search result list 1025 and the initialization information list 1026. Therefore, when the search button M1104 on the usage search screen M1101 in FIG. 11 is pressed, the duplication source virtual machine search unit 1021 performs a search based on various information stored in each column of the search result list 1025 and the initialization information list 1026. The result can be displayed in the search result display field M1105.
 図19は、複製元仮想計算機検索部1021からの実行指示を受け付けたユーザ名組織名検索部10212により行われるユーザ名組織名検索処理の処理手順を示す。ユーザ名組織名検索部10212は、図12のユーザ名組織名検索画面M1201の検索ボタンM1204が押下されると複製元仮想計算機検索部1021からの実行指示を受け付け、この図19に示す処理手順に従って、複数の複製元の仮想計算機20211からユーザ名組織名に基づく検索処理を実行する。 FIG. 19 shows a processing procedure of user name / organization name search processing performed by the user name / organization name search unit 10212 that has received an execution instruction from the copy source virtual computer search unit 1021. When the search button M1204 on the user name / organization name search screen M1201 in FIG. 12 is pressed, the user name / organization name search unit 10212 receives an execution instruction from the copy source virtual machine search unit 1021 and follows the processing procedure shown in FIG. Then, search processing based on the user name and organization name is executed from a plurality of copy source virtual machines 20211.
 まず、ユーザ名組織名検索部10212は、仮想計算機イメージ管理テーブル10302を参照して、ユーザ名組織名検索画面M1201において入力されたユーザ名及び組織名を含む行を検索する。そしてユーザ名組織名検索部10212は、検索した結果得られた行を仮想計算機イメージ管理テーブル10302から抽出する(S1051)。 First, the user name / organization name search unit 10212 refers to the virtual machine image management table 10302 and searches for a line including the user name and the organization name input on the user name / organization name search screen M1201. The user name / organization name search unit 10212 extracts a row obtained as a result of the search from the virtual machine image management table 10302 (S1051).
 次いで、ユーザ名組織名検索部10212は、検索結果リスト1025及び初期化情報リスト1026に新たに行を作成し、作成した行の仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255及び用途欄10256の各欄に、ステップS1001で抽出した行に含まれる仮想計算機名、ユーザ名、組織名、OS名及び用途のそれぞれを格納して(S1052)、本処理を終了する。 Next, the user name / organization name search unit 10212 creates a new row in the search result list 1025 and the initialization information list 1026, and the virtual machine name column 10251, user name column 10253, organization name column 10254, OS of the created row. The virtual machine name, user name, organization name, OS name, and usage included in the row extracted in step S1001 are stored in the name column 10255 and the usage column 10256 (S1052), and this processing ends. .
 複製元仮想計算機検索部1021により、検索結果リスト1025及び初期化情報リスト1026の各欄に各種情報を格納する処理については、上述した図15~図18の処理と同様であるため、ここでの説明は省略する。 The process of storing various types of information in the respective columns of the search result list 1025 and the initialization information list 1026 by the copy source virtual machine search unit 1021 is the same as the process of FIGS. 15 to 18 described above. Description is omitted.
 以上の処理により(図19及び図15~図18参照)、検索結果リスト1025及び初期化情報リスト1026の各欄に各種情報を格納することができる。よって複製元仮想計算機検索部1021は、図12のユーザ名組織名検索画面M1201の検索ボタンM1204が押下された場合、検索結果リスト1025及び初期化情報リスト1026の各欄に格納した各種情報に基づいて、検索結果を検索結果表示フィールドM1205に表示することができる。 Through the above processing (see FIGS. 19 and 15 to 18), various types of information can be stored in each column of the search result list 1025 and the initialization information list 1026. Therefore, when the search button M1204 of the user name / organization name search screen M1201 in FIG. 12 is pressed, the copy source virtual machine search unit 1021 is based on various information stored in each column of the search result list 1025 and the initialization information list 1026. Thus, the search result can be displayed in the search result display field M1205.
 図20は、複製元仮想計算機検索部1021からの実行指示を受け付けたプログラム名検索部10213により行われるプログラム名検索処理の処理手順を示す。プログラム名検索部10213は、図13のプログラム名検索画面M1301の検索ボタンM1303が押下されると複製元仮想計算機検索部1021からの実行指示を受け付け、この図20に示す処理手順に従って、複数の複製元の仮想計算機20211からプログラム名に基づく検索処理を実行する。 FIG. 20 shows a processing procedure of a program name search process performed by the program name search unit 10213 that has received an execution instruction from the copy source virtual machine search unit 1021. When the search button M1303 on the program name search screen M1301 in FIG. 13 is pressed, the program name search unit 10213 receives an execution instruction from the copy source virtual machine search unit 1021 and, according to the processing procedure shown in FIG. Search processing based on the program name is executed from the original virtual machine 20211.
 まず、プログラム名検索部10213は、プログラム名検索画面M1301において入力されたプログラム名及びバージョン条件の情報を受け付けると、利用プログラム管理テーブル10303(図6B参照)及びプログラム管理テーブル10301(図5参照)を参照して、受け付けたプログラム名及びバージョン条件を満たすプログラムを含む仮想計算機20211を検索し、検索により得られた仮想計算機20211を含む行を仮想計算機イメージ管理テーブル10302(図6A参照)から抽出する。そしてプログラム名検索部10213は、検索結果リスト1025(図4A参照)に新たに行を作成し、作成した行における仮想計算機名欄10251、ユーザ名欄10253、組織名欄10254、OS名欄10255及び用途欄10256の各欄に、仮想計算機イメージ管理テーブル10302から抽出した行の仮想計算機名、ユーザ名、組織名、OS名及び用途の情報をそれぞれ格納する。次いでプログラム名検索部10213は、初期化情報リスト1026(図4B参照)に新たに行を作成する。初期化情報リスト1026に新たに作成した行の各欄に各種情報を格納する処理については後述する。プログラム名検索部10213は、初期化情報リスト1026に新たに作成した行の行番号欄10261に格納した行番号を上述の検索結果リスト1025の新たに作成した行の環境初期化情報欄10252に格納する(S1501)。 First, when receiving the program name and version condition information input on the program name search screen M1301, the program name search unit 10213 reads the used program management table 10303 (see FIG. 6B) and the program management table 10301 (see FIG. 5). The virtual machine 20211 including the program that satisfies the received program name and version condition is searched for, and a row including the virtual machine 20211 obtained by the search is extracted from the virtual machine image management table 10302 (see FIG. 6A). The program name search unit 10213 creates a new line in the search result list 1025 (see FIG. 4A), and the virtual machine name column 10251, user name column 10253, organization name column 10254, OS name column 10255, and The virtual machine name, user name, organization name, OS name, and usage information of the row extracted from the virtual machine image management table 10302 are stored in each field of the usage field 10256, respectively. Next, the program name search unit 10213 creates a new line in the initialization information list 1026 (see FIG. 4B). Processing for storing various information in each column of the newly created line in the initialization information list 1026 will be described later. The program name search unit 10213 stores the line number stored in the line number column 10261 of the newly created line in the initialization information list 1026 in the environment initialization information column 10252 of the newly created line in the search result list 1025 described above. (S1501).
 次いで、プログラム名検索部10213は、プログラムライセンス確認部10214を実行する。プログラムライセンス確認部10214は、プログラム名検索部10213から実行指示を受け付けると、プログラムライセンス管理テーブル10304(図7参照)を参照して、複製元の仮想計算機20211に含まれるプログラムのうち、ライセンス上利用可能なプログラム及びライセンス上利用不可能なプログラムを抽出する。そしてプログラムライセンス確認部10214は、初期化情報リスト1026の複製可能プログラム一覧欄10266及び複製不可プログラム一覧欄10267の各欄に、抽出したライセンス上利用可能なプログラムのID及びライセンス上利用不可能なプログラムのIDをそれぞれ格納する(S1502)。 Next, the program name search unit 10213 executes the program license confirmation unit 10214. When the program license confirmation unit 10214 receives an execution instruction from the program name search unit 10213, the program license confirmation unit 10214 refers to the program license management table 10304 (see FIG. 7), and uses the program license among the programs included in the virtual machine 20211 that is the copy source. Extract possible programs and programs that cannot be used under license. Then, the program license confirmation unit 10214 displays the ID of the program that can be used on the extracted license and the program that cannot be used on the license in each column of the duplicatable program list column 10266 and the non-duplicatable program list column 10267 of the initialization information list 1026. Are stored respectively (S1502).
 次いで、プログラム名検索部10213は、必要プログラム一覧作成部1024を実行する。必要プログラム一覧作成部1024は、プログラム名検索部10213からの実行指示を受け付けると、依存関係管理テーブル10308(図8参照)及びプログラム管理テーブル10301(図3参照)を参照して、ユーザが検索条件に指定したプログラム名のプログラム及びこのプログラムが動作するために必要なプログラムを抽出する。そして必要プログラム一覧作成部1024は、抽出したプログラムのIDを初期化情報リスト1026の必要プログラム一覧欄10268に格納する(S1503)。 Next, the program name search unit 10213 executes the necessary program list creation unit 1024. Upon receiving an execution instruction from the program name search unit 10213, the necessary program list creation unit 1024 refers to the dependency management table 10308 (see FIG. 8) and the program management table 10301 (see FIG. 3), and allows the user to perform a search condition. The program having the program name specified in the above and the program necessary for this program to operate are extracted. The necessary program list creation unit 1024 stores the extracted program ID in the necessary program list column 10268 of the initialization information list 1026 (S1503).
 次いで、プログラム名検索部10213は、初期化情報リスト1026を参照して、複製可能プログラム一覧欄10266に格納された複製可能プログラムのIDが必要プログラム一覧欄10268に含まれているか否か判断する(S1504)。 Next, the program name search unit 10213 refers to the initialization information list 1026 and determines whether or not the ID of the duplicatable program stored in the duplicatable program list column 10266 is included in the necessary program list column 10268 ( S1504).
 プログラム名検索部10213は、この判断で否定結果を得ると、複製可能プログラムであって必要プログラムではないこのIDのプログラムを不要プログラムと判断し、この不要プログラムのIDを不要プログラム一覧欄10269に格納する(S1505)。 When the program name search unit 10213 obtains a negative result in this determination, it determines that the program with this ID that is a duplicatable program and is not a necessary program is an unnecessary program, and stores the ID of this unnecessary program in the unnecessary program list column 10269. (S1505).
 これに対し、プログラム名検索部10213は、ステップS1503の判断で肯定結果を得ると、必要プログラム一覧欄10268に格納された必要プログラムのIDが複製可能プログラム一覧欄10266に含まれるか否か判断する(S1506)。 On the other hand, when the program name search unit 10213 obtains a positive result in the determination in step S1503, the program name search unit 10213 determines whether the ID of the necessary program stored in the necessary program list column 10268 is included in the duplicatable program list column 10266. (S1506).
 プログラム名検索部10213は、この判断で否定結果を得ると、必要プログラムであって複製可能プログラムではないこのIDのプログラムを不足プログラムと判断し、この不足プログラムのIDを不足プログラム一覧欄10265に格納する(S1507)。 When the program name search unit 10213 obtains a negative result in this determination, it determines that the program with this ID that is a necessary program and is not a copyable program is a deficient program, and stores the ID of this deficient program in the deficient program list column 10265. (S1507).
 これに対し、プログラム名検索部10213は、ステップS1506の判断で肯定結果を得ると、ステップS1501において検索結果リスト1025及び初期化情報リスト1026に新たに作成した全ての行について、上述してきたステップS1502~S1507までの処理を行ったか否か判断する(S1508)。 In contrast, when the program name search unit 10213 obtains a positive result in the determination at step S1506, step S1502 described above is performed for all the rows newly created in the search result list 1025 and the initialization information list 1026 at step S1501. It is determined whether the processes up to S1507 have been performed (S1508).
 プログラム名検索部10213は、この判断で肯定結果を得ると、本処理を終了する。これに対し、プログラム名検索部10213は、この判断で否定結果を得ると、他の行についても上述してきたステップS1502~S1507の処理を行い、全ての行について上述のステップS1502~S1507の処理を終えると、本処理を終了する。 If the program name search unit 10213 obtains a positive result in this determination, it ends this processing. On the other hand, if the program name search unit 10213 obtains a negative result in this determination, it performs the above-described steps S1502 to S1507 for the other rows, and performs the above-described steps S1502 to S1507 for all the rows. When finished, this process ends.
 複製元仮想計算機検索部1021により、検索結果リスト1025及び初期化情報リスト1026の他の欄に各種情報を格納する処理については、上述した図15~図18の処理と同様であるため、ここでの説明は省略する。 The process of storing various types of information in the other columns of the search result list 1025 and the initialization information list 1026 by the copy source virtual machine search unit 1021 is the same as the process of FIGS. 15 to 18 described above. Description of is omitted.
 以上の処理により(図20及び図15~図18参照)、検索結果リスト1025及び初期化情報リスト1026の各欄に各種情報を格納することができる。よって複製元仮想計算機検索部1021は、図13のプログラム名検索画面M1301の検索ボタンM1303が押下された場合、検索結果リスト1025及び初期化情報リスト1026の各欄に格納した各種情報に基づいて、検索結果を検索結果表示フィールドM1304に表示することができる。 Through the above processing (see FIGS. 20 and 15 to 18), various types of information can be stored in each column of the search result list 1025 and the initialization information list 1026. Therefore, when the search button M1303 on the program name search screen M1301 in FIG. 13 is pressed, the copy source virtual machine search unit 1021 is based on various information stored in each column of the search result list 1025 and the initialization information list 1026. The search result can be displayed in the search result display field M1304.
 図21は、複製仮想計算機環境初期化部10231の仮想計算機データ変更部102313により行われるデータ変更処理の処理手順を示す。複製仮想計算機環境初期化部10231は、図11の用途検索画面M1101、図12のユーザ名組織名検索画面M1201又は図13のプログラム名検索画面M1301の画面において、複製元の仮想計算機20211が選択され、新規の仮想計算機20211Aの仮想計算機名、ユーザ名、組織名及び用途が入力された後、仮想計算機複製初期化ボタンM1107、M1207又はM1306が押下されると、複製元の仮想計算機20211を複製するとともに、複製した新規の仮想計算機20211Aに含まれるユーザ固有データM1003、組織固有データM1004及びマシン固有データM1005の削除又は変更を仮想計算機データ変更部102313に指示する。仮想計算機データ変更部102313は、複製仮想計算機環境初期化部10231からの削除又は変更指示を受け付けると、この図20に示す処理手順に従って、複製直後の新規の仮想計算機20211Aに格納されているユーザ固有データM1003、組織固有データM1004及びマシン固有データM1005の削除又は変更する処理を実行する。 FIG. 21 shows a processing procedure of data change processing performed by the virtual machine data change unit 102313 of the duplicate virtual machine environment initialization unit 10231. The duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied. At the same time, the virtual machine data changing unit 102313 is instructed to delete or change the user unique data M1003, the organization unique data M1004, and the machine unique data M1005 included in the copied new virtual machine 20211A. When the virtual machine data change unit 102313 receives a deletion or change instruction from the duplicate virtual machine environment initialization unit 10231, the virtual machine data change unit 102313 stores the user-specific information stored in the new virtual machine 20211A immediately after duplication according to the processing procedure shown in FIG. Processing for deleting or changing the data M1003, the organization-specific data M1004, and the machine-specific data M1005 is executed.
 まず、仮想計算機データ変更部102313は、初期化情報リスト1026の利用プログラム一覧欄10262及びユーザ固有データ管理テーブル10305のプログラムID欄103051を参照して、利用プログラム一覧欄10262に格納されているIDとプログラムID欄103051に格納されているIDとが一致する行をユーザ固有データ管理テーブル10305から抽出する。同様に、仮想計算機データ変更部102313は、初期化情報リスト1026の利用プログラム一覧欄10262及び組織固有データ管理テーブル10306のプログラムID欄103061を参照して、IDが一致する行を組織固有データ管理テーブル10306から抽出する。また同様に、仮想計算機データ変更部102313は、初期化情報リスト1026の利用プログラム一覧欄10262及びマシン固有データ管理テーブル10307のプログラムID欄103071を参照して、IDが一致する行をマシン固有データ管理テーブル10307から抽出する。そして仮想計算機データ変更部102313は、ユーザ固有データの削除、組織固有データの変更及びマシン固有データの変更を行うため、ユーザ固有データ管理テーブル10305、組織固有データ管理テーブル10306及びマシン固有データ管理テーブル10307からそれぞれ抽出した行を参照し、ユーザ固有データ、組織固有データ及びマシン固有データのデータ形式がディレクトリ又はファイルであるか、又はファイルの一部であるかを判断する(S1601)。 First, the virtual machine data changing unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103051 of the user-specific data management table 10305, and the ID stored in the used program list column 10262. A line that matches the ID stored in the program ID column 103051 is extracted from the user-specific data management table 10305. Similarly, the virtual machine data changing unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103061 of the organization specific data management table 10306, and selects a row having the same ID as the organization specific data management table. 10306 is extracted. Similarly, the virtual machine data change unit 102313 refers to the used program list column 10262 of the initialization information list 1026 and the program ID column 103071 of the machine specific data management table 10307 to determine the line with the matching ID as the machine specific data management. Extract from table 10307. The virtual machine data change unit 102313 deletes user-specific data, changes organization-specific data, and changes machine-specific data. Therefore, the user-specific data management table 10305, the organization-specific data management table 10306, and the machine-specific data management table 10307 are used. Referring to the respective lines extracted from, it is determined whether the data format of the user-specific data, the organization-specific data, and the machine-specific data is a directory or a file or a part of the file (S1601).
 仮想計算機データ変更部102313は、ステップS1601においてデータ形式がディレクトリ又はファイルであるとの判断結果を得ると、ユーザ固有データ管理テーブル10305、組織固有データ管理テーブル10306及びマシン固有データ管理テーブル10307の各保管場所欄103054、103064及び103074を参照し、新規の仮想計算機20211Aのディレクトリ又はファイルを削除又は変更して(S1602)、本処理を終了する。 When the virtual machine data changing unit 102313 obtains the determination result that the data format is a directory or a file in step S1601, each storage of the user specific data management table 10305, the organization specific data management table 10306, and the machine specific data management table 10307 is stored. With reference to the location columns 103054, 103064, and 103074, the directory or file of the new virtual machine 20211A is deleted or changed (S1602), and this process ends.
 これに対し、仮想計算機データ変更部102313は、ステップS1601の判断においてデータ形式がファイルの一部であるとの判断結果を得ると、ユーザ固有データ管理テーブル10305、組織固有データ管理テーブル10306及びマシン固有データ管理テーブル10307の各保管場所欄103054、103064及び103074と、各記述欄103055、103065及び103075とを参照し、新規の仮想計算機20211Aのファイル内の記述を削除又は変更して(S1603)、本処理を終了する。 On the other hand, when the virtual machine data changing unit 102313 obtains the determination result that the data format is a part of the file in the determination in step S1601, the virtual machine data change unit 102313 and the machine-specific data management table 10306 and the machine-specific data The description in the file of the new virtual machine 20211A is deleted or changed by referring to the storage location columns 103054, 103064, and 103074 of the data management table 10307 and the description columns 103055, 103065, and 103075 (S1603). The process ends.
 次に、複製仮想計算機環境初期化部10231のプログラム削除部102312により行われるプログラム削除処理について説明する。複製仮想計算機環境初期化部10231は、図11の用途検索画面M1101、図12のユーザ名組織名検索画面M1201又は図13のプログラム名検索画面M1301の画面において、複製元の仮想計算機20211が選択され、新規の仮想計算機20211Aの仮想計算機名、ユーザ名、組織名及び用途が入力された後、仮想計算機複製初期化ボタンM1107、M1207又はM1306が押下されると、複製元の仮想計算機20211を複製するとともに、複製した新規の仮想計算機20211Aに含まれるプログラムのうち、ライセンス上利用不可能のプログラム及びユーザが要求したプログラムを動作させるために不要なプログラムについてプログラム削除処理の実行をプログラム削除部102312に指示する。プログラム削除部102312は、複製仮想計算機環境初期化部10231からのプログラム削除処理の実行指示を受け付けると、以下に説明する処理手順に従って、複製直後の新規の仮想計算機20211Aに格納されているプログラムを削除する処理を実行する。 Next, a program deletion process performed by the program deletion unit 102312 of the duplicate virtual machine environment initialization unit 10231 will be described. The duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied. At the same time, the program deletion unit 10212 is instructed to execute the program deletion processing for the programs included in the copied new virtual machine 20211A and programs unnecessary for the license and programs unnecessary for the user to operate. To do. Upon receiving an instruction to execute the program deletion process from the duplicate virtual machine environment initialization unit 10231, the program deletion unit 10212 deletes the program stored in the new virtual machine 20211A immediately after duplication according to the processing procedure described below. Execute the process.
 まず、プログラム削除部102312は、複製した新規の仮想計算機20211Aに関連付けられている初期化情報リスト1026を参照して、複製不可プログラム一覧欄10267に格納されているIDのプログラム及び不要プログラム一覧欄10269に格納されているIDのプログラムを複製した新規の仮想計算機20211Aから削除する。 First, the program deletion unit 102312 refers to the initialization information list 1026 associated with the copied new virtual machine 20211A and refers to the ID program and unnecessary program list column 10269 stored in the non-replicatable program list column 10267. Is deleted from the new virtual machine 20211A which is a duplicate of the program stored in ID.
 また、プログラム削除部102312は、利用プログラム一覧欄10262に格納されているIDのプログラムのうち、複製不可プログラム一覧欄10267に格納されているIDのプログラム及び不要プログラム一覧欄10269に格納されているIDのプログラムを初期化情報リスト1026から削除する。 In addition, the program deletion unit 102312 has an ID program stored in the non-duplicatable program list column 10267 and an ID stored in the unnecessary program list column 10269 among the programs with IDs stored in the used program list column 10262. Are deleted from the initialization information list 1026.
 次に、複製仮想計算機環境初期化部10231のプログラム追加部102311により行われるプログラム追加処理について説明する。複製仮想計算機環境初期化部10231は、図11の用途検索画面M1101、図12のユーザ名組織名検索画面M1201又は図13のプログラム名検索画面M1301の画面において、複製元の仮想計算機20211が選択され、新規の仮想計算機20211Aの仮想計算機名、ユーザ名、組織名及び用途が入力された後、仮想計算機複製初期化ボタンM1107、M1207又はM1306が押下されると、複製元の仮想計算機20211を複製するとともに、複製した新規の仮想計算機20211Aに含まれるプログラムのうち、ユーザが要求したプログラムを動作させるために必要なプログラムについてプログラム追加処理の実行をプログラム追加部102311に指示する。プログラム追加部102311は、複製仮想計算機環境初期化部10231からのプログラム追加処理の実行指示を受け付けると、以下に説明する処理手順に従って、複製直後の新規の仮想計算機20211Aに格納されているプログラムの追加処理を実行する。 Next, a program addition process performed by the program addition unit 102311 of the duplicate virtual machine environment initialization unit 10231 will be described. The duplicate virtual machine environment initialization unit 10231 selects the copy source virtual machine 20211 on the use search screen M1101 in FIG. 11, the user name organization name search screen M1201 in FIG. 12, or the program name search screen M1301 in FIG. After the virtual machine name, user name, organization name, and usage of the new virtual machine 20211A are input, when the virtual machine copy initialization button M1107, M1207, or M1306 is pressed, the copy source virtual machine 20211 is copied. At the same time, the program addition unit 102311 is instructed to execute the program addition process for a program necessary for operating the program requested by the user among the programs included in the copied new virtual machine 20211A. When the program addition unit 102311 receives an instruction to execute the program addition process from the duplicate virtual machine environment initialization unit 10231, the program addition unit 102311 adds a program stored in the new virtual machine 20211A immediately after duplication according to the processing procedure described below. Execute the process.
 まず、プログラム追加部102311は、プログラム管理テーブル10301のID欄103011及び新規の仮想計算機20211Aに関連付けされた初期化情報リスト1026の不足プログラム一覧欄10265を参照して、一致する行をプログラム管理テーブル10301から抽出する。 First, the program adding unit 102311 refers to the ID column 103011 of the program management table 10301 and the missing program list column 10265 of the initialization information list 1026 associated with the new virtual machine 20211A, and sets the matching line to the program management table 10301. Extract from
 次いで、プログラム追加部102311は、抽出した行の保管場所欄103015を参照して、保管場所欄103015に格納されている保管場所にある全てのファイルを新規の仮想計算機20211Aに追加する。 Next, the program adding unit 102311 refers to the storage location column 103015 of the extracted row and adds all files in the storage location stored in the storage location column 103015 to the new virtual machine 20211A.
 次いで、プログラム追加部102311は、抽出した行のセットアッププログラム名欄103016を参照して、セットアッププログラム名欄103016に格納されているセットアップ名のプログラムを新規の仮想計算機20211Aにおいて実行する。 Next, the program adding unit 102311 refers to the setup program name column 103016 of the extracted row and executes the program having the setup name stored in the setup program name column 103016 in the new virtual computer 20211A.
 また、プログラム追加部102311は、初期化情報リスト1026の不足プログラム一覧欄10265に格納されているプログラムのIDを削除するとともに、利用プログラム一覧欄10262に削除したIDを追加する。 Also, the program addition unit 102311 deletes the program ID stored in the missing program list column 10265 of the initialization information list 1026 and adds the deleted ID to the used program list column 10262.
 以上の処理により、プログラム追加部102311は、新規の仮想計算機20211Aにプログラムを追加することができる。 Through the above processing, the program adding unit 102311 can add a program to the new virtual machine 20211A.
 最後に、複製仮想計算機提供部1023は、仮想計算機イメージ管理テーブル10302及び利用プログラム管理テーブル10303に複製した新規の仮想計算機20211Aの情報を反映する。具体的に複製仮想計算機提供部1023は、次に述べる処理を実行する。 Finally, the duplicate virtual machine providing unit 1023 reflects the information of the new virtual machine 20211A duplicated in the virtual machine image management table 10302 and the used program management table 10303. Specifically, the duplicate virtual machine providing unit 1023 executes the following process.
 まず、複製仮想計算機提供部1023は、仮想計算機イメージ管理テーブル10302に新たに行を作成し、作成した新たな行の仮想計算機名欄103021、ユーザ名欄103022、組織名欄103023、OS名欄103024及び用途欄103025の各欄に、複製及び初期化した新規の仮想計算機20211Aの仮想計算機名、ユーザ名、組織名、OS名及び用途を格納する。 First, the duplicate virtual machine providing unit 1023 creates a new line in the virtual machine image management table 10302, and creates a virtual machine name field 103021, a user name field 103302, an organization name field 103030, and an OS name field 103024 of the created new line. The virtual machine name, user name, organization name, OS name, and usage of the new virtual machine 20211A copied and initialized are stored in the respective fields of the usage field 103025.
 次いで、複製仮想計算機提供部1023は、利用プログラム管理テーブル10303に新たに行を作成し、作成した新たな行の仮想計算機名欄103031及びプログラムID一欄103032の各欄に、複製及び初期化した新規の仮想計算機20211Aの仮想計算機名及び利用プログラムのIDを格納する。なお利用プログラムのIDを格納する際、複製仮想計算機提供部1023は、利用プログラム一覧欄10262を参照する。 Next, the duplicate virtual machine providing unit 1023 creates a new row in the use program management table 10303, and duplicates and initializes the virtual machine name column 103031 and the program ID one column 103032 in the created new row. The virtual machine name of the new virtual machine 20211A and the ID of the use program are stored. When storing the ID of the used program, the duplicate virtual machine providing unit 1023 refers to the used program list column 10262.
 以上の処理により、複製元の仮想計算機20211の複製及び初期化が完了し、ユーザに新規の仮想計算機20211を提供することが可能な状態となる。複製仮想計算機提供部1023は、新規の仮想計算機20211Aの作成が完了したことをユーザに通知する。 Through the above processing, the replication and initialization of the replication source virtual machine 20211 is completed, and it becomes possible to provide a new virtual machine 20211 to the user. The duplicate virtual machine providing unit 1023 notifies the user that the creation of the new virtual machine 20211A has been completed.
 以上のように、第1の実施の形態による仮想計算機提供システム1Aによれば、ユーザから新規の仮想計算機20211Aが要求された場合、仮想計算機提供システム1Aにおいて他のユーザに現在提供中の仮想計算機20211からユーザの要求を満たし得る仮想計算機20211を検索することができる。そして検索した仮想計算機20211を複製及び初期化することにより、ユーザに新規の仮想計算機20211Aを迅速に提供することができる。 As described above, according to the virtual machine providing system 1A according to the first embodiment, when a new virtual machine 20211A is requested by the user, the virtual machine currently being provided to other users in the virtual machine providing system 1A. A virtual machine 20211 that can satisfy the user's request can be searched from 20211. Then, by copying and initializing the searched virtual machine 20211, a new virtual machine 20211A can be quickly provided to the user.
(2)第2の実施の形態
 第2の実施の形態では、他のユーザに提供中の仮想計算機を複製及び初期化するだけでなく、複製元の仮想計算機として予め用意しておいた複製専用の仮想計算機テンプレートを複製及び初期化することによっても、新規の仮想計算機を提供し得る仮想計算機提供システム1Bについて説明する。
(2) Second Embodiment In the second embodiment, not only copying and initializing a virtual machine being provided to other users, but also a replication dedicated prepared in advance as a virtual machine to be copied A virtual machine providing system 1B that can provide a new virtual machine by copying and initializing the virtual machine template will be described.
 図22は、第2の実施の形態における仮想計算機提供システム1Bの論理構成を示す。この図21に示した仮想計算機提供システム1Bは、複製仮想計算機環境初期化部10231Aがテンプレート対応版である点を除いて、第1の実施の形態における仮想計算機提供システム1Aと同様に構成されている。 FIG. 22 shows a logical configuration of the virtual machine providing system 1B in the second embodiment. The virtual machine providing system 1B shown in FIG. 21 is configured in the same manner as the virtual machine providing system 1A in the first embodiment, except that the duplicate virtual machine environment initialization unit 10231A is a template-compatible version. Yes.
 複製仮想計算機環境初期化部10231Aは、仮想計算機テンプレートを複製及び初期化する。仮想計算機テンプレートは、その中身が書き換えられることがなく、仮想計算機テンプレートにはユーザ固有データが含まれていない。そのため複製仮想計算機環境初期化部10231Aは、初期化に際し、ユーザ固有データM1003の削除処理を行わない。 The duplicate virtual machine environment initialization unit 10231A duplicates and initializes the virtual machine template. The contents of the virtual machine template are not rewritten, and the virtual machine template does not include user-specific data. Therefore, the duplicate virtual machine environment initialization unit 10231A does not delete the user specific data M1003 at the time of initialization.
 図23は、第2の実施の形態における仮想計算機ホスト装置20の論理構成を示す。この図23に示した仮想計算機ホスト装置20は、二次記憶装置203に仮想計算機テンプレート2032を備えて構成される点を除いて、第1の実施の形態における仮想計算機ホスト装置20と同様に構成されている。 FIG. 23 shows a logical configuration of the virtual machine host device 20 in the second embodiment. The virtual machine host device 20 shown in FIG. 23 is configured in the same manner as the virtual machine host device 20 in the first embodiment, except that the secondary computer 203 is configured to include a virtual machine template 2032. Has been.
 仮想計算機ホスト装置20は、複製仮想計算機環境初期化部10231Aにより仮想計算機テンプレート2032を複製し、仮想計算機イメージ2031を作成する。 The virtual machine host device 20 creates a virtual machine image 2031 by duplicating the virtual machine template 2032 by the duplicate virtual machine environment initialization unit 10231A.
 その他、各種テーブル(図3~図9参照)、新規の仮想計算機20211Aを提供する流れの概要(図10参照)、画面構成(図11~図13参照)及び処理手順(図14~図20参照)については、第1の実施の形態と同様であるため、ここでの説明は省略する。 In addition, various tables (see FIGS. 3 to 9), an outline of a flow for providing a new virtual machine 20211A (see FIG. 10), a screen configuration (see FIGS. 11 to 13), and a processing procedure (see FIGS. 14 to 20). ) Is the same as in the first embodiment, and a description thereof is omitted here.
 以上のように、第2の実施の形態による仮想計算機提供システム1Bによれば、ユーザから新規の仮想計算機20211Aが要求された場合、仮想計算機提供システム1Bにおいて他のユーザに現在提供中の仮想計算機20211及び仮想計算機テンプレート2032からユーザの要求を満たし得る仮想計算機20211を検索することができる。そして、検索した仮想計算機20211又は仮想計算機テンプレート2032を複製及び初期化することにより、ユーザに新規の仮想計算機20211Aを迅速に提供することができる。 As described above, according to the virtual machine providing system 1B according to the second embodiment, when a new virtual machine 20211A is requested from the user, the virtual machine currently being provided to other users in the virtual machine providing system 1B. The virtual machine 20211 that can satisfy the user's request can be searched from the 20211 and the virtual machine template 2032. Then, by copying and initializing the searched virtual machine 20211 or virtual machine template 2032, a new virtual machine 20211A can be quickly provided to the user.
(3)第3の実施の形態
 第3の実施の形態では、プログラムの依存関係を参照して、複製した新規の仮想計算機20211Aを複数の仮想計算機20211で構成されるシステムに追加し得る仮想計算機提供システム1Cについて説明する。以下、複数の仮想計算機20211から構成される仮想計算機提供システム1Cの構成をここでは特に「複数仮想計算機構成」と呼ぶ。
(3) Third Embodiment In the third embodiment, a virtual machine that can add a copied new virtual machine 20211A to a system constituted by a plurality of virtual machines 20211 with reference to the program dependency relationship. The providing system 1C will be described. Hereinafter, the configuration of the virtual computer providing system 1C configured from a plurality of virtual computers 20211 is specifically referred to as a “multiple virtual computer configuration” herein.
 図24は、第3の実施の形態における仮想計算機提供システム1Cの論理構成を示す。この図24に示した仮想計算機提供システム1Cは、複製仮想計算機環境初期化部10231Bが複数仮想計算機構成対応版であり、接続仮想計算機決定部102314、接続設定変更部10232及び影響仮想計算機抽出部10233を備えて構成される点を除いて、第1の実施の形態における仮想計算機提供システム1Aと同様に構成されている。 FIG. 24 shows a logical configuration of the virtual machine providing system 1C in the third embodiment. In the virtual machine providing system 1C shown in FIG. 24, the duplicate virtual machine environment initialization unit 10231B is a version corresponding to a plurality of virtual machine configurations, and a connection virtual machine determination unit 102314, a connection setting change unit 10232, and an affected virtual machine extraction unit 10233 The configuration is the same as that of the virtual machine providing system 1A in the first embodiment except that the configuration is provided.
 接続仮想計算機決定部102314は、複製した新規の仮想計算機20211Aに不足しているプログラムを含む仮想計算機20211を複数仮想計算機構成内において検索する。 The connection virtual machine determination unit 102314 searches for a virtual machine 20211 including a program that is lacking in the copied new virtual machine 20211A in a plurality of virtual machine configurations.
 影響仮想計算機抽出部10233は、複製した新規の仮想計算機20211Aに含まれるプログラムを必要としている仮想計算機20211を複数仮想計算機構成内において検索する。 The affected virtual machine extraction unit 10233 searches the virtual machine configuration for a virtual machine 20211 that requires a program included in the copied new virtual machine 20211A.
 接続設定変更部10232は、接続仮想計算機決定部102314又は影響仮想計算機抽出部10233により検索結果として得られた仮想計算機20211を複数仮想計算機構成内において接続するプログラム設定変更処理を行う。 The connection setting change unit 10232 performs a program setting change process for connecting the virtual machines 20211 obtained as a search result by the connection virtual machine determination unit 102314 or the influence virtual machine extraction unit 10233 in a plurality of virtual machine configurations.
 図25は、第3の実施の形態における二次記憶装置103の論理構成を示す。この図25に示した二次記憶装置103は、複数仮想計算機構成テーブル10309、接続設定値テーブル10310及び接続設定項目テーブル10311を備えて構成される点を除いて、第1の実施の形態における二次記憶装置103と同様に構成されている。 FIG. 25 shows a logical configuration of the secondary storage device 103 according to the third embodiment. The secondary storage device 103 shown in FIG. 25 is the second storage device 103 according to the first embodiment, except that the secondary storage device 103 includes a multiple virtual machine configuration table 10309, a connection setting value table 10310, and a connection setting item table 10311. The configuration is the same as that of the next storage device 103.
 図26Aは、複数仮想計算機構成テーブル10309の概念図を示す。複数仮想計算機構成テーブル10309は、仮想計算機提供システム1Cにおいて複数の仮想計算機20211により構成される複数仮想計算機構成を管理するためのテーブルであり、影響仮想計算機抽出部10233及び接続仮想計算機決定部102314により、複数仮想計算機構成内の仮想計算機20211を取得する場合に用いられる。 FIG. 26A shows a conceptual diagram of the multiple virtual machine configuration table 10309. The multiple virtual machine configuration table 10309 is a table for managing the multiple virtual machine configuration configured by the multiple virtual machines 20211 in the virtual machine providing system 1C. The multiple virtual machine configuration table 10309 is configured by the affected virtual machine extraction unit 10233 and the connected virtual machine determination unit 102314. It is used when acquiring the virtual machine 20211 in the multiple virtual machine configuration.
 複数仮想計算機構成テーブル10309は、複数仮想計算機構成名欄103091及び仮想計算機一覧欄103092から構成される。 The multiple virtual machine configuration table 10309 includes a multiple virtual machine configuration name column 103091 and a virtual computer list column 103092.
 複数仮想計算機構成名欄103091には、仮想計算機提供システム1Cにより提供される複数仮想計算機構成の複数仮想計算機構成名が格納される。 The multiple virtual machine configuration name column 103091 stores the multiple virtual machine configuration name of the multiple virtual machine configuration provided by the virtual machine providing system 1C.
 仮想計算機一覧欄103092には、複数仮想計算機構成を構成する仮想計算機20211の仮想計算機名が格納される。 The virtual machine list column 103092 stores the virtual machine names of the virtual machines 20211 constituting the multiple virtual machine configuration.
 従って、図26Aの場合、例えば「grp0」という複数仮想計算機構成名の複数仮想計算機構成は、「VM0」という仮想計算機名の仮想計算機20211のみから構成されていることが示されている。一方「grp3」という複数仮想計算機構成名の複数仮想計算機構成は、「VM3、VM4」という2つの仮想計算機名の仮想計算機20211から構成されていることが示されている。 Therefore, in the case of FIG. 26A, for example, it is shown that the multiple virtual machine configuration with the multiple virtual machine configuration name “grp0” is configured only from the virtual machine 20211 with the virtual machine name “VM0”. On the other hand, it is shown that the multiple virtual machine configuration with the multiple virtual machine configuration name “grp3” is composed of the virtual machines 20211 with the two virtual machine names “VM3 and VM4”.
 図26Bは、接続設定値テーブル10310の概念図を示す。接続設定値テーブル10310は、接続先のプログラムに接続するための接続設定値を管理するためのテーブルであり、接続設定変更部10232により、接続先のプログラムに接続するための設定値を取得する場合に用いられる。 FIG. 26B shows a conceptual diagram of the connection setting value table 10310. The connection setting value table 10310 is a table for managing connection setting values for connecting to a connection destination program. When the connection setting changing unit 10232 acquires setting values for connecting to a connection destination program. Used for.
 接続設定値テーブル10310は、仮想計算機名欄103101、プログラムID欄103102、接続パラメタ欄103103及び接続パラメタ値欄103104から構成される。 The connection setting value table 10310 includes a virtual machine name column 103101, a program ID column 103102, a connection parameter column 103103, and a connection parameter value column 103104.
 仮想計算機名欄103101には、接続先の仮想計算機20211の仮想計算機名が格納される。プログラムID欄103102には、接続先のプログラムのIDが格納される。 The virtual machine name column 103101 stores the virtual machine name of the connection destination virtual machine 20211. The program ID column 103102 stores the ID of the connection destination program.
 接続パラメタ欄103103には、プログラムID欄103102に格納されているIDのプログラムに接続するために用いるパラメタが格納される。接続パラメタ値欄103104には、接続パラメタ欄103103に格納されているパラメタに設定する値が格納される。 The connection parameter column 103103 stores parameters used for connecting to the program having the ID stored in the program ID column 103102. The connection parameter value column 103104 stores values to be set for the parameters stored in the connection parameter column 103103.
 従って、図26Bの場合、例えば「VM3」という仮想計算機名の仮想計算機20211に含まれる「PG7」というIDのプログラムに接続するには、「$hostname$」というパラメタが用いられ、このパラメタには「192.168.11.4」という値が設定されていることが示されている。 Therefore, in the case of FIG. 26B, for example, a parameter “$ hostname $” is used to connect to the program with the ID “PG7” included in the virtual machine 20211 with the virtual machine name “VM3”. It is shown that the value “192.168.11.4” is set.
 図26Cは、接続設定項目テーブル10311の概念図を示す。接続設定項目テーブル10311は、接続先のプログラムに接続するために変更が必要な接続元のプログラムの設定項目を管理するためのテーブルであり、接続設定変更部10232により、接続設定を変更するファイル及び記述を取得する場合に用いられる。 FIG. 26C shows a conceptual diagram of the connection setting item table 10311. The connection setting item table 10311 is a table for managing the setting items of the connection source program that needs to be changed in order to connect to the connection destination program. Used when getting a description.
 接続設定項目テーブル10311は、プログラムID欄103111、接続先プログラムID欄103112、ファイル欄103113及び記述欄103114から構成される。 The connection setting item table 10311 includes a program ID column 103111, a connection destination program ID column 103112, a file column 103113, and a description column 103114.
 プログラムID欄103111には、接続元のプログラムのIDが格納される。接続先プログラムID欄103112には、接続先のプログラムのIDが格納される。 The program ID column 103111 stores the ID of the connection source program. The connection destination program ID column 103112 stores the ID of the connection destination program.
 ファイル欄103113には、接続先のプログラムに接続するために設定を変更する必要がある接続元のプログラムのファイル名が格納される。記述欄103114には、ファイル欄103113に格納されたファイル名のファイル内における記述が格納される。 The file column 103113 stores the file name of the connection source program whose settings need to be changed in order to connect to the connection destination program. The description field 103114 stores a description in the file of the file name stored in the file field 103113.
 従って、図26Cの場合、例えば「PG10」というIDの接続元のプログラムと「PG7」というIDの接続先のプログラムとを接続するには、「config/db.xml」というファイル名のファイルの「host:$hostname$」という記述を接続先の仮想計算機20211に合わせたものに変更する必要があることが示されている。 Therefore, in the case of FIG. 26C, for example, in order to connect the connection source program with the ID “PG10” and the connection destination program with the ID “PG7”, the file name “config / db.xml” It is shown that it is necessary to change the description of “host: $ hostname $” to match that of the connection destination virtual machine 20211.
 その他、各種テーブル(図4~図9参照)については、第1の実施の形態と同様であるため、ここでの説明は省略する。 Other various tables (see FIG. 4 to FIG. 9) are the same as those in the first embodiment, and a description thereof is omitted here.
 図27は、複数仮想計算機構成へ仮想計算機の複製を組み入れる際の処理の流れの概念図を示す。ユーザBの要求により、新規の仮想計算機20211Aを作成する流れの概要(図10参照)については、第1の実施の形態と同様であるため、ここでの説明は省略する。 FIG. 27 shows a conceptual diagram of the flow of processing when incorporating a duplicate of a virtual machine into a multiple virtual machine configuration. An outline of a flow for creating a new virtual machine 20211A in response to a request from user B (see FIG. 10) is the same as that in the first embodiment, and a description thereof will be omitted here.
 新規の仮想計算機20211Aの作成が完了すると、複製仮想計算機提供部1023は、ユーザBが利用中の複数仮想計算機構成B(202112)に組み入れるため、仮想計算機20211Aを既存の仮想計算機B1(20211D)及びB2(20211E)と接続する。 When the creation of the new virtual machine 20211A is completed, the duplicate virtual machine providing unit 1023 incorporates the virtual machine 20211A into the existing virtual machine B1 (20211D) and the virtual machine configuration B (202112) used by the user B. Connect to B2 (20211E).
 まず、複製仮想計算機提供部1023は、接続仮想計算機決定部102314に仮想計算機20211Aのプログラムと接続する仮想計算機を発見するよう指示する。具体的には、仮想計算機20211Aのプログラムの動作に必要なプログラムを含む仮想計算機を発見するよう指示する。その結果、仮想計算機B1(20211D)を発見すると、接続設定変更部10232により、仮想計算機20211Aのプログラムの設定を仮想計算機B1(20211D)のプログラムに接続できるよう変更する。 First, the duplicate virtual machine providing unit 1023 instructs the connection virtual machine determining unit 102314 to find a virtual machine connected to the program of the virtual machine 20211A. Specifically, the virtual machine 20211A is instructed to find a virtual machine that includes a program necessary for the operation of the program. As a result, when the virtual machine B1 (20211D) is found, the connection setting changing unit 10232 changes the setting of the program of the virtual machine 20211A so that it can be connected to the program of the virtual machine B1 (20211D).
 次に、複製仮想計算機提供部1023は、影響仮想計算機抽出部10233に仮想計算機20211Aに接続する仮想計算機を発見するよう指示する。具体的には、複数仮想計算機構成Bの仮想計算機のうち、仮想計算機20211Aが含むプログラムを必要としているプログラムを含む仮想計算機を発見するよう指示する。その結果、仮想計算機B2(20211E)を発見すると接続設定変更部10232により、仮想計算機B2(20211E)のプログラムの設定を仮想計算機20211Aのプログラムに接続できるよう変更する。 Next, the duplicate virtual machine providing unit 1023 instructs the affected virtual machine extracting unit 10233 to find a virtual machine connected to the virtual machine 20211A. Specifically, an instruction is given to find a virtual machine including a program that requires a program included in the virtual machine 20211A among the virtual machines of the multiple virtual machine configuration B. As a result, when the virtual computer B2 (20211E) is found, the connection setting changing unit 10232 changes the program setting of the virtual computer B2 (20211E) so that it can be connected to the program of the virtual computer 20211A.
 以上の処理により、複製後の新規の仮想計算機20211AをユーザBの使用している複数仮想計算機構成B(202112)に組み入れることができる。 Through the above processing, the new virtual machine 20211A after duplication can be incorporated into the multiple virtual machine configuration B (202112) used by the user B.
 図28は、第3の実施の形態におけるプログラム名検索画面M1301の画面構成図を示す。この図28に示したプログラム名検索画面M1301は、複数仮想計算機構成への追加設定を選択するためのラジオボタンM2211~M2218及び複製した新規の仮想計算機20211Aに不足している不足プログラムについての対処方法を選択するためのラジオボタンM2219~M2221を備えて構成される点を除いて、第1の実施の形態におけるプログラム名検索画面M1301と同様に構成されている。 FIG. 28 shows a screen configuration diagram of the program name search screen M1301 in the third embodiment. The program name search screen M1301 shown in FIG. 28 has a radio button M2211 to M2218 for selecting an additional setting for the configuration of a plurality of virtual machines and a method for dealing with a missing program that is missing in the copied new virtual machine 20211A. Is configured in the same manner as the program name search screen M1301 in the first embodiment except that the radio buttons M2219 to M2221 are selected.
 複製仮想計算機提供部1023は、このプログラム名検索画面M1301において、ラジオボタンM2211~M2218により複数仮想計算機構成への追加設定が選択され、ラジオボタンM2219~M2221により不足プログラムについての対処方法が選択された後、仮想計算機複製初期化ボタン1306が押下されると、選択されたラジオボタンの組み合わせに応じて、次に述べる処理を実行する。なおラジオボタンM2211が選択された場合、ラジオボタンM2220は選択不可となる。 In this program name search screen M1301, the duplicate virtual machine providing unit 1023 selects an additional setting for the multiple virtual machine configuration with the radio buttons M2211 to M2218, and selects a countermeasure method for the missing program with the radio buttons M2219 to M2221. Thereafter, when the virtual machine copy initialization button 1306 is pressed, the following processing is executed according to the selected combination of radio buttons. If radio button M2211 is selected, radio button M2220 cannot be selected.
 ラジオボタンM2211及びラジオボタンM2219の組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については新規に複数仮想計算機構成を作成することが選択され、不足プログラムについての対処方法については複製後の新規の仮想計算機20211Aに不足プログラムを追加することが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023と同様の処理を実行する。 When the combination of the radio button M2211 and the radio button M2219 is selected, that is, for the additional setting to the multiple virtual computer configuration, it is selected to newly create the multiple virtual computer configuration, and the coping method for the deficient program is post-replication When it is selected to add the deficient program to the new virtual machine 20211A, the duplicate virtual machine providing unit 1023 executes the same processing as the duplicate virtual machine providing unit 1023 in the first embodiment.
 ラジオボタンM2211と、ラジオボタンM2221との組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については新規に複数仮想計算機構成を作成することが選択され、不足プログラムについての対処方法については何もしないことが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023の処理のうち、プログラム追加部102311による処理以外を実行する。 When the combination of the radio button M2211 and the radio button M2221 is selected, that is, for the additional setting to the multiple virtual computer configuration, it is selected to newly create the multiple virtual computer configuration. If nothing is selected, the duplicate virtual machine providing unit 1023 executes processes other than the process by the program adding unit 102311 among the processes of the duplicate virtual machine providing unit 1023 in the first embodiment.
 ラジオボタンM2212~M2218のうち何れか一のラジオボタンと、ラジオボタンM2219との組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については何れかの複数仮想計算機構成に新規の仮想計算機20211Aを追加することが選択され、不足プログラムについての対処方法については複製後の新規の仮想計算機20211Aに不足プログラムを追加することが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023と同様の処理を実行し、新規の仮想計算機20211Aの作成を完了した後、複数仮想計算機構成の他の仮想計算機20211に含まれるプログラムから、新規の仮想計算機20211Aのプログラムに接続するための接続設定処理を実行する。 When a combination of any one of the radio buttons M2212 to M2218 and the radio button M2219 is selected, that is, for additional setting to the multiple virtual computer configuration, a new virtual computer is added to any multiple virtual computer configuration If it is selected to add 20211A, and the countermeasure for the deficient program is selected to add the deficient program to the new virtual machine 20211A after duplication, the duplicate virtual machine providing unit 1023 performs the first implementation. After executing the same processing as that of the duplicate virtual machine providing unit 1023 in the form of the above and completing the creation of the new virtual machine 20211A, a new virtual machine 20211A is obtained from a program included in another virtual machine 20211 having a plurality of virtual machine configurations. Settings for connecting to other programs To run the management.
 ラジオボタンM2212~M2218のうち何れか一のラジオボタンと、ラジオボタンM2220との組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については何れかの複数仮想計算機構成に新規の仮想計算機20211Aを追加することが選択され、不足プログラムについての対処方法については複数仮想計算機構成内仮想計算機20211のプログラムを利用することが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023の処理のうち、プログラム追加部102311による処理以外を実行した後、複製した新規の仮想計算機20211Aに含まれるプログラムから、複数仮想計算機構成の他の仮想計算機20211のプログラムに接続する接続設定処理を実行する。 When a combination of any one of the radio buttons M2212 to M2218 and the radio button M2220 is selected, that is, for additional setting to the multiple virtual computer configuration, a new virtual computer is added to any multiple virtual computer configuration If it is selected to add 20211A and a method for dealing with the deficient program is selected to use the program of the virtual machine 20211 in the multiple virtual machine configuration, the duplicate virtual machine providing unit 1023 performs the first implementation. Among the processes of the replicated virtual machine providing unit 1023 in the embodiment, after executing a process other than the process of the program adding unit 102311, the program of the other virtual machine 20211 having a plurality of virtual machine configurations from the program included in the replicated new virtual machine 20211A Connection setting to connect to Process to run.
 ラジオボタンM2212~M2218のうち何れか一のラジオボタンと、ラジオボタンM2220との組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については何れかの複数仮想計算機構成に新規の仮想計算機20211Aを追加することが選択され、不足プログラムについての対処方法については複数仮想計算機構成内仮想計算機20211のプログラムを利用することが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023の処理のうち、プログラム追加部102311による処理以外を実行した後、複製した新規の仮想計算機20211Aに含まれるプログラムから、複数仮想計算機構成の他の仮想計算機20211のプログラムに接続する接続設定処理を実行する。 When a combination of any one of the radio buttons M2212 to M2218 and the radio button M2220 is selected, that is, for additional setting to the multiple virtual computer configuration, a new virtual computer is added to any multiple virtual computer configuration If it is selected to add 20211A and a method for dealing with the deficient program is selected to use the program of the virtual machine 20211 in the multiple virtual machine configuration, the duplicate virtual machine providing unit 1023 performs the first implementation. Among the processes of the replicated virtual machine providing unit 1023 in the embodiment, after executing a process other than the process of the program adding unit 102311, the program of the other virtual machine 20211 having a plurality of virtual machine configurations from the program included in the replicated new virtual machine 20211A Connection setting to connect to Process to run.
 ラジオボタンM2212~M2218のうち何れか一のラジオボタンと、ラジオボタンM2221との組み合わせが選択された場合、すなわち複数仮想計算機構成への追加設定については何れかの複数仮想計算機構成に新規の仮想計算機20211Aを追加することが選択され、不足プログラムについての対処方法については何もしないことが選択された場合、複製仮想計算機提供部1023は、第1の実施の形態における複製仮想計算機提供部1023の処理のうち、プログラム追加部102311による処理以外を実行する。 When a combination of any one of the radio buttons M2212 to M2218 and the radio button M2221 is selected, that is, for additional setting to the multiple virtual computer configuration, a new virtual computer is added to any multiple virtual computer configuration When it is selected to add 20211A and nothing is selected as a countermeasure for the insufficient program, the duplicate virtual machine providing unit 1023 performs the process of the duplicate virtual machine providing unit 1023 in the first embodiment. Among these, processing other than the processing by the program addition unit 102311 is executed.
 図29は、複製仮想計算機提供部1023からの実行指示を受け付けた影響仮想計算機抽出部10233により行われる影響仮想計算機抽出処理の処理手順を示す。複製仮想計算機提供部1023は、複数仮想計算機構成内の仮想計算機20211に含まれるプログラムと、複製した新規の仮想計算機20211Aに含まれるプログラムとを接続するための接続設定処理において、影響仮想計算機抽出部10233に影響仮想計算機抽出処理の実行を指示する。影響仮想計算機抽出部10233は、複製仮想計算機提供部1023からの影響仮想計算機抽出処理の実行指示を受け付けると、この図29に示す抽出処理に従って、複製した新規の仮想計算機20211Aに含まれているプログラムが必要とするプログラムを含む仮想計算機20211を複数仮想計算機構成から抽出する処理を実行する。 FIG. 29 shows a processing procedure of the influence virtual machine extraction process performed by the influence virtual machine extraction unit 10233 that has received the execution instruction from the duplicate virtual machine provision unit 1023. The duplicate virtual machine providing unit 1023 is an influence virtual machine extraction unit in a connection setting process for connecting a program included in the virtual machine 20211 in the multiple virtual machine configuration and a program included in the new duplicated virtual machine 20211A. 10233 is instructed to execute the affected virtual machine extraction process. When the influence virtual machine extraction unit 10233 receives an instruction to execute the influence virtual machine extraction process from the duplicate virtual machine provision part 1023, the program included in the new duplicate virtual machine 20211A according to the extraction process shown in FIG. The virtual computer 20211 including the program required by is executed from a plurality of virtual computer configurations.
 まず、影響仮想計算機抽出部10233は、複数仮想計算機構成テーブル10309(図26A参照)を参照して、複数仮想計算機構成名欄103091に格納されている複数仮想計算機構成名と、第3の実施の形態におけるプログラム名検索画面M1301内のラジオボタンM2212~M2218にて選択された複数仮想計算機構成名とが一致する行を複数仮想計算機構成テーブル10309から抽出する。そして影響仮想計算機抽出部10233は、抽出した行の仮想計算機一覧欄103092に格納されている仮想計算機名を取得する(S2301)。 First, the influence virtual machine extraction unit 10233 refers to the multiple virtual machine configuration table 10309 (see FIG. 26A), the multiple virtual machine configuration name stored in the multiple virtual machine configuration name column 103091, and the third embodiment. In the program name search screen M1301 in the form, a row that matches the multiple virtual computer configuration names selected by the radio buttons M2212 to M2218 is extracted from the multiple virtual computer configuration table 10309. Then, the affected virtual machine extraction unit 10233 acquires the virtual machine name stored in the virtual machine list column 103092 of the extracted row (S2301).
 次いで、影響仮想計算機抽出部10233は、利用プログラム管理テーブル10303(図6B参照)を参照して、仮想計算機名欄103031に格納されている仮想計算機名と、ステップS2301で取得した仮想計算機名とが一致する行を利用プログラム管理テーブル10303から抽出する。そして影響仮想計算機抽出部10233は、抽出した行のプログラムID一覧欄103032に格納されているプログラムのIDを取得する(S2302)。 Next, the affected virtual machine extraction unit 10233 refers to the use program management table 10303 (see FIG. 6B) to determine the virtual machine name stored in the virtual machine name column 103031 and the virtual machine name acquired in step S2301. A matching line is extracted from the use program management table 10303. Then, the influence virtual machine extraction unit 10233 acquires the ID of the program stored in the program ID list column 103032 of the extracted row (S2302).
 次いで、影響仮想計算機抽出部10233は、必要プログラム一覧作成部1024を実行する。必要プログラム一覧作成部1024は、影響仮想計算機抽出部10233からの実行指示を受け付けると、依存関係管理テーブル10308(図8参照)及びプログラム管理テーブル10301(図3参照)を参照して、ステップS2302で取得したプログラムのID及びそのプログラムと依存関係にあるプログラムのIDを抽出し、抽出したIDを初期化情報リスト1026(図4B参照)の必要プログラム一覧欄10268に格納する(S2303)。 Next, the affected virtual machine extraction unit 10233 executes the necessary program list creation unit 1024. Upon receiving the execution instruction from the affected virtual machine extraction unit 10233, the necessary program list creation unit 1024 refers to the dependency management table 10308 (see FIG. 8) and the program management table 10301 (see FIG. 3), and in step S2302. The ID of the acquired program and the ID of the program having a dependency relationship with the program are extracted, and the extracted ID is stored in the necessary program list column 10268 of the initialization information list 1026 (see FIG. 4B) (S2303).
 次いで、影響仮想計算機抽出部10233は、ステップS2302で取得した複数仮想計算機構成内における保有プログラムのIDと、ステップS2303で取得した必要プログラムのIDとの差分を算出し、算出した差分を初期化情報リスト1026の不足プログラム一覧欄10265に格納する(S2304)。 Next, the influence virtual machine extraction unit 10233 calculates the difference between the ID of the retained program in the multiple virtual machine configuration acquired in step S2302 and the ID of the necessary program acquired in step S2303, and initializes the calculated difference to the initialization information. It is stored in the missing program list column 10265 of the list 1026 (S2304).
 次いで、影響仮想計算機抽出部10233は、初期化情報リスト1026の利用プログラム一覧欄10262に格納されているプログラムのIDと、ステップS2304で格納した不足プログラム一覧欄10265に格納されているプログラムのIDとを比較し、重複するプログラムがあるか否か判断する(S2305)。 Next, the affected virtual machine extraction unit 10233 has the program ID stored in the used program list column 10262 of the initialization information list 1026 and the program ID stored in the insufficient program list column 10265 stored in step S2304. Are compared to determine whether there is a duplicate program (S2305).
 影響仮想計算機抽出部10233は、この判断で否定結果を得ると、新規の仮想計算機20211Aにおいて利用するプログラムのうち、不足プログラムはないものと判断して、ステップS2309に移行する。 If the influence virtual machine extraction unit 10233 obtains a negative result in this determination, it determines that there is no insufficient program among the programs used in the new virtual machine 20211A, and proceeds to step S2309.
 これに対し、影響仮想計算機抽出部10233は、ステップS2305の判断で肯定結果を得ると、新規の仮想計算機20211Aにおいて利用するプログラムのうち、不足プログラムがあるものと判断して、利用プログラムであり不足プログラムであるプログラムを接続先のプログラムとして設定する(S2306)。 On the other hand, when the influence virtual machine extraction unit 10233 obtains a positive result in the determination in step S2305, the affected virtual machine extraction unit 10233 determines that there is a missing program among the programs used in the new virtual machine 20211A. A program that is a program is set as a connection destination program (S2306).
 次いで、影響仮想計算機抽出部10233は、プログラム管理テーブル10301(図5参照)を参照して、ID欄103011に格納されているIDと、ステップS2306で設定した接続先のプログラムのIDとが一致する行をプログラム管理テーブル10301から抽出する。そして影響仮想計算機抽出部10233は、抽出した行のプログラム名欄103012、バージョン欄103013及びアーキテクチャ欄103014から、それぞれプログラム名、バージョン条件及びアーキテクチャの情報を取得する。そして影響仮想計算機抽出部10233は、依存関係管理テーブル10308を参照して、依存プログラム名欄103083に格納されているプログラム名と取得したプログラム名とが一致し、依存バージョン欄103084に格納されているバージョン条件が取得したバージョン条件を満たし、依存アーキテクチャ欄103085に格納されているアーキテクチャと取得したアーキテクチャとが一致する行を依存関係管理テーブル10308から抽出する。そして影響仮想計算機抽出部10233は、抽出した行のプログラムID欄103082に格納されているIDのプログラムを接続元のプログラムとして設定する(S2307)。 Next, the affected virtual machine extraction unit 10233 refers to the program management table 10301 (see FIG. 5), and the ID stored in the ID column 103011 matches the ID of the connection destination program set in step S2306. A row is extracted from the program management table 10301. Then, the affected virtual machine extraction unit 10233 acquires program name, version condition, and architecture information from the program name column 103012, the version column 1030301, and the architecture column 103014 of the extracted row, respectively. Then, the affected virtual machine extraction unit 10233 refers to the dependency management table 10308, the program name stored in the dependency program name column 103083 matches the acquired program name, and is stored in the dependency version column 103084. A row in which the version condition satisfies the acquired version condition and the architecture stored in the dependency architecture column 103085 matches the acquired architecture is extracted from the dependency management table 10308. Then, the affected virtual machine extraction unit 10233 sets the ID program stored in the program ID column 103082 of the extracted row as the connection source program (S2307).
 次いで、影響仮想計算機抽出部10233は、接続設定変更部10232に接続処理の実行を指示する。接続設定変更部10232は、影響仮想計算機抽出部10233からの実行指示を受け付けると、接続元の仮想計算機20211に含まれる接続元のプログラムの設定を書き換えることにより、接続元のプログラムと、接続先の仮想計算機20211Aに含まれる接続先のプログラムとを接続する接続処理を実行する(S2308)。 Next, the affected virtual machine extraction unit 10233 instructs the connection setting change unit 10232 to execute the connection process. When the connection setting change unit 10232 receives the execution instruction from the influence virtual machine extraction unit 10233, the connection setting change unit 10232 rewrites the setting of the connection source program included in the connection source virtual machine 20211 so that the connection source program and the connection destination program are changed. A connection process for connecting to a connection destination program included in the virtual machine 20211A is executed (S2308).
 具体的には、まず接続設定変更部10232は、影響仮想計算機抽出部10233から接続元の仮想計算機20211の仮想計算機名、接続元のプログラムのID、接続先の仮想計算機20211Aの仮想計算機名及び接続先のプログラムのIDを受け取る。 Specifically, first, the connection setting change unit 10232 sends the virtual machine name of the connection source virtual machine 20211, the ID of the connection source program, the virtual machine name of the connection destination virtual machine 20211A and the connection from the affected virtual machine extraction unit 10233. Receive the ID of the previous program.
 次いで、接続設定変更部10232は、接続設定値テーブル10310(図26B参照)を参照して、仮想計算機名欄103101及びプログラムID欄103102に格納されている仮想計算機名及びIDと、影響仮想計算機抽出部10233から受け取った接続先の仮想計算機20211Aの仮想計算機名及び接続先のプログラムのIDとが一致する行を接続設定値テーブル10310から抽出する。 Next, the connection setting change unit 10232 refers to the connection setting value table 10310 (see FIG. 26B), extracts the virtual machine name and ID stored in the virtual machine name column 103101 and the program ID column 103102, and the influence virtual computer extraction. A row in which the virtual machine name of the connection destination virtual machine 20211A received from the unit 10233 and the ID of the connection destination program match is extracted from the connection setting value table 10310.
 次いで、接続設定変更部10232は、接続設定項目テーブル10311(図26C参照)を参照して、プログラムID欄103111に格納されている接続元のプログラムのID及び接続先プログラムID欄103112に格納されている接続先のプログラムのIDと、影響仮想計算機抽出部10233から受け取った接続元の仮想計算機20211に含まれる接続元のプログラムのID及び接続先の仮想計算機20211Aに含まれる接続先のプログラムのIDとが一致する行を接続設定項目テーブル10311から抽出する。 Next, the connection setting change unit 10232 refers to the connection setting item table 10311 (see FIG. 26C), and stores the connection source program ID stored in the program ID column 103111 and the connection destination program ID column 103112. ID of the connection destination program, the ID of the connection source program included in the connection source virtual machine 20211 received from the affected virtual machine extraction unit 10233, and the ID of the connection destination program included in the connection destination virtual computer 20211A Are extracted from the connection setting item table 10311.
 次いで、接続設定変更部10232は、抽出した行の記述欄103114に格納されている文字列のうち、接続設定値テーブル10310から抽出した行の接続パラメタ欄103103に格納されている文字列と一致する箇所の文字列を接続パラメタ値欄103104に格納されている接続パラメタ値に置き換えた文字列を、変数Sに一時的に保持する。 Next, the connection setting change unit 10232 matches the character string stored in the connection parameter column 103103 of the line extracted from the connection setting value table 10310 among the character strings stored in the description column 103114 of the extracted line. A character string in which the character string of the place is replaced with the connection parameter value stored in the connection parameter value column 103104 is temporarily stored in the variable S.
 また、接続設定変更部10232は、抽出した行のファイル欄103113に格納されているファイル名の文字列のうち、記述欄103114に格納されている文字列と一致する箇所の文字列を、変数Sに保持した文字列に置き換える。 In addition, the connection setting change unit 10232 changes the character string of the portion that matches the character string stored in the description column 103114 out of the character string of the file name stored in the file column 103113 of the extracted line to the variable S. Replace with the character string stored in.
 以上のように、接続設定変更部10232は、複数仮想計算機構成内の仮想計算機20211に含まれるプログラムを複製した新規の仮想計算機20211Aに含まれるプログラムに接続することができる。 As described above, the connection setting change unit 10232 can connect to a program included in the new virtual machine 20211A that is a duplicate of the program included in the virtual machine 20211 in the multiple virtual machine configuration.
 図30は、複製仮想計算機提供部1023からの実行指示を受け付けた接続仮想計算機決定部102314により行われる接続仮想計算機決定処理の処理手順を示す。複製仮想計算機提供部1023は、複製した新規の仮想計算機20211Aに含まれるプログラムと、複数仮想計算機構成の他の仮想計算機20211に含まれるプログラムとを接続するための接続設定処理において、接続仮想計算機決定部102314に接続仮想計算機決定処理の実行を指示する。接続仮想計算機決定部102314は、複製仮想計算機提供部1023からの接続仮想計算機決定処理の実行指示を受け付けると、この図30に示す決定処理に従って、複製した新規の仮想計算機20211Aの不足プログラムを含む仮想計算機を複数仮想計算機構成内の仮想計算機20211から検索して接続する仮想計算機を決定する処理を実行する。 FIG. 30 shows a processing procedure of a connection virtual machine determination process performed by the connection virtual machine determination unit 102314 that has received an execution instruction from the duplicate virtual machine provision unit 1023. The duplicate virtual machine providing unit 1023 determines a connection virtual machine in connection setting processing for connecting a program contained in the new duplicated virtual machine 20211A and a program contained in another virtual machine 20211 having a plurality of virtual machine configurations. The unit 102314 is instructed to execute connection virtual machine determination processing. When the connection virtual machine determination unit 102314 receives an instruction to execute the connection virtual machine determination process from the duplicate virtual machine provision unit 1023, the virtual machine including the deficient program of the copied new virtual machine 20211A according to the determination process shown in FIG. A process of searching for a computer from the virtual machines 20211 in the configuration of a plurality of virtual machines and determining a virtual machine to be connected is executed.
 まず、接続仮想計算機決定部102314は、複数仮想計算機構成テーブル10309(図26A参照)を参照して、複数仮想計算機構成名欄103091に格納されている複数仮想計算機構成名と、第3の実施の形態におけるプログラム名検索画面M1301(図28参照)において選択された複数仮想計算機構成の複数仮想計算機構成名とが一致する行を複数仮想計算機構成テーブル10309から抽出する。そして接続仮想計算機決定部102314は、抽出した行の仮想計算機一覧欄103092に格納されている仮想計算機名を取得する(S2401)。 First, the connection virtual machine determination unit 102314 refers to the multiple virtual machine configuration table 10309 (see FIG. 26A), the multiple virtual machine configuration name stored in the multiple virtual machine configuration name column 103091, and the third embodiment. In the program name search screen M1301 (see FIG. 28) in the form, a row that matches the multiple virtual computer configuration name of the multiple virtual computer configuration selected is extracted from the multiple virtual computer configuration table 10309. Then, the connection virtual machine determination unit 102314 acquires the virtual machine name stored in the virtual machine list column 103092 of the extracted row (S2401).
 次いで、接続仮想計算機決定部102314は、利用プログラム管理テーブル10303(図6B参照)を参照して、仮想計算機名欄103031に格納されている仮想計算機名と、ステップS2401で取得した仮想計算機名とが一致する行を利用プログラム管理テーブル10303から抽出する。そして接続仮想計算機決定部102314は、抽出した行のプログラムID一覧欄103032に格納されているプログラムのIDを取得し、取得したプログラムのIDと、複製した新規の仮想計算機20211に関連付けられている初期化情報リスト1026の不足プログラム一覧欄10265に格納されている不足プログラムのIDとを比較することにより、既存の仮想計算機20211に含まれる利用プログラムのうち、新規の仮想計算機20211Aに不足しているプログラムが含まれるか否か判断する(S2402)。 Next, the connection virtual machine determination unit 102314 refers to the use program management table 10303 (see FIG. 6B), and obtains the virtual machine name stored in the virtual machine name field 103031 and the virtual machine name acquired in step S2401. A matching line is extracted from the use program management table 10303. Then, the connection virtual machine determination unit 102314 acquires the ID of the program stored in the program ID list field 103032 of the extracted row, and the initial ID associated with the acquired program ID and the copied new virtual machine 20211. Programs that are lacking in the new virtual machine 20211A among the use programs included in the existing virtual machine 20211 by comparing the IDs of the missing programs stored in the missing program list column 10265 of the computerized information list 1026 Is included (S2402).
 接続仮想計算機決定部102314は、この判断で否定結果を得ると、既存の仮想計算機20211に含まれる利用プログラムのうち、新規の仮想計算機20211Aに不足しているプログラムは含まれないものと判断して、ステップS2406に移行する。 If the connection virtual machine determination unit 102314 obtains a negative result in this determination, the connection virtual machine determination unit 102314 determines that a program lacking in the new virtual machine 20211A is not included in the use programs included in the existing virtual machine 20211. The process proceeds to step S2406.
 これに対し、接続仮想計算機決定部102314は、ステップS2402の判断で肯定結果を得ると、既存の仮想計算機20211に含まれる利用プログラムのうち、新規の仮想計算機20211Aに不足しているプログラムが含まれるものと判断して、その利用プログラムであり不足プログラムであるプログラムを接続先のプログラムとして設定する(S2403)。 On the other hand, when the connection virtual machine determination unit 102314 obtains a positive result in the determination in step S2402, among the use programs included in the existing virtual machine 20211, a program that is missing in the new virtual machine 20211A is included. It is determined that the program is a program to be used and is a deficient program (S2403).
 次いで、接続仮想計算機決定部102314は、プログラム管理テーブル10301(図5参照)を参照して、ID欄103011に格納されているIDと、ステップS2403で設定した接続先のプログラムのIDとが一致する行をプログラム管理テーブル10301から抽出する。そして接続仮想計算機決定部102314は、抽出した行のプログラム名欄103012、バージョン欄103013及びアーキテクチャ欄103014から、それぞれプログラム名、バージョン条件及びアーキテクチャの情報を取得する。そして接続仮想計算機決定部102314は、依存関係管理テーブル10308を参照して、依存プログラム名欄103083に格納されているプログラム名と取得したプログラム名とが一致し、依存バージョン欄103084に格納されているバージョン条件が取得したバージョン条件を満たし、依存アーキテクチャ欄103085に格納されているアーキテクチャと取得したアーキテクチャとが一致する行を依存関係管理テーブル10308から抽出する。そして接続仮想計算機決定部102314は、抽出した行のプログラムID欄103082に格納されているIDのプログラムを接続元のプログラムとして設定する(S2404)。 Next, the connection virtual machine determination unit 102314 refers to the program management table 10301 (see FIG. 5), and the ID stored in the ID column 103011 matches the ID of the connection destination program set in step S2403. A row is extracted from the program management table 10301. Then, the connection virtual machine determination unit 102314 obtains the program name, version condition, and architecture information from the program name column 103012, the version column 103013, and the architecture column 103014 of the extracted row, respectively. Then, the connection virtual machine determination unit 102314 refers to the dependency management table 10308, the program name stored in the dependency program name column 103083 matches the acquired program name, and is stored in the dependency version column 103084. A row in which the version condition satisfies the acquired version condition and the architecture stored in the dependency architecture column 103085 matches the acquired architecture is extracted from the dependency management table 10308. Then, the connection virtual machine determination unit 102314 sets the ID program stored in the program ID column 103082 of the extracted row as the connection source program (S2404).
 次いで、接続仮想計算機決定部102314は、接続設定変更部10232に接続処理の実行を指示する。接続設定変更部10232は、接続仮想計算機決定部102314からの実行指示を受け付けると、接続元の仮想計算機20211Aに含まれる接続元のプログラムの設定を書き換えることにより、接続元のプログラムと、接続先の仮想計算機20211に含まれる接続先のプログラムとを接続する接続処理を実行する(S2405)。 Next, the connection virtual machine determination unit 102314 instructs the connection setting change unit 10232 to execute connection processing. When the connection setting change unit 10232 receives the execution instruction from the connection virtual machine determination unit 102314, the connection setting change unit 10232 rewrites the connection source program setting included in the connection source virtual machine 20211A, so that the connection source program and the connection destination program are rewritten. A connection process for connecting to a connection destination program included in the virtual machine 20211 is executed (S2405).
 接続設定変更部10232により実行される接続処理については、図29で説明した処理と同様であるため、ここでの説明は省略する。 The connection process executed by the connection setting change unit 10232 is the same as the process described with reference to FIG. 29, and thus the description thereof is omitted here.
 以上のように、接続設定変更部10232は、複製した新規の仮想計算機20211Aに含まれるプログラムを複数仮想計算機構成内の仮想計算機20211に含まれるプログラムに接続することができる。 As described above, the connection setting change unit 10232 can connect the program included in the copied new virtual machine 20211A to the program included in the virtual machine 20211 in the multiple virtual machine configuration.
 なお、本発明は必ずしも上述してきた第1~第3の実施の形態に限定されるものではない。例えば本発明は、上述してきた全ての構成を備える必要はなく、第1~第3の実施の形態における構成のうち、何れかの実施の形態における構成の一部について、他の実施の形態における構成を追加、削除又は置換してもよい。 Note that the present invention is not necessarily limited to the first to third embodiments described above. For example, the present invention does not have to include all the configurations described above, and among the configurations in the first to third embodiments, some of the configurations in any of the embodiments are the same as those in the other embodiments. Configurations may be added, deleted or replaced.
 また、上述してきた第1~第3の実施の形態における各構成、機能及び処理部等の一部又は全部を集積回路等のハードウェアにより実現してもよい。 Also, some or all of the configurations, functions, processing units, etc. in the first to third embodiments described above may be realized by hardware such as an integrated circuit.
 また、上述してきた第1~第3の実施の形態における各構成、機能及び処理部等の一部又は全部をソフトウェアにより実現してもよい。この場合、各構成、機能及び処理部等を実現するプログラム、テーブル又はファイル等の情報は、メモリ、ハードディスク又はSSD(Solid State Drive)等の記録装置やICカード、SDカード又はDVD等の記録媒体に格納するとしてもよい。 Also, some or all of the configurations, functions, processing units, etc. in the first to third embodiments described above may be realized by software. In this case, information such as programs, tables or files for realizing each configuration, function, processing unit, etc. is recorded on a recording device such as a memory, hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card or DVD. You may store in.
 また、図示した制御線や情報線については、必ずしも製品上全ての制御線や情報線を示すものではなく、実際には殆ど全ての構成が相互に接続されているとしてもよい。 In addition, the illustrated control lines and information lines do not necessarily indicate all control lines and information lines on the product, and actually all the configurations may be mutually connected.
 本発明は、仮想計算機を複製及び初期化することにより新規の仮想計算機を提供する仮想計算機提供システム、仮想計算機提供方法及びプログラムに広く適用することができる。 The present invention can be widely applied to a virtual computer providing system, a virtual computer providing method, and a program for providing a new virtual computer by duplicating and initializing the virtual computer.
1A、1B、1C 仮想計算機提供システム
10       仮想計算機提供サービス管理サーバ装置
1021     複製元仮想計算機検索部
10211    用途検索部
10212    ユーザ名組織名検索部
10213    プログラム名検索部
10214    プログラムライセンス確認部
1023     複製仮想計算機提供部
10231    複製仮想計算機環境初期化部
102311   プログラム追加部
102312   プログラム削除部
102313   仮想計算機データ変更部
102314   接続仮想計算機決定部
10232    接続設定変更部
10233    影響仮想計算機抽出部
1024     必要プログラム一覧作成部
10301    プログラム管理テーブル
10302    仮想計算機イメージ管理テーブル
10303    利用プログラム管理テーブル
10304    プログラムライセンス管理テーブル
10308    依存関係管理テーブル
10310    接続設定値テーブル
10311    接続設定項目テーブル
1A, 1B, 1C Virtual computer provision system 10 Virtual computer provision service management server apparatus 1021 Replication source virtual computer search unit 10211 Usage search unit 10212 User name organization name search unit 10213 Program name search unit 10214 Program license confirmation unit 1023 Provision of duplicate virtual computer Unit 10231 Duplicate virtual machine environment initialization unit 102311 Program addition unit 102312 Program deletion unit 102313 Virtual machine data change unit 102314 Connection virtual machine determination unit 10232 Connection setting change unit 10233 Influence virtual machine extraction unit 1024 Necessary program list creation unit 10301 Program management table 10302 Virtual machine image management table 10303 Use program management table 10304 Program license management table 10308 Dependency management table 10310 Connection setting value table 10311 Connection setting item table

Claims (12)

  1.  ネットワーク上に接続されている既存の仮想計算機群からユーザが要求した要求プログラムを含む仮想計算機を検索する複製元仮想計算機検索部と、
     前記検索した結果得られた仮想計算機を複製及び初期化して新規の仮想計算機を提供する複製仮想計算機提供部と、
     前記既存の仮想計算機群を構成する仮想計算機が利用する利用プログラムを管理するための利用プログラム管理情報、前記利用プログラム間の依存関係を管理するための依存関係管理情報、前記仮想計算機に含まれるユーザ固有データを管理するためのユーザ固有データ管理情報、前記仮想計算機に含まれる組織固有データを管理するための組織固有データ管理情報及び前記仮想計算機に含まれるマシン固有データを管理するためのマシン固有データ管理情報を記憶する記憶部と
     を備え、
     前記複製元仮想計算機検索部は、
     前記利用プログラム管理情報を参照して、前記既存の仮想計算機群から前記要求プログラムを含む仮想計算機を検索し、更に前記依存関係管理情報を参照して、前記要求プログラムを含む仮想計算機から前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索し、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた仮想計算機を複製した後、前記ユーザ固有データ管理情報、前記組織固有データ管理情報及び前記マシン管理情報を参照して、複製した仮想計算機に含まれるユーザ固有データ、組織固有データ及びマシン固有データを削除又は変更することにより前記複製した仮想計算機を初期化する
     ことを特徴とする仮想計算機提供装置。
    A replication source virtual machine search unit for searching for a virtual machine including a request program requested by the user from an existing virtual machine group connected on the network;
    A replicated virtual machine providing unit that replicates and initializes the virtual machine obtained as a result of the search to provide a new virtual machine;
    Use program management information for managing use programs used by virtual machines constituting the existing virtual machine group, dependency management information for managing dependency relationships between the use programs, and users included in the virtual machines User-specific data management information for managing unique data, organization-specific data management information for managing organization-specific data included in the virtual machine, and machine-specific data for managing machine-specific data included in the virtual machine A storage unit for storing management information,
    The replication source virtual machine search unit
    The virtual computer including the request program is searched from the existing virtual computer group with reference to the use program management information, and the request management program is further referred to from the virtual computer including the request program by referring to the dependency management information. Search for virtual machines that contain the programs necessary for the operation of
    The duplicate virtual machine providing unit is:
    After replicating the virtual machine obtained as a result of the search, referring to the user-specific data management information, the organization-specific data management information, and the machine management information, the user-specific data included in the replicated virtual machine, the organization-specific An apparatus for providing a virtual machine, wherein the copied virtual machine is initialized by deleting or changing data and machine-specific data.
  2.  前記記憶部は、
     前記既存の仮想計算機群を構成する仮想計算機の用途、仮想計算機を利用するユーザ及び仮想計算機を利用するユーザが所属する組織のそれぞれを識別する識別情報を管理するための仮想計算機イメージ管理情報を記憶し、
     前記複製元仮想計算機検索部は、
     前記仮想計算機イメージ管理情報を参照して、前記既存の仮想計算機群からユーザが要求した用途、ユーザ又は組織の識別情報の条件を満たす仮想計算機を検索する
     ことを特徴とする請求項1に記載の仮想計算機提供装置。
    The storage unit
    Stores virtual machine image management information for managing identification information for identifying each use of a virtual machine constituting the existing virtual machine group, a user using the virtual machine, and an organization to which the user using the virtual machine belongs And
    The replication source virtual machine search unit
    The virtual machine image management information is referred to, and a virtual machine that satisfies a condition of user, organization or identification information requested by the user from the existing virtual machine group is searched for. Virtual computer providing device.
  3.  前記記憶部は、
     複製専用の仮想計算機として予め定められたプログラムを含む仮想計算機テンプレートを記憶し、
     前記複製元仮想計算機検索部は、
     前記仮想計算機テンプレートを参照して、前記仮想計算機テンプレートから前記要求プログラムを含む仮想計算機を検索し、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた仮想計算機テンプレートを複製及び初期化する
     ことを特徴とする請求項2に記載の仮想計算機提供装置。
    The storage unit
    Storing a virtual machine template including a predetermined program as a virtual machine dedicated to replication;
    The replication source virtual machine search unit
    With reference to the virtual machine template, search for a virtual machine including the request program from the virtual machine template,
    The duplicate virtual machine providing unit is:
    The virtual machine providing apparatus according to claim 2, wherein the virtual machine template obtained as a result of the search is copied and initialized.
  4.  前記依存関係管理情報は、
     前記利用プログラムのうちの何れか一のプログラムの識別情報、前記何れか一のプログラムの動作に必要なプログラムの識別情報、前記何れか一のプログラムの動作に必要なプログラムのバージョン情報及び前記何れか一のプログラムの動作の前提となるアーキテクチャ情報を含んで構成される
     ことを特徴とする請求項3に記載の仮想計算機提供装置。
    The dependency management information is
    Identification information of any one of the programs used, identification information of a program necessary for the operation of any one program, version information of a program necessary for the operation of any one program, and any of the above The virtual machine providing apparatus according to claim 3, comprising architecture information that is a premise of the operation of one program.
  5.  前記複製元仮想計算機検索部は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した結果、前記要求プログラム及び前記要求プログラムの動作に必要なプログラムの全てを含む仮想計算機が得られなかった場合、前記要求プログラム及び前記要求プログラムの動作に必要なプログラムのうち、前記利用プログラムに含まれていないプログラムを不足プログラムとして抽出し、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた何れか一の仮想計算機を複製した後、該複製した仮想計算機に前記不足プログラムを追加する
     ことを特徴とする請求項4に記載の仮想計算機提供装置。
    The replication source virtual machine search unit
    As a result of searching the existing virtual machine group for the virtual machine including the request program and the program necessary for the operation of the request program, a virtual machine including all of the request program and the program necessary for the operation of the request program is obtained. If not, among the programs required for the operation of the requested program and the requested program, a program that is not included in the use program is extracted as a missing program,
    The duplicate virtual machine providing unit is:
    The virtual machine providing apparatus according to claim 4, wherein after copying any one virtual machine obtained as a result of the search, the lacking program is added to the copied virtual machine.
  6.  前記複製元仮想計算機検索部は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した結果、前記要求プログラム及び前記要求プログラムの動作に必要なプログラム以外のプログラムを前記利用プログラムに含む仮想計算機が得られた場合、前記要求プログラム及び前記要求プログラムの動作に必要なプログラム以外のプログラムを不要プログラムとして抽出し、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた何れか一の仮想計算機を複製した後、該複製した仮想計算機から前記不要プログラムを削除する
     ことを特徴とする請求項5に記載の仮想計算機提供装置。
    The replication source virtual machine search unit
    As a result of searching the existing virtual machine group for a virtual machine including the request program and a program necessary for the operation of the request program, a program other than the request program and a program necessary for the operation of the request program is used as the utilization program. When a virtual machine including is obtained, a program other than the request program and a program necessary for the operation of the request program is extracted as an unnecessary program,
    The duplicate virtual machine providing unit is:
    6. The virtual computer providing apparatus according to claim 5, wherein after copying any one virtual computer obtained as a result of the search, the unnecessary program is deleted from the copied virtual computer.
  7.  前記記憶部は、
     前記利用プログラムのライセンスを管理するためのライセンス管理情報を記憶し、
     前記複製元仮想計算機検索部は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した結果、ライセンス上利用できないプログラムを含む仮想計算機が得られた場合、前記ライセンス管理情報を参照して、前記ライセンス上利用できないプログラムを複製不可プログラムとして抽出し、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた何れか一の仮想計算機を複製した後、該複製した仮想計算機から前記複製不可プログラムを削除する
     ことを特徴とする請求項6に記載の仮想計算機提供装置。
    The storage unit
    Storing license management information for managing the license of the program used;
    The replication source virtual machine search unit
    When a virtual machine including a program that cannot be used in a license is obtained as a result of searching the virtual machine including the request program and a program necessary for the operation of the request program from the existing virtual machine group, refer to the license management information. Then, the program that cannot be used on the license is extracted as a non-copyable program,
    The duplicate virtual machine providing unit is:
    The virtual machine providing apparatus according to claim 6, wherein after copying any one virtual machine obtained as a result of the search, the non-replicatable program is deleted from the copied virtual machine.
  8.  前記複製元仮想計算機検索部は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した結果、ライセンス上利用できるプログラムを含む仮想計算機が得られた場合、前記ライセンス管理情報を参照して、前記ライセンス上利用できるプログラムを複製可能プログラムとして抽出し、該抽出した複製可能プログラムの個数から前記不要プログラムの個数を差し引き、差し引いた個数を前記必要プログラムで割る又は前記複製可能プログラムの個数を前記利用プログラムで割ることにより、ユーザの要求を満足させる度合いを示すユーザ要求満足度を算出し、
     前記ユーザ要求満足度を表示するための表示装置を備える
     ことを特徴とする請求項7に記載の仮想計算機提供装置。
    The replication source virtual machine search unit
    When a virtual machine including a program that can be used on a license is obtained as a result of searching the virtual machine including the request program and a program necessary for the operation of the request program from the existing virtual machine group, refer to the license management information. Then, the program that can be used in the license is extracted as a replicable program, the number of unnecessary programs is subtracted from the extracted number of replicable programs, and the subtracted number is divided by the necessary program or the number of replicable programs Is divided by the use program to calculate the user request satisfaction degree indicating the degree of satisfaction of the user request,
    The virtual machine providing device according to claim 7, further comprising a display device for displaying the user request satisfaction degree.
  9.  前記ライセンス管理情報は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した結果、得られた仮想計算機を複製及び初期化した場合にかかるコストの情報を含んで構成され、
     前記複製元仮想計算機検索部は、
     前記既存の仮想計算機群から前記要求プログラム及び前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索した後、前記ライセンス管理情報を参照して、前記検索した結果得られた仮想計算機にかかるコストを抽出し、
     前記表示装置は、
     前記コストを表示する
     ことを特徴とする請求項8に記載の仮想計算機提供装置。
    The license management information is
    As a result of searching for a virtual machine including the required program and a program necessary for the operation of the requested program from the existing virtual machine group, information including cost information when the obtained virtual machine is duplicated and initialized is included. And
    The replication source virtual machine search unit
    The cost of the virtual machine obtained as a result of the search by searching the virtual machine including the request program and the program necessary for the operation of the request program from the existing virtual machine group and referring to the license management information Extract
    The display device
    The virtual machine providing apparatus according to claim 8, wherein the cost is displayed.
  10.  前記記憶部は、
     前記既存の仮想計算機群を構成する仮想計算機が所属するグループを管理するための複数仮想計算機構成情報、前記利用プログラムに接続するための接続設定値を管理するための接続設定値情報及び前記利用プログラムに接続するために変更が必要な接続元のプログラムの設定項目を管理するための接続設定項目情報を記憶し、
     前記複製仮想計算機提供部は、
     前記利用プログラムを参照して、前記複製した仮想計算機に不足している前記不足プログラムを含む仮想計算機を接続先の仮想計算機として抽出し、前記接続設定値情報及び前記接続設定項目情報を参照して、該抽出した接続先の仮想計算機に含まれる不足プログラムを前記複製した仮想計算機に接続することにより前記複製した仮想計算機を初期化する
     ことを特徴とする請求項9に記載の仮想計算機提供装置。
    The storage unit
    Multiple virtual machine configuration information for managing a group to which a virtual machine constituting the existing virtual machine group belongs, connection setting value information for managing a connection setting value for connecting to the usage program, and the usage program Store connection setting item information for managing the setting items of the connection source program that needs to be changed to connect to
    The duplicate virtual machine providing unit is:
    Referring to the utilization program, extract the virtual machine including the lacking program that is lacking in the replicated virtual machine as a connection destination virtual machine, and refer to the connection setting value information and the connection setting item information. The virtual computer providing apparatus according to claim 9, wherein the copied virtual machine is initialized by connecting a deficient program included in the extracted connection-destination virtual machine to the copied virtual machine.
  11.  前記複製仮想計算機提供部は、
     前記利用プログラムを参照して、前記既存の仮想計算機群を構成する仮想計算機に不足している前記不足プログラムを含む前記新規の仮想計算機を接続先の仮想計算機として抽出し、前記接続設定値情報及び前記接続設定項目情報を参照して、該抽出した接続先の仮想計算機に含まれる不足プログラムを前記既存の仮想計算機群を構成する仮想計算機に接続する
     ことを特徴とする請求項10に記載の仮想計算機提供装置。
    The duplicate virtual machine providing unit is:
    Referring to the utilization program, the new virtual machine including the lack program that is lacking in the virtual machines constituting the existing virtual machine group is extracted as a connection destination virtual machine, and the connection setting value information and The virtual program according to claim 10, wherein the shortage program included in the extracted connection-destination virtual machine is connected to a virtual machine constituting the existing virtual machine group by referring to the connection setting item information. Computer providing device.
  12.  複製元仮想計算機検索部により、ネットワーク上に接続されている既存の仮想計算機群からユーザが要求した要求プログラムを含む仮想計算機を検索する第1のステップと、
     複製仮想計算機提供部により、前記検索した結果得られた仮想計算機を複製及び初期化して新規の仮想計算機を提供する第2のステップと、
     記憶部により、前記既存の仮想計算機群を構成する仮想計算機が利用する利用プログラムを管理するための利用プログラム管理情報、前記利用プログラム間の依存関係を管理するための依存関係管理情報、前記仮想計算機に含まれるユーザ固有データを管理するためのユーザ固有データ管理情報、前記仮想計算機に含まれる組織固有データを管理するための組織固有データ管理情報及び前記仮想計算機に含まれるマシン固有データを管理するためのマシン固有データ管理情報を記憶する第3のステップと
     を備え、
     前記第1のステップにおいて、
     前記複製元仮想計算機検索部は、
     前記利用プログラム管理情報を参照して、前記既存の仮想計算機群から前記要求プログラムを含む仮想計算機を検索し、更に前記依存関係管理情報を参照して、前記要求プログラムを含む仮想計算機から前記要求プログラムの動作に必要なプログラムを含む仮想計算機を検索し、
     前記第2のステップにおいて、
     前記複製仮想計算機提供部は、
     前記検索した結果得られた仮想計算機を複製した後、前記ユーザ固有データ管理情報、前記組織固有データ管理情報及び前記マシン管理情報を参照して、複製した仮想計算機に含まれるユーザ固有データ、組織固有データ及びマシン固有データを削除又は変更することにより前記複製した仮想計算機を初期化する
     ことを特徴とする仮想計算機提供方法。 
    A first step of searching for a virtual machine including a request program requested by a user from an existing virtual machine group connected on the network by a copy source virtual machine search unit;
    A second step of providing a new virtual machine by duplicating and initializing the virtual machine obtained as a result of the search by a duplicate virtual machine providing unit;
    Utilization program management information for managing utilization programs used by the virtual machines constituting the existing virtual machine group, dependence management information for managing dependency relations between the utilization programs, and the virtual machines by the storage unit For managing user-specific data management information for managing user-specific data included in the virtual machine, organization-specific data management information for managing organization-specific data included in the virtual machine, and machine-specific data included in the virtual machine A third step of storing machine specific data management information of
    In the first step,
    The replication source virtual machine search unit
    The virtual computer including the request program is searched from the existing virtual computer group with reference to the use program management information, and the request management program is further referred to from the virtual computer including the request program by referring to the dependency management information. Search for virtual machines that contain the programs necessary for the operation of
    In the second step,
    The duplicate virtual machine providing unit is:
    After replicating the virtual machine obtained as a result of the search, referring to the user-specific data management information, the organization-specific data management information, and the machine management information, the user-specific data included in the replicated virtual machine, the organization-specific A method for providing a virtual machine, comprising: initializing the duplicated virtual machine by deleting or changing data and machine-specific data.
PCT/JP2011/005049 2011-09-08 2011-09-08 Virtual computer provision system and provision method WO2013035134A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013532328A JP5732138B2 (en) 2011-09-08 2011-09-08 Virtual computer providing system and providing method
PCT/JP2011/005049 WO2013035134A1 (en) 2011-09-08 2011-09-08 Virtual computer provision system and provision method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/005049 WO2013035134A1 (en) 2011-09-08 2011-09-08 Virtual computer provision system and provision method

Publications (1)

Publication Number Publication Date
WO2013035134A1 true WO2013035134A1 (en) 2013-03-14

Family

ID=47831625

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/005049 WO2013035134A1 (en) 2011-09-08 2011-09-08 Virtual computer provision system and provision method

Country Status (2)

Country Link
JP (1) JP5732138B2 (en)
WO (1) WO2013035134A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016181091A (en) * 2015-03-24 2016-10-13 日本電気株式会社 Information management apparatus, information management method, information management program, data structure, and software asset management system
WO2018011895A1 (en) * 2016-07-12 2018-01-18 株式会社日立製作所 Data processing flow management system and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005332223A (en) * 2004-05-20 2005-12-02 Ntt Data Corp Virtual machine management system
JP2009532757A (en) * 2006-03-30 2009-09-10 マイクロソフト コーポレーション How to generate a template for offline resources
JP2009230655A (en) * 2008-03-25 2009-10-08 Nec Corp Deployment acceleration system of virtual machine, its method and its program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8245217B2 (en) * 2007-10-12 2012-08-14 Microsoft Corporation Management of software and operating system updates required for the process of creating a virtual machine facsimile of an existing physical or virtual machine
JP2010287081A (en) * 2009-06-12 2010-12-24 Nippon Telegr & Teleph Corp <Ntt> Device, method and program for managing license

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005332223A (en) * 2004-05-20 2005-12-02 Ntt Data Corp Virtual machine management system
JP2009532757A (en) * 2006-03-30 2009-09-10 マイクロソフト コーポレーション How to generate a template for offline resources
JP2009230655A (en) * 2008-03-25 2009-10-08 Nec Corp Deployment acceleration system of virtual machine, its method and its program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHINJO HATTA: "Tokushu SD-ryu Kasoka Gijutsu Full Course [Migration Hen] (4) Software Betsu Butsuri - Kaso Kankyo Migration Guide VMware Kankyo eno OP2V Migration", SOFTWAREDESIGN, no. 218, 18 December 2008 (2008-12-18), pages 43 - 49 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016181091A (en) * 2015-03-24 2016-10-13 日本電気株式会社 Information management apparatus, information management method, information management program, data structure, and software asset management system
WO2018011895A1 (en) * 2016-07-12 2018-01-18 株式会社日立製作所 Data processing flow management system and method
JPWO2018011895A1 (en) * 2016-07-12 2018-11-08 株式会社日立製作所 Data processing flow management system and method

Also Published As

Publication number Publication date
JP5732138B2 (en) 2015-06-10
JPWO2013035134A1 (en) 2015-03-23

Similar Documents

Publication Publication Date Title
US10222983B2 (en) Storage management computer and management method of storage apparatus
US10585691B2 (en) Distribution system, computer, and arrangement method for virtual machine
US9513938B2 (en) Virtual appliance integration with cloud management software
US20120266170A1 (en) Virtual Machine Image Management System and Methods
JP4143611B2 (en) Backup generation device, recovery processing device, backup generation method, recovery processing method, and program
US20110107327A1 (en) Assisting server migration
JP2019512816A (en) Method and apparatus for arranging page resources
JP2014038364A (en) Resource management server, resource management method and resource management program
CN109952564A (en) The formation and manipulation of test data in Database Systems
JP5630190B2 (en) Update management apparatus, update management method, and update management program
CN101681256A (en) It automation appliance imaging system and method
JP6763245B2 (en) Information processing equipment and information processing programs
JP5788006B2 (en) Computer system and management method thereof
US9461884B2 (en) Information management device and computer-readable medium recorded therein information management program
JP2021039393A (en) Packaging support system and packaging support method
JP5732138B2 (en) Virtual computer providing system and providing method
JP6442642B2 (en) Management system and management method for managing computer system
JP4846736B2 (en) Parallel processing support device
JP6422346B2 (en) Program generation apparatus and program generation method
JP2014032503A (en) Cloning method, system and program that takes into account security
JP7141908B2 (en) Data management system and data management method
JP6040836B2 (en) Execution control program, execution control method, and network system
JP7166904B2 (en) Information processing system and control method
JP2007080205A (en) Retrieval apparatus and retrieval method
JP6865367B2 (en) Information processing equipment and information processing programs

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013532328

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11872075

Country of ref document: EP

Kind code of ref document: A1