WO2013157124A1 - ライセンス管理システム、管理サーバ及び管理方法 - Google Patents

ライセンス管理システム、管理サーバ及び管理方法 Download PDF

Info

Publication number
WO2013157124A1
WO2013157124A1 PCT/JP2012/060605 JP2012060605W WO2013157124A1 WO 2013157124 A1 WO2013157124 A1 WO 2013157124A1 JP 2012060605 W JP2012060605 W JP 2012060605W WO 2013157124 A1 WO2013157124 A1 WO 2013157124A1
Authority
WO
WIPO (PCT)
Prior art keywords
software
virtual machine
license information
license
restored
Prior art date
Application number
PCT/JP2012/060605
Other languages
English (en)
French (fr)
Inventor
真 山浦
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2012/060605 priority Critical patent/WO2013157124A1/ja
Publication of WO2013157124A1 publication Critical patent/WO2013157124A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities

Definitions

  • the present invention relates to a license management system, a management server, and a management method.
  • the present invention when restoring a virtual machine, the present invention is applied to a license management system, a management server, and a management method for managing a license of software installed in the restored virtual machine. And suitable.
  • the administrator does not copy software illegally in compliance with the compliance, but may violate the compliance unintentionally.
  • VM Virtual Machine
  • the same software may be installed on multiple unlicensed virtual machines by cloning and restoring specific to the virtual machine .
  • software is also installed in a virtual machine that is not originally licensed, and the administrator unintentionally violates compliance.
  • cloning information is generated by first generating identification information for identifying each of a plurality of virtual machines generated in a physical computer and registering the identification information in a license server.
  • a technology is disclosed that prevents the same license from being used twice even for a virtual machine that has been configured.
  • the license is restored as well.
  • the software has a license duplicated with the license installed in another virtual machine, it can be freely used. Therefore, the license cannot be properly managed.
  • the present invention has been made in consideration of the above points, and proposes a license management system, a management server, and a management method capable of appropriately managing a license of software installed in a virtual machine when restoring the virtual machine. It is what.
  • the management server includes a plurality of virtual machines. If any one of the virtual machines is restored, the license information of the software restored to the one virtual machine and the license information of the software installed in another virtual machine different from the one virtual machine are displayed. If there is license information that is used redundantly, the software associated with any one of the license information that is used redundantly is either one virtual machine or another virtual machine. It is characterized by uninstalling from the virtual machine.
  • the management server restores any one of the plurality of virtual machines. If the license information of the software restored to the one virtual machine is compared with the license information of the software installed in another virtual machine different from the one virtual machine, If there is license information that exists, uninstall the software associated with one of the duplicate license information from one virtual machine or the other virtual machine It is characterized by.
  • a management method for a license management system comprising a physical computer in which a plurality of virtual machines are created and a management server connected to the physical computer.
  • a first step of managing a plurality of virtual machines, software installed in each of the plurality of virtual machines, and license information related to each of the software, and any one of the plurality of virtual machines When one virtual machine is restored, the software license information restored to one virtual machine is compared with the license information of software installed on another virtual machine that is different from the one virtual machine. If there is license information that is being used for Or one of the license information software associated with, characterized in that it comprises a second step of either uninstalled from one virtual machine of one virtual machine or other virtual machines.
  • FIG. 1 shows the overall configuration of the license management system 1.
  • the license management system 1 includes a management system 10, a physical computer 20, a VM management server 30, a license distribution server 40, and a browser computer 50.
  • the management system 10 the physical computer 20, the VM management server 30, the license distribution server 40, and the browser computer 50 are communicably connected to each other via a network N1 such as a LAN (Local Area Network).
  • a network N1 such as a LAN (Local Area Network).
  • the management system 10 includes a management server 101 and a display computer 102, and manages a physical computer 20 and a plurality of virtual machines (VM: Virtual Machine) created by the physical computer 20 (not shown).
  • VM Virtual Machine
  • the management server 101 is a computer that includes a CPU (Central Processing Unit), a RAM (Random Access Memory), a ROM (Read Only Memory), and the like.
  • a virtual machine has been created, deleted or restored from the physical computer 20 and that a snapshot has been created or deleted via the network N1
  • the software license is triggered by the detection.
  • Various processes for managing are executed.
  • the display computer 102 includes a display screen such as an LCD (Liquid Crystal Display) and displays various types of information managed by the management server 101.
  • the display computer 102 includes a user interface such as a keyboard and a mouse, and receives input from an administrator via the user interface.
  • the physical computer 20 is a computer configured with a CPU, a RAM, a ROM, and the like.
  • the physical computer 20 includes software called hypervisor software (not shown), and creates a virtual machine, which is a virtual hardware environment, using the hypervisor software.
  • the VM management server 30 is a computer that includes a CPU, a RAM, a ROM, and the like.
  • the VM management server 30 manages a plurality of virtual machines created by the physical computer 20 via the network N1, and detects that a virtual machine has been created, deleted or restored and that a snapshot has been created or deleted. Then, the detected creation, deletion, or restoration information is notified to the management server 101.
  • the license distribution server 40 is a computer configured with a CPU, a RAM, a ROM, and the like.
  • the license distribution server 40 includes a correspondence table that associates the software license key with the identification information of the physical computer 20 or virtual machine that uses the license key.
  • the license distribution server 40 When the license distribution server 40 receives the software activation request, the license distribution server 40 refers to the correspondence table to determine whether the activation is permitted or denied. When permitting activation, the license distribution server 40 registers the software license key and the identification information of the physical computer 20 or virtual machine that uses the license key in the correspondence table, and requests activation permission notification. It returns to the original physical computer 20 or virtual machine. On the other hand, when the license distribution server 40 rejects the activation, the license distribution server 40 returns an activation rejection notification to the requesting physical computer 20 or the virtual machine.
  • the license distribution server 40 When the license distribution server 40 receives the software deactivation request, the license distribution server 40 refers to the correspondence table and associates the software license key with the identification information of the physical computer 20 or the virtual machine using the license key. And the association between the license key and the identification information of the physical computer 20 or the virtual machine is released.
  • the browser computer 50 includes a display screen such as an LCD, and displays various types of information managed by the virtual machine in the physical computer 20.
  • the browser computer 50 includes a user interface such as a keyboard and a mouse, and receives input from an administrator via the user interface.
  • FIG. 2 shows a functional configuration of the management server 101.
  • the management server 101 includes a control unit 201, an input / output device 202, a network I / F 203, and a storage unit 204.
  • the control unit 201 includes a CPU, a RAM, a ROM, and the like, and the CPU comprehensively controls the operation of the management server 101 in cooperation with various programs stored in the RAM, the ROM, or the storage unit 204.
  • the input / output device 202 includes a keyboard, a mouse, a USB (Universal Serial Bus), a digital camera, a scanner, a microphone, and the like, and inputs or outputs various types of information using these devices.
  • USB Universal Serial Bus
  • the network I / F 203 includes a network adapter, and transmits / receives various information via the network N1.
  • the storage unit 204 is composed of, for example, a semiconductor memory or a hard disk device.
  • the storage unit 204 stores a license management software 205, a software management table 206, a VM configuration management table 207, and a restore rule management table 208.
  • the license management software 205 is one of various programs stored in the storage unit 204, and executes various processes described later in cooperation with the control unit 201. Details of the software management table 206, the VM configuration management table 207, and the restore rule management table 208 will be described later.
  • FIG. 3 shows a functional configuration of the display computer 102.
  • the display computer 102 includes a control unit 301, an input / output device 302, a network I / F 303 and a storage unit 304, a browser 305, and a display unit 306.
  • the control unit 301 is configured to include a CPU, a RAM, a ROM, and the like, and the CPU comprehensively controls the operation of the display computer 102 in cooperation with various programs stored in the RAM, the ROM, or the storage unit 304. .
  • the input / output device 302 includes a keyboard, a mouse, a USB (Universal Serial Bus), a digital camera, a scanner, a microphone, and the like, and inputs or outputs various types of information using these devices.
  • a keyboard a mouse
  • a USB Universal Serial Bus
  • digital camera a digital camera
  • scanner a scanner
  • microphone a microphone
  • the network I / F 303 includes a network adapter, and transmits and receives various kinds of information via the network N1.
  • the storage unit 304 includes a browser 305, and displays various screens on the display unit 306 in cooperation with the browser 305 and the control unit 301.
  • the display unit 306 includes a display screen such as an LCD, and displays various information managed by the management server 101, for example.
  • FIG. 4 shows a functional configuration of the physical computer 20.
  • the physical computer 20 includes a control unit 401, an input / output device 402, a network I / F 403, and a storage unit 404.
  • the control unit 401 includes a CPU, a RAM, a ROM, and the like, and the CPU comprehensively controls the operation of the physical computer 20 in cooperation with various programs stored in the RAM, the ROM, or the storage unit 404.
  • the input / output device 402 includes a keyboard, a mouse, a USB (Universal Serial Bus), a digital camera, a scanner, a microphone, and the like, and inputs or outputs various types of information using these devices.
  • a keyboard a mouse
  • a USB Universal Serial Bus
  • digital camera a digital camera
  • scanner a scanner
  • microphone a microphone
  • the network I / F 403 includes a network adapter, and transmits and receives various types of information via the network N1.
  • the storage unit 404 includes a hypervisor software 405, a virtual machine 406, and monitoring software 410, and the virtual machine 406 includes an OS (Operating System) 407, software 408, and terminal management software 409.
  • OS Operating System
  • the hypervisor software 405 is software for creating a plurality of virtual machines 406 on the storage unit 404.
  • the virtual machine 406 is a virtual computer machine created by the hypervisor software 405.
  • the OS 407 is basic software for managing the entire virtual machine 406.
  • the software 408 is application software installed in the virtual machine 406.
  • the terminal management software 409 is software for collecting information (configuration information) of the software 408 installed in the virtual machine 406 and transmitting the collected configuration information to the management server 101.
  • the terminal management software 409 is software for deleting the software 408 installed in the virtual machine 406.
  • the monitoring software 410 detects the creation, deletion, or restoration, and the detected creation, deletion, or restore information Is sent to the management server 101.
  • the monitoring software 410 also installs terminal management software 409 in the virtual machine 406 based on an instruction from the management server 101.
  • FIG. 5 is a conceptual diagram of the software management table 206.
  • the software management table 206 is a table for managing the installation status of software installed in the license management system 1.
  • the software management table 206 includes a host identifier field 2061, an installed software name field 2062, and a license key field 2063.
  • the host identifier field 2061 an identifier for identifying the virtual machine 406 in the license management system 1 is stored.
  • the installed software name field 2062 stores an identifier for identifying the software name installed in the virtual machine 406.
  • the license key field 2063 stores an identifier for identifying the license key of the software.
  • the software with the software names “softwareA” and “softwareB” is installed in the virtual machine 406 with the host identifier “#AAAAAAAA”, and the license key for “softwareA” is “L001”.
  • the license key for “software B” is “L002”.
  • the software with the software name “softwareA” is also installed in another virtual machine 406 whose host identifier is “#BBBBBBBB”, and the license key for “softwareA” installed in this other virtual machine 406 is “L003” is indicated.
  • FIG. 6 is a conceptual diagram of the VM configuration management table 207.
  • the VM configuration management table 207 is a table for managing snapshot information of the virtual machine 406 created in the license management system 1.
  • the VM configuration management table 207 includes a snapshot ID field 2071, a host identifier field 2072, an installed software name field 2073, a license key field 2074, and a creation date / time field 2075.
  • the snapshot ID field 2071 stores an identifier for identifying a snapshot in the license management system 1.
  • the host identifier field 2072 stores an identifier for identifying the virtual machine 406 in the license management system 1.
  • the installed software name column 2073 stores an identifier for identifying the software name installed in the virtual machine 406.
  • the license key column 2074 stores an identifier for identifying the license key of the software.
  • the creation date / time column 2075 stores information on the date / time when the snapshot was created.
  • the snapshot with the snapshot ID “S001” is a snapshot of the virtual machine 406 with the host identifier “#AAAAAAAA”, and the snapshot with “S001” includes “softwareA” and Software having a software name “softwareB” is installed, the license key for “softwareA” is “L001”, and the license key for “softwareB” is “L002”. Further, it is indicated that the snapshot of “S001” was created at “20xx / xx /. In the case of FIG. 6, there are two snapshots with the snapshot ID “S001”, and these two snapshots are the same. Therefore, the creation date and time of these two snapshots are also the same.
  • FIG. 7 shows a conceptual diagram of the restore rule management table 208.
  • the restore rule management table 208 is a table for managing the restoration of the license of the software installed in the snapshot when the virtual machine 406 is restored using the snapshot at a certain point in time.
  • the restore rule management table 208 includes a snapshot ID column 2081 and a license restore column 2082.
  • the snapshot ID field 2081 stores an identifier for identifying a snapshot in the license management system 1.
  • the license restore field 2082 stores a flag indicating whether or not to restore the license key when restoring.
  • the flag stored in the license restore field 2082 is automatically set to any one of ON and OFF preset in the management server 101. The setting of this flag can be set and changed in the display computer 102.
  • FIG. 8 shows a screen configuration example of the usage license list screen 1000.
  • the usage license list screen 1000 is a screen for confirming the usage status of software in the license management system 1, and is displayed by the display unit 306 of the display computer 102.
  • the use license list screen 1000 includes an input field 1001, a search execution button 1002, and a search result display area 1003.
  • the input field 1001 is an area for inputting a software name via the input / output device 302.
  • the search execution button 1002 is a button for pressing through the input / output device 302.
  • the control unit 201 of the management server 101 searches for the license status of the software having the input software name.
  • the control unit 201 of the management server 101 searches for the usage status of all software in the license management system 1.
  • the search result display area 1003 is an area in which a result searched by the control unit 201 of the management server 101 is displayed as a search result.
  • the search result display area 1003 includes a software name column 10031, a license holding number column 10032, a current usage number column 10033, and a snapshot usage number column 10034.
  • the software name column 10031 an identifier for identifying a software name installed in the virtual machine 406 is stored.
  • the license holding number column 10032 stores the number of licenses held in the license management system 1.
  • the current usage number column 10033 stores the number of license usages currently used in the license management system 1.
  • the number-of-uses in the snapshot field 10034 stores the number of licenses used for the software installed in the snapshot.
  • the usage status of the software in the license management system 1 is searched by the control unit 201 of the management server 101.
  • the usage status of “software A” to “software D” is displayed as a search result.
  • the license management system 1 has “30” licenses, the license management system 1 currently uses “30” licenses, and snapshots are stored. It is indicated that the number of licenses used is “35”.
  • the use license list screen 1000 in FIG. 8 allows the administrator to grasp not only the usage status of the currently used software license but also the usage status of the software license used in the snapshot. .
  • FIG. 9 shows a screen configuration example of the usage license details screen 1010.
  • the use license detail screen 1010 is a screen for confirming the virtual machine 406 and snapshots that use one software, and is displayed by the display unit 306 of the display computer 102.
  • the usage license details screen 1010 is configured from a software A usage list area 1011, and the software A usage list area 1011 is configured from a host identification ID column 10111 and a snapshot ID column 10112.
  • a case will be described where the number of software A license usages is pressed in the in-snapshot usage number field 10034 of the usage license list screen 1000 of FIG.
  • the host identification ID column 10111 stores an identifier for identifying the virtual machine 406 in the license management system 1.
  • the snapshot ID column 10112 stores an identifier for identifying a snapshot in the license management system 1.
  • the virtual machine 406 in which the software with the software name “softwareA” is installed and used is indicated that the identifiers are “#AAAAAAAA”, “#BBBBBBBB”, and “#CCCCCCC”. Yes.
  • the snapshots in which the software with the software name “softwareA” is installed and used have the identifiers “S001” to “S004”.
  • the use license details screen 1010 in FIG. 9 allows the administrator to grasp the snapshot that uses the selected software. For example, when the software license is to be deleted, the selected software is installed. The deletion of the license can be notified to the virtual machine 406 corresponding to the snapshot that has been made.
  • FIG. 10 shows a screen configuration example of the snapshot software usage list screen 1100.
  • the snapshot software usage list screen 1100 is a screen for confirming the usage status of software used in one snapshot, and is displayed by the display unit 306 of the display computer 102.
  • the snapshot software usage list screen 1100 includes a snapshot software usage area 1101, and the snapshot software usage area 1101 includes a software name column 11011 and a license key column 11012.
  • the snapshot ID of S001 is pressed in the snapshot ID column 10112 of the usage license details screen 1010 of FIG.
  • the software name column 11011 stores an identifier for identifying the software name installed in the snapshot whose snapshot ID is S001.
  • the license key column 11012 stores an identifier for identifying the license key of the software.
  • the snapshot software usage list screen 1100 in FIG. 10 allows the administrator to grasp the software used in the selected snapshot.
  • FIG. 11 shows a processing procedure for software management table creation processing. This software management table creation process is executed when the virtual machine 406 is created in the physical computer 20. As a result of the software management table creation processing, the software management table 206 described with reference to FIG. 5 is created.
  • This software management table creation process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects the creation of the virtual machine 406 from the monitoring software 410 of the physical computer 20 via the network N1 (SP1).
  • the monitoring software 410 detects the creation, deletion, or restoration when the virtual machine 406 is created or deleted by the hypervisor software 405, or the snapshot is created, deleted, or restored, and the detected creation, deletion, or restoration is detected. This is software that notifies the management server 101 of information.
  • control unit 201 instructs the monitoring software 410 to install the terminal management software 409 in the created virtual machine 406 (SP2).
  • control unit 201 instructs the terminal management software 409 to collect the configuration information of the virtual machine 406 (SP3).
  • the terminal management software 409 Upon receiving an instruction from the control unit 201, the terminal management software 409 collects at least the host identifier and all software names installed in the virtual machine 406 as configuration information of the virtual machine 406, and collects the collected virtual machine
  • the configuration information 406 is transmitted to the control unit 201.
  • control unit 201 receives the configuration information of the virtual machine 406 transmitted from the terminal management software 409 (SP4).
  • control unit 201 stores the received configuration information of the virtual machine 406 in the software management table 206, registers a license key (SP5), and ends this software management table creation processing.
  • an arbitrary key may be set and registered by the administrator, or predetermined keys may be set and registered sequentially by the control unit 201.
  • FIG. 12 shows the processing procedure of the VM configuration management table creation process.
  • This VM configuration management table creation process is executed when a snapshot of the virtual machine 406 is created in the physical computer 20. Further, as a result of the VM configuration management table creation processing, the VM configuration management table 207 and the restore rule management table 208 described with reference to FIGS. 6 and 7 are created.
  • This VM configuration management table creation process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects the creation of a snapshot from the monitoring software 410 of the physical computer 20 via the network N1 (SP11).
  • control unit 201 instructs the terminal management software 409 to collect the configuration information of the virtual machine 406 that created the snapshot (SP12).
  • the terminal management software 409 Upon receiving an instruction from the control unit 201, the terminal management software 409 collects at least the host identifier, the names of all software installed in the virtual machine 406, and the snapshot creation date and time as configuration information of the virtual machine 406. The collected configuration information of the virtual machine 406 is transmitted to the control unit 201.
  • control unit 201 receives the configuration information of the virtual machine 406 transmitted from the terminal management software 409, and updates the software management table 206 using the received configuration information (SP13).
  • control unit 201 refers to the updated software management table 206 and searches and extracts a record that matches the host identifier in the configuration information of the virtual machine 406 received in step SP13 (SP14).
  • control unit 201 stores information (here, the host identifier, installed software name, and license key) included in the extracted record in the VM configuration management table 207, and stores the snapshot ID and the snapshot creation date and time. (SP15).
  • control unit 201 stores the snapshot ID stored in the VM configuration management table 207 in step SP15 in the restore rule management table 208 and sets the license restore flag to either ON or OFF (SP16). This VM configuration management table creation process is terminated.
  • the license restoration flag may be set to either ON or OFF by the administrator, or may be set to either ON or OFF predetermined by the control unit 201.
  • FIG. 13 shows the processing procedure of the VM configuration management table deletion process.
  • This VM configuration management table deletion process is executed when the virtual machine 406 is deleted in the physical computer 20.
  • specific records in the VM configuration management table 207 and the restore rule management table 208 described with reference to FIGS. 6 and 7 are deleted and updated.
  • This VM configuration management table deletion process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects deletion of a snapshot from the monitoring software 410 of the physical computer 20 via the network N1 (SP21).
  • the control unit 201 detects deletion of the snapshot, here, at least the host identifier of the virtual machine 406 corresponding to the deleted snapshot and the creation date / time of the deleted snapshot are acquired as snapshot deletion information. To do.
  • control unit 201 refers to the VM configuration management table 207, searches for the record that matches the host identifier in the snapshot deletion information acquired in step SP21, and uses the record obtained as the search result as the VM configuration management table. It is deleted from 207 (SP22).
  • control unit 201 refers to the restore rule management table 208, searches for a record that matches the snapshot ID of the record deleted in step SP22, and deletes the record obtained as a search result from the restore rule management table 208. (SP23), this VM configuration management table deletion process is terminated.
  • FIG. 14 shows a processing procedure of license management processing.
  • This license management process is executed when the virtual machine 406 is restored by the snapshot in the physical computer 20.
  • this license management process can prevent duplicate use of licenses in the license management system 1 as a result.
  • This license management process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects restoration of the virtual machine 406 from the monitoring software 410 of the physical computer 20 via the network N1 (SP31).
  • control unit 201 when detecting the restoration of the virtual machine 406, the control unit 201 obtains at least the host identifier of the virtual machine 406 to be restored and the creation date and time of the snapshot used for the restoration as restore information.
  • control unit 201 refers to the VM configuration management table 207 to search for and extract a record (restore target record) that matches the host identifier and the snapshot creation date / time in the restore information acquired in step SP31 (SP32). ).
  • control unit 201 refers to the software management table 206 to determine whether there is a record (restore target record) that matches the software name and license key of any one of the restore target records extracted in step SP32. (SP33).
  • control unit 201 determines that the license of the software installed in the restored virtual machine 406 has been lost.
  • the terminal management software 409 of the virtual machine 406 that detected the restoration is instructed to uninstall the software that was the search target in step SP33 (SP34).
  • control unit 201 refers to the software management table 206 for all the restore target records extracted in step SP32 and determines whether or not there is a matching record (SP35).
  • control unit 201 If the control unit 201 obtains a negative result in this determination, it moves to step SP33 and refers to the software management table 206 to search for another restore target record. On the other hand, if the control unit 201 obtains a positive result in this determination, it ends this license management process.
  • step SP33 if there is a record that matches the restore target record in the search of step SP33, the control unit 201 determines that the license of the software installed in the virtual machine 406 after the restore is not lost. Then, it is determined whether or not the host identifier included in the restore target record of the software management table 206 matches the host identifier included in the restore information (SP36).
  • control unit 201 determines that the same software is not used (installed) redundantly in other virtual machines 406 other than the restored virtual machine 406, and the step Move to SP35.
  • the control unit 201 obtains a positive result in step SP35, the license management process ends.
  • control unit 201 when the control unit 201 obtains a negative result in the determination at step SP36, the same software is redundantly installed and used in other virtual machines 406 other than the restored virtual machine 406. Judge. Then, the control unit 201 refers to the restore rule management table 208, searches for and extracts a record that matches the snapshot ID included in the restore target record extracted from the VM configuration management table 207 in step SP32, and extracts the license restore column 2082. It is determined whether or not the flag is ON (SP37).
  • control unit 201 obtains a negative result in this determination, the virtual machine after restoring the software to be used by the plurality of virtual machines 406 by the restore to the terminal management software 409 of the virtual machine 406 that detected the restore It is instructed to be deleted from 406 (SP38).
  • control part 201 transfers to step SP35 after step SP38, and will complete
  • step SP37 when the control unit 201 obtains an affirmative result in the determination of step SP37, the control unit 201 restores the terminal management software 409 of the virtual machine 406 of the host identifier included in the restore target record that matches in the search process of step SP33. An instruction is given to delete the software included in the target record (SP39).
  • control unit 201 updates the software management table 206 by changing the host identifier included in the restore target record matched in the search process of step SP33 to the host identifier included in the restore information (SP40).
  • control part 201 transfers to step SP35 after step SP40, and will complete
  • FIG. 15 shows a processing procedure for software management table update processing.
  • This software management table update process is executed when the software in the virtual machine 406 is installed or uninstalled.
  • the management server 101 can always hold the latest software management table 206.
  • This software management table update process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects installation or uninstallation of software from the terminal management software 409 to the virtual machine 406 via the network N1 (SP51).
  • control unit 201 detects the installation or uninstallation of software in the virtual machine 406, here, at least the host identifier of the virtual machine 406 to be installed or uninstalled and the name of the software to be installed or uninstalled are updated information. Get as.
  • control unit 201 adds the host identifier and software name included in the acquired update information to the software management table 206 and updates the license key by registering it (SP52), and ends the software management table update process. To do.
  • an arbitrary key may be set and registered by the administrator, or predetermined keys may be set and registered sequentially by the control unit 201.
  • FIG. 16 shows the processing procedure of the usage license list screen display processing.
  • This use license list screen display process is executed when the search execution button 1002 is pressed in the use license list screen 1000 of FIG. Further, as a result of the use license list screen display processing, the search result is displayed in the search result display area 1003 described with reference to FIG.
  • This use license list screen display process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects pressing of the search execution button 1002 from the display computer 102 (SP61).
  • control unit 201 detects that the search execution button 1002 is pressed, the control unit 201 acquires information input in the input field 1001 or information that has not been input as input field information.
  • control unit 201 determines whether there is a software name input in the input field 1001 based on the input field information (SP62).
  • control unit 201 obtains a negative result in this determination, it refers to the software management table 206 and executes a count process for the number of licenses held, the number of current uses, and the number of uses in snapshot for all software names (SP63). ).
  • control unit 201 when it obtains a positive result in the determination at step SP62, it refers to the software management table 206 to determine the number of licenses held, the number of current uses, and the number of uses in the snapshot for the input software name. Count processing is executed (SP64).
  • control unit 201 refers to the software management table 206 and counts the number of records including a software name that matches one software name.
  • control unit 201 refers to the software management table 206 and is a record including a software name that matches one software name and stores a host identifier. Count the number of records that have been recorded.
  • control unit 201 refers to the VM configuration management table 207 and counts the number of records including a software name that matches one software name. Note that the control unit 201 counts the records that differ only in the snapshot ID as one count.
  • the control unit 201 displays the number of licenses held, the current number of uses, and the number of uses in the snapshot on the use license list screen 1000 by the display computer 102 (SP65), and this use license list screen display process. Exit.
  • FIG. 17 shows the processing procedure of the usage license details screen display processing.
  • This usage license detail screen display process is executed when one of the usage numbers in the snapshot 100341 stored in the usage number in snapshot field 10034 is pressed in the usage license list screen 1000 of FIG. .
  • the usage license details screen 1010 described in FIG. 9 is displayed by this usage license details screen display processing.
  • This usage license detail screen display process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects the pressing of the in-snapshot usage count 100341 from the display computer 102 (SP71).
  • control unit 201 detects the pressing of the in-snapshot usage number 100311, the control unit 201 acquires software name information corresponding to the pressed in-snapshot usage number 10031 as corresponding software name information.
  • control unit 201 refers to the VM configuration management table 207 to search for a record including a software name that matches the software name included in the corresponding software name information (SP72).
  • control unit 201 acquires a snapshot ID and a host identifier from the record obtained as a search result in step SP72 (SP73).
  • control unit 201 displays the acquired snapshot ID and host identifier on the usage license details screen 1010 by the display computer 102 (SP74), and ends this usage license details screen display processing.
  • FIG. 18 shows a processing procedure of snapshot software usage list screen display processing.
  • This snapshot software usage list screen display process is executed when one of the snapshot IDs 101121 stored in the snapshot ID column 10112 is pressed on the usage license details screen 1010 of FIG. Further, as a result of the snapshot software usage list screen display processing, the snapshot software usage list screen 1100 described with reference to FIG. 10 is displayed.
  • This snapshot software usage list screen display process is executed in cooperation with the control unit 201 of the management server 101 and various programs stored in the storage unit 204.
  • the control unit 201 will be described as a processing subject.
  • control unit 201 detects pressing of the snapshot ID 101121 from the display computer 102 (SP81).
  • control unit 201 acquires information on the pressed snapshot ID when detecting the pressing of the snapshot ID 101121.
  • control unit 201 refers to the VM configuration management table 207 and searches for a record including a snapshot ID that matches the pressed snapshot ID (SP82).
  • control unit 201 acquires a software name and a license key from the record obtained as a search result in step SP82 (SP83).
  • control unit 201 displays the acquired software name and license key on the snapshot software usage list screen 1100 by the display computer 102 (SP84), and ends this snapshot software usage list screen display processing.
  • the software installed in each virtual machine 406 and the license key can be managed in association with each other.
  • the license of the software in the license management system 1 is appropriately set. Can be managed.
  • the control unit 201 creates a snapshot after creating a snapshot of the virtual machine 406.
  • the case where the configuration information of the virtual machine 406 at the time of detection is acquired has been described.
  • the present invention is not limited to this, for example, before the snapshot of the virtual machine 406 is created, It is also possible to detect the creation of a snapshot due to the actual creation of the snapshot after detecting the pre-creation notification to be notified and acquiring the configuration information of the virtual machine 406 when the pre-creation notification is detected. In this case, the configuration information of the virtual machine 406 before the snapshot is created can be acquired.
  • the present invention can be used in a management server for appropriately managing software licenses in a computer system including a virtual machine.
  • license management system 10 management system 101 management server 201 control unit 204 storage unit 102 display computer 20 physical computer 30 VM management server 40 license distribution server 50 browser computer 206 software management table 207 VM configuration management table 208 restore rule management table 1000 License list screen 1010 Usage license details screen 1100 Snapshot software usage list screen

