説明

ソフトウェアのライセンス管理システム

【課題】 ライセンス管理方式の異なるソフトウェアを統一的に管理し、各ソフトウェアのライセンスの使用効率を向上させ、不要なライセンスの買い増しを抑制することができるようにする。
【解決手段】 ライセンス付きソフトウェが予めインストールされた複数の仮想マシンと、この複数の仮想マシンの使用予約をマシン単位でクライアント端末から受付け、利用予約スケジュールを時間帯別に格納する使用予約管理手段と、前記使用予約管理手段に格納された使用予約スケジュールに基づき各仮想マシンの予約状況を監視し、予約状況に応じて前記仮想マシンの前記クライアント端末からの利用を許可する手段とを備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、管理対象のソフトウェアのライセンスが足りなくなった時に、ソフトウェアをシェアすることによってライセンス数の不足を仕組みに関するものである。
【背景技術】
【0002】
ソフトウェアのライセンスをシェアする仕組みの代表例としては、下記の特許文献1で公開されている方法がある。この方法では、ソフトウェア使用権を管理するライセンス管理サーバが設置されており、クライアントPCがソフトウェアを利用したい場合には、ライセンス管理サーバからソフトウェア使用権を取得してソフトウェアを使用する。ソフトウェアの使用が終了したならば、ソフトウェア使用権をライセンス管理サーバに返却するという方法をとることによって、1つのソフトウェアのライセンスがあれば、このライセンスを時間的にシェアすることによって複数のクライアントPCで利用できるようにしたものである。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−84852号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところが、上記先行技術にあっては、以下の2点の課題がある。
(1)ソフトウェア使用権の管理方法が統一されていないので、ソフトウェア毎にライセンス管理サーバが必要である。
(2)ライセンスを時間的にシェアするものであるため、ソフトウェアの同時使用が多くなると、ソフトウェア使用権(ライセンス)を増やす必要がある。しかし、ソフトウェア使用権を最大同時使用数だけ用意すると、利用効率が低下し、コストも嵩むという問題がある。
【0005】
本発明の目的は、ライセンス管理方式の異なるソフトウェアを統一的に管理し、各ソフトウェアのライセンスの使用効率を向上させ、不要なライセンスの買い増しを抑制することができるソフトウェアのライセンス管理システムを提供することにある。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明に係るソフトウェアのライセンス管理システムは、ライセンス付きソフトウェが予めインストールされた複数の仮想マシンと、この複数の仮想マシンの使用予約をマシン単位でクライアント端末から受付け、利用予約スケジュールを時間帯別に格納する使用予約管理手段と、前記使用予約管理手段に格納された使用予約スケジュールに基づき各仮想マシンの予約状況を監視し、予約状況に応じて前記仮想マシンの前記クライアント端末からの利用を許可する手段とを備えることを特徴とする。
また、前記仮想マシンの利用時間帯における稼働環境の記録データと前記クライアント端末の利用者とを対応付ける稼動状況管理手段を備え、前記仮想マシンの再利用を許可する際に、当該利用者に関する稼働環境のデータが記録されていた場合、その記録された稼働環境のデータに基づき前記仮想マシンの稼働環境を再構成し、利用予約をした前記クライアント端末に当該仮想マシンを再利用させることを特徴とする。
【発明の効果】
【0007】
本発明によれば、ライセンス付きソフトウェが予めインストールされた仮想マシンのうち所望のソフトウェアがインストールされた仮想マシンを予約し、この仮想マシンを予約状況に応じて利用する構成であるため、ライセンス管理方式の異なるソフトウェアを統一的に管理して、各ライセンスソフトウェアの使用効率をあげて、不要なソフトウェアのライセンスの買い増しを抑制することができる。
【図面の簡単な説明】
【0008】
【図1】本発明に係るシステムの実施の形態を示すシステム構成図である。
【図2】ライセンス管理サーバの構成を示すシステム構成図である。
【図3】スケジュール管理テーブルの構造を示す構成図である。
【図4】スナップショット管理テーブルの構造を示す構成図である。
【図5】スケジュール管理プログラムの動作を説明する流れ図である。
【図6】仮想マシン切替プログラムの動作を説明する流れ図である。
【0009】
以下、本発明の実施形態を、図面に従って詳細に説明する。
以下に本発明の実施形態の例を説明する。ただし、同一番号は同様の部品・要
素を示す。なお、これにより本発明が限定されるものではない。
図1は、本発明に係るシステムの実施の形態を示すシステム構成図である。
図1において、ライセンス管理サーバ101は、仮想マシン100a,100bに割り当てられたソフトウェアのライセンスをクライアント103,104の利用者に効率的に利用させる制御を行うサーバである。
クラウドインフラ102は、ソフトウェアライセンスが割り当てられた仮想マシン(A)100aや仮想マシン(B)100bなどが複数稼働する実行環境である。
クライアント(X)103やクライアント(Y)104は、クラウドインフラ102で稼働する仮想マシンに接続し、仮想マシンを利用する端末である。
ネットワーク105は、ライセンス管理サーバ101やクラウドインフラ102やクライアント103,104などがデータを交換する通信網である。
【0010】
図2は、ライセンス管理サーバの構成を示すシステム構成図である。
ライセンス管理サーバ101は、プログラムの実行を行うCPU201と、プログラムやデータをロードするメモリ202と、他の機器とデータ交換を行う通信部203と、命令やデータの入力を行う入力部204と、システムの状態などを出力する出力部205と、スケジュール管理プログラム207や仮想マシン切替プログラム208やWebサーバプログラム209やスケジュール管理テーブル210やスナップショット管理テーブル211の記憶されている記憶部206がバス212で接続されている。
通信部203は、有線LANや無線LANなどを利用して、ネットワーク105を介してクラウドインフラ102やクライアントとの間で通信を行う機能を持つ。
入力部204は、キーボード、マウス、ペン入力、指入力、音声入力、ボタンなどの入力手段を持つ。
出力部205は、ディスプレイ、音声などの出力手段を持つ。
【0011】
スケジュール管理プログラム207は、スケジュール管理テーブル210を利用してクラウドインフラ102上のライセンス付きソフトウェアがインストールされた仮想マシンへ100a,100bの利用者割当を制御するプログラムである。
仮想マシン切替プログラム208は、スケジュール管理テーブル210の割当に従って、利用時間の切れる利用者から仮想マシンの環境を切断し、利用環境を保存し、次の利用者が以前利用していた環境に設定し直して、提供する処理を行うプログラムである。
Webサーバプログラム209は、クライアント103,104の利用者に仮想マシン」100a,100bの予約スケジュールを提示したり、利用者がライセンスを利用したい時間帯を指定したりできるWebアプリケーションが稼働するプログラムである。
スケジュール管理テーブル210は、ライセンスソフトのインストールされている仮想マシンン100a,100bの名前や利用予約状況などのデータを格納している。
【0012】
図3にスケジュール管理テーブル210の構造を示す。
項番301は、テーブル内のレコードを一意に特定する識別子である。
VM名302は、仮想マシン100a,100bを特定する名前である。
ライセンスアプリ303は、仮想マシン100a,100bに割り当てられたライセンスソフトウェアの識別子である。
予約状況304は、各仮想マシン100a,100bに対する利用者の予約状況データであり、例えば数日間単位で予約状況データを格納している。
予約状況304は日単位予約305で、午前、午後、夜間の予約枠に区切られている。ぞれぞれの予約枠には、予約が入っている場合には、予約者X,Y,Zといった識別子が格納されている。それ以外は、空欄となっている。
【0013】
スナップショット管理テーブル211は、各仮想マシン100a,100bの利用者毎のスナップショットの履歴情報を格納している。
図4にスナップショット管理テーブル211の構造を示す。
項番401は、テーブル内のレコードを一意に特定する識別子である。
時刻402は、スナップショットを記録した時刻である。
ユーザID403は、スナップショットの状態を利用していた利用者の識別子である。
VM名404は、スナップショットと紐づいている仮想マシンンの識別子である。
SS#405は、仮想マシンで複数記録されているスナップショットを一意に識別する識別子である
【0014】
次に、システム全体の動作の概要について説明する。
はじめに、ライセンスソフトウェアの利用者は、自身が使用するクライアント103または104のWebブラウザを利用して、Webサーバプログラム209を経由で、スケジュール管理プログラム207にアクセスし、ソフトウェアのインストールされたクラウドインフラ102上の仮想マシン100aまたは100bの利用予約を行う。
予約の時間になると、仮想マシン切替プログラム208が、直前の利用者の仮想マシンへのコネクションを切断して、次の利用者向けに仮想マシン環境に再構成する。
次に、スケジュール管理プログラム207の処理手順を図5のフローチャートで説明する。
Webサーバプログラム209経由などで、利用者により指定された予約枠と予約者の情報を取得する(ステップ501)。ここで、予約枠とは、利用したいライセンスソフトのインストールされた仮想マシンのVM名と利用したい(1日を3つの枠に分割した)時間帯で表わされるものであり、VM名302と時間帯304がクロスする欄である。
スケジュール管理プログラム207は、次に、ステップ501で取得した現予約枠に、登録情報があるか確認する(ステップ502)。
これは、スケジュール管理テーブル210上で、現予約枠に、利用者IDが登録されている確認するものである。登録情報があれば、ステップ503に進む。そうでなければ、ステップ505に進む。
【0015】
ステップ501で取得した現予約枠と同じ時間帯で、同じライセンスソフトのインストールされた複数の仮想マシンに対して、現予約枠の登録者が予約している仮想マシンの割合(予約率)とステップ501で取得した予約者の予約率とを比較する(ステップ503)。これは、スケジュール管理テーブル210上で、現予約枠の行のライセンスアプリの項目と同じ行エントリーを抽出し、現予約枠と同じ時間帯の列に着目し、現予約枠の登録者と同じ利用者IDの数と予約者の利用者IDの数を比較することである。登録者の予約率が高ければ、ステップ504に進む。そうでなければ、処理を終了する。
ステップ501で取得した現予約枠の直前の予約枠の登録者が、ステップ501で取得した予約者と同じか確認する(ステップ504)。同じならば、処理を終了する。そうでなければ、ステップ505へ進む。
【0016】
ステップ501で取得した現予約枠を、ステップ501で取得した予約者の情報で書き換えて処理を終了する(ステップ505)。
すなわち、スケジュール管理プログラム207はクライアント103または103から受付けた仮想マシン100aまたは100bの利用予約に対して予約枠に空きがあれば無条件に受付けた予約を登録する。しかし、空きが無ければ、対象となっている予約枠(現予約枠)について直前の予約枠の予約者(登録者)と新たな予約者との関係から同じ予約者が連続しないように予約を受付ける。
なお、空きが無い場合にどのような論理で新たな予約を受付けるかは任意であり、本発明は実施形態の説明に限定されるものではない。
【0017】
次に、仮想マシン切替プログラム208の処理手順を図6のフローチャートで説明する。
まず、仮想マシン切替プログラム208は現在時刻を取得する(ステップ601)。
この後、次の予約枠の時間帯に、利用者の切り替わる仮想マシンをスケジュール管理テーブル210から抽出する(ステップ602)。そして、予約枠の切り替わる時刻(切替時刻)の直前に抽出した仮想マシンのそれぞれに対して、ステップ603以下の処理を実行する。
ステップ602で抽出した仮想マシンに対して、現在の利用者(現利用者)向けに利用終了のメッセージを出力する(ステップ603)。
次に、切替時刻になったら、ステップ602で抽出した仮想マシンに対して、現利用者のクライアントからの接続を切断するようにリモート制御する(ステップ604)。
ステップ604で切断した仮想マシンのこの時点での環境設定などの稼動環境情報をスナップショットとしてまとめる(ステップ605)。
スナップショット管理テーブル211にステップ605で作成したスナップショットを登録する(ステップ606)。ここでは、時刻402には現在時刻を、ユーザID403には現利用者の利用IDを、VM名404にはステップ605でスナップショットを取得した仮想マシンのVM名を、SS#405には同じ仮想マシンの中で、複数スナップショットを一意に識別できる識別子を登録する。
【0018】
次に、スケジュール管理テーブル210から、仮想マシンの現時刻の利用者(次利用者)を抽出し、スナップショット管理テーブル211に、同仮想マシンに対する次利用者のスナップショットが登録されていないか検索する(ステップ607)。登録が有れば、ステップ608へ進む。そうでなければ、ステップ610に進む。
ステップ607で検索したスナップショットを、ステップ606でスナップショットの登録をした仮想マシンに適用して、利用環境を再構成する(ステップ608)。
次に、次利用者にステップ608で利用環境を再構成した仮想マシンを提供する(ステップ609)。そして、ステップ601に戻る。
一方、ステップ607において、次利用者のスナップショットが登録されていない場合には、当該仮想マシンに、初期インストール状態のスナップショットを適用して、利用環境を再構成する(ステップ610)。そして、ステップ609に戻る。
【符号の説明】
【0019】
100a,100b 仮想マシン
101 ライセンス管理サーバ
103、104クライアント
207 スケジュール管理プログラム
208 仮想マシン切替プログラム
209 Webサーバプログラム
210 スケジュール管理プログラム
211 スナップショット管理テーブル

