特開2021-60886(P2021-60886A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧
特開2021-60886ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム
<>
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000003
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000004
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000005
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000006
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000007
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000008
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000009
  • 特開2021060886-ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2021-60886(P2021-60886A)
(43)【公開日】2021年4月15日
(54)【発明の名称】ライセンス管理装置、ライセンス管理方法、及び、ライセンス管理プログラム
(51)【国際特許分類】
   G06F 21/10 20130101AFI20210319BHJP
【FI】
   G06F21/10 350
【審査請求】有
【請求項の数】10
【出願形態】OL
【全頁数】16
(21)【出願番号】特願2019-185630(P2019-185630)
(22)【出願日】2019年10月9日
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100124154
【弁理士】
【氏名又は名称】下坂 直樹
(72)【発明者】
【氏名】鈴木 裕介
(57)【要約】
【課題】新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加する。
【解決手段】ライセンス管理装置40は、アプリケーション500の実行に必要なライセンスが付与される単位であるアプリケーション500の実行単位50によってアプリケーション500が新たに実行される前に、アプリケーション500を新たに実行する実行単位50に対して第一の種別のライセンス401を付与可能か否かを判定する判定部41と、第一の種別のライセンス401を付与不能である場合、アプリケーション500を新たに実行する実行単位50に対して、第二の種別のライセンス402を付与する付与部42と、第二の種別のライセンス402を用いてアプリケーション500を実行するように実行単位50を制御する制御部43と、を備える。
【選択図】 図7
【特許請求の範囲】
【請求項1】
アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定する判定手段と、
前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与する付与手段と、
前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する制御手段と、
を備えるライセンス管理装置。
【請求項2】
前記判定手段は、前記第一の種別のライセンスである売り切り型のライセンスが付与されて前記アプリケーションを実行している前記実行単位の数が所定の値であるか否かを判定し、
前記付与手段は、前記実行単位の数が前記所定の値である場合、前記アプリケーションを新たに実行する前記実行単位に対して、前記第二の種別のライセンスである従量課金型あるいはサブスクリプション型のライセンスを付与する、
請求項1に記載のライセンス管理装置。
【請求項3】
前記第二の種別のライセンスが付与された前記実行単位による前記アプリケーションの実行状況を監視することによって、前記アプリケーションの実行実績を管理する監視手段をさらに備え、
前記判定手段は、前記実行実績と変更基準とに基づいて、前記実行単位に付与する前記ライセンスの種別を変更する必要があるか否かを判定し、
前記付与手段は、前記実行単位に付与する前記ライセンスの種別を変更する必要がある場合、前記実行単位に付与する前記ライセンスの種別を、前記従量課金型から前記サブスクリプション型に、あるいは、前記サブスクリプション型から前記従量課金型に変更する、
請求項2に記載のライセンス管理装置。
【請求項4】
前記付与手段は、前記実行単位に付与する前記ライセンスの種別を変更する必要がある場合、前記実行単位に付与する前記ライセンスの種別を、前記第二の種別から前記第一の種別に変更する、
請求項3に記載のライセンス管理装置。
【請求項5】
前記付与手段が前記実行単位に付与する前記ライセンスの種別を変更する際に用いる変更基準を更新する更新手段をさらに備える、
請求項3または請求項4に記載のライセンス管理装置。
【請求項6】
前記付与手段は、前記実行単位に対して、前記第二の種別のライセンスを付与する代わりに、実行可能な前記アプリケーションの機能が制限された第三の種別の前記ライセンスを付与する、
請求項1乃至請求項5のいずれか一項に記載のライセンス管理装置。
【請求項7】
前記実行単位による前記アプリケーションの実行において処理可能なデータ通信量の累積値の最大値が決められた前記第一の種別のライセンスを付与された前記実行単位によって処理された前記データ通信量を監視することによって、前記データ通信量の累積値を算出する算出手段をさらに備え、
前記判定手段は、前記算出手段によって算出された前記データ通信量の累積値が前記最大値に到達したか否かを判定し、
前記付与手段は、前記データ通信量の累積値が前記最大値に到達した場合、前記累積値が前記最大値を超えることを許可する前記第二の種別のライセンスを前記実行単位に付与する、
請求項1に記載のライセンス管理装置。
【請求項8】
前記実行単位は、コンテナ、あるいは仮想マシン、あるいは、IoT(Internet of Things)システムにおけるデバイス、あるいは、前記アプリケーションの実行を指示したユーザである、
請求項1乃至請求項7のいずれか一項に記載のライセンス管理装置。
【請求項9】
情報処理装置によって、
アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定し、
前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与し、
前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する、
ライセンス管理方法。
【請求項10】
アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定する判定処理と、
前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与する付与処理と、
前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する制御処理と、
をコンピュータに実行させるためのライセンス管理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願発明は、アプリケーションの実行に必要なライセンスを管理する技術に関する。
【背景技術】
【0002】
近年のコンピュータシステムは、アプリケーションソフトウェア(本願では以降、単にアプリケーションと称する)を実行する環境として、コンテナ環境や仮想化環境等を実装することによって、アプリケーションによるサービスの提供に最適な構成を柔軟に構築する。このようなコンピュータシステムでは、アプリケーションの実行環境(例えばコンテナや仮想マシン)に関する動的なスケールアウト(実行環境の追加)やスケールイン(実行環境の削減)が行われる。
【0003】
一方、アプリケーションを実行するためには、その実行環境に対してライセンスを付与することが必要となる。したがって、上述のような、アプリケーションの実行環境の構成が動的に変更されるシステムにおいて、実行環境にライセンスを付与できるようにライセンスを適切に管理する技術への期待が高まってきている。
【0004】
このような技術に関連する技術として、特許文献1には、複数のコンピュータが接続され、アプリケーションが仮想サーバ上で起動される際に課金によってライセンスを許可するライセンス管理システムが開示されている。このシステムは、課金のタイプを判断し、その判断に基づく課金のタイプに応じたライセンスの数をカウントし、そのカウントの結果を、ライセンスを許可するサーバに送信する。そして、ライセンスを許可するサーバは、送信されたカウント数が同時に利用できるライセンス数を超えているか否かを判断し、その判断結果に基づいて、ライセンスを許可するか否かを決定する。
【0005】
また、特許文献2には、異なる種類のソフトウェアを同時利用できるソフトウェアの本数の契約情報を管理するシステムが開示されている。このシステムは、クライアントからソフトウェアの利用許諾要求があった際に、当該契約情報に合致するソフトウェアであり、かつ、同時利用できるソフトウェアの本数以下であるときに、当該クライアントにソフトウェアのライセンスを発行する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−267009号公報
【特許文献2】特開2008−234556号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
アプリケーションの実行は、通常、そのアプリケーションのベンダー等から購入したライセンス数の範囲内で行うことが許可される。したがって、上述したコンテナ環境や仮想化環境等を実装したコンピュータシステムにおいて、アプリケーションの実行環境をスケールアウトするときに、既に購入したライセンス数分のアプリケーションを実行済みである場合は、スケールアウトにより追加した実行環境に、新たに当該アプリケーションを実行させることはできない。この場合において、スケールアウトにより追加した実行環境に新たに当該アプリケーションを実行させるためには、ライセンスを追加購入する必要がある。
【0008】
この場合、通常、ライセンスを追加購入するための契約手続きや発注等の処理が必要となる。また、当該アプリケーションが高価である場合などでは、ライセンスを追加購入するか否かに関するビジネス的な判断なども必要となる。即ち、既に購入したライセンス数分のアプリケーションを実行済みである状態においてアプリケーションの実行環境を速やかにスケールアウトすることは困難である。特許文献1及び2は、アプリケーションの実行環境を速やかに追加することができるようにするための技術に関して特に言及していない。
【0009】
本願発明の主たる目的は、新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加できるようにするライセンス管理装置等を提供することである。
【課題を解決するための手段】
【0010】
本願発明の一態様に係るライセンス管理装置は、アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定する判定手段と、前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与する付与手段と、前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する制御手段と、を備える。
【0011】
上記目的を達成する他の見地において、本願発明の一態様に係るライセンス管理方法は、情報処理装置によって、アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定し、前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与し、前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する。
【0012】
また、上記目的を達成する更なる見地において、本願発明の一態様に係るライセンス管理プログラムは、アプリケーションの実行に必要なライセンスが付与される単位である前記アプリケーションの実行単位によって前記アプリケーションが新たに実行される前に、前記アプリケーションを新たに実行する前記実行単位に対して第一の種別の前記ライセンスを付与可能か否かを判定する判定処理と、前記第一の種別のライセンスを付与不能である場合、前記アプリケーションを新たに実行する前記実行単位に対して、第二の種別の前記ライセンスを付与する付与処理と、前記第二の種別のライセンスを用いて前記アプリケーションを実行するように前記実行単位を制御する制御処理と、をコンピュータに実行させる。
【0013】
更に、本願発明は、係るライセンス管理プログラム(コンピュータプログラム)が格納された、コンピュータ読み取り可能な、不揮発性の記録媒体によっても実現可能である。
【発明の効果】
【0014】
本願発明は、新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加することを可能とする。
【図面の簡単な説明】
【0015】
図1】本願発明の第1の実施形態に係るライセンス管理システム1の構成を示すブロック図である。
図2】本願発明の第1の実施形態に係るライセンス管理情報171の内容(アプリケーション200を実行するコンテナ21を新たに追加する場合)を例示する図である。
図3】本願発明の第1の実施形態に係るライセンス管理装置10が、アプリケーション200を実行するコンテナ21がスケールアウトにより追加される際に、当該コンテナ21にライセンスを付与する動作を示すフローチャートである。
図4】本願発明の第1の実施形態に係る変更基準173の内容を例示する図である。
図5】本願発明の第1の実施形態に係るライセンス管理情報171の内容(アプリケーション200の実行実績172及び変更基準173に基づいて、コンテナ21に付与するライセンスの種別を変更する場合)を例示する図である。
図6】本願発明の第1の実施形態に係るライセンス管理装置10が、実行実績172と変更基準173とに基づいて、コンテナ21に付与するライセンスの種別を変更する動作を示すフローチャートである。
図7】本願発明の第2の実施形態に係るライセンス管理装置40の構成を示すブロック図である。
図8】本願発明の各実施形態に係るライセンス管理装置を実行可能な情報処理装置900の構成を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、本願発明の実施の形態について図面を参照して詳細に説明する。
【0017】
<第1の実施形態>
図1は、本願発明の第1の実施の形態に係るライセンス管理システム1の構成を示すブロック図である。ライセンス管理システム1は、大別して、ライセンス管理装置10と、アプリケーション実行環境20とを有する。ライセンス管理装置10とアプリケーション実行環境20とは、通信ネットワーク30によって通信可能に接続されている。通信ネットワーク30は、例えばインターネットやイントラネットであり、WAN(Wide Area Network)やLAN(Local Area Network)等によって構成されている。
【0018】
アプリケーション実行環境20は、1以上のサーバ装置等の情報処理装置によって構成され、n(nは任意の自然数)個のコンテナ21−1乃至21−nを含んでいる。尚、本実施形態の説明では以降、コンテナ21−1乃至21−nの総称、あるいはそれらのいずれかを、単にコンテナ21と称する場合がある。各コンテナ21は、アプリケーション200を実行可能である。
【0019】
本実施形態に係るライセンス管理装置10は、アプリケーション200の実行に必要なコンテナ21に付与するライセンスを管理する装置である。但し、本実施形態に係るライセンス管理システム1では、コンテナ21が、ライセンスが付与される単位であるアプリケーション200の実行単位であることとする。
【0020】
ライセンス管理装置10は、判定部11、付与部12、制御部13、監視部14、更新部15、及び、記憶部17を備えている。
【0021】
記憶部17は、例えばHDD(Hard Disk Drive)あるいは電子メモリ等の記憶デバイスであり、後述するライセンス管理情報171、実行実績172、及び、変更基準173を記憶している。
【0022】
<スケールアウトにより追加されたコンテナ21に新たにライセンスを付与する動作>
まず、本実施形態に係るライセンス管理装置10が、アプリケーション200を実行するコンテナ21がスケールアウトにより追加される際において、当該コンテナ21にライセンスを付与する動作について説明する。
【0023】
判定部11は、アプリケーション実行環境20において、アプリケーション200を実行するためのコンテナ21がスケールアウトにより追加される場合において、新たにアプリケーション200を実行するコンテナ21に対して、売り切り型のライセンス(以降、売り切りライセンスと称する場合がある)が付与可能か否かを判定する。但し、売り切りライセンスは、ライセンスの購入後において、アプリケーション200の実行に伴う費用が発生しないライセンスである。売り切りライセンスは、第一の種別のライセンスの一例である。
【0024】
判定部11は、より具体的には、アプリケーション実行環境20において、アプリケーション200を実行済みであるコンテナ21の数が、購入済み(契約済み)の売り切りライセンスの数と等しいか否かを判定する。但し、判定部11には、アプリケーション200に関する購入済みの売り切りライセンスの数が与えられていることとする。判定部11は、コンテナ21に対するライセンスの付与状況を、後述するライセンス管理情報171を参照することによって取得可能である。
【0025】
判定部11は、アプリケーション200を実行済みであるコンテナ21の数が購入済みの売り切りライセンスの数よりも小さい場合、新たにアプリケーション200を実行するコンテナ21に対して、売り切りライセンスを付与可能と判定する。判定部11は、アプリケーション200を実行済みであるコンテナ21の数が購入済みの売り切りライセンスの数と等しい場合、新たにアプリケーション200を実行するコンテナ21に対して、売り切りライセンスを付与不能と判定する。
【0026】
判定部11は、上述した売り切りライセンスの付与に関する判定結果を、付与部12に通知する。
【0027】
付与部12は、判定部11から通知された判定結果に基づいて、新たにアプリケーション200を実行するコンテナ21に対して、ライセンスを付与する。付与部12は、新たにアプリケーション200を実行するコンテナ21に対して、売り切りライセンスを付与可能である場合、そのコンテナ21に対して売り切りライセンスを付与する。
【0028】
付与部12は、新たにアプリケーション200を実行するコンテナ21に対して、売り切りライセンスを付与不能である場合、そのコンテナ21に対して、従量課金型のライセンス(以降、従量課金ライセンスと称する場合がある)、あるいはサブスクリプション型のライセンス(以降、サブスクリプションライセンスと称する場合がある)を付与する。従量課金ライセンス及びサブスクリプションライセンスは、第二の種別のライセンスの一例である。
【0029】
ここで、従量課金ライセンス及びサブスクリプションライセンスについて説明する。従量課金ライセンスは、アプリケーション200の使用実績(例えば実行時間など)に応じて費用が発生するライセンスである。即ち、従量課金ライセンスが付与されたコンテナ21では、アプリケーション200を実行すればするほど、費用は高くなる。サブスクリプションライセンスは、所定の期間(例えば1ヶ月)毎に、アプリケーション200の使用実績にかかわらず定額の費用が発生するライセンスである。即ち、サブスクリプションライセンスが付与されたコンテナ21では、アプリケーション200を実行する期間が長くなればなるほど、費用は高くなる。
【0030】
従量課金ライセンスが付与された場合、売り切りライセンスが付与された場合とは異なり、アプリケーション200の実行を開始する時点において費用は発生しない。また、サブスクリプションライセンスが付与された場合、アプリケーション200の実行を開始する時点において、例えば最初の1ヶ月分の費用が発生するが、その費用は通常、売り切りライセンスが付与された場合において発生するライセンスの購入費用よりも大幅に安価である。
【0031】
以上のことからわかるように、アプリケーション200を実行するためのコンテナ21をスケールアウトにより追加する場合において、高価な売り切りライセンスを追加購入することよりも、従量課金ライセンスあるいはサブスクリプションライセンスをコンテナ21に付与することの方が安易に(即ち速やかに)実現可能である。
【0032】
図2は、本実施形態に係るライセンス管理情報171の内容を例示する図である。図2の(a)は、アプリケーション200を実行するコンテナ21を新たに追加する前のライセンス管理情報171の内容を例示している。図2の(a)に例示する通り、コンテナ21−1乃至21−4は売り切りライセンスが付与され、コンテナ21−5はサブスクリプションライセンスが付与され、コンテナ21−6は従量課金ライセンスが付与されている。即ち、図2に示す例では、アプリケーション実行環境20において、購入済みの売り切りライセンスの数は「4」である。
【0033】
図2の(b)は、アプリケーション200を実行するコンテナ21−7を新たに追加した後のライセンス管理情報171の内容を例示している。図2に示す例では、判定部11は、新たにアプリケーション200を実行するコンテナ21−7に対して、売り切りライセンスを付与不能と判定する。そして、付与部12は、判定部11による判定結果に基づいて、コンテナ21−7に対して従量課金ライセンスを付与する。尚、図2に示す例において、付与部12は、コンテナ21−7に対してサブスクリプションライセンスを付与してもよい。
【0034】
付与部12は、図2に示す例の場合、コンテナ21−7に対して従量課金ライセンスを付与したのちに、ライセンス管理情報171を、図2の(a)に例示する内容から、図2の(b)に例示する内容に更新する。
【0035】
図1に示す制御部13は、付与部12がコンテナ21に付与したライセンスを用いてアプリケーション200を実行するようにコンテナ21を制御する。例えば図2に示す例の場合、制御部13は、付与部12がコンテナ21−7に新たに付与した従量課金ライセンスを用いてアプリケーション200を実行するようにコンテナ21−7を制御する。
【0036】
次に図3のフローチャートを参照して、本実施形態に係るライセンス管理装置10が、アプリケーション200を実行するコンテナ21がスケールアウトにより追加される際に、当該コンテナ21にライセンスを付与する動作(処理)について詳細に説明する。
【0037】
ライセンス管理装置10は、アプリケーション実行環境20から、アプリケーション200を実行するコンテナ21をスケールアウトにより追加することを受信する(ステップS101)。判定部11は、アプリケーション実行環境20において、売り切りライセンスを用いてアプリケーション200を実行しているコンテナ21の数が所定の値(購入済みの売り切りライセンスの数)か否かを判定する(ステップS102)。
【0038】
売り切りライセンスを用いてアプリケーション200を実行しているコンテナ21の数が所定の値でない場合(ステップS103でNo)、付与部12は、新たに追加するコンテナ21に売り切りライセンスを付与する(ステップS104)。売り切りライセンスを用いてアプリケーション200を実行しているコンテナ21の数が所定の値である場合(ステップS103でYes)、付与部12は、新たに追加するコンテナ21に従量課金ライセンス、あるいはサブスクリプションライセンスを付与する(ステップS105)。
【0039】
制御部13は、付与したライセンスを用いてアプリケーション200を実行するように新たに追加したコンテナ21を制御し(ステップ106)、全体の処理は終了する。
【0040】
<コンテナ21に付与するライセンスの種別を随時変更する動作>
次に、本実施形態に係るライセンス管理装置10が、実行実績172と変更基準173とに基づいて、コンテナ21に付与するライセンスの種別を随時変更する動作について説明する。
【0041】
図1に示す監視部14は、アプリケーション実行環境20において、アプリケーション200に関して従量課金ライセンスあるいはサブスクリプションライセンスが付与されたコンテナ21によるアプリケーション200の実行状況を監視する。監視部14は、アプリケーション200の実行状況として、例えばアプリケーション200が実行された時間を監視し、その監視結果を実行実績172として記憶部17に格納して管理する。
【0042】
判定部11は、記憶部17に記憶されている実行実績172と変更基準173とに基づいて、コンテナ21に付与するアプリケーション200に関するライセンスの種別を変更する必要があるか否かを判定する。判定部11は、この判定動作を例えば定期的に行ってもよいし、あるいはユーザによる指示を契機として行ってもよい。
【0043】
図4は、本実施形態に係る変更基準173の内容を例示する図である。図4に例示する変更基準173によれば、コンテナ21によるアプリケーション200の実行実績が1ヶ月あたり100時間未満であり、かつ、利用開始から3ヶ月未満である場合において、そのコンテナ21にサブスクリプションライセンスが付与されている場合、付与するライセンスを従量課金ライセンスに変更する必要があることを示している。この理由は、この場合では、サブスクリプションライセンスよりも従量課金ライセンスにした方が、アプリケーション200の実行により発生するコストが小さくなるからである。
【0044】
また、図4に例示する変更基準173によれば、コンテナ21によるアプリケーション200の実行実績が1ヶ月あたり100時間以上であり、かつ、利用開始から3ヶ月未満である場合において、そのコンテナ21に従量課金ライセンスが付与されている場合、付与するライセンスをサブスクリプションライセンスに変更する必要があることを示している。
【0045】
また、図4に例示する変更基準173によれば、コンテナ21によるアプリケーション200の実行実績が利用開始から3ヶ月以上である場合において、そのコンテナ21に従量課金ライセンスあるいはサブスクリプションライセンスが付与されている場合、付与するライセンスを売り切りライセンスに変更する必要があることを示している。
【0046】
図1に示す判定部11は、上述の判定を行った結果を、付与部12に通知する。
【0047】
付与部12は、判定部11から通知された判定結果に従い、コンテナ21に付与するアプリケーション200に関するライセンスの種別を、変更基準173が示す通りに変更する。
【0048】
図5は、本実施形態に係るアプリケーション200の実行実績172及び変更基準173に基づいてコンテナ21に付与するライセンスの種別を変更する場合における、ライセンス管理情報171の内容を例示する図である。図5に示す例では、監視部14、判定部11、及び付与部12による上述した動作によって、コンテナ21−6に付与するライセンスが、従量課金ライセンスからサブスクリプションライセンスに変更されている。
【0049】
本実施形態に係る変更基準173は、例えばユーザによって作成されたのち、記憶部17に格納される。また、変更基準173は、図1に示す更新部15によって更新される。更新部15は、例えばユーザが入力した情報に基づいて変更基準173を更新する。更新部15は、あるいは、各種別のライセンスを使用した際に発生する料金体系を表す情報を外部から入手し、入手した当該情報に基づいて、アプリケーション200の実行により発生するコストが最小となるように変更基準173を更新してもよい。
【0050】
図1に示す制御部13は、例えば図5に示す例の場合、付与部12によってコンテナ21−6に付与したライセンスが従量課金ライセンスからサブスクリプションライセンスに変更されたことに伴い、サブスクリプションライセンスを用いてアプリケーション200を実行するようにコンテナ21−6を制御する。
【0051】
次に図6のフローチャートを参照して、本実施形態に係るライセンス管理装置10が、実行実績172と変更基準173とに基づいて、コンテナ21に付与するライセンスの種別を変更する動作を(処理)について詳細に説明する。
【0052】
監視部14は、コンテナ21−1乃至21−nにおける、アプリケーション200の実行実績172を取得する(ステップS201)。判定部11は、各コンテナ21の実行実績172が変更基準173を満たすか否か(ライセンスの種別を変更する必要があるか否か)を判定する(ステップS202)。
【0053】
コンテナ21の実行実績172が変更基準173を満たさない場合(ステップS203でNo)、全体の処理は終了する。コンテナ21の実行実績172が変更基準173を満たす場合(ステップS203でYes)、付与部12は、そのコンテナ21に付与されているライセンスの種別を、変更基準173が示すライセンスの種別に変更する(ステップS204)。制御部13は、変更後のライセンスを用いてアプリケーション200を実行するようにコンテナ21を制御し(ステップS205)。全体の処理は終了する。
【0054】
本実施形態に係るライセンス管理装置10は、新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加することができる。その理由は、ライセンス管理装置10は、スケールアウトにより追加したコンテナ21にアプリケーション200に関する売り切りライセンスを付与できない場合、そのコンテナ21に従量課金ライセンスあるいはサブスクリプションライセンスを付与することによって、そのコンテナ21がアプリケーション200の実行を速やかに開始できるようにするからである。
【0055】
以下に、本実施形態に係るライセンス管理装置10によって実現される効果について、詳細に説明する。
【0056】
例えばコンテナ環境や仮想化環境等を実装したコンピュータシステムにおいて、アプリケーションの実行環境をスケールアウトするときに、既に購入したライセンス数分のアプリケーションを実行済みである場合は、通常、ライセンスを追加購入する必要がある。この場合、ライセンスを追加購入するための契約手続きや発注等の処理が必要となる。また、当該アプリケーションが高価である場合などでは、ライセンスを追加購入するか否かに関するビジネス的な判断なども必要となる。即ち、既に購入したライセンス数分のアプリケーションを実行済みである状態において、アプリケーションの実行環境を速やかにスケールアウトすることが困難であるという問題がある。
【0057】
このような問題に対して、本実施形態に係るライセンス管理装置10は、判定部11と、付与部12と、制御部13と、を備え、例えば、図1乃至図6を参照して上述した通り動作する。即ち、判定部11は、アプリケーション200の実行に必要なライセンスが付与される単位であるコンテナ21(アプリケーション200の実行単位)によってアプリケーション200が新たに実行される前に、アプリケーション200を新たに実行するコンテナ21に対して売り切り型(第一の種別)のライセンスを付与可能か否かを判定する。付与部12は、売り切りライセンスを付与不能である場合、そのコンテナ21に対して、従量課金型あるいはサブスクリプション型(第二の種別)のライセンスを付与する。そして、制御部13は、従量課金ライセンスあるいはサブスクリプションライセンスを用いてアプリケーション200を実行するようにコンテナ21を制御する。
【0058】
即ち、本実施形態に係るライセンス管理装置10は、スケールアウトにより追加したコンテナ21に売り切りライセンスを付与不能である場合、当該コンテナ21によるアプリケーション200の実行をより安易に開始可能な従量課金ライセンスあるいはサブスクリプションライセンスを当該コンテナ21に付与する。これによりライセンス管理装置10は、新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加することができる。
【0059】
また、本実施形態に係るライセンス管理装置10は、従量課金ライセンスあるいはサブスクリプションライセンスが付与されたコンテナ21によるアプリケーション200の実行状況を監視することによって、アプリケーション200の実行実績172を管理する。ライセンス管理装置10は、実行実績172と変更基準173とに基づいて、コンテナ21に付与するライセンスの種別を変更する必要があるか否かを判定する。そしてライセンス管理装置10は、コンテナ21に付与するライセンスの種別を変更する必要がある場合、当該コンテナ21に付与するライセンスの種別を変更する。したがってライセンス管理装置10は、アプリケーション200の実行実績に応じた最適な種別のライセンスをコンテナ21に付与するので、例えばアプリケーション200の実行時間が長いのにもかかわらず従量課金ライセンスが付与されていることによってコストが増加するなどの問題を回避することができる。
【0060】
また、本実施形態に係るライセンス管理装置10は、コンテナ21に付与するライセンスの種別を変更する際に用いる変更基準173を更新する機能を備える。これによりライセンス管理装置10は、例えば各種別のライセンスの料金体系が変更された場合であっても、その料金体系の変更に合わせて変更基準173を変更することによって、最適な種別のライセンスをコンテナ21に付与することができる。
【0061】
また、本実施形態に係るライセンス管理装置10は、図1に示す算出部16を備えてもよい。算出部16は、コンテナ21によるアプリケーション200の実行において処理可能なデータ通信量の累積値の最大値が決められた通信量制限付きライセンス(第一の種別のライセンス)を付与されたコンテナ21によって処理された当該データ通信量を監視することによって、当該データ通信量の累積値を算出する。判定部11は、算出部16によって算出されたデータ通信量の累積値が当該最大値に到達したか否かを判定する。そして付与部12は、当該データ通信量の累積値が当該最大値に到達した場合、当該累積値が当該最大値を超えることを許可する通信量制限解除ライセンス(第二の種別のライセンス)をコンテナ21に付与する。これによりライセンス管理装置10は、データ通信量の累積値の最大値が決められたライセンスが付与されたコンテナ21が、許可されたデータ通信量を全て消費した場合であっても、そのコンテナ21によるアプリケーション200の実行を継続することができる。尚、この場合、ライセンス管理装置10は、コンテナ21に付与するライセンスを、所定の時間後に、通信量制限解除ライセンスから通信量制限付きライセンスに戻すようにしてもよい。
【0062】
また、本実施形態に係るアプリケーション実行環境20は、コンテナ21をアプリケーション200の実行に必要なライセンスが付与される実行単位として含むコンテナ環境に限定されない。アプリケーション実行環境20は、例えば、仮想マシンを当該実行単位として含む仮想化環境であってもよい。また、アプリケーション実行環境20は、例えば、IoT(Internet of Things)システムにおけるエッジサーバ等のデバイスを当該実行単位として含む実行環境であってもよい。
【0063】
また、本実施形態に係るライセンス管理装置10は、アプリケーション200の実行に必要なライセンスを、アプリケーション実行環境20を使用する(即ちアプリケーション200の実行を指示する)ユーザごとに割り当てるようにしてもよい。即ちこの場合、ライセンス管理装置10は、ユーザライセンスを管理対象とする。この場合、付与部12は、例えば10人分のユーザライセンス(売り切りライセンス)を購入済であるアプリケーション200を、11人目のユーザが実行しようとした場合において、その11人目のユーザに対して、第二の種別のライセンス(従量課金ライセンスやサブスクリプションライセンス)を付与する。また、付与部12は、実行単位(ユーザやコンテナ等)に対して、上述した第二の種別のライセンスを付与する代わりに、実行可能なアプリケーション200の機能が制限された第三の種別のライセンスを付与するようにしてもよい。
【0064】
<第2の実施形態>
図7は、本願発明の第2の実施形態に係るライセンス管理装置40の構成を示すブロック図である。
【0065】
本実施形態に係るライセンス管理装置40は、判定部41、付与部42、及び、制御部43を備えている。
【0066】
判定部41は、アプリケーション500の実行に必要なライセンスが付与される単位であるアプリケーション500の実行単位50によってアプリケーション500が新たに実行される前に、アプリケーション500を新たに実行する実行単位50に対して第一の種別のライセンス401を付与可能か否かを判定する。判定部41は、例えば、実行単位50を含むアプリケーション500の実行環境から、新たな実行単位50を追加することを受信した場合に、上述した判定を行う。判定部41は、この判定結果を付与部42へ通知する。
【0067】
尚、本実施形態に係る実行単位50は、例えば第一の実施形態に係るコンテナ21であってもよいし、あるいは、仮想化環境における仮想マシンであってもよい。また、本実施形態に係る第一の種別のライセンス401は、例えば第一の実施形態に係る売り切りライセンスである。
【0068】
付与部42は、第一の種別のライセンス401を付与可能である場合、アプリケーション500を新たに実行する実行単位50に対して、第一の種別のライセンス401を付与する。付与部42は、第一の種別のライセンス401を付与不能である場合、アプリケーション500を新たに実行する実行単位50に対して、第二の種別のライセンス402を付与する。尚、本実施形態に係る第二の種別のライセンス402は、例えば第一の実施形態に係る従量課金ライセンスあるいはサブスクリプションライセンスである。
【0069】
制御部43は、付与部42がアプリケーション500を新たに実行する実行単位50に対して第一の種別のライセンス401を付与した場合、第一の種別のライセンス401を用いてアプリケーション500を実行するように実行単位50を制御する。制御部43は、付与部42がアプリケーション500を新たに実行する実行単位50に対して第二の種別のライセンス402を付与した場合、第二の種別のライセンス402を用いてアプリケーション500を実行するように実行単位50を制御する。
【0070】
本実施形態に係るライセンス管理装置40は、新たなアプリケーションの実行環境を速やかに追加することがライセンス管理上の問題によって困難な場合であっても、当該実行環境を速やかに追加することができる。その理由は、ライセンス管理装置40は、追加した実行単位50にアプリケーション500に関する第一の種別のライセンス401を付与できない場合、その実行単位50に第二の種別のライセンス402を付与することによって、その実行単位50がアプリケーション500の実行を速やかに開始できるようにするからである。
【0071】
<ハードウェア構成例>
上述した各実施形態において図1、及び、図7に示したライセンス管理装置における各部は、専用のHW(HardWare)(電子回路)によって実現することができる。また、図1、及び、図7において、少なくとも、下記構成は、プロセッサによって実行される命令を含むソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。
・判定部11及び41、
・付与部12及び42、
・制御部13及び43、
・監視部14、
・更新部15、
・算出部16、
・記憶部17における記憶制御機能。
【0072】
但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図8を参照して説明する。
【0073】
図8は、本願発明の各実施形態に係るライセンス管理装置を実行可能な情報処理装置900(コンピュータ)の構成を例示的に説明する図である。即ち、図8は、図1、及び、図7に示したライセンス管理装置を実現可能なコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
【0074】
図8に示した情報処理装置900は、構成要素として下記を備えている。
・CPU(Central_Processing_Unit)901、
・ROM(Read_Only_Memory)902、
・RAM(Random_Access_Memory)903、
・ハードディスク(記憶装置)904、
・通信インタフェース905、
・バス906(通信線)、
・CD−ROM(Compact_Disc_Read_Only_Memory)等の記録媒体907に格納されたデータを読み書き可能なリーダライタ908、
・モニターやスピーカ、キーボード等の入出力インタフェース909。
【0075】
即ち、上記構成要素を備える情報処理装置900は、これらの構成がバス906を介して接続された一般的なコンピュータである。情報処理装置900は、CPU901を複数備える場合もあれば、マルチコアにより構成されたCPU901を備える場合もある。
【0076】
そして、上述した実施形態を例に説明した本願発明は、図8に示した情報処理装置900に対して、次の機能を実現可能なコンピュータプログラムを供給する。その機能とは、その実施形態の説明において参照したブロック構成図(図1、及び、図7)における上述した構成、或いはフローチャート(図3、及び、図6)の機能である。本願発明は、その後、そのコンピュータプログラムを、当該ハードウェアのCPU901に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータプログラムは、読み書き可能な揮発性のメモリ(RAM903)、または、ROM902やハードディスク904等の不揮発性の記憶デバイスに格納すれば良い。
【0077】
また、前記の場合において、当該ハードウェア内へのコンピュータプログラムの供給方法は、現在では一般的な手順を採用することができる。その手順としては、例えば、CD−ROM等の各種記録媒体907を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等がある。そして、このような場合において、本願発明は、係るコンピュータプログラムを構成するコード或いは、そのコードが格納された記録媒体907によって構成されると捉えることができる。
【0078】
以上、上述した実施形態を模範的な例として本願発明を説明した。しかしながら、本願発明は、上述した実施形態には限定されない。即ち、本願発明は、本願発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【0079】
1 ライセンス管理システム
10 ライセンス管理装置
11 判定部
12 付与部
13 制御部
14 監視部
15 更新部
16 算出部
17 記憶部
171 ライセンス管理情報
172 実行実績
173 変更基準
20 アプリケーション実行環境
21 コンテナ
200 アプリケーション
30 通信ネットワーク
40 ライセンス管理装置
41 判定部
42 付与部
43 制御部
401 第一の種別のライセンス
402 第二の種別のライセンス
50 実行単位
500 アプリケーション
900 情報処理装置
901 CPU
902 ROM
903 RAM
904 ハードディスク(記憶装置)
905 通信インタフェース
906 バス
907 記録媒体
908 リーダライタ
909 入出力インタフェース
図1
図2
図3
図4
図5
図6
図7
図8