Abstract

【課題】仮想マシンをリストアする場合に仮想マシンにインストールされているソフトウェアのライセンスを適切に管理し得るライセンス管理システム、管理サーバ及び管理方法を提供する。 【解決手段】複数の仮想マシンを作成する物理計算機と、物理計算機に接続される管理サーバとを備え、管理サーバは、複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、一の仮想マシンにリストアされたソフトウェアのライセンスと、一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンスとを比較して、重複して利用されているライセンスがある場合、重複して利用されている何れか一方のライセンスを含むソフトウェアを一の仮想マシン又は他の仮想マシンのうち何れか一方の仮想マシンからアンインストールすることを特徴とするライセンス管理システム。

Description

ライセンス管理システム、管理サーバ及び管理方法
 本発明は、ライセンス管理システム、管理サーバ及び管理方法に関し、特に仮想マシンをリストアする場合、リストアした仮想マシンにインストールされているソフトウェアのライセンスを管理するライセンス管理システム、管理サーバ及び管理方法に適用して好適なものである。
 近年、ソフトウェアのライセンス管理に関し、コンプライアンスの遵守が重要とされている。例えばライセンスを受けた一の物理計算からソフトウェアを違法にコピーし、ライセンスを受けていない他の物理計算機にインストールするような場合、コンプライアンス違反となる。コンプライアンス違反をした企業は、その代償として損害賠償訴訟等の金銭的損失や信用失墜等の社会的損失を負うことになる。
 通常、管理者はコンプライアンスを遵守してソフトウェアを違法にコピーすることはないが、意図せずコンプライアンスに違反してしまう場合がある。例えば物理計算機において複数の仮想マシン(VM:Virtual Machine)が生成されているような場合、仮想マシン特有のクローニング及びリストアにより、同一のソフトウェアがライセンスのない複数の仮想マシンにインストールされる場合がある。この場合、一の物理計算機において、本来ライセンスを受けていない仮想マシンにもソフトウェアがインストールされてしまうことになり、管理者は意図せずコンプライアンスに違反してしまうこととなる。
 このように、物理計算機だけでなく仮想マシンについてもソフトウェアのライセンスを管理しようとする場合、そのライセンスを適切に管理してコンプライアンスを遵守することは困難である。
 そこで、特許文献1には、物理計算機に生成された複数の仮想マシンのそれぞれを識別するための識別情報をソフトウェアの初回起動時に生成して、その識別情報をライセンスサーバに登録することにより、クローニングされた仮想マシンであっても同一のライセンスが二重利用されることを抑止する技術が開示されている。