【特許請求の範囲】
【請求項1】
ライセンス付きソフトウェが予めインストールされた複数の仮想マシンと、この複数の仮想マシンの使用予約をマシン単位でクライアント端末から受付け、使用予約スケジュールを時間帯別に格納する使用予約管理手段と、前記使用予約管理手段に格納された利用予約スケジュールに基づき各仮想マシンの予約状況を監視し、予約状況に応じて前記仮想マシンの前記クライアント端末からの利用を許可する手段とを備えることを特徴とするソフトウェアのライセンス管理システム。
【請求項2】
前記仮想マシンの利用時間帯における稼働環境の記録データと前記クライアント端末の利用者とを対応付ける稼動状況管理手段を備え、前記仮想マシンの再利用を許可する際に、当該利用者に関する稼働環境のデータが記録されていた場合、その記録された稼働環境のデータに基づき前記仮想マシンの稼働環境を再構成し、利用予約をした前記クライアント端末に当該仮想マシンを再利用させることを特徴とする請求項1に記載のソフトウェアのライセンス管理システム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−20440(P2013−20440A)
【公開日】平成25年1月31日(2013.1.31)
【国際特許分類】
【出願番号】特願2011−153099(P2011−153099)
【出願日】平成23年7月11日(2011.7.11)
【出願人】(000233055)株式会社日立ソリューションズ (1,610)
【Fターム(参考)】