JP2018163502A - 制御プログラム、制御方法および情報処理装置 - Google Patents

制御プログラム、制御方法および情報処理装置 Download PDF

Info

Publication number
JP2018163502A
JP2018163502A JP2017060016A JP2017060016A JP2018163502A JP 2018163502 A JP2018163502 A JP 2018163502A JP 2017060016 A JP2017060016 A JP 2017060016A JP 2017060016 A JP2017060016 A JP 2017060016A JP 2018163502 A JP2018163502 A JP 2018163502A
Authority
JP
Japan
Prior art keywords
software
license
virtual server
scale
licenses
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2017060016A
Other languages
English (en)
Inventor
智也 松枝
Tomoya Matsueda
智也 松枝
芳郎 辻
Yoshiro Tsuji
芳郎 辻
久 丹所
Hisashi Tandokoro
久 丹所
章夫 石井
Akio Ishii
章夫 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017060016A priority Critical patent/JP2018163502A/ja
Priority to US15/925,090 priority patent/US10725811B2/en
Publication of JP2018163502A publication Critical patent/JP2018163502A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Accounting & Taxation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】仮想マシンのスケールアウトによりソフトウェアのライセンス不足が生じたとしてもソフトウェアの継続利用を提供する。【解決手段】情報処理装置は、スケールアウトに関するイベントを検知すると、ソフトウェアの使用状況を記憶する記憶部を参照して、スケールアウト前の仮想マシン上で動作するソフトウェアのライセンスの使用数が、該ライセンスの保有数未満であるかを判定する判定部と、前記ライセンスの使用数が、ライセンスの保有数未満でない場合、スケールアウトに応じて新たに生成された仮想マシン上で動作する前記ソフトウェアに関する従量課金処理の実行指示を出力する出力部と、を含む。【選択図】図1

Description

本発明は、制御プログラム、制御方法および情報処理装置に関する。
例えば、仮想化技術を利用したクラウドコンピューティングサービスの利用形態の1つとして、Infrastructure as a Service(IaaS)がある。IaaSで提供される仮想マシン(仮想サーバ)では、所定のソフトウェアを利用することができる。
IaaS等のサービス基盤が提供する仮想サーバで動作するソフトウェアは、所定のライセンスに基づいて利用することが許容される。
関連する技術として、仮想環境およびクラウド環境において、アプリケーションベンダーのライセンス管理技術を確実なものとする技術が提案されている(例えば、特許文献1を参照)。
また、仮想サーバを含むシステム全体で、課金方法が混在したような環境、または動的にライセンスが変わるような環境において、同時に利用可能なライセンスカウントを可能とする技術が提案されている(例えば、特許文献2を参照)。
また、仮想Operating System(OS)等のコピーについてリセラーの立場から追跡して管理すると共に、同時にライセンス管理の応用により新しいサービスを提供する技術が提案されている(例えば、特許文献3を参照)。
国際公開第2015/019416号 特開2010−267009号公報 特開2014−56290号公報
例えば、サービス基盤で動作する仮想サーバに対する負荷が高くなった場合、仮想サーバがスケールアウトされることにより、新たに仮想サーバが生成され、負荷の分散が図られる。
スケールアウトにより新たに仮想サーバが生成された場合、該仮想サーバでソフトウェアを動作させるためには、スケールアウト前の仮想サーバで動作しているソフトウェアのライセンスとは異なるライセンスが適用される。
予め利用が許容されているライセンス数によっては、スケールアウトに応じて新たに生成された仮想サーバで動作させるソフトウェアに適用するライセンスが不足する場合がある。該ソフトウェアのライセンスが不足した場合、新たに生成された仮想サーバでソフトウェアを継続的に利用することが難しくなる。
1つの側面として、本発明は、仮想マシンのスケールアウトによりソフトウェアのライセンス不足が生じたとしてもソフトウェアの継続利用を実現することを目的とする。
1つの態様では、制御プログラムは、スケールアウトに関するイベントを検知すると、ソフトウェアの使用状況を記憶する記憶部を参照して、スケールアウト前の仮想マシン上で動作するソフトウェアのライセンスの使用数が、該ライセンスの保有数未満であるかを判定し、前記ライセンスの使用数が、該ライセンスの保有数未満でない場合、前記スケールアウトに応じて新たに生成された仮想マシン上で動作する前記ソフトウェアに関する従量課金処理の実行指示を出力する、処理をコンピュータに実行させる。
1つの側面によれば、仮想マシンのスケールアウトによりソフトウェアのライセンス不足が生じたとしてもソフトウェアの継続利用を実現することができる。
システムの全体構成の一例を示す図である。 管理サーバ記憶部の一例を示す図である。 画面例を示す図(その1)である。 画面例を示す図(その2)である。 画面例を示す図(その3)である。 画面例を示す図(その4)である。 オートスケールの一例を示す図(その1)である。 オートスケールの一例を示す図(その2)である。 利用開始時処理の流れの一例を示すフローチャートである。 スケールアウト処理の流れの一例を示すフローチャートである。 スケールイン処理の流れの一例を示すフローチャートである。 従量課金処理の流れの一例を示すフローチャートである。 変形例におけるオートスケールの一例を示す図である。 サービス基盤のハードウェア構成の一例を示す図である。
<実施形態のシステムの一例>
以下、図面を参照して、実施形態について説明する。図1は、実施形態のシステム1の一例を示す。実施形態のシステム1において、サービス基盤2とクライアント端末3とは、ネットワークを介して接続される。
サービス基盤2は、例えば、IaaS等のクラウドコンピューティングサービスを提供する情報処理装置(コンピュータ)である。クライアント端末3は、ネットワークを介して、サービス基盤2で提供されるサービスを利用する端末である。サービス基盤2は、複数のクライアント端末3に対して、サービスを提供してもよい。
クライアント端末3は、画面部3Aと入力部3Bとを含む。画面部3Aは、例えば、クライアント端末3に設けられるディスプレイであり、所定の情報を表示する。入力部3Bは、所定の情報を入力するためにクライアント端末3に設けられる。入力部3Bは、クライアント端末3に接続される別途の装置(キーボードやマウス等)であってもよい。
サービス基盤2は、仮想サーバ11と管理サーバ部12とオートスケール制御部13と課金処理部14とを含む。仮想サーバ11は、仮想化技術を用いたサーバであり、サービス基盤2が実行する所定のプログラムにより実現される。仮想サーバは、仮想マシン(Virtual Machine(VM))とも称される。
クライアント端末3は、ネットワークを介して、サービス基盤2にアクセスすることで、該サービス基盤2で動作する仮想サーバ11、および該仮想サーバ11で動作する所定のソフトウェアを利用できる。
サービス基盤2では、複数の仮想サーバ11が生成されることもあり、1台のクライアント端末3が、複数の仮想サーバ11を利用する場合もある。また、1つの仮想サーバ11で利用可能なソフトウェアの数は複数であってもよい。
仮想サーバ11は、VMソフトウェア制御部15を含む。VMソフトウェア制御部15は、各種の機能を有する。例えば、VMソフトウェア制御部15は、各仮想サーバ11に割り当てられる固有のVM Identification(VMID)を認識する。
VMソフトウェア制御部15は、仮想サーバ11で利用可能なソフトウェアの一覧を表示する機能や、ソフトウェアをインストールする機能を有する。また、VMソフトウェア制御部15は、利用中のソフトウェアをアンインストール(削除)する機能やソフトウェアの使用状況(利用状況)を管理サーバ部12に通知する機能等を有する。
管理サーバ部12は、サービス基盤2における各種の管理を行う。管理サーバ部12は、ポータルサイト部21とライセンス管理部22と稼働時間管理部23と実行指示出力部24と管理サーバ記憶部25とを含む。
ポータルサイト部21は、クライアント端末3からのアクセスを制御する。例えば、ポータルサイト部21は、クライアント端末3からの要求に応じて、ログイン処理を行う。該ログイン処理が成功した後、クライアント端末3が、VMIDで特定される仮想サーバ11を利用することが許容される。
ポータルサイト部21は、クライアント端末3からのログインが成功した際に、各仮想サーバ11で利用可能なソフトウェアの一覧を、クライアント端末3の画面部3Aに表示させてもよい。
上述したように、クライアント端末3は、仮想サーバ11にアクセスし、該仮想サーバ11で動作するソフトウェアを利用できる。実施形態では、仮想サーバ11のVMソフトウェア制御部15がソフトウェアのインストーラを実行することで、該仮想サーバ11にソフトウェアがインストールされる。これにより、仮想サーバ11でソフトウェアが利用可能になる。
また、クライアント端末3からの操作に応じて、仮想サーバ11のVMソフトウェア制御部15がソフトウェアのアンインストールを行った場合、仮想サーバ11からソフトウェアが削除される。VMソフトウェア制御部15は、ソフトウェアがアンインストールされたことを、管理サーバ部12に通知する。
ライセンス管理部22は、仮想サーバ11についてのソフトウェアのライセンス管理を行う。ライセンス管理部22は、仮想サーバ11ごとに、ソフトウェアのライセンス管理を行う。ライセンス管理部22は、判定部の一例である。
実施形態では、ソフトウェアのライセンスとして、Bring Your Own License(BYOL)と従量課金ライセンスとの2種類のライセンスがあるものとする。
BYOLは、利用者が購入したライセンスであり、該BYOLが管理サーバ部12に登録されることで、BYOLに応じたソフトウェアの利用が許容される。管理サーバ部12に登録されるBYOLの数は1つであってもよいし、2つ以上であってもよい。実施形態では、BYOLは定額制のライセンスであるものとする。
BYOLは、所定期間(例えば、年単位)、ソフトウェアを利用することが許容される定額ライセンスであってもよい。また、BYOLは、永続的にソフトウェアを利用することが許容されるライセンスであってもよい。定額ライセンスは、ソフトウェアの利用時間には依存しないライセンスである。
従量課金ライセンスは、ソフトウェアの利用時間に応じて、課金がされるライセンスである。従量課金ライセンスは、ソフトウェアの利用時間が、予め規定された時間(規定時間)を超えるごとに、課金がされるライセンスである。
実施形態では、長期の従量課金ライセンスと短期の従量課金ライセンスとの2種類の従量課金ライセンスがあるものとする。従量課金ライセンスは、3種類以上であってもよい。以下、長期の従量課金ライセンスは月額従量課金ライセンスであり、短期の従量課金ライセンスは時間額従量課金ライセンスであるものとして説明する。
月額従量課金ライセンスは、ソフトウェアの利用時間が1ヶ月を超えるごとに所定額の課金がされるライセンスである。時間額従量課金ライセンスは、ソフトウェアの利用時間が1時間を越えるごとに所定額の課金がされるライセンスである。
実施形態では、BYOLのライセンス額が最も高く、月額従量課金ライセンスの額が次に高く、時間額従量課金ライセンスの額が最も低いものとする。
なお、時間額従量課金ライセンスに基づいて1ヶ月間ソフトウェアを利用した場合における課金額は、月額従量課金ライセンスに基づいて1ヶ月ソフトウェアを利用した場合の課金額以上であるものとする。
稼働時間管理部23は、仮想サーバ11の稼働時間を管理する。実行指示出力部24は、ライセンス管理部22による制御に基づいて、課金処理部14に対して、課金処理についての実行指示を出力する。実行指示出力部24は、出力部の一例である。
管理サーバ記憶部25は、各種の情報を記憶する。管理サーバ記憶部25は、記憶部の一例である。
オートスケール制御部13は、仮想サーバ11のスケールアウトおよびスケールインに関する自動制御を行う。スケールアウトは、仮想サーバ11を新たに生成する処理であり、スケールインは、仮想サーバ11を削除する処理である。
実施形態では、仮想サーバ11に対する負荷が所定の閾値を超えた場合、オートスケール制御部13は、該仮想サーバ11をスケールアウトする制御を行う。例えば、オートスケール制御部13は、仮想サーバ11に割り当てられたCentral Processing Unit(CPU)の使用率やメモリの使用率等が所定の閾値を超えた場合に、仮想サーバ11をスケールアウトする制御を行う。
例えば、仮想サーバ11で動作するソフトウェアに対するアクセスが集中すると、仮想サーバ11の負荷(例えば、CPU負荷)が高くなる。CPU負荷が閾値を超えたことに応じて、オートスケール制御部13が、仮想サーバ11をスケールアウトすることで、複数の仮想サーバ11により、負荷の分散が図られる。
例えば、仮想サーバ11に対するアクセス集中の度合いが高い場合、CPUに対して大きな負荷がかかる。この場合、オートスケール制御部13は、複数の仮想サーバ11をスケールアウトしてもよい。スケールアウト前の仮想サーバ11と、新たに生成された複数の仮想サーバ11とにより、負荷の分散が図られる。
また、仮想サーバ11に対するアクセスが低減した場合、スケールアウト前の仮想サーバ11と、新たに生成された仮想サーバ11との合計の負荷が低くなる。該合計の負荷が、閾値以下になった場合、オートスケール制御部13は、スケールアウトにより生成された新たな仮想サーバ11を削除する。該削除は、スケールインと称される。
課金処理部14は、上述した従量課金の処理を行う。実行指示出力部24は、従量課金処理の実行指示を課金処理部14に出力する。課金処理部14は、該実行指示に基づいて、従量課金処理を行う。
例えば、月額従量課金ライセンスを使用したソフトウェアが1ヶ月利用されると、ライセンス管理部22は、月額従量課金ライセンスに基づく従量課金処理についての制御を行う。実行指示出力部24は、該制御に基づいて、月額従量課金処理の実行指示を課金処理部14に出力する。
また、時間額従量課金ライセンスを使用したソフトウェアが1時間利用されると、ライセンス管理部22は、時間額従量課金ライセンスに基づく従量課金処理についての制御を行う。実行指示出力部24は、該制御に基づいて、時間額従量課金処理の実行指示を課金処理部14に出力する。
例えば、課金処理部14は、従量課金ライセンスに基づく課金を行う際に、課金に基づく請求がされる通知を、クライアント端末3に送信してもよい。
例えば、利用者ごとに設定された従量課金ライセンスの決済手段が、管理サーバ部12に登録されている場合、課金処理部14は、登録された決済手段を用いて、課金処理を行ってもよい。
上述したように、課金処理部14は、ソフトウェアの利用時間に応じて、課金処理を行う。実施形態では、上記課金処理は、仮想サーバ11の稼働時間またはソフトウェアの稼働時間に基づいて、決定される。上記実行指示は、仮想サーバ11の稼働時間またはソフトウェアの稼働時間に応じた情報を含む。
例えば、スケールアウトにより、新たに仮想サーバ11が生成された場合、稼働時間管理部23は、新たに生成された仮想サーバ11の稼動開始時刻からの経過時間を、仮想サーバ11の稼働時間として管理する。
スケールアウトに応じて新たな仮想サーバ11が生成された場合、該新たな仮想サーバ11に未付与のVMIDが新たに付与されてもよい。稼働時間管理部23は、該新たに付与されたVMIDに基づいて、仮想サーバ11の稼働時間を管理してもよい。
スケールアウトにより生成された新たな仮想サーバ11は、スケールアウト前の仮想サーバ11で利用されているソフトウェアを利用することが想定される。この場合、上記新たな仮想サーバ11のVMソフトウェア制御部15は、該新たな仮想サーバ11の生成に応じて、上記ソフトウェアをインストールする。
従って、稼働時間管理部23は、仮想サーバ11の稼働時間を、ソフトウェアの利用時間として管理してもよい。オートスケール制御部13が、仮想サーバ11をスケールアウトした時刻(新たに生成された仮想サーバ11の稼動開始時刻)は、容易に認識できる。
稼働時間管理部23が、仮想サーバ11の稼働時間を、該仮想サーバ11で利用されるソフトウェアの利用時間として管理することで、稼働時間管理部23によるソフトウェア利用時間の管理の容易化が図られる。
また、稼働時間管理部23は、仮想サーバ11で動作しているソフトウェアの稼働状況に基づく時間を、該ソフトウェアの稼働時間として管理してもよい。
例えば、スケールアウトにより生成された新たな仮想サーバ11のVMソフトウェア制御部15は、該新たな仮想サーバ11のプロセスを監視し、ソフトウェアのプロセスが起動してから終了するまでの時間を認識する。VMソフトウェア制御部15は、認識した時間を管理サーバ部12に通知する。
稼働時間管理部23は、仮想サーバ11から通知された時間を、ソフトウェアの稼働時間として管理してもよい。
<管理サーバ記憶部の一例>
図2を参照して、管理サーバ記憶部25の一例について説明する。管理サーバ記憶部25は、ソフトウェア情報記憶部31とソフトウェアデータ記憶部32とライセンス基本情報記憶部33とソフトウェア利用情報記憶部34と課金ルール記憶部35とを含む。
ソフトウェア情報記憶部31は、従量課金ライセンスで使用可能なソフトウェアの一覧情報(例えば、カタログ等)を記憶する。ソフトウェアデータ記憶部32は、ソフトウェアをインストールするためのインストーラを記憶する。
従量課金ライセンスで使用可能な複数のソフトウェアが提供される場合、ソフトウェアデータ記憶部32は、各ソフトウェアに応じたインストーラを記憶する。ソフトウェアデータ記憶部32は、ソフトウェアのインストーラではなく、ソフトウェアの実体データを記憶してもよい。
ライセンス基本情報記憶部33は、仮想サーバ11で利用可能なソフトウェアの従量課金ライセンスについての基本情報を記憶する。例えば、ライセンス基本情報は、従量課金の課金種別ごとの課金額や、ソフトウェアを公開するか否かの情報等を含んでもよい。
ソフトウェア利用情報記憶部34は、仮想サーバ11ごとに、ライセンスに基づくソフトウェアの利用状況を示す利用情報を記憶する。該利用情報は、仮想サーバ11で利用されているソフトウェア(ライセンスに基づくソフトウェア)を示す情報およびソフトウェアの稼働時間に関する情報を含む。
例えば、稼働時間管理部23は、仮想サーバ11の稼働時間、または該仮想サーバ11で動作するソフトウェアの稼働時間を、ソフトウェア利用情報記憶部34に記憶してもよい。
課金ルール記憶部35は、従量課金の課金種別に応じた課金額を示す課金ルールを記憶する。例えば、時間額従量課金ライセンスの課金額は、月額従量課金ライセンスの課金額よりも低い課金ルールが、課金ルール記憶部35に記憶される。
また、課金ルール記憶部35は、所定の期間については、従量課金ライセンスの課金額についての割引に関する情報を記憶してもよい。
<画面例>
次に、クライアント端末3が、サービス基盤2が提供するクラウドコンピューティングサービスを利用する際に、該クライアント端末3に表示される画面例について説明する。クライアント端末3は、利用者の操作を受け付けて、サービス基盤2のポータルサイト部21にログインするためのリクエストを送信する。
ポータルサイト部21は、該リクエストに基づく認証を行い、認証が成功すると、クライアント端末3が、上記のクラウドコンピューティングサービスを利用することを許可する。上述したように、サービス基盤2には複数の仮想サーバ11が生成される場合がある。
例えば、利用する仮想サーバ11を指定する操作を行ったとする。クライアント端末3は、該指定操作を受け付け、指定された仮想サーバ11(例えば、VMIDで特定される仮想サーバ11)にアクセスする。
仮想サーバ11のVMソフトウェア制御部15は、仮想サーバ11で利用可能なソフトウェアの一覧および該一覧の中から利用するソフトウェアを選択する画面(ソフトウェア選択画面)をクライアント端末3の画面部3Aに表示させる。
例えば、図3の例に示されるように、利用者が、入力部3Bを操作して、「ソフトウェア002」を選択する操作を行い、「次へ」のボタンB1を押下する操作を行ったとする。クライアント端末3は、該操作を受け付ける。
クライアント端末3は、「ソフトウェア002」が選択されたことを示す情報を、仮想サーバ11に送信する。VMソフトウェア制御部15は、ライセンス基本情報記憶部33を参照して、従量課金の課金種別を認識する。
上述したように、実施形態では、仮想サーバ11で利用されるソフトウェアのライセンスとして、定額制のBYOLと従量課金ライセンスとがある。また、従量課金ライセンスとして、月額従量課金ライセンスと時間額従量課金ライセンスとがある。
図4は、仮想サーバ11にソフトウェアをインストールする際に使用するライセンスを選択するライセンス選択画面の一例を示す。ライセンス選択画面は、BYOLと従量課金(月額)と従量課金(時間額)とのうち何れかを選択するための画面である。
従量課金(月額)は、月額従量課金ライセンスを示し、従量課金(時間額)は、時間額従量課金ライセンスを示す。例えば、ライセンス管理部22は、図4の例に示されるインストール時のライセンス選択画面を、クライアント端末3の画面部3Aに表示させる。
図4の例では、「BYOL」が選択されている。「次へ」のボタンB2の押下操作をクライアント端末3が受け付ける。クライアント端末3は、「ソフトウェア002」について、インストール時に「BYOL」のライセンスを使用することを示す情報を、サービス基盤2に送信する。この際、クライアント端末3は、仮想サーバ11に、「ソフトウェア002」のインストーラまたは実体データを送信してもよい。
仮想サーバ11で動作するVMソフトウェア制御部15は、受信したインストーラを実行することで、「ソフトウェア002」が仮想サーバ11で使用できる状態にしてもよい。また、仮想サーバ11は、「ソフトウェア002」のインストーラを、ソフトウェアデータ記憶部32からダウンロードしてもよい。
実施形態では、利用者の選択に基づいて、月額従量課金ライセンスまたは時間額従量課金ライセンスが使用されてもよい。例えば、利用者が、BYOLを所持していない場合、従量課金ライセンスが使用されてもよい。
例えば、図4の例において、「従量課金(月額)」が選択された場合、仮想サーバ11のVMソフトウェア制御部15は、「ソフトウェア002」のインストーラをソフトウェアデータ記憶部32から取得する。
VMソフトウェア制御部15が、上記インストーラを実行することで、仮想サーバ11で「ソフトウェア002」のソフトウェアが使用可能になる。該「ソフトウェア002」は、月額従量課金ライセンスを使用して、仮想サーバ11で使用することが許容されるソフトウェアである。
次に、VMソフトウェア制御部15は、スケールアウト時のライセンス選択画面を、クライアント端末3の画面部3Aに表示させる。図5は、スケールアウト時のライセンス選択画面の一例を示す。
上述したように、仮想サーバ11に対する負荷が閾値を超えた場合、オートスケール制御部13は、仮想サーバ11をスケールアウトする。該スケールアウトにより、新たな仮想サーバ11が生成される。
スケールアウト時のライセンス選択画面は、スケールアウトにより生成された新たな仮想サーバ11に適用するライセンスを選択するための画面である。
新たに生成された仮想サーバ11で「ソフトウェア002」のソフトウェアを動作させる場合、スケールアウト前の仮想サーバ11で動作している「ソフトウェア002」のライセンスとは、異なるライセンスが使用される。図5は、仮想サーバ11がスケールアウトされた際に、新たな仮想サーバ11に使用するライセンスを選択するための画面(スケールアウト時のライセンス選択画面)の例を示す。
図5の例に示されるように、スケールアウトにより新たに仮想サーバ11が生成された場合、「なし」と「従量課金(月額)」と「従量課金(時間額)」とのうち何れかが選択される。
「なし」は、仮想サーバ11がスケールアウトされた際に、スケールアウト前の仮想サーバ11で利用されていたソフトウェアを、スケールアウトに応じて新たに生成された仮想サーバ11で利用しないことを示す。
「従量課金(月額)」は、スケールアウト前の仮想サーバ11で使用されていたソフトウェアを、月額従量課金ライセンスを用いて、スケールアウトに応じて新たに生成された仮想サーバ11で利用することを示す。
「従量課金(時間額)」は、スケールアウト前の仮想サーバ11で使用されていたソフトウェアを、時間額従量課金ライセンスを用いて、スケールアウトに応じて新たに生成された仮想サーバ11で利用することを示す。
図5は、「従量課金(時間額)」が選択された例を示す。また、「次へ」のボタンB3を押下する操作を、クライアント端末3が受け付けたとする。クライアント端末3は、「ソフトウェア002」について、スケールアウト時に時間額従量課金ライセンスを使用することを示す情報を、サービス基盤2に送信する。ライセンス管理部22は、スケールアウト時に時間額従量課金ライセンスを使用することを認識する。
例えば、仮想サーバ11に対して一時的にアクセスが集中した場合、該仮想サーバ11に対する負荷は閾値を超えることが想定される。仮想サーバ11に対する負荷が閾値を超えた場合、オートスケール制御部13は、仮想サーバ11をスケールアウトする制御を行う。
該制御により、仮想サーバ11が新たに生成される。例えば、アクセスの集中が一時的な場合、スケールアウト前の仮想サーバ11に対する負荷と、スケールアウトに応じて新たに生成された仮想サーバ11に対する負荷との合計は、短い時間で閾値以下になる。
上記合計の負荷が閾値以下となった場合、オートスケール制御部13は、スケールアウトに応じて新たに生成された仮想サーバ11をスケールインする制御を行う。該制御に応じて、上記新たに生成された仮想サーバ11が削除される。
以上のケースでは、スケールアウトに応じて新たに生成された仮想サーバ11は、短時間でスケールインされる。従って、スケールアウトに応じて新たに生成された仮想サーバ11に適用されるソフトウェアのライセンスは、最も短い時間ごとに課金される従量課金ライセンスであることが好ましい。
上述した例では、最も短い時間ごとに課金される従量課金ライセンスは、時間額従量課金ライセンスである。最も短い時間ごとに課金される従量課金ライセンスは、課金額が最も低い。
一時的な負荷集中に起因して、仮想サーバ11がスケールアウトされた場合、新たな仮想サーバ11は、短い時間で仮想サーバ11はスケールインされることが想定される。従って、スケールアウトに応じて生成された新たな仮想サーバ11で動作するソフトウェアの利用時間は短い。上記のような場合には、時間額従量課金ライセンスが選択される。
一方、仮想サーバ11に対する負荷が高い状態が長時間継続するケースもあり得る。この場合、スケールアウトに応じて新たに生成された仮想サーバ11で動作するソフトウェアは、長時間利用される。従って、「従量課金(月額)」が選択される場合もある。
図3乃至図5では、画面操作に基づいて、ソフトウェアおよびライセンスの選択が行われる例を示したが、例えば、ソフトウェアおよびライセンスを特定する任意の情報(例えば、テキストデータ等)により、ソフトウェアおよびライセンスが特定されてもよい。この場合、ソフトウェアおよびライセンスを特定する情報が、クライアント端末3からサービス基盤2に送信される。
次に、図6を参照して、BYOLの登録画面について説明する。例えば、インストール時のライセンス選択画面において、「BYOL」が選択されたとする。上述したように、BYOLは、利用者が購入したライセンスであり、該ライセンスを使用して、仮想サーバ11でソフトウェアが利用されてもよい。
従って、BYOLの場合、管理サーバ部12に、BYOLのライセンス情報が登録される。例えば、インストール時のライセンス選択画面において「BYOL」が選択された場合、ライセンス管理部22は、図6の例に示されるライセンス登録画面を、クライアント端末3の画面部3Aに表示させる。
利用者は、入力部3Bを操作して、ライセンス情報(ライセンスコード)および保有数を入力し、登録ボタンB4を押下する。クライアント端末3は、該操作を受け付ける。図6の例の場合、「ソフトウェア002」についてのライセンスコード「123456789」、およびソフトウェアのライセンス数(保有数)は「2」である。
クライアント端末3は、上記のライセンス情報および保有数を示す情報を、サービス基盤2に送信する。上記のライセンスコードが正当であることが認証された場合、ライセンス管理部22は、「ソフトウェア002」についてのBYOLの保有数が「2」であることを認識し、管理する。
上述したように、ポータルサイト部21は、ログイン処理を行う。該ログイン処理を行う際には、利用者を特定する情報(例えば、ID等)を用いて、認証が行われる。従って、利用者を特定するIDと、上記の「ソフトウェア002」についてのBYOLの保有数とは関連付けられてもよい。
<オートスケールの一例>
図7は、オートスケールの一例を示す。図7の例では、「ソフトウェア002」が選択され、インストール時の課金種別選択として「BYOL」が選択され、スケールアウト時の従量課金ライセンスとして「従量課金(時間額)」が選択されたものとする。また、ライセンス登録画面では、保有数が「1」として登録されたものとする。
スケールアウト前の仮想サーバ11を仮想サーバAとする。例えば、仮想サーバAで動作する「ソフトウェア002」に対してアクセスが集中すると、仮想サーバAの負荷が高くなり、該仮想サーバAの応答性が低下する。
オートスケール制御部13は、該仮想サーバAに対する負荷が閾値を超えた場合、仮想サーバAをスケールアウトする。該スケールアウトに応じて、新たに仮想サーバBが生成される。
上述したように、仮想サーバAで動作しているソフトウェアは「ソフトウェア002」である。仮想サーバAでは、保有数が「1」であるBYOLを使用して、「ソフトウェア002」が利用される。
スケールアウトに応じて生成された仮想サーバBは、仮想サーバAとは異なる仮想サーバであるため、仮想サーバBで「ソフトウェア002」を動作させるためには、別途のライセンスが使用される。
上述したように、「ソフトウェア002」についての「BYOL」の保有数は「1」であり、該「BYOL」は仮想サーバAに使用されている。よって、「ソフトウェア002」についての残りの「BYOL」の数は「0」であり、仮想サーバBで「ソフトウェア002」を利用するためのライセンスが不足する。
この場合、ライセンス管理部22は、「ソフトウェア002」のライセンス使用数は、ライセンス保有数未満であると判定する。
上述したように、スケールアウト時には、時間額従量課金ライセンスを使用することが選択されている。ライセンス管理部22は、仮想サーバBで利用される「ソフトウェア002」に対して、時間額従量課金ライセンスを適用する。
従って、仮想サーバAと仮想サーバBとの両者に「ソフトウェア002」のライセンスが適用されることから、ライセンス不足が生じることが回避されるため、仮想サーバAと仮想サーバBとの両者で、「ソフトウェア002」が継続的に利用される。
従って、仮想サーバAと仮想サーバBとは、継続的に「ソフトウェア002」を利用することができるため、負荷の分散が図られ、応答性の低下が抑制される。
例えば、上記のアクセスの集中が一時的であった場合、所定時間経過後に、仮想サーバAに対する負荷と仮想サーバBに対する負荷との合計が、閾値以下となる。オートスケール制御部13は、該負荷の合計が閾値以下となった場合、スケールアウトに応じて生成された仮想サーバBをスケールイン(削除)する。
仮想サーバBがスケールインされると、仮想サーバBに適用されていた「ソフトウェア002」のライセンスが不要になる。上述したように、ライセンス管理部22は、該仮想サーバBで動作する「ソフトウェア002」に対して、時間額従量課金ライセンスを適用している。
時間額従量課金ライセンスは、最も短い時間間隔ごとに課金される従量課金ライセンスであり、最も低額である従量課金ライセンスである。従って、仮想サーバBで動作する「ソフトウェア002」に、最も低額である従量課金ライセンスが適用されることで、利用者に対する課金額が抑制される。
次に、仮想サーバAで動作するソフトウェアに従量課金ライセンスが適用されている例について説明する。図8の例では、ソフトウェアの選択画面では、「ソフトウェア002」が選択されたものとする。
また、インストール時のライセンス選択画面では、「BYOL」ではなく、「従量課金(月額)」が選択され、スケールアウト時のライセンス選択画面では、「従量課金(時間額)」が選択されたものとする。
この場合、仮想サーバAで動作する「ソフトウェア002」には、選択された月額従量課金ライセンスが適用される。一方、スケールアウトに応じて新たに生成された仮想サーバ11で「ソフトウェア002」を動作させる場合、該「ソフトウェア002」に適用する余剰のライセンスがない。
従って、オートスケール制御部13が、仮想サーバAをスケールアウトした際に、生成された新たな仮想サーバBで「ソフトウェア002」を動作させるためのライセンスが不足する。
上述したように、スケールアウト時には、時間額従量課金ライセンスが選択されている。ライセンス管理部22は、時間額従量課金ライセンスを使用して、仮想サーバBで「ソフトウェア002」が動作することを許容する。
従って、仮想サーバAと仮想サーバBとの両者に「ソフトウェア002」のライセンスが適用されることから、ライセンス不足が生じることが回避され、仮想サーバAと仮想サーバBとの両者で、「ソフトウェア002」が継続的に使用される。
また、仮想サーバAに対する負荷と仮想サーバBに対する負荷との合計が閾値以下となった場合、オートスケール制御部13は、仮想サーバBをスケールインする制御を行う。オートスケール制御部13は、ライセンス管理部22が管理するライセンスの情報に基づいて、最も時間の短い従量課金ライセンスを使用したソフトウェアが動作する仮想サーバを優先的にスケールインする。
図8の例の場合、仮想サーバAで動作するソフトウェアは、月額従量課金ライセンスを使用したソフトウェアであり、仮想サーバBで動作するソフトウェアは、時間額従量課金ライセンスを使用したソフトウェアである。
従って、オートスケール制御部13は、時間額従量課金ライセンスを使用したソフトウェアが動作する仮想サーバBを優先的にスケールインする制御を行う。従って、スケールインされる仮想サーバBで動作する「ソフトウェア002」に、最も低額である従量課金ライセンスが適用されることで、利用者に対する課金額が抑制される。
<実施形態の処理の流れの一例を示すフローチャート>
図9を参照して、利用開始時の処理の流れの一例について説明する。利用者は、クライアント端末3の入力部3Bを操作して、サービス基盤2を利用するためのログイン操作を行う。クライアント端末3は、該ログイン操作を受け付ける。
ポータルサイト部21は、該ログイン操作に基づいて、ログイン処理を行う(ステップS1)。ログインが成功した場合、ポータルサイト部21は、ソフトウェア利用情報記憶部34を参照して、仮想サーバ11ごとに、インストール済みのソフトウェアの一覧を、クライアント端末3の画面部3Aに表示してもよい。
ログインが成功すると、利用者が特定される。従って、該利用者が操作するクライアント端末3が利用する仮想サーバ11も特定される。
例えば、上記利用者により複数の仮想サーバ11が利用される場合、ポータルサイト部21が、該利用者に対応する各想サーバ11のインストール済みのソフトウェア一覧を、一括して、クライアント端末3に表示することができる。
クライアント端末3は、仮想サーバ11にアクセスする。仮想サーバ11のVMソフトウェア制御部15は、クライアント端末3の画面部3Aにソフトウェア選択画面を表示させる制御を行う。
クライアント端末3が、ソフトウェアの選択操作を受け付けると、クライアント端末3は、選択されたソフトウェアを示す情報を仮想サーバ11に送信する。VMソフトウェア制御部15は、ソフトウェアの選択を受け付ける(ステップS2)。
ライセンス管理部22は、クライアント端末3の画面部3Aにインストール時のライセンス選択画面を表示させる制御を行う。
クライアント端末3が、インストール時のライセンス選択操作を受け付けると、クライアント端末3は、選択されたライセンスを示す情報をサービス基盤2に送信する。ライセンス管理部22は、インストール時のライセンスの選択を受け付ける(ステップS3)。
ライセンス管理部22は、クライアント端末3の画面部3Aにスケールアウト時のライセンス選択画面を表示させる制御を行う。
クライアント端末3が、スケールアウト時のライセンス選択操作を受け付けると、クライアント端末3は、選択されたライセンスを示す情報をサービス基盤2に送信する。ライセンス管理部22は、スケールアウト時のライセンスの選択を受け付ける(ステップS4)。
ライセンス管理部22は、インストール時のラインセンスとして、BYOLが選択されたかを判定する(ステップS5)。ステップS5でYESの場合、仮想サーバ11のVMソフトウェア制御部15は、BYOLを使用して、仮想サーバ11にソフトウェアをダウンロードする(ステップS6)。
VMソフトウェア制御部15は、ソフトウェアデータ記憶部32からダウンロードしたインストーラを実行することで、仮想サーバ11にソフトウェアをダウンロードしてもよい。VMソフトウェア制御部15は、クライアント端末3から受信したインストーラを実行することで、仮想サーバ11にソフトウェアをダウンロードしてもよい。
仮想サーバ11にソフトウェアがダウンロードされると、ライセンス管理部22は、BYOLの保有ライセンス数をデクリメントする(ステップS7)。
ステップS5でNOの場合、BYOLではなく、従量課金ライセンスが選択されたことになる。従って、VMソフトウェア制御部15は、管理サーバ部12のソフトウェアデータ記憶部32からインストーラをダウンロードする。
VMソフトウェア制御部15が、ダウンロードしたインストーラを実行することで、仮想サーバ11にソフトウェアがインストールされる(ステップS8)。該ソフトウェアのライセンスは、従量課金ライセンスである。
次に、図10を参照して、スケールアウト処理について説明する。オートスケール制御部13は、仮想サーバ11の負荷が所定の閾値を超えたかを判定する(ステップS11)。ステップS11でNOの場合、処理は、次のステップに進まない。
ステップS11でYESの場合、オートスケール制御部13は、スケールアウトに関するイベントを検知する。この場合、仮想サーバ11をスケールアウトする制御を行う。該スケールアウトに応じて新たな仮想サーバ11が生成される(ステップS12)。
ライセンス管理部22は、スケールアウト前の仮想サーバ11で動作しているソフトウェアについてのライセンスの使用数が、該ライセンスの保有数未満であるかを判定する(ステップS13)。
例えば、ライセンス管理部22が管理する各ソフトウェアの利用状況は、該利用状況の変化に応じて、ライセンス管理部22により、ソフトウェア利用情報記憶部34に記憶される。ライセンス管理部22は、ソフトウェア利用情報記憶部34を参照して、ステップS13の判定を行ってもよい。
BYOLが複数登録された場合、BYOLの保有数は複数になる。例えば、BYOLの保有数が「2」である場合、仮想サーバ11で動作するソフトウェアにBYOLが1つ適用される。
従って、仮想サーバ11がスケールアウトされて、新たな仮想サーバ11が生成されたとしても、該新たな仮想サーバ11で動作するソフトウェアに、残り1つのBYOLが適用される。この場合、ライセンス使用数は、ライセンス保有数未満にはならない。
BYOLの保有数が「1」である場合、またはインストール時のライセンス選択画面で従量課金ライセンスが選択された場合、仮想サーバ11のスケールアウトに応じて、新たな仮想サーバ11が生成されると、ライセンスが不足する。この場合、ライセンス数は、ライセンス保有数未満になる。
ライセンス使用数がライセンス保有数未満でない場合(ステップS13でNO)、VMソフトウェア制御部15は、BYOLを使用して、ソフトウェアを仮想サーバ11にダウンロードする(ステップS14)。
ライセンス使用数がライセンス保有数未満である場合(ステップS13でYES)、スケールアウトに応じて新たに生成された仮想サーバ11で動作するソフトウェアのライセンス数が不足する。従って、ライセンス管理部22は、スケールアウトに応じて新たに生成された仮想サーバ11に対して、従量課金ライセンスを適用する。
ライセンス保有数が不足していたとしても、新たに生成された仮想サーバ11で利用されるソフトウェアに従量課金ライセンスが適用されるため、ソフトウェアを継続的に利用できる。
ライセンス管理部22は、スケールアウト時のライセンス選択画面で、時間額従量課金ライセンスが選択されたかを判定する(ステップS15)。ステップS15でYESの場合、選択された従量課金ライセンスは、時間額従量課金ライセンスである。
VMソフトウェア制御部15は、時間額従量課金ライセンスを使用して、ソフトウェアデータ記憶部32からソフトウェアをダウンロードし(ステップS16)、該ソフトウェアを仮想サーバ11にインストールする。
ライセンス管理部22の制御に基づいて、実行指示出力部24は、時間額従量課金の実行指示を課金処理部14に出力する(ステップS17)。課金処理部14は、1時間ごとに従量課金を行う。
ステップS15でNOの場合、選択された従量課金ライセンスは、月額従量課金ライセンスである。VMソフトウェア制御部15は、月額従量課金ライセンスを使用して、ソフトウェアデータ記憶部32からソフトウェアをダウンロードし(ステップS18)、該ソフトウェアを仮想サーバ11にインストールする。
ライセンス管理部22の制御に基づいて、実行指示出力部24は、月額従量課金の実行指示を課金処理部14に出力する(ステップS19)。課金処理部14は、1ヶ月ごとに従量課金を行う。従って、スケールアウトに応じて新たに生成された仮想サーバ11で、月額従量課金ライセンスに基づくソフトウェアが使用される。
次に、図11を参照して、スケールイン処理について説明する。オートスケール制御部13は、スケールアウト前の仮想サーバ11と、スケールアウトに応じて新たに生成された仮想サーバ11との合計の負荷が閾値以下となったかを判定する(ステップS21)。
ステップS21でNOの場合は、処理は、次のステップに進まない。ステップS21でYESの場合、仮想サーバ11をスケールインする制御を行うことで、該仮想サーバ11が削除される(ステップS22)。
ライセンス管理部22は、スケールインされた仮想サーバ11で動作していたソフトウェアが、従量課金ライセンスを使用したソフトウェアであったかを判定する(ステップS23)。
ステップS23でYESの場合、ライセンス管理部22は、従量課金処理の停止指示を課金処理部14に出力する(ステップS24)。該停止指示に基づいて、課金処理部14は、上記の従量課金処理を停止する。
ステップS23でNOの場合、仮想サーバ11のスケールインに応じて、該仮想サーバ11で動作していたソフトウェアも削除される。従って、ライセンス管理部22は、BYOL保有数をインクリメントする(ステップS25)。
次に、図12を参照して、従量課金処理の一例について説明する。従量課金処理は、ソフトウェアの利用時間に応じて課金を行う処理である。上述したように、ソフトウェアの使用時間(稼働時間)は、仮想サーバ11の稼働時間としてもよいし、ソフトウェアの稼働時間としてもよい。
仮想サーバ11の稼働時間で従量課金の管理がされる場合(ステップS31でYES)、稼働時間管理部23は、仮想サーバ11の稼働時間は規定時間に達したかを判定する(ステップS32)。該規定時間は、従量課金を行う時間に対応する。
稼働時間管理部23は、スケールアウトにより仮想サーバ11が生成されてからの時間を監視し、仮想サーバ11の稼働時間が規定時間に達したかを判定する。ステップS32でNOの場合、処理は、次のステップに進まない。
ステップS32でYESの場合、ライセンス管理部22の制御に基づいて、実行指示出力部24は、課金処理部14に、従量課金処理の実行指示を出力する(ステップS34)。課金処理部14は、該実行指示に基づいて、従量課金処理を行う(ステップS35)。この際、課金処理部14は、課金ルールを記憶する課金ルール記憶部35を参照して、課金処理を行う。
仮想サーバ11で動作するソフトウェアの稼働時間で従量課金の管理がされる場合(ステップS31でNO)、VMソフトウェア制御部15は、仮想サーバ11のプロセスのうち、ソフトウェアのプロセスを監視する。
VMソフトウェア制御部15は、監視対象のプロセスの情報に基づいて、ソフトウェアの稼働状況を、定期的にライセンス管理部22に通知する。ライセンス管理部22は、該通知に基づいて、仮想サーバ11で動作するソフトウェアの稼働時間を管理する。
ライセンス管理部22は、ソフトウェアのプロセスに基づいて、ソフトウェアの稼働時間が規定時間に達したかを判定する(ステップS33)。ステップS33でNOの場合、処理は、次のステップに進まない。ステップS33でYESの場合、処理は、ステップS34に移行する。
<変形例>
次に、変形例について説明する。図13の例に示されるように、仮想サーバAに対する負荷が高くなったことに応じて、該仮想サーバAがスケールアウトして、2つの仮想サーバ(仮想サーバBおよび仮想サーバC)が新たに生成されたとする。なお、仮想サーバは、順次スケールアウトされてもよい。
例えば、仮想サーバAで動作するソフトウェアに対するアクセスが短期間で大幅に増加した場合、1つの仮想サーバBがスケールアウトしただけでは、依然として、仮想サーバAおよび仮想サーバBに対する負荷は、閾値を超えている場合がある。
上記の場合、2つの仮想サーバ(仮想サーバBおよび仮想サーバC)がスケールアウトされることにより、3つの仮想サーバに負荷が分散され、各仮想サーバの負荷が閾値以下となる場合がある。仮想サーバAに対する負荷によっては、3つ以上の新たな仮想サーバがスケールアウトされることもある。
変形例では、BYOL保有数は「2」である。この場合、仮想サーバAにBYOLが1つ適用されたとしても、BYOLは1つ残る。従って、残り1つのBYOLは、仮想サーバBに適用される。
仮想サーバBにBYOLが適用されると、BYOL保有数は「0」になる。従って、仮想サーバCで動作するソフトウェアに適用するライセンスが不足する。この場合、ライセンス管理部22は、上記ソフトウェアに、時間額従量課金ライセンスを適用する。従って、仮想サーバCにおいて、継続的にソフトウェアの利用が可能になる。
上記のアクセスが低下すると、仮想サーバAと仮想サーバBと仮想サーバCとの負荷の合計が閾値以下になる。この場合、オートスケール制御部13は、スケールインの制御を行う。
この際、オートスケール制御部13は、3つの仮想サーバのうち、従量課金ライセンスを使用したソフトウェアが動作する仮想サーバCを優先的にスケールアウトさせる。
BYOLは、利用者が登録したライセンスであり、従量課金ライセンスは、利用者に対して別途の課金を行うライセンスである。従って、仮想サーバBと仮想サーバCとのうち、従量課金ライセンスを使用したライセンスが動作している仮想サーバCがスケールインされることで、利用者に対する課金額が抑制される。
<サービス基盤のハードウェア構成の一例>
次に、図14の例を参照して、サービス基盤2のハードウェア構成の一例を説明する。図14の例に示すように、バス100に対して、プロセッサ111とRandom Access Memory(RAM)112とRead Only Memory(ROM)113とが接続される。また、該バス100に対して、補助記憶装置114と媒体接続部115と通信インタフェース116とが接続される。
プロセッサ111はRAM112に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態における処理を行う制御プログラムが適用されてもよい。
ROM113はRAM112に展開されるプログラムを記憶する不揮発性の記憶装置である。補助記憶装置114は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等が適用されてもよい。媒体接続部115は、可搬型記録媒体120と接続可能に設けられている。
可搬型記録媒体115Mとしては、可搬型のメモリ(例えば、半導体メモリ)や光学式ディスク(例えば、Compact Disc(CD)やDigital Versatile Disc(DVD))等が適用されてもよい。この可搬型記録媒体115Mに実施形態の処理を行う制御プログラムが記録されていてもよい。
上述した仮想サーバ11と管理サーバ部12とオートスケール制御部13と課金処理部14とは、与えられた制御プログラムをプロセッサ111が実行することにより実現されてもよい。また、管理サーバ記憶部25は、補助記憶装置114等により実現されてもよい。
RAM112、ROM113、補助記憶装置114および可搬型記録媒体115Mは、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。
<その他>
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
1 システム
2 サービス基盤
3 クライアント端末
11 仮想サーバ
12 仮想サーバ部
13 オートスケール制御部
14 課金処理部
15 VMソフトウェア制御部
21 ポータルサイト部
22 ライセンス管理部
23 稼働時間管理部
24 実行指示出力部
31 ソフトウェア情報記憶部
32 ソフトウェアデータ記憶部
33 ライセンス基本情報記憶部
34 ソフトウェア利用情報記憶部
35 課金ルール記憶部
111 プロセッサ
112 RAM
113 ROM

Claims (7)

  1. スケールアウトに関するイベントを検知すると、ソフトウェアの使用状況を記憶する記憶部を参照して、スケールアウト前の仮想マシン上で動作するソフトウェアのライセンスの使用数が、該ライセンスの保有数未満であるかを判定し、
    前記ライセンスの使用数が、該ライセンスの保有数未満でない場合、前記スケールアウトに応じて新たに生成された仮想マシン上で動作する前記ソフトウェアに関する従量課金処理の実行指示を出力する、
    処理をコンピュータに実行させることを特徴とする制御プログラム。
  2. 前記実行指示は、前記新たに生成された仮想マシンの稼働時間または該仮想マシン上での前記ソフトウェアの稼働時間に応じた情報を含む、
    ことを特徴とする請求項1記載の制御プログラム。
  3. 前記ソフトウェアの利用時間に応じて異なる額を課金する複数の従量課金ライセンスのうち、何れかの選択を受け付け、
    選択された従量課金ライセンスについての前記従量課金処理の実行指示を出力する、
    処理を前記コンピュータに実行させることを特徴とする請求項1または2記載の制御プログラム。
  4. 前記スケールアウトに応じて複数の仮想マシンが新たに生成される際、定額制のライセンスと従量課金ライセンスとのうち、前記定額制のライセンスを優先して使用する、
    処理を前記コンピュータに実行させることを特徴とする請求項1乃至3のうち何れか1項に記載の制御プログラム。
  5. スケールインに関するイベントの検知に応じて、前記スケールアウト前の仮想マシンと前記新たに生成された仮想マシンとのうち、最も短い時間間隔で課金を行うソフトウェアが動作する仮想マシンを削除し、
    削除された前記仮想マシンについての前記従量課金処理を停止する指示を出力する、
    処理を前記コンピュータに実行させることを特徴とする請求項1乃至4のうち何れか1項に記載の制御プログラム。
  6. スケールアウトに関するイベントを検知すると、ソフトウェアの使用状況を記憶する記憶部を参照して、スケールアウト前の仮想マシン上で動作するソフトウェアのライセンスの使用数が、該ライセンスの保有数未満であるかを判定し、
    前記ライセンスの使用数が、該ライセンスの保有数未満でない場合、前記スケールアウトに応じて新たに生成された仮想マシン上で動作する前記ソフトウェアに関する従量課金処理の実行指示を出力する、
    処理をコンピュータが実行することを特徴とする制御方法。
  7. スケールアウトに関するイベントを検知すると、ソフトウェアの使用状況を記憶する記憶部を参照して、スケールアウト前の仮想マシン上で動作するソフトウェアのライセンスの使用数が、該ライセンスの保有数未満であるかを判定する判定部と、
    前記ライセンスの使用数が、該ライセンスの保有数未満でない場合、前記スケールアウトに応じて新たに生成された仮想マシン上で動作する前記ソフトウェアに関する従量課金処理の実行指示を出力する出力部と、
    を備えることを特徴とする情報処理装置。
JP2017060016A 2017-03-24 2017-03-24 制御プログラム、制御方法および情報処理装置 Pending JP2018163502A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017060016A JP2018163502A (ja) 2017-03-24 2017-03-24 制御プログラム、制御方法および情報処理装置
US15/925,090 US10725811B2 (en) 2017-03-24 2018-03-19 Non-transitory computer-readable storage medium recording program for applying license to generated virtual machine, control method, and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017060016A JP2018163502A (ja) 2017-03-24 2017-03-24 制御プログラム、制御方法および情報処理装置

Publications (1)

Publication Number Publication Date
JP2018163502A true JP2018163502A (ja) 2018-10-18

Family

ID=63581128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017060016A Pending JP2018163502A (ja) 2017-03-24 2017-03-24 制御プログラム、制御方法および情報処理装置

Country Status (2)

Country Link
US (1) US10725811B2 (ja)
JP (1) JP2018163502A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11513828B1 (en) * 2017-04-03 2022-11-29 Parallels International Gmbh System and method for rapid cloning of virtual machines under load balancing
CN113076173A (zh) * 2018-09-17 2021-07-06 华为技术有限公司 云平台的虚拟机管理方法及装置
US11301285B1 (en) 2020-01-30 2022-04-12 Parallels International Gmbh Methods and systems for seamless virtual machine changing for software applications

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234556A (ja) * 2007-03-23 2008-10-02 Hitachi Ltd ライセンス管理システム、ライセンス管理方法、およびライセンス管理プログラム
JP2013109599A (ja) * 2011-11-21 2013-06-06 Fujitsu Ltd 管理装置、管理プログラムおよび管理方法
WO2015019416A1 (ja) * 2013-08-06 2015-02-12 株式会社日立システムズ ライセンス管理システムおよびライセンス管理方法
JP2015045899A (ja) * 2013-08-27 2015-03-12 株式会社日立システムズ 仮想マシンリソース割り当てシステムおよび方法
JP2015087936A (ja) * 2013-10-30 2015-05-07 富士ゼロックス株式会社 情報処理装置、情報処理システムおよびプログラム
JP2017058834A (ja) * 2015-09-15 2017-03-23 株式会社リコー 情報処理システム及び課金方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010267009A (ja) 2009-05-13 2010-11-25 Canon Inc ライセンス管理システム、ライセンス管理方法及びコンピュータプログラム
US8620820B2 (en) * 2011-11-15 2013-12-31 International Business Machines Corporation Management of dynamic assembly and licensing of appliances
JP5498550B2 (ja) 2012-09-11 2014-05-21 日本電信電話株式会社 ライセンス管理システム
US20170060609A1 (en) * 2015-08-28 2017-03-02 International Business Machines Corporation Managing a shared pool of configurable computing resources which has a set of containers

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234556A (ja) * 2007-03-23 2008-10-02 Hitachi Ltd ライセンス管理システム、ライセンス管理方法、およびライセンス管理プログラム
JP2013109599A (ja) * 2011-11-21 2013-06-06 Fujitsu Ltd 管理装置、管理プログラムおよび管理方法
WO2015019416A1 (ja) * 2013-08-06 2015-02-12 株式会社日立システムズ ライセンス管理システムおよびライセンス管理方法
JP2015045899A (ja) * 2013-08-27 2015-03-12 株式会社日立システムズ 仮想マシンリソース割り当てシステムおよび方法
JP2015087936A (ja) * 2013-10-30 2015-05-07 富士ゼロックス株式会社 情報処理装置、情報処理システムおよびプログラム
JP2017058834A (ja) * 2015-09-15 2017-03-23 株式会社リコー 情報処理システム及び課金方法

Also Published As

Publication number Publication date
US10725811B2 (en) 2020-07-28
US20180276023A1 (en) 2018-09-27

Similar Documents

Publication Publication Date Title
US8819108B2 (en) System and method supporting application solution composition on cloud
JP6695437B2 (ja) 管理計算機及びテスト環境決定方法
JP2001325041A (ja) 計算機資源活用方法及びシステム
KR20100138689A (ko) 클라우드 컴퓨팅 서비스를 제공하는 관리 서버 및 방법
US20150339628A1 (en) Online software service system and method
JP2018163502A (ja) 制御プログラム、制御方法および情報処理装置
WO2015026373A1 (en) Detacenter-based hardware accelerator integration
KR101707552B1 (ko) 클라우드 환경에서 사용자로 하여금 애플리케이션을 체험할 수 있도록 체험 환경을 제공하는 방법 및 이를 이용한 서버
US9881144B2 (en) Identifying usage of code
JP2020529066A (ja) クラウドサービスブローカーシステムにおいてオファーの機能を自動的に検証する技術
CN101814122A (zh) 一种软件使用授权信息的监控方法和系统
KR20180096323A (ko) 서비스 재이용을 유도하기 위한 방법 및 이를 수행하기 위한 장치
US20160140629A1 (en) Methods for computing devices
US10554525B2 (en) Tracking usage of computing resources
WO2012129689A1 (en) Pay-per-use license management for software applications
JP6191162B2 (ja) サーバ装置、サービス無償利用管理方法およびサービス無償利用管理プログラム
JP6915249B2 (ja) 課金方法、課金装置および課金プログラム
US20210110005A1 (en) License management apparatus, license management method, and recording medium storing license management program
US20230031998A1 (en) Systems and methods to trigger workload migration between cloud-based resources and local resources
US20160275469A1 (en) Systems and methods for providing information technology on an as-used basis
US10592262B1 (en) Managing shared computing environments
JP7073993B2 (ja) 情報処理システム、情報処理装置、情報処理方法及びプログラム
JP2016143239A (ja) 仮想マシン管理システム及び仮想マシンの管理方法
JP2011034478A (ja) アプリケーション利用料課金システムと方法およびプログラム
JP2016148966A (ja) 課金情報管理方法及び管理サーバ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210420