特開2011-28521号公報
 しかし、この特許文献1に記載の技術では、仮想マシンをクローニングする場合にライセンスを管理することはできても、仮想マシンをリストアする場合にライセンスを適切に管理することはできない。
 例えば仮想マシンをスナップショットによりリストアした場合、ライセンスも同様にリストアされる。リストアした仮想マシンにおいては、たとえ他の仮想マシンにインストールされたライセンスと重複したライセンスのソフトウェアであっても自由に利用することができてしまう。よって、ライセンスを適切に管理することができない。
 本発明は以上の点を考慮してなされたもので、仮想マシンをリストアする場合に仮想マシンにインストールされているソフトウェアのライセンスを適切に管理し得るライセンス管理システム、管理サーバ及び管理方法を提案しようとするものである。
 かかる課題を解決するために、本発明においては、複数の仮想マシンが作成される物理計算機と、物理計算機に接続される管理サーバとを備えたライセンス管理システムにおいて、管理サーバは、複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、一の仮想マシンにリストアされたソフトウェアのライセンス情報と、一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを一の仮想マシン又は他の仮想マシンのうち何れか一方の仮想マシンからアンインストールすることを特徴とする。
 またかかる課題を解決するために、本発明においては、複数の仮想マシンが作成される物理計算機に接続される管理サーバにおいて、管理サーバは、複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを一の仮想マシン又は他の仮想マシンのうち何れか一方の仮想マシンからアンインストールすることを特徴とする。
 またかかる課題を解決するために、本発明においては、複数の仮想マシンが作成される物理計算機と、物理計算機に接続される管理サーバとを備えたライセンス管理システムの管理方法であって、管理サーバが、複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、ソフトウェアのそれぞれに関するライセンス情報とを対応付けて管理する第1のステップと、複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、一の仮想マシンにリストアされたソフトウェアのライセンス情報と、一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを一の仮想マシン又は他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする第2のステップとを備えることを特徴とする。
 本発明によれば、仮想マシンをリストアする場合にソフトウェアのライセンスを適切に管理することができる。
ライセンス管理システムの全体構成を示す概念図である。 管理サーバの機能構成を示す概念図である。 表示用装置の機能構成を示す概念図である。 物理計算機の機能構成を示す概念図である。 ソフトウェア管理テーブルを示す概念図である。 VM構成管理テーブルを示す概念図である。 リストアルール管理テーブルを示す概念図である。 利用ライセンス一覧画面を示す画面構成図である。 利用ライセンス詳細画面を示す画面構成図である。 スナップショットソフトウェア利用一覧画面を示す画面構成図である。 ソフトウェア管理テーブル作成処理を示すフローチャートである。 VM構成管理テーブル作成処理を示すフローチャートである。 VM構成管理テーブル削除処理を示すフローチャートである。 ライセンス管理処理を示すフローチャートである。 ソフトウェア管理テーブル更新処理を示すフローチャートである。 利用ライセンス一覧画面表示処理を示すフローチャートである。 利用ライセンス詳細画面表示処理を示すフローチャートである。 スナップショットソフトウェア利用一覧画面表示処理を示すフローチャートである。
 以下図面について、本発明の一実施の形態を詳述する。
(1)ライセンス管理システムの構成
 図1は、ライセンス管理システム1の全体構成を示す。このライセンス管理システム1は、管理システム10、物理計算機20、VM管理サーバ30、ライセンス配布サーバ40及びブラウザ計算機50を備えて構成される。
 またライセンス管理システム1において、これら管理システム10、物理計算機20、VM管理サーバ30、ライセンス配布サーバ40及びブラウザ計算機50は、LAN(Local Area Network)等のネットワークN1により、互いに通信可能に接続される。
 管理システム10は、管理サーバ101及び表示用計算機102を備えて構成され、物理計算機20及び物理計算機20により作成されるここでは図示しない複数の仮想マシン(VM : Virtual Machine)を管理する。
 管理サーバ101は、CPU(Central Processing Unit)、RAM(Random Access Memory)及びROM(Read Only Memory)等を備えて構成されるコンピュータである。管理サーバ101は、ネットワークN1を介して、物理計算機20から仮想マシンが作成、削除又はリストアされたこと及びスナップショットが作成又は削除されたことを検知すると、検知したことを契機として、ソフトウェアのライセンスを管理するための各種処理を実行する。
 表示用計算機102は、LCD(Liquid Crystal Display)等の表示画面を備え、管理サーバ101により管理される各種情報を表示する。また表示用計算機102は、キーボードやマウス等のユーザインタフェースを備え、ユーザインタフェースを介して、管理者からの入力を受け付ける。
 物理計算機20は、CPU、RAM及びROM等を備えて構成されるコンピュータである。物理計算機20は、ここでは図示しないハイパバイザソフトウェアと呼ばれるソフトウェアを備え、このハイパバイザソフトウェアにより仮想的なハードウェア環境である仮想マシンを作成する。
 VM管理サーバ30は、CPU、RAM及びROM等を備えて構成されるコンピュータである。VM管理サーバ30は、ネットワークN1を介して、物理計算機20により作成される複数の仮想マシンを管理し、仮想マシンが作成、削除又はリストアされたこと及びスナップショットが作成又は削除されたことを検知すると、検知した作成、削除又はリストア情報を管理サーバ101に通知する。
 ライセンス配布サーバ40は、CPU、RAM及びROM等を備えて構成されるコンピュータである。ライセンス配布サーバ40は、ソフトウェアのライセンスキーと、このライセンスキーを利用する物理計算機20又は仮想マシンの識別情報とを対応付ける対応テーブルを備えて構成される。
 ライセンス配布サーバ40は、ソフトウェアのアクティベーション要求を受信した場合、対応テーブルを参照して、アクティベーションの許可又は拒否を判断する。ライセンス配布サーバ40は、アクティベーションを許可する場合、ソフトウェアのライセンスキーと、このライセンスキーを利用する物理計算機20又は仮想マシンの識別情報とを対応テーブルに登録して、アクティベーションの許可通知を要求元の物理計算機20又は仮想マシンに返信する。これに対し、ライセンス配布サーバ40は、アクティベーションを拒否する場合、アクティベーションの拒否通知を要求元の物理計算機20又は仮想マシンに返信する。
 またライセンス配布サーバ40は、ソフトウェアのディアクティベーション要求を受信した場合、対応テーブルを参照して、ソフトウェアのライセンスキーと、このライセンスキーを利用する物理計算機20又は仮想マシンの識別情報とを対応テーブルから削除して、ライセンスキーと物理計算機20又は仮想マシンの識別情報との対応付けを解除する。
 ブラウザ計算機50は、LCD等の表示画面を備え、物理計算機20における仮想マシンにより管理される各種情報を表示する。またブラウザ計算機50は、キーボードやマウス等のユーザインタフェースを備え、ユーザインタフェースを介して、管理者からの入力を受け付ける。
(2)ライセンス管理システムにおける各装置の構成
 図2は、管理サーバ101の機能構成を示す。管理サーバ101は、制御部201、入出力デバイス202、ネットワークI/F203及び記憶部204を備えて構成される。
 制御部201は、CPU、RAM及びROM等を備えて構成され、CPUはRAM、ROM又は記憶部204に格納される各種プログラムとの協働により、管理サーバ101の動作を統括的に制御する。
 入出力デバイス202は、キーボード、マウス、USB(Universal Serial Bus)、デジタルカメラ、スキャナ又はマイク等を備えて構成され、これらのデバイスにより各種情報を入力又は出力する。
 ネットワークI/F203は、ネットワークアダプタを備えて構成され、ネットワークN1を介して、各種情報を送受信する。
 記憶部204は、例えば半導体メモリやハードディスク装置等から構成される。また記憶部204には、ライセンス管理ソフトウェア205、ソフトウェア管理テーブル206、VM構成管理テーブル207及びリストアルール管理テーブル208が格納される。
 ライセンス管理ソフトウェア205は、記憶部204に格納されている各種プログラムのうちの一つであり、制御部201との協働により、後述する各種処理を実行する。またソフトウェア管理テーブル206、VM構成管理テーブル207及びリストアルール管理テーブル208の詳細については後述する。
 図3は、表示用計算機102の機能構成を示す。表示用計算機102は、制御部301、入出力デバイス302、ネットワークI/F303及び記憶部304、ブラウザ305及び表示部306を備えて構成される。
 制御部301は、CPU、RAM及びROM等を備えて構成され、CPUはRAM、ROM又は記憶部304に格納される各種プログラムとの協働により、表示用計算機102の動作を統括的に制御する。
 入出力デバイス302は、キーボード、マウス、USB(Universal Serial Bus)、デジタルカメラ、スキャナ又はマイク等を備えて構成され、これらのデバイスにより各種情報を入力又は出力する。
 ネットワークI/F303は、ネットワークアダプタを備えて構成され、ネットワークN1を介して、各種情報を送受信する。
 記憶部304は、ブラウザ305を備えて構成され、ブラウザ305と制御部301との協働により、表示部306に各種画面を表示する。
 表示部306は、LCD等の表示画面を備えて構成され、例えば管理サーバ101により管理される各種情報を表示する。
 図4は、物理計算機20の機能構成を示す。物理計算機20は、制御部401、入出力デバイス402、ネットワークI/F403及び記憶部404を備えて構成される。
 制御部401は、CPU、RAM及びROM等を備えて構成され、CPUはRAM、ROM又は記憶部404に格納される各種プログラムとの協働により、物理計算機20の動作を統括的に制御する。
 入出力デバイス402は、キーボード、マウス、USB(Universal Serial Bus)、デジタルカメラ、スキャナ又はマイク等を備えて構成され、これらのデバイスにより各種情報を入力又は出力する。
 ネットワークI/F403は、ネットワークアダプタを備えて構成され、ネットワークN1を介して、各種情報を送受信する。
 記憶部404は、ハイパバイザソフトウェア405、仮想マシン406及び監視ソフトウェア410を備えて構成され、仮想マシン406は、OS(Operating System)407、ソフトウェア408及び端末管理ソフトウェア409を備えて構成される。
 ハイパバイザソフトウェア405は、複数の仮想マシン406を記憶部404上に作成するためのソフトウェアである。また仮想マシン406は、ハイパバイザソフトウェア405により作成された仮想のコンピュータマシンである。またOS407は、仮想マシン406全体を管理するために基本となるソフトウェアである。またソフトウェア408は、仮想マシン406にインストールされたアプリケーションソフトウェアである。
 また端末管理ソフトウェア409は、仮想マシン406にインストールされたソフトウェア408の情報(構成情報)を収集し、収集した構成情報を管理サーバ101に送信するためのソフトウェアである。また端末管理ソフトウェア409は、仮想マシン406にインストールされたソフトウェア408を削除するためのソフトウェアである。
 監視ソフトウェア410は、ハイパバイザソフトウェア405により仮想マシン406が作成又は削除され、または、スナップショットが作成、削除又はリストアされた場合、作成、削除又はリストアを検知して、検知した作成、削除又はリストア情報を管理サーバ101に通知する。また監視ソフトウェア410は、管理サーバ101からの指示に基づいて、端末管理ソフトウェア409を仮想マシン406にインストールする。
(3)管理サーバにより保持される各種テーブル構成
 図5は、ソフトウェア管理テーブル206の概念図を示す。ソフトウェア管理テーブル206は、ライセンス管理システム1においてインストールされているソフトウェアのインストール状況を管理するためのテーブルである。
 ソフトウェア管理テーブル206は、ホスト識別子欄2061、インストールソフトウェア名欄2062及びライセンスキー欄2063から構成される。
 ホスト識別子欄2061には、ライセンス管理システム1における仮想マシン406を識別するための識別子が格納される。またインストールソフトウェア名欄2062には、仮想マシン406にインストールされているソフトウェア名を識別するための識別子が格納される。またライセンスキー欄2063には、ソフトウェアのライセンスキーを識別するための識別子が格納される。
 従って図5の場合、例えばホスト識別子が「#AAAAAAA」の仮想マシン406には、「softwareA」及び「softwareB」というソフトウェア名のソフトウェアがインストールされており、「softwareA」に対するライセンスキーは「L001」であり、「softwareB」に対するライセンスキーは「L002」であることが示されている。また「softwareA」というソフトウェア名のソフトウェアは、ホスト識別子が「#BBBBBBB」である他の仮想マシン406にもインストールされており、この他の仮想マシン406にインストールされている「softwareA」に対するライセンスキーは「L003」であることが示されている。
 図6は、VM構成管理テーブル207の概念図を示す。VM構成管理テーブル207は、ライセンス管理システム1において作成された仮想マシン406のスナップショットの情報を管理するためのテーブルである。
 VM構成管理テーブル207は、スナップショットID欄2071、ホスト識別子欄2072、インストールソフトウェア名欄2073、ライセンスキー欄2074及び作成日時欄2075から構成される。
 スナップショットID欄2071には、ライセンス管理システム1におけるスナップショットを識別するための識別子が格納される。またホスト識別子欄2072には、ライセンス管理システム1における仮想マシン406を識別するための識別子が格納される。またインストールソフトウェア名欄2073には、仮想マシン406にインストールされているソフトウェア名を識別するための識別子が格納される。またライセンスキー欄2074には、ソフトウェアのライセンスキーを識別するための識別子が格納される。また作成日時欄2075には、スナップショットが作成された日時の情報が格納される。
 従って図6の場合、スナップショットIDが「S001」のスナップショットは、ホスト識別子が「#AAAAAAA」である仮想マシン406のスナップショットであり、この「S001」のスナップショットには、「softwareA」及び「softwareB」というソフトウェア名のソフトウェアがインストールされており、「softwareA」に対するライセンスキーは「L001」であり、「softwareB」に対するライセンスキーは「L002」であることが示されている。またこの「S001」のスナップショットは、「20xx/xx/..」に作成されたことが示されている。なおこの図6の場合、スナップショットIDが「S001」のスナップショットは2つあり、この2つのスナップショットは同一である。よってこれら2つのスナップショットの作成日時も同一となる。
 図7は、リストアルール管理テーブル208の概念図を示す。リストアルール管理テーブル208は、ある時点のスナップショットを用いて仮想マシン406をリストアする際、スナップショットにインストールされているソフトウェアのライセンスのリストアを管理するためのテーブルである。
 リストアルール管理テーブル208は、スナップショットID欄2081及びライセンスリストア欄2082から構成される。
 スナップショットID欄2081には、ライセンス管理システム1におけるスナップショットを識別するための識別子が格納される。またライセンスリストア欄2082には、リストアする際にライセンスキーもリストアするか否かを示すフラグが格納される。このライセンスリストア欄2082に格納されるフラグは、管理サーバ101において予め設定されているON又はOFFのうち何れかのフラグが自動で設定される。またこのフラグの設定は、表示用計算機102において設定及び変更することができる。
 従って図7の場合、スナップショットIDが「S001」のスナップショットを用いて仮想マシン406がリストアされる場合、フラグが「ON」であるため、ライセンスキーもリストアされることが示されている。
(4)表示用計算機により表示される各種画面構成
 図8は、利用ライセンス一覧画面1000の画面構成例を示す。利用ライセンス一覧画面1000は、ライセンス管理システム1におけるソフトウェアの利用状況を確認するための画面であり、表示用計算機102の表示部306により表示される。
 利用ライセンス一覧画面1000は、入力欄1001、検索実行ボタン1002及び検索結果表示領域1003から構成される。
 入力欄1001は、入出力デバイス302を介して、ソフトウェア名を入力するための領域である。
 検索実行ボタン1002は、入出力デバイス302を介して押下するためのボタンである。なお入力欄1001においてソフトウェア名が入力され、検索実行ボタン1002が押下された場合、入力されたソフトウェア名のソフトウェアのライセンス状況が管理サーバ101の制御部201により検索される。またソフトウェア名が未入力のまま検索実行ボタン1002が押下された場合、ライセンス管理システム1における全てのソフトウェアの利用状況が管理サーバ101の制御部201により検索される。
 検索結果表示領域1003は、管理サーバ101の制御部201により検索された結果が検索結果として表示される領域である。検索結果表示領域1003は、ソフトウェア名欄10031、ライセンス保有数欄10032、現在利用数欄10033及びスナップショット内利用数欄10034から構成される。
 ソフトウェア名欄10031には、仮想マシン406にインストールされているソフトウェア名を識別するための識別子が格納される。またライセンス保有数欄10032には、ライセンス管理システム1において保有するライセンス保有数が格納される。また現在利用数欄10033には、ライセンス管理システム1において現在利用されているライセンス利用数が格納される。またスナップショット内利用数欄10034には、スナップショットにインストールされているソフトウェアのライセンス利用数が格納される。なおスナップショット内利用数欄10034に格納されるスナップショット内利用数100341が例えばマウスによりクリックされた場合、後述する図9の利用ライセンス詳細画面に画面表示が切り替わる。
 従って図8の場合、入力欄1001にはソフトウェア名が未入力のまま検索実行ボタン1002が押下され、管理サーバ101の制御部201によりライセンス管理システム1におけるソフトウェアの利用状況が検索された結果、「softwareA」~「softwareD」の利用状況が検索結果として表示されていることが示されている。また例えば「softwareA」については、ライセンス管理システム1において保有するライセンス保有数は「30」個であり、ライセンス管理システム1において現在利用されているライセンス利用数は「30」個であり、スナップショットを含めたライセンス利用数は「35」個であることが示されている。
 この図8の利用ライセンス一覧画面1000により、管理者は現在利用されているソフトウェアのライセンスの利用状況だけでなく、スナップショット内で利用されているソフトウェアのライセンスの利用状況についても把握することができる。
 図9は、利用ライセンス詳細画面1010の画面構成例を示す。利用ライセンス詳細画面1010は、一のソフトウェアを利用する仮想マシン406及びスナップショットを確認するための画面であり、表示用計算機102の表示部306により表示される。
 利用ライセンス詳細画面1010は、ソフトウェアA利用一覧領域1011から構成され、ソフトウェアA利用一覧領域1011は、ホスト識別ID欄10111及びスナップショットID欄10112から構成される。なおここでは図8の利用ライセンス一覧画面1000のスナップショット内利用数欄10034において、softwareAのライセンス利用数が押下された場合について説明する。
 ホスト識別ID欄10111には、ライセンス管理システム1における仮想マシン406を識別するための識別子が格納される。またスナップショットID欄10112には、ライセンス管理システム1におけるスナップショットを識別するための識別子が格納される。なおスナップショットID欄10112に格納されるスナップショットID101121が例えばマウスによりクリックされた場合、後述する図10のスナップショットソフトウェア利用一覧画面に画面表示が切り替わる。
 従って図9の場合、「softwareA」というソフトウェア名のソフトウェアがインストールされて利用されている仮想マシン406は、識別子が「#AAAAAAA」、「#BBBBBBB」及び「#CCCCCCC」であることが示されている。また「softwareA」というソフトウェア名のソフトウェアがインストールされて利用されているスナップショットは、識別子が「S001」~「S004」であることが示されている。
 この図9の利用ライセンス詳細画面1010により、管理者は選択した一のソフトウェアを利用するスナップショットを把握することができるため、例えばソフトウェアのライセンスを削除しようとした場合、選択した一のソフトウェアがインストールされたスナップショットと対応関係にある仮想マシン406に対して、ライセンスの削除を通知することができる。
 図10は、スナップショットソフトウェア利用一覧画面1100の画面構成例を示す。スナップショットソフトウェア利用一覧画面1100は、一のスナップショットにおいて利用されているソフトウェアの利用状況を確認するための画面であり、表示用計算機102の表示部306により表示される。
 スナップショットソフトウェア利用一覧画面1100は、スナップショットソフトウェア利用領域1101から構成され、スナップショットソフトウェア利用領域1101は、ソフトウェア名欄11011及びライセンスキー欄11012から構成される。なおここでは図9の利用ライセンス詳細画面1010のスナップショットID欄10112において、S001のスナップショットIDが押下された場合について説明する。
 ソフトウェア名欄11011には、スナップショットIDがS001のスナップショットにインストールされているソフトウェア名を識別するための識別子が格納される。またライセンスキー欄11012には、ソフトウェアのライセンスキーを識別するための識別子が格納される。
 従って図10の場合、スナップショットIDが「S001」のスナップショットにインストールされているソフトウェアのソフトウェア名は、「softwareA」~「softwareC」であり、これら「softwareA」~「softwareC」に対するライセンスキーはそれぞれ「L001」~「L003」であることが示されている。
 この図10のスナップショットソフトウェア利用一覧画面1100により、管理者は選択した一のスナップショットにおいて利用されているソフトウェアを把握することができる。
(5)管理サーバにより実行される各種処理
 図11は、ソフトウェア管理テーブル作成処理の処理手順を示す。このソフトウェア管理テーブル作成処理は、物理計算機20において仮想マシン406が作成されたことを契機として実行される。またこのソフトウェア管理テーブル作成処理により、結果として図5において説明したソフトウェア管理テーブル206が作成される。
 このソフトウェア管理テーブル作成処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、ネットワークN1を介して、物理計算機20の監視ソフトウェア410から仮想マシン406の作成を検知する(SP1)。
 なお監視ソフトウェア410は、ハイパバイザソフトウェア405により仮想マシン406が作成又は削除され、または、スナップショットが作成、削除又はリストアされた場合、作成、削除又はリストアを検知して、検知した作成、削除又はリストア情報を管理サーバ101に通知するソフトウェアである。
 次いで制御部201は、監視ソフトウェア410に対し、作成された仮想マシン406に端末管理ソフトウェア409のインストールを指示する(SP2)。
 次いで制御部201は、端末管理ソフトウェア409に対し、仮想マシン406の構成情報の収集を指示する(SP3)。
 なお端末管理ソフトウェア409は、制御部201からの指示を受け付けると、ここでは少なくともホスト識別子及び仮想マシン406にインストールされている全てのソフトウェア名を仮想マシン406の構成情報として収集し、収集した仮想マシン406の構成情報を制御部201に送信する。
 次いで制御部201は、端末管理ソフトウェア409から送信された仮想マシン406の構成情報を受信する(SP4)。
 次いで制御部201は、受信した仮想マシン406の構成情報をソフトウェア管理テーブル206に格納するとともに、ライセンスキーを登録して(SP5)、このソフトウェア管理テーブル作成処理を終了する。
 ライセンスキーの登録は、管理者により任意のキーが設定登録されるとしてもよいし、制御部201により順次予め定められたキーが設定登録されるとしてもよい。
 図12は、VM構成管理テーブル作成処理の処理手順を示す。このVM構成管理テーブル作成処理は、物理計算機20において仮想マシン406のスナップショットが作成されたことを契機として実行される。またこのVM構成管理テーブル作成処理により、結果として図6及び図7において説明したVM構成管理テーブル207及びリストアルール管理テーブル208が作成される。
 このVM構成管理テーブル作成処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、ネットワークN1を介して、物理計算機20の監視ソフトウェア410からスナップショットの作成を検知する(SP11)。
 次いで制御部201は、端末管理ソフトウェア409に対し、スナップショットを作成した仮想マシン406の構成情報の収集を指示する(SP12)。
 なお端末管理ソフトウェア409は、制御部201からの指示を受け付けると、ここでは少なくともホスト識別子、仮想マシン406にインストールされている全てのソフトウェア名及びスナップショット作成日時を仮想マシン406の構成情報として収集し、収集した仮想マシン406の構成情報を制御部201に送信する。
 次いで制御部201は、端末管理ソフトウェア409から送信された仮想マシン406の構成情報を受信し、受信した構成情報を用いてソフトウェア管理テーブル206を更新する(SP13)。
 次いで制御部201は、更新したソフトウェア管理テーブル206を参照して、ステップSP13で受信した仮想マシン406の構成情報のうちのホスト識別子と一致するレコードを検索及び抽出する(SP14)。
 次いで制御部201は、抽出したレコードに含まれる情報(ここでは、ホスト識別子、インストールソフトウェア名及びライセンスキー)をVM構成管理テーブル207に格納するとともに、スナップショットID及びスナップショットの作成日時を格納する(SP15)。
 次いで制御部201は、ステップSP15でVM構成管理テーブル207に格納したスナップショットIDをリストアルール管理テーブル208に格納するとともに、ライセンスリストアのフラグをON又はOFFの何れかに設定して(SP16)、このVM構成管理テーブル作成処理を終了する。
 ライセンスリストアのフラグは、管理者によりON又はOFFの何れかに設定されるとしてもよいし、制御部201により予め定められたON又はOFFの何れかに設定されるとしてもよい。
 図13は、VM構成管理テーブル削除処理の処理手順を示す。このVM構成管理テーブル削除処理は、物理計算機20において仮想マシン406が削除されたことを契機として実行される。またこのVM構成管理テーブル削除処理により、結果として図6及び図7において説明したVM構成管理テーブル207及びリストアルール管理テーブル208の特定のレコードが削除されて更新される。
 このVM構成管理テーブル削除処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、ネットワークN1を介して、物理計算機20の監視ソフトウェア410からスナップショットの削除を検知する(SP21)。
 なお制御部201は、スナップショットの削除を検知する際、ここでは少なくとも削除されるスナップショットと対応関係のある仮想マシン406のホスト識別子及び削除されるスナップショットの作成日時をスナップショット削除情報として取得する。
 次いで制御部201は、VM構成管理テーブル207を参照して、ステップSP21で取得したスナップショット削除情報のうちのホスト識別子と一致するレコードを検索し、検索結果として得られたレコードをVM構成管理テーブル207から削除する(SP22)。
 次いで制御部201は、リストアルール管理テーブル208を参照して、ステップSP22で削除したレコードのスナップショットIDと一致するレコード検索し、検索結果として得られたレコードをリストアルール管理テーブル208から削除して(SP23)、このVM構成管理テーブル削除処理を終了する。
 図14は、ライセンス管理処理の処理手順を示す。このライセンス管理処理は、物理計算機20において仮想マシン406がスナップショットによりリストアされたことを契機として実行される。またこのライセンス管理処理により、結果としてライセンス管理システム1におけるライセンスの重複利用を防止することができる。
 このライセンス管理処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、ネットワークN1を介して、物理計算機20の監視ソフトウェア410から仮想マシン406のリストアを検知する(SP31)。
 なお制御部201は、仮想マシン406のリストアを検知する際、ここでは少なくともリストアする仮想マシン406のホスト識別子及びリストアに用いるスナップショットの作成日時をリストア情報として取得する。
 次いで制御部201は、VM構成管理テーブル207を参照して、ステップSP31で取得したリストア情報のうちのホスト識別子及びスナップショットの作成日時と一致するレコード(リストア対象レコード)を検索及び抽出する(SP32)。
 次いで制御部201は、ソフトウェア管理テーブル206を参照して、ステップSP32で抽出したリストア対象レコードのうちの何れか一のレコードのソフトウェア名及びライセンスキーと一致するレコード(リストア対象レコード)があるか否かを検索する(SP33)。
 制御部201は、この検索で一致するレコードがない場合、すなわちソフトウェア管理テーブル206においてリストア対象レコードがない場合、リストア後の仮想マシン406にインストールされているソフトウェアのライセンスは失われているものと判断し、リストアを検知した仮想マシン406の端末管理ソフトウェア409に対し、ステップSP33で検索対象としていたソフトウェアのアンインストールを指示する(SP34)。
 次いで制御部201は、ステップSP32で抽出した全てのリストア対象レコードについて、ソフトウェア管理テーブル206を参照して、一致するレコードがあるか否かを検索したか否かを判断する(SP35)。
 制御部201は、この判断で否定結果を得ると、ステップSP33に移行して、ソフトウェア管理テーブル206を参照して他のリストア対象レコードを検索する。これに対し、制御部201は、この判断で肯定結果を得ると、このライセンス管理処理を終了する。
 ステップSP33に戻り、制御部201は、ステップSP33の検索でリストア対象レコードと一致するレコードがある場合、リストア後の仮想マシン406にインストールされているソフトウェアのライセンスは失われていないものと判断する一方、ソフトウェア管理テーブル206のリストア対象レコードに含まれるホスト識別子と、リストア情報に含まれるホスト識別子とが一致しているか否かを判断する(SP36)。
 制御部201は、この判断で肯定結果を得ると、リストア後の仮想マシン406以外の他の仮想マシン406には同一のソフトウェアが重複して利用(インストール)されていないものと判断して、ステップSP35に移行する。そして制御部201は、ステップSP35で肯定結果を得ると、このライセンス管理処理を終了する。
 これに対し、制御部201は、ステップSP36の判断で否定結果を得ると、リストア後の仮想マシン406以外の他の仮想マシン406にも同一のソフトウェアが重複してインストールされて利用されているものと判断する。そして制御部201は、リストアルール管理テーブル208を参照して、ステップSP32でVM構成管理テーブル207から抽出したリストア対象レコードに含まれるスナップショットIDと一致するレコードを検索及び抽出し、ライセンスリストア欄2082のフラグがONであるか否かを判断する(SP37)。
 制御部201は、この判断で否定結果を得ると、リストアを検知した仮想マシン406の端末管理ソフトウェア409に対し、リストアにより複数の仮想マシン406により利用されることになるソフトウェアをリストア後の仮想マシン406から削除するように指示する(SP38)。
 そして制御部201は、ステップSP38の後にステップSP35に移行し、ステップSP35で肯定結果を得ると、このライセンス管理処理を終了する。
 ステップSP37に戻り、制御部201は、ステップSP37の判断で肯定結果を得ると、ステップSP33の検索処理で一致したリストア対象レコードに含まれるホスト識別子の仮想マシン406の端末管理ソフトウェア409に対し、リストア対象レコードに含まれるソフトウェアを削除するように指示する(SP39)。
 次いで制御部201は、ステップSP33の検索処理で一致したリストア対象レコードに含まれるホスト識別子をリストア情報に含まれるホスト識別子に変更することにより、ソフトウェア管理テーブル206を更新する(SP40)。
 そして制御部201は、ステップSP40の後にステップSP35に移行し、ステップSP35で肯定結果を得ると、このライセンス管理処理を終了する。
 図15は、ソフトウェア管理テーブル更新処理の処理手順を示す。このソフトウェア管理テーブル更新処理は、仮想マシン406におけるソフトウェアがインストール又はアンインストールされたことを契機として実行される。またこのソフトウェア管理テーブル更新処理により、結果として管理サーバ101は常に最新のソフトウェア管理テーブル206を保持することができる。
 このソフトウェア管理テーブル更新処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、ネットワークN1を介して、端末管理ソフトウェア409から仮想マシン406に対するソフトウェアのインストール又はアンインストールを検知する(SP51)。
 なお制御部201は、仮想マシン406に対するソフトウェアのインストール又はアンインストールを検知する際、ここでは少なくともインストール又はアンインストールの対象となる仮想マシン406のホスト識別子と、インストール又はアンインストールするソフトウェア名を更新情報として取得する。
 次いで制御部201は、取得した更新情報に含まれるホスト識別子及びソフトウェア名をソフトウェア管理テーブル206に追加するとともに、ライセンスキーを登録することにより更新して(SP52)、このソフトウェア管理テーブル更新処理を終了する。
 ライセンスキーの登録は、管理者により任意のキーが設定登録されるとしてもよいし、制御部201により順次予め定められたキーが設定登録されるとしてもよい。
 図16は、利用ライセンス一覧画面表示処理の処理手順を示す。この利用ライセンス一覧画面表示処理は、図8の利用ライセンス一覧画面1000において、検索実行ボタン1002が押下されたことを契機として実行される。またこの利用ライセンス一覧画面表示処理により、結果として図8において説明した検索結果表示領域1003に検索結果が表示される。
 この利用ライセンス一覧画面表示処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、表示用計算機102から検索実行ボタン1002の押下を検知する(SP61)。
 なお制御部201は、検索実行ボタン1002の押下を検知する際、入力欄1001に入力された情報又は未入力である情報を入力欄情報として取得する。
 次いで制御部201は、入力欄情報に基づいて、入力欄1001にソフトウェア名の入力があるか否かを判断する(SP62)。
 制御部201は、この判断で否定結果を得ると、ソフトウェア管理テーブル206を参照して、全てのソフトウェア名について、ライセンス保有数、現在利用数及びスナップショット内利用数のカウント処理を実行する(SP63)。
 これに対し、制御部201は、ステップSP62の判断で肯定結果を得ると、ソフトウェア管理テーブル206を参照して、入力されたソフトウェア名について、ライセンス保有数、現在利用数及びスナップショット内利用数のカウント処理を実行する(SP64)。
 ここでステップSP63又はSP64のライセンス保有数のカウント処理において、制御部201は、ソフトウェア管理テーブル206を参照して、一のソフトウェア名と一致するソフトウェア名を含むレコードのレコード数をカウントする。
 またステップSP63又はSP64の現在利用数のカウント処理において、制御部201は、ソフトウェア管理テーブル206を参照して、一のソフトウェア名と一致するソフトウェア名を含むレコードであって、かつ、ホスト識別子が格納されているレコードのレコード数をカウントする。
 またステップSP63又はSP64のスナップショット内利用数のカウント処理において、制御部201は、VM構成管理テーブル207を参照して、一のソフトウェア名と一致するソフトウェア名を含むレコードのレコード数をカウントする。なお制御部201は、スナップショットIDのみが異なるレコードについては合わせて1カウントとしてカウントする。
 制御部201は、上述のようにカウントしたライセンス保有数、現在利用数及びスナップショット内利用数を表示用計算機102により利用ライセンス一覧画面1000において表示して(SP65)、この利用ライセンス一覧画面表示処理を終了する。
 図17は、利用ライセンス詳細画面表示処理の処理手順を示す。この利用ライセンス詳細画面表示処理は、図8の利用ライセンス一覧画面1000において、スナップショット内利用数欄10034に格納された何れかのスナップショット内利用数100341が押下されたことを契機として実行される。またこの利用ライセンス詳細画面表示処理により、結果として図9において説明した利用ライセンス詳細画面1010が表示される。
 この利用ライセンス詳細画面表示処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、表示用計算機102からスナップショット内利用数100341の押下を検知する(SP71)。
 なお制御部201は、スナップショット内利用数100341の押下を検知する際、押下されたスナップショット内利用数100341に対応するソフトウェア名の情報を対応ソフトウェア名情報として取得する。
 次いで制御部201は、VM構成管理テーブル207を参照して、対応ソフトウェア名情報に含まれるソフトウェア名と一致するソフトウェア名を含むレコードを検索する(SP72)。
 次いで制御部201は、ステップSP72の検索結果として得られたレコードからスナップショットID及びホスト識別子を取得する(SP73)。
 次いで制御部201は、取得したスナップショットID及びホスト識別子を表示用計算機102により利用ライセンス詳細画面1010において表示して(SP74)、この利用ライセンス詳細画面表示処理を終了する。
 図18は、スナップショットソフトウェア利用一覧画面表示処理の処理手順を示す。このスナップショットソフトウェア利用一覧画面表示処理は、図9の利用ライセンス詳細画面1010において、スナップショットID欄10112に格納された何れかのスナップショットID101121が押下されたことを契機として実行される。またこのスナップショットソフトウェア利用一覧画面表示処理により、結果として図10において説明したスナップショットソフトウェア利用一覧画面1100が表示される。
 このスナップショットソフトウェア利用一覧画面表示処理は、管理サーバ101の制御部201と、記憶部204に格納されている各種プログラムとの協働により実行される。以下、説明の便宜上、制御部201を処理主体として説明する。
 まず制御部201は、表示用計算機102からスナップショットID101121の押下を検知する(SP81)。
 なお制御部201は、スナップショットID101121の押下を検知する際、押下されたスナップショットIDの情報を取得する。
 次いで制御部201は、VM構成管理テーブル207を参照して、押下されたスナップショットIDと一致するスナップショットIDを含むレコードを検索する(SP82)。
 次いで制御部201は、ステップSP82の検索結果として得られたレコードからソフトウェア名及びライセンスキーを取得する(SP83)。
 次いで制御部201は、取得したソフトウェア名及びライセンスキーを表示用計算機102によりスナップショットソフトウェア利用一覧画面1100において表示して(SP84)、このスナップショットソフトウェア利用一覧画面表示処理を終了する。
(6)本実施の形態による効果
 以上のように、本実施の形態によるライセンス管理システム1、管理サーバ101及び管理方法によれば、図5に示すソフトウェア管理テーブルを保持するようにしたことにより、仮想マシン406ごとにインストールされているソフトウェアとライセンスキーとを対応付けて管理することができ、スナップショットを用いて一の仮想マシン406をリストアする場合、ライセンス管理システム1におけるソフトウェアのライセンスを適切に管理することができる。
(7)他の実施の形態
 なお上述の実施の形態においては、図12に示すVM構成管理テーブル作成処理において制御部201は、仮想マシン406のスナップショットが作成された後、スナップショットの作成を検知し、検知した時点の仮想マシン406の構成情報を取得する場合について述べたが、本発明はこれに限らず、例えば仮想マシン406のスナップショットが作成される前に、作成しようとすることを通知する作成前通知を検知し、作成前通知を検知した時点の仮想マシン406の構成情報を取得した後、実際にスナップショットが作成されたことによるスナップショットの作成を検知するとしてもよい。この場合、スナップショットが作成される前の仮想マシン406の構成情報を取得することができる。
 本発明は、仮想マシンを含むコンピュータシステムにおいて、ソフトウェアのライセンスを適切に管理するための管理サーバに利用することができる。
1     ライセンス管理システム
10    管理システム
101   管理サーバ
201   制御部
204   記憶部
102   表示用計算機
20    物理計算機
30    VM管理サーバ
40    ライセンス配布サーバ
50    ブラウザ計算機
206   ソフトウェア管理テーブル
207   VM構成管理テーブル
208   リストアルール管理テーブル
1000  利用ライセンス一覧画面
1010  利用ライセンス詳細画面
1100  スナップショットソフトウェア利用一覧画面
 

Claims (15)

  1.  複数の仮想マシンが作成される物理計算機と、
     前記物理計算機に接続される管理サーバと
     を備え、
     前記管理サーバは、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けて管理し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とするライセンス管理システム。
  2.  前記管理サーバは、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報を現在も管理しているか否かを判断し、現在は管理していない場合、前記一の仮想マシンにリストアされたソフトウェアのうち、現在は管理していないライセンス情報に対応付けられたソフトウェアを前記一の仮想マシンからアンインストールする
     ことを特徴とする請求項1に記載のライセンス管理システム。
  3.  前記管理サーバは、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けたソフトウェア管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記ソフトウェア管理テーブルを参照して、前記一の仮想マシンにリストアされたソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項1に記載のライセンス管理システム。
  4.  前記管理サーバは、
     複数のスナップショットと、前記複数の仮想マシンと、前記複数のスナップショットのそれぞれに含まれるソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報と、前記複数のスナップショットのそれぞれの作成日時とを対応付けた仮想マシン構成管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされたことを検知すると、まず前記仮想マシン構成管理テーブルを参照して、前記一の仮想マシンをリストアする際に用いられたスナップショットを検索し、検索結果として得られたスナップショットに含まれるソフトウェアを抽出し、次いで前記ソフトウェア管理テーブルを参照して、前記抽出したソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項1に記載のライセンス管理システム。
  5.  前記管理サーバは、
     複数のスナップショットと、ライセンス情報が重複する場合に重複するライセンス情報に対応付けられたソフトウェアをリストアするか否かを示すフラグとを対応付けたリストアルール管理テーブルを備え、
     前記管理サーバは、
     前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複する場合、前記リストア管理テーブルを参照して、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項1に記載のライセンス管理システム。
  6.  複数の仮想マシンが作成される物理計算機に接続される管理サーバにおいて、
     前記管理サーバは、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けて管理し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする管理サーバ。
  7.  前記管理サーバは、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報を現在も管理しているか否かを判断し、現在は管理していない場合、前記一の仮想マシンにリストアされたソフトウェアのうち、現在は管理していないライセンス情報に対応付けられたソフトウェアを前記一の仮想マシンからアンインストールする
     ことを特徴とする請求項6に記載の管理サーバ。
  8.  前記管理サーバは、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けたソフトウェア管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記ソフトウェア管理テーブルを参照して、前記一の仮想マシンにリストアされたソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項6に記載の管理サーバ。
  9.  前記管理サーバは、
     複数のスナップショットと、前記複数の仮想マシンと、前記複数のスナップショットのそれぞれに含まれるソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報と、前記複数のスナップショットのそれぞれの作成日時とを対応付けた仮想マシン構成管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされたことを検知すると、まず前記仮想マシン構成管理テーブルを参照して、前記一の仮想マシンをリストアする際に用いられたスナップショットを検索し、検索結果として得られたスナップショットに含まれるソフトウェアを抽出し、次いで前記ソフトウェア管理テーブルを参照して、前記抽出したソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項6に記載の管理サーバ。
  10.  前記管理サーバは、
     複数のスナップショットと、ライセンス情報が重複する場合に重複するライセンス情報に対応付けられたソフトウェアをリストアするか否かを示すフラグとを対応付けたリストアルール管理テーブルを備え、
     前記管理サーバは、
     前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複する場合、前記リストア管理テーブルを参照して、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項6に記載の管理サーバ。
  11.  複数の仮想マシンが作成される物理計算機と、前記物理計算機に接続される管理サーバとを備えたライセンス管理システムにおける管理方法であって、
     前記管理サーバが、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けて管理する第1のステップと、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記一の仮想マシンとは異なる他の仮想マシンにインストールされているソフトウェアのライセンス情報とを比較し、重複して利用されているライセンス情報がある場合、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする第2のステップと
     を備えることを特徴とする管理方法。
  12.  前記第2のステップにおいて、
     前記管理サーバが、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされた場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報を現在も管理しているか否かを判断し、現在は管理していない場合、前記一の仮想マシンにリストアされたソフトウェアのうち、現在は管理していないライセンス情報に対応付けられたソフトウェアを前記一の仮想マシンからアンインストールする
     ことを特徴とする請求項11に記載の管理方法。
  13.  前記第2のステップにおいて、
     前記管理サーバが、
     前記複数の仮想マシンと、前記複数の仮想マシンのそれぞれにインストールされているソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報とを対応付けたソフトウェア管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされたことを検知すると、前記ソフトウェア管理テーブルを参照して、前記一の仮想マシンにリストアされたソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項11に記載の管理方法。
  14.  前記第2のステップにおいて、
     前記管理サーバが、
     複数のスナップショットと、前記複数の仮想マシンと、前記複数のスナップショットのそれぞれに含まれるソフトウェアと、前記ソフトウェアのそれぞれに関するライセンス情報と、前記複数のスナップショットのそれぞれの作成日時とを対応付けた仮想マシン構成管理テーブルを保持し、
     前記複数の仮想マシンのうち何れか一の仮想マシンがリストアされたことを検知すると、まず前記仮想マシン構成管理テーブルを参照して、前記一の仮想マシンをリストアする際に用いられたスナップショットを検索し、検索結果として得られたスナップショットに含まれるソフトウェアを抽出し、次いで前記ソフトウェア管理テーブルを参照して、前記抽出したソフトウェアと一致するソフトウェアを検索し、検索結果として得られたソフトウェアと対応付けられている仮想マシンが前記一の仮想マシンと同一でない場合、前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複して利用されていると判断し、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項11に記載の管理方法。
  15.  前記第2のステップにおいて、
     前記管理サーバが、
     複数のスナップショットと、ライセンス情報が重複する場合に重複するライセンス情報に対応付けられたソフトウェアをリストアするか否かを示すフラグとを対応付けたリストアルール管理テーブルを備え、
     前記管理サーバは、
     前記一の仮想マシンにリストアされたソフトウェアのライセンス情報と、前記他の仮想マシンにインストールされているソフトウェアのライセンス情報とが重複する場合、前記リストア管理テーブルを参照して、重複して利用されている何れか一方のライセンス情報に対応付けられたソフトウェアを前記一の仮想マシン又は前記他の仮想マシンのうち何れか一方の仮想マシンからアンインストールする
     ことを特徴とする請求項11に記載の管理方法。
     
PCT/JP2012/060605 2012-04-19 2012-04-19 ライセンス管理システム、管理サーバ及び管理方法 WO2013157124A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/060605 WO2013157124A1 (ja) 2012-04-19 2012-04-19 ライセンス管理システム、管理サーバ及び管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/060605 WO2013157124A1 (ja) 2012-04-19 2012-04-19 ライセンス管理システム、管理サーバ及び管理方法

Publications (1)

Publication Number Publication Date
WO2013157124A1 true WO2013157124A1 (ja) 2013-10-24

Family

ID=49383106

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/060605 WO2013157124A1 (ja) 2012-04-19 2012-04-19 ライセンス管理システム、管理サーバ及び管理方法

Country Status (1)

Country Link
WO (1) WO2013157124A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11886851B2 (en) 2020-07-22 2024-01-30 Nutanix, Inc. Multi-cloud licensed software deployment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034389A (ja) * 2005-07-22 2007-02-08 Casio Comput Co Ltd ライセンス認証装置及びライセンス認証方法
JP2007148839A (ja) * 2005-11-29 2007-06-14 Hitachi Ltd 障害回復方法
JP2009533777A (ja) * 2006-04-17 2009-09-17 マイクロソフト コーポレーション 仮想マシンのホストレベルのアプリケーション整合バックアップの作成
US20090328225A1 (en) * 2007-05-16 2009-12-31 Vmware, Inc. System and Methods for Enforcing Software License Compliance with Virtual Machines
JP2010267009A (ja) * 2009-05-13 2010-11-25 Canon Inc ライセンス管理システム、ライセンス管理方法及びコンピュータプログラム
JP2011028521A (ja) * 2009-07-24 2011-02-10 Canon Inc ライセンス管理システム及びその認証方法
JP2012078985A (ja) * 2010-09-30 2012-04-19 Hitachi Solutions Ltd 2系統クライアントシステム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034389A (ja) * 2005-07-22 2007-02-08 Casio Comput Co Ltd ライセンス認証装置及びライセンス認証方法
JP2007148839A (ja) * 2005-11-29 2007-06-14 Hitachi Ltd 障害回復方法
JP2009533777A (ja) * 2006-04-17 2009-09-17 マイクロソフト コーポレーション 仮想マシンのホストレベルのアプリケーション整合バックアップの作成
US20090328225A1 (en) * 2007-05-16 2009-12-31 Vmware, Inc. System and Methods for Enforcing Software License Compliance with Virtual Machines
JP2010267009A (ja) * 2009-05-13 2010-11-25 Canon Inc ライセンス管理システム、ライセンス管理方法及びコンピュータプログラム
JP2011028521A (ja) * 2009-07-24 2011-02-10 Canon Inc ライセンス管理システム及びその認証方法
JP2012078985A (ja) * 2010-09-30 2012-04-19 Hitachi Solutions Ltd 2系統クライアントシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11886851B2 (en) 2020-07-22 2024-01-30 Nutanix, Inc. Multi-cloud licensed software deployment

Similar Documents

Publication Publication Date Title
US11113156B2 (en) Automated ransomware identification and recovery
US9740568B2 (en) Centralized graphical user interface and associated methods and systems for a centralized management center for managing storage services in a networked storage environment
US8495037B1 (en) Efficient isolation of backup versions of data objects affected by malicious software
US9477693B1 (en) Automated protection of a VBA
US8843926B2 (en) Guest operating system using virtualized network communication
WO2017083023A1 (en) Systems and methods for protecting backed-up data from ransomware attacks
WO2015163983A1 (en) Version control of applications
US9182968B2 (en) Software signature discovery
CN105556478A (zh) 用于保护虚拟机数据的系统和方法
US11328064B2 (en) Automatic ransomware detection with an on-demand file system lock down and automatic repair function
JP2011018198A (ja) 管理装置及び管理方法
US20180060588A1 (en) Operating system
JP5545037B2 (ja) 情報処理装置
US9391865B1 (en) Systems and methods for facilitating fault-tolerant backup jobs
JP6447258B2 (ja) 管理プログラム、管理方法、および管理装置
US11693963B2 (en) Automatic ransomware detection with an on-demand file system lock down and automatic repair function
CN108292342A (zh) 向固件中的侵入的通知
US9342550B1 (en) Systems and methods for preventing data loss via temporary-file generating applications
US20230259640A1 (en) Data storage systems and methods of an enforceable non-fungible token having linked custodial chain of property transfers prior to minting using a token-based encryption determination process
JP2012208752A (ja) ライセンス管理装置、ライセンス管理方法、及びプログラム
US9569600B2 (en) Information processing apparatus with license information management
WO2013157124A1 (ja) ライセンス管理システム、管理サーバ及び管理方法
TWI334981B (en) Method and computer program product for providing distributed storage configuration control within a cluster of storage devices in a storage network
WO2015019416A1 (ja) ライセンス管理システムおよびライセンス管理方法
WO2015087444A1 (ja) ライセンス管理システムおよびライセンス管理方法

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12874877

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP