(57)【要約】【課題】ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行し得る、ライセンス管理装置、ライセンス管理方法、及びプログラムを提供する。【解決手段】仮想マシンが構築された被管理サーバ３１〜３３を対象としてライセンス管理を行うため、ライセンス管理装置１０は、仮想マシン、それに使用されるソフトウェア、および仮想マシンを構築している被管理サーバの物理情報、を紐付け、これらを管理情報として管理する仮想マシン管理部１１と、ソフトウェアのライセンス単位が、サーバコンピュータの物理情報に基づいているかどうかを判定するライセンス管理部１２とを備えている。ライセンス管理部１２は、物理情報に基づいていると判定する場合に、管理情報を用いて、保有ライセンス数を越えてソフトウェアが使用されていないかどうかを更に判定する。【選択図】図１
2012208752.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンが構築されたサーバコンピュータを対象として、ソフトウェアのライセンス管理を行う装置であって、
前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、仮想マシン管理部と、
前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定し、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ライセンス管理部と、
を備えている、ことを特徴とするライセンス管理装置。
【請求項２】
前記ライセンス管理部が、保有ライセンス数を越えて前記ソフトウェアが使用されていると判定する場合に、前記仮想マシン管理部が、前記仮想マシンでの前記ソフトウェアの使用に制限を与える、請求項１に記載のライセンス管理装置。
【請求項３】
前記仮想マシン管理部が、前記サーバコンピュータに前記仮想マシンが構築される度に、前記サーバコンピュータから、前記管理情報を取得する、請求項１または２に記載のライセンス管理装置。
【請求項４】
対象となるサーバコンピュータが複数であり、そして、前記ソフトウェアのライセンス単位が前記サーバコンピュータ毎であって、保有ライセンス数が前記ソフトウェアの使用が認められる前記サーバコンピュータの数によって規定されている場合に、
前記ライセンス管理部が、前記管理情報を用いて、前記ソフトウェアを使用している前記サーバコンピュータを特定し、特定した前記サーバコンピュータの数が前記保有ライセンス数を越えていないかどうかを判定する、
請求項１から３のいずれかに記載のライセンス管理装置。
【請求項５】
仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を行うための方法であって、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を有する、ことを特徴とするライセンス管理方法。
【請求項６】
仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を、コンピュータによって行うためのプログラムであって、
前記コンピュータに、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアのライセンス管理、特には、仮想環境下でのソフトウェアのライセンス管理を行うライセンス管理装置、ライセンス管理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ソフトウェアライセンスのコンプライアンス（遵法）の高まりから、多数のコンピュータを使用する企業等においては、ソフトウェアライセンスを適切に管理することが求められている。但し、企業等のコンピュータシステムでは、使用されるコンピュータおよびソフトウェアの数は膨大であり、管理者の人手による管理は困難である。このため、従来から、ソフトウェアライセンスを適切に管理するため、ライセンス管理システムが提案されている（例えば、特許文献１および２参照。）。
【０００３】
具体的には、特許文献１および２に開示されたライセンス管理システムでは、管理サーバは、各コンピュータにインストールされたソフトウェアを特定する情報（以下「インストール情報」とする。）を収集し、収集したインストール情報を、データベースに登録する。その後、管理サーバは、ユーザが保持するソフトウェアのライセンス情報と、データベースに登録されているインストール情報とを比較し、インストール数が保有数を越えている場合は、管理者に警告を出力し、注意を喚起させる。
【０００４】
このように、特許文献１および２に開示されたライセンス管理システムを利用すれば、コンピュータおよびソフトウェアの数が膨大となっても適切なライセンス管理を行うことが可能になると考えられる。また、特許文献１および２に開示されたシステムでは、保有していなければならないソフトウェアライセンスの数が、インストールされているソフトウェアの数のみによって決まることが、前提とされている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−３３３９２６号公報
【特許文献２】特開２００８−１４６３９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、昨今、サーバの仮想化が進み、ソフトウェアライセンスの単位は、インストール数の単位に限定されなくなっており、物理ハードウェア単位、ＣＰＵ（Central Processing Unit）ソケット単位など多様化してきている。
【０００７】
ここで、物理ハードウェア単位とは、例えば、１つの物理ハードウェア上であればいくつインストールしてもよい、といったソフトウェアのライセンス形態である。また、ＣＰＵソケット単位とは、例えば、２ＣＰＵソケット当たり１ライセンスが必要、といったＣＰＵソケットの数に応じて必要なライセンスが決められているライセンス形態である。
【０００８】
そして、物理ハードウェア単位、ＣＰＵソケット単位でのソフトウェアライセンスの場合、保有していなければならないソフトウェアライセンスの数は、ソフトウェアをインストールしている数のみによっては決定されない。このため、特許文献１および２に開示した従来のライセンス管理システムでは、ライセンス管理は困難となっており、物理ハードウェア単位、ＣＰＵソケット単位でのライセンス管理を行なえるシステムが求められている。
【０００９】
本発明の目的の一例は、上記問題を解消し、ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行し得る、ライセンス管理装置、ライセンス管理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の一側面におけるライセンス管理装置は、仮想マシンが構築されたサーバコンピュータを対象として、ソフトウェアのライセンス管理を行う装置であって、
前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、仮想マシン管理部と、
前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定し、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ライセンス管理部と、
を備えている、ことを特徴とする。
【００１１】
また、上記目的を達成するため、本発明の一側面におけるライセンス管理方法は、仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を行うための方法であって、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を有する、ことを特徴とする。
【００１２】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を、コンピュータによって行うためのプログラムであって、
前記コンピュータに、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１３】
以上のように、本発明における、ライセンス管理装置、ライセンス管理方法、及びプログラムによれば、ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態におけるライセンス管理装置の構成を示すブロック図である。
【図２】図２は、本実施の形態で用いられるソフトウェア−ハードウェア情報の一例を示す図であり、図２（ａ）は、仮想マシンとソフトウェアとの関係を示し、図２（ｂ）は、仮想マシンとサーバコンピュータとの関係を示している。
【図３】図３は、本実施の形態で用いられる保有ソフトウェアライセンス情報の一例を示す図であり、図３（ａ）は各ソフトウェアの情報を示し、図３（ｂ）はライセンスについての情報を示している。
【図４】図４は、本発明の実施の形態におけるライセンス管理装置の全体の動作を示すフロー図である。
【図５】図５は、図４に示したライセンス管理処理の詳細を示すフロー図である。
【図６】図６は、本発明の実施の形態におけるライセンス管理装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
（発明の概要）
本発明は、サーバコンピュータ内にハイパーバイザーによって仮想マシンが構築されている環境下で、物理ハードウェア単位でライセンスされるソフトウェアを利用する場合において、当該ソフトウェアのライセンス管理に適用される。
【００１６】
特許文献１および２に示した従来からのライセンス管理システムと同様に、本発明においても、管理対象となるサーバコンピュータが使用しているソフトウェアを特定する情報が管理される。但し、本発明では、従来からのライセンス管理システムと異なり、ソフトウェアを特定する情報と共に、管理対象となるサーバコンピュータの物理情報も管理される。ハードウェア単位のソフトウェアライセンスの過不足を判定するためには、「どの物理ハードウェアにインストールされたか」ということを把握しなければならず、まさにこの情報を得るために物理情報が収集される。
【００１７】
そして、ソフトウェアを特定する情報と物理情報との組合せを用いて、保有ライセンス数を越えてソフトウェアが使用されていないかどうかが判定される。結果、ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行することができる。
【００１８】
（実施の形態）
以下、本発明の実施の形態におけるライセンス管理装置、ライセンス管理方法、及びプログラムについて、図１〜図６を参照しながら説明する。
【００１９】
［装置構成］
最初に、図１〜図３を用いて、本実施の形態におけるライセンス管理装置およびそれを用いた仮想システムの構成を説明する。図１は、本発明の実施の形態におけるライセンス管理装置の構成を示すブロック図である。
【００２０】
図１に示すように、本実施の形態におけるライセンス管理装置１０は、仮想マシンが構築されたサーバコンピュータ３１〜３３を対象として、ソフトウェアのライセンス管理を行う装置である。ライセンス管理装置１０は、これらサーバコンピュータ３１〜３３と共に、仮想システム４０を構成している。
【００２１】
本実施の形態において、サーバコンピュータ３１〜３３は、ライセンス管理装置１０の管理対象となっており、以下、これらを「被管理サーバ」と表記する。また、被管理サーバ３１〜３３それぞれには、対応するハイパーバイザー（３１Ａ、３２Ａ、３３Ａ）が導入されており、ハイパーバイザー３１Ａ〜３３Ａが仮想マシンを構築している。図１においては、各仮想マシン上で動作しているゲストＯＳ（Operating System）が図示されている。
【００２２】
また、図１に示すように、ライセンス管理装置１０は、仮想マシン管理部１１と、ライセンス管理部１２とを備えている。このうち、仮想マシン管理部１１は、仮想マシン、仮想マシンで使用されるソフトウェア、および仮想マシンを構築している被管理サーバの物理情報、を紐付け、これらを管理情報として管理する。なお、仮想マシン管理部１１が管理する管理情報は、以下「ソフトウェア−ハードウェア情報」と表記する。
【００２３】
ライセンス管理部１２は、ソフトウェアのライセンス単位が、被管理サーバの物理情報に基づいているかどうかを判定する。そして、判定の結果、物理情報に基づいていると判定する場合は、ライセンス管理部１２は、ソフトウェア−ハードウェア情報を用いて、保有ライセンス数を越えてソフトウェアが使用されていないかどうかを判定する。
【００２４】
このように、ソフトウェア−ハードウェア情報は、ソフトウェアを特定する情報と物理情報とを組合せたものである。よって、ソフトウェア−ハードウェア情報を用いれば、ソフトウェアのライセンス単位が物理ハードウェア単位であっても、簡単に使用ソフトウェアの数が保有ライセンス数を越えているかどうかが判定できる。本実施の形態によれば、ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行することができる。
【００２５】
ここで、図１に加え、図２及び図３を用いて、本実施の形態におけるライセンス管理装置１０の構成を更に具体的に説明する。図１に示すように、本実施の形態では、ライセンス管理部１０には、ライセンスデータベース（以下「ＤＢ」と表記する。）２０が接続されている。
【００２６】
本実施の形態では、被管理サーバ３１〜３３は、当該被管理サーバ上に、対応するハイパーバイザー（３１Ａ、３２Ａ、または３３Ａ）がインストールされると、ライセンス管理装置１０に、その旨の通知を送信するように構成されている。また、その際、各被管理サーバは、ハイパーバイザーが構築する仮想マシンが使用するソフトウェアを特定する情報（以下「ソフトウェア情報」と表記する）と、当該被管理サーバの物理情報も送信する。
【００２７】
具体的には、各被管理サーバは、ソフトウェア情報として、例えば、各ソフトウェアの使用の機会を特定する情報と、それを使用する仮想ＯＳを動作させているハイパーバイザーの識別情報とを紐付けた情報を送信する（図２（ａ）参照）。また、各被管理サーバは、その物理情報として、例えば、当該被管理サーバの識別情報とそれに導入されているハイパーバイザーの識別情報とを紐付けた情報を送信する（図２（ｂ）参照）。
【００２８】
そして、管理サーバ１０においては、仮想マシン管理部１１が、通知を受信すると共に、各情報も受信する。そして、仮想マシン管理部１１は、ソフトウェア情報と、物理情報とを紐付けて、図２に示すソフトウェア−ハードウェア情報を生成する。また、仮想マシン管理部１１は、生成したソフトウェア−ハードウェア情報をライセンスＤＢ２０に格納させる。
【００２９】
図２は、本実施の形態で用いられるソフトウェア−ハードウェア情報の一例を示す図であり、図２（ａ）は、仮想マシンとソフトウェアとの関係を示し、図２（ｂ）は、仮想マシンとサーバコンピュータとの関係を示している。図２（ａ）において、ソフトウェアは「ＳＷ」と表記している。
【００３０】
このようにして作成された「ソフトウェア−ハードウェア情報」は、ライセンス管理の対象となるソフトウェアと物理ハードウェアとの関係を特定する情報であり、この情報により、例えば、仮想環境において、各ソフトウェアが実際にインストールされている物理ハードウェアが特定される。
【００３１】
また、本実施の形態では、仮想マシン管理部１１は、被管理サーバ３１〜３３それぞれの各ゲストＯＳの立ち上げ処理、ゲストＯＳの物理サーバ間での移動処理、ハイパーバイザーの管理対象外化処理などのアクションも実行する。
【００３２】
但し、仮想マシン管理部１１は、これらのアクションを実行する前に、アクションが実行された場合のソフトウェア−ハードウェア情報の更新イメージを作成する。そして、更仮想マシン管理部１１は、作成した更新イメージを、ライセンス管理部１２に送信し、ライセンス管理部１２からの応答があるまで当該アクションを保留する。
【００３３】
また、本実施の形態では、ライセンスデータベース２０には、上述したソフトウェア−ハードウェア情報に加えて、図３に示すように、仮想システム４０が保有するソフトウェアのライセンス情報（以下「保有ソフトウェアライセンス情報」と表記）も格納されている。図３は、本実施の形態で用いられる保有ソフトウェアライセンス情報の一例を示す図であり、図３（ａ）は各ソフトウェアの情報を示し、図３（ｂ）はライセンスについての情報を示している。図３（ａ）において、ソフトウェアは「ＳＷ」と表記している。
【００３４】
本実施の形態では、ライセンス管理部１２は、図２に示すソフトウェア−ハードウェア情報と、図３に示す保有ソフトウェアライセンス情報とを比較し、保有ライセンス数を越えてソフトウェアが使用されていないかどうか（ライセンス違反が発生していないかどうか）を判定する。
【００３５】
また、ライセンス管理部１２は、仮想マシン管理部１１が、ソフトウェア−ハードウェア情報の更新イメージを作成している場合は、この更新イメージと、保有ソフトウェアライセンス情報とを比較して、判定を行う。
【００３６】
そして、判定の結果、ライセンス管理部１２が、保有ライセンス数を越えてソフトウェアが使用されていると判定する場合は、仮想マシン管理部１１は、仮想マシン（ゲストＯＳ）でのソフトウェアの使用に制限を与える。例えば、仮想マシン管理部１１は、上述のように、アクションを保留している場合は、アクションを中止し、更には被管理サーバに警告を送る。
【００３７】
［装置の動作］
次に、本発明の実施の形態におけるライセンス管理装置１０の動作について図４および図５を用いて説明する。以下の説明においては、適宜図１〜図３を参酌する。また、本実施の形態では、ライセンス管理装置１０を動作させることによって、ライセンス管理方法が実施される。よって、本実施の形態におけるライセンス管理方法の説明は、以下のライセンス管理装置１０の動作説明に代える。
【００３８】
最初に、本実施の形態におけるライセンス管理装置１０の全体の動作について図４を用いて説明する。図４は、本発明の実施の形態におけるライセンス管理装置１０の全体の動作を示すフロー図である。
【００３９】
前提として、被管理サーバ３１〜３３それぞれが、ハイパーバイザーがインストールされた旨の通知と、ソフトウェア情報と、物理情報とを送信しているとする。そして、図４に示すように、まず、ライセンス管理装置１０において、仮想マシン管理部１１は、通知を受信すると共に、ソフトウェア情報及び物理情報を受信する（ステップＡ１）。
【００４０】
次に、仮想マシン管理部１１は、受信したソフトウェア情報と物理情報とを紐付けて、ソフトウェア−ハードウェア情報を生成し（ステップＡ２）、生成したソフトウェア−ハードウェア情報をライセンスＤＢ２０に格納させる（図２（ａ）および（ｂ）参照）。
【００４１】
次に、仮想マシン管理部１１は、仮想システム４０の管理者が、ゲストＯＳの立ち上げ処理、ゲストＯＳの物理サーバ間での移動処理、ハイパーバイザーの管理対象外化処理などのアクションを指示しているかどうかを判断する（ステップＡ３）。ステップＡ３の判定の結果、アクションが指示されていない場合は、仮想マシン管理部１１は待機状態となる。
【００４２】
一方、ステップＡ３の判定の結果、アクションが指示されている場合は、仮想マシン管理部１１は、当該アクションが実行された場合におけるソフトウェア−ハードウェア情報の更新イメージを作成し、作成した更新イメージをライセンス管理部１２に送信する（ステップＡ４）。そして、仮想マシン管理部１１は、ライセンス管理部１２からの応答があるまで当該アクションを保留する。
【００４３】
次に、ステップＡ４が実行されると、ライセンス管理部１２は、ライセンス管理処理を行う（ステップＡ５）。具体的には、ライセンス管理部１２は、更新イメージに基づいて、保有ライセンス数を越えてソフトウェアが使用されていないかどうかを判定する。そして、ライセンス管理部１２は、更新イメージにおいて、保有ライセンス数を越えてソフトウェアが使用されている場合は、仮想マシン管理部１１に対して、ＮＧ回答を通知し、そうでない場合は、ＯＫ回答を通知する。
【００４４】
次に、仮想マシン管理部１１は、通知を受けると、その通知がＮＧ回答かどうかを判定する（ステップＡ６）。ステップＡ６の判定の結果、ＮＧ回答である場合は、仮想マシン管理部１１は、保留していたアクションの実行を中止し、被管理サーバに警告を送る（ステップＡ９）。
【００４５】
一方、ステップＡ６の判定の結果、ＮＧ回答でない場合は、仮想マシン管理部１１は、保留していたアクションを実行し（ステップＡ７）、さらにソフトウェア−ハードウェア情報を更新イメージで上書きする（ステップＡ８）。ステップＡ８またはＡ９の実行後、ライセンス管理装置１０における処理は終了する。
【００４６】
続いて、図５を用いて、ライセンス管理部１２におけるライセンス管理処理について具体的に説明する。図５は、図４に示したライセンス管理処理の詳細を示すフロー図である。図５の例では、ライセンス管理部１２は、ソフトウェアのライセンス単位が、物理サーバ単位およびインスタンス単位のいずれであるかを判定しているとする。また、図５において、ソフトウェアは「ＳＷ」と表記している。
【００４７】
図５に示すように、まず、ライセンス管理部１２は、図２に示すライセンス管理対象のソフトウェアを、重複を排除して抜き出す（ステップＳ１）。結果、ソフトウェア−１と、ソフトウェア−２とが抜き出される。
【００４８】
次に、ライセンス管理部１２は、ステップＳ１で抜き出したソフトウェア毎に、以降のステップを実行する（ステップＳ２）。ステップＳ３では、ライセンス管理部１２は、図３に示す保有ソフトウェアライセンス情報に基づいて、抜き出したソフトウェア毎に、それぞれのライセンス単位を特定する。
【００４９】
具体的には、処理対象がソフトウェア−１であるとすると、ライセンス管理部１２は、ソフトウェア−１のライセンス単位を、物理サーバ単位であると特定する。従って、ライセンス管理部１２は、ステップＰ１〜Ｐ５を実行する。
【００５０】
まず、ライセンス管理部１２は、図２に示すソフトウェア−ハードウェア情報に基づいて、ソフトウェア−１の使用数を物理サーバ単位で集計する（ステップＰ１）。具体的には、本例では、ステップＰ１の結果、ライセンス管理部１２は、ソフトウェア−１については、物理サーバ３１に対する使用数が「３」、物理サーバ３２に対する使用数が「１」、物理サーバ３３に対する使用数が「１」と判定する。
【００５１】
次に、ライセンス管理部１２は、集計を行った物理サーバ毎に、ソフトウェアの使用数が「ライセンス単位内での使用可能数（図３（ｂ）参照）」を越えているかどうかを判定する（ステップＰ２〜Ｐ４）。具体的には、本例では、図３（ｂ）に示すように、いずれの使用数もソフトウェア−１に関するライセンスタイプＡの「ライセンス単位内での使用可能数」である「４」を越えていない。よって、ステップＰ２において、ライセンス管理部１２は、「越えていない」と判定する。
【００５２】
次に、ライセンス管理部１２は、ソフトウェア−１を使用している物理サーバの数と、保有ライセンス数とを比較し、物理サーバの数が保有ライセンス数を越えていないかどうかを判定する（ステップＰ５）。具体的には、本例では、使用数は「３」は、図３（ａ）に示す保有ライセンス数「５」を越えていないのでライセンス管理部１２は、物理サーバの数が保有ライセンス数を越えていないと判定する。
【００５３】
また、処理対象がソフトウェア−２であるとすると、ライセンス管理部１２は、ソフトウェア−１のライセンス単位を、インスタンス単位であると特定する。従って、ライセンス管理部１２は、ステップＴ１及びＴ２を実行する。
【００５４】
まず、ライセンス管理部１２は、図２に示すソフトウェア−ハードウェア情報に基づいて、ソフトウェア−２の使用数をインスタンス単位に集計する（ステップＴ１）。具体的には、本例では、ステップＰ１の結果、ライセンス管理部１２は、ソフトウェア−２については、使用数は「２」と判定する。
【００５５】
次に、ライセンス管理部１２は、ソフトウェア−２の使用数が、「ライセンス単位内での使用可能数」と「保有ライセンス数」との積を越えているかどうかを判定する（ステップＴ２）。具体的には、本例では、図３（ａ）および（ｂ）に示すように、積は１０となり、ソフトウェア−２の使用数は、「１０」を越えていないので、ライセンス管理部１２は、「越えていない」と判定する。
【００５６】
その後、ステップＳ１で抜き出した全てのライセンス管理対象のソフトウェアについて、上述のステップが完了した場合は（ステップＳ４）、ライセンス管理部１２は、仮想マシン管理部１１にＯＫ回答を通知し、処理を終了する（ステップＳ５）。
【００５７】
一方、途中の分岐ステップ、即ち、ステップＰ３、Ｐ５、Ｔ２において、保有ライセンス数が不足している（「越えている」）と判断した場合は、ライセンス管理部１２は、仮想マシン管理部１１に対して、ＮＧ回答を通知し、処理を終了する（ステップＱ１）。
【００５８】
以上のように、本実施の形態によれば、ソフトウェア−ハードウェア情報を用いれば、ソフトウェアのライセンス単位が物理ハードウェア単位であっても、簡単に使用ソフトウェアの数が保有ライセンス数を越えているかどうかが判定できる。よって、ライセンス内容の遵守を確実なものとすることができる。
【００５９】
また、ライセンス管理装置１０には、運用において管理者に負担となることはなく、一般的な仮想システムに、本実施の形態におけるライセンス管理装置１０を導入しても、管理者における負担が増加することはない。
【００６０】
更に、ライセンス管理装置１０は、複数のサーバコンピュータを対象とできるので、複数のシステムに対して適用でき、加えて、複数の部門間にまたがってライセンスが共有される場合においても、適切にライセンス管理を行うことができる。このため、結果的に、システムの運用コストの低減も図られる。
【００６１】
本実施の形態におけるプログラムは、コンピュータに、図４に示すステップＡ１〜Ａ９、図５に示すＳ１〜Ｓ５、Ｐ１〜Ｐ５、Ｔ１〜Ｔ２、およびＱ１を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるライセンス管理装置１０とライセンス管理方法とを実現することができる。この場合、コンピュータのＣＰＵは、仮想マシン管理部１１およびライセンス管理部１２として機能し、処理を行なう。また、ライセンスＤＢ２０は、当該コンピュータに備えられたハードディスク等の記憶装置、または当該コンピュータにネットワークを介して接続された記憶装置などによって、構築することができる。
【００６２】
ここで、実施の形態におけるプログラムを実行することによって、ライセンス管理装置１０を実現するコンピュータについて図６を用いて説明する。図６は、本発明の実施の形態におけるライセンス管理装置を実現するコンピュータの一例を示すブロック図である。
【００６３】
図６に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００６４】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００６５】
また、記憶装置１１３の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００６６】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash）及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記憶媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体が挙げられる。
【００６７】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１２）によって表現することができるが、以下の記載に限定されるものではない。
【００６８】
（付記１）
仮想マシンが構築されたサーバコンピュータを対象として、ソフトウェアのライセンス管理を行う装置であって、
前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、仮想マシン管理部と、
前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定し、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ライセンス管理部と、
を備えている、ことを特徴とするライセンス管理装置。
【００６９】
（付記２）
前記ライセンス管理部が、保有ライセンス数を越えて前記ソフトウェアが使用されていると判定する場合に、前記仮想マシン管理部が、前記仮想マシンでの前記ソフトウェアの使用に制限を与える、付記１に記載のライセンス管理装置。
【００７０】
（付記３）
前記仮想マシン管理部が、前記サーバコンピュータに前記仮想マシンが構築される度に、前記サーバコンピュータから、前記管理情報を取得する、付記１または２に記載のライセンス管理装置。
【００７１】
（付記４）
対象となるサーバコンピュータが複数であり、そして、前記ソフトウェアのライセンス単位が前記サーバコンピュータ毎であって、保有ライセンス数が前記ソフトウェアの使用が認められる前記サーバコンピュータの数によって規定されている場合に、
前記ライセンス管理部が、前記管理情報を用いて、前記ソフトウェアを使用している前記サーバコンピュータを特定し、特定した前記サーバコンピュータの数が前記保有ライセンス数を越えていないかどうかを判定する、
付記１から３のいずれかに記載のライセンス管理装置。
【００７２】
（付記５）
仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を行うための方法であって、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を有する、ことを特徴とするライセンス管理方法。
【００７３】
（付記６）
（ｄ）前記（ｃ）のステップで、保有ライセンス数を越えて前記ソフトウェアが使用されていると判定する場合に、前記仮想マシンでの前記ソフトウェアの使用に制限を与える、ステップを、更に有する付記５に記載のライセンス管理方法。
【００７４】
（付記７）
（ｅ）前記サーバコンピュータに前記仮想マシンが構築される度に、前記サーバコンピュータから、前記管理情報を取得する、ステップを、更に有する付記５または６に記載のライセンス管理方法。
【００７５】
（付記８）
対象となるサーバコンピュータが複数であり、そして、前記ソフトウェアのライセンス単位が前記サーバコンピュータ毎であって、保有ライセンス数が前記ソフトウェアの使用が認められる前記サーバコンピュータの数によって規定されている場合に、
前記（ｃ）のステップで、前記管理情報を用いて、前記ソフトウェアを使用している前記サーバコンピュータを特定し、特定した前記サーバコンピュータの数が前記保有ライセンス数を越えていないかどうかを判定する、
付記５から７のいずれかに記載のライセンス管理方法。
【００７６】
（付記９）
仮想マシンが構築されたサーバコンピュータを対象としたソフトウェアのライセンス管理を、コンピュータによって行うためのプログラムであって、
前記コンピュータに、
（ａ）前記仮想マシン、前記仮想マシンで使用される前記ソフトウェア、および前記仮想マシンを構築している前記サーバコンピュータの物理情報、を紐付け、これらを管理情報として管理する、ステップと、
（ｂ）前記ソフトウェアのライセンス単位が、前記サーバコンピュータの物理情報に基づいているかどうかを判定する、ステップと、
（ｃ）前記（ｂ）のステップでの判定の結果、前記物理情報に基づいていると判定する場合に、前記管理情報を用いて、保有ライセンス数を越えて前記ソフトウェアが使用されていないかどうかを判定する、ステップと、
を実行させるプログラム。
【００７７】
（付記１０）
（ｄ）前記（ｃ）のステップで、保有ライセンス数を越えて前記ソフトウェアが使用されていると判定する場合に、前記仮想マシンでの前記ソフトウェアの使用に制限を与える、ステップを、更に前記コンピュータに実行させる付記９に記載のプログラム。
【００７８】
（付記１１）
（ｅ）前記サーバコンピュータに前記仮想マシンが構築される度に、前記サーバコンピュータから、前記管理情報を取得する、ステップを、更に前記コンピュータに実行させる付記９または１０に記載のプログラム。
【００７９】
（付記１２）
対象となるサーバコンピュータが複数であり、そして、前記ソフトウェアのライセンス単位が前記サーバコンピュータ毎であって、保有ライセンス数が前記ソフトウェアの使用が認められる前記サーバコンピュータの数によって規定されている場合に、
前記（ｃ）のステップで、前記管理情報を用いて、前記ソフトウェアを使用している前記サーバコンピュータを特定し、特定した前記サーバコンピュータの数が前記保有ライセンス数を越えていないかどうかを判定する、
付記９から１１のいずれかに記載のプログラム。
【産業上の利用可能性】
【００８０】
以上のように、本発明によれば、ソフトウェアライセンスの数がインストール数以外によって決定される場合であっても、ライセンス管理を実行することができる。本発明は、複数の仮想マシンが一つの物理サーバに構築される仮想システムに有用である。
【符号の説明】
【００８１】
１０  ライセンス管理装置
１１  仮想マシン管理部
１２  ライセンス管理部
２０  ライセンスデータベース
３１、３２、３３  被管理サーバ（サーバコンピュータ）
３１Ａ、３２Ａ、３３Ａ  ハイパーバイザー
４０  仮想システム
１１０  コンピュータ（ライセンス管理装置）
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2012208752.tif 000003
【図２】
2012208752.tif 000004
【図３】
2012208752.tif 000005
【図４】
2012208752.tif 000006
【図５】
2012208752.tif 000007
【図６】
2012208752.tif 000008