JP2017004266A - 判定制御プログラム、判定制御方法及び仮想マシン管理装置 - Google Patents

判定制御プログラム、判定制御方法及び仮想マシン管理装置 Download PDF

Info

Publication number
JP2017004266A
JP2017004266A JP2015117753A JP2015117753A JP2017004266A JP 2017004266 A JP2017004266 A JP 2017004266A JP 2015117753 A JP2015117753 A JP 2015117753A JP 2015117753 A JP2015117753 A JP 2015117753A JP 2017004266 A JP2017004266 A JP 2017004266A
Authority
JP
Japan
Prior art keywords
virtual machine
performance
satisfies
determination
performance condition
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.)
Granted
Application number
JP2015117753A
Other languages
English (en)
Other versions
JP6550945B2 (ja
Inventor
武俊 吉田
Taketoshi Yoshida
武俊 吉田
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 JP2015117753A priority Critical patent/JP6550945B2/ja
Priority to US15/156,652 priority patent/US9940157B2/en
Publication of JP2017004266A publication Critical patent/JP2017004266A/ja
Application granted granted Critical
Publication of JP6550945B2 publication Critical patent/JP6550945B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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
    • 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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】取得要求された性能条件に応じた仮想マシンの構築が可能かを判定するタイミングの適正化を図ることを目的とする。【解決手段】性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、処理をコンピュータに実行させる判定制御プログラムが提供される。【選択図】図10

Description

本発明は、判定制御プログラム、判定制御方法及び仮想マシン管理装置に関する。
性能の異なる複数の物理マシンで実現される仮想システムを提供する仮想マシン提供システムにおいて、ユーザが利用している仮想システムの利用状況に応じて仮想マシンの追加等を行う技術が知られている(例えば、特許文献1参照)。仮想マシン(以下、「VM(Virtual Machine)」ともいう。)を追加する際、ユーザは期待する性能を含めた仮想マシンの取得を仮想マシン提供システムに要求する。
特開2012−208580号公報 国際特開第2012/137272号パンフレット 特開2013−190888号公報
しかしながら、物理マシンの使用状況等により、ユーザは、常に要求する性能の仮想マシンを取得できるわけではない。そこで、要求する性能の仮想マシンが取得できない場合、ユーザは、取得できるまで所定のタイミングで要求する性能の仮想マシンの取得要求を送出する。
例えば、図1に一例を示すように、仮想マシン提供システムは、各ユーザからのVM取得(生成)要求に応じて、要求された性能の仮想マシンを提供できるか否かの判定処理を行う。すなわち、仮想マシン提供システムは、各ユーザからのVM取得(生成)要求に対して(ステップS1)、VMを生成し、所定のアプリケーションを導入する(ステップS2)。次に、仮想マシン提供システムは、生成したVMの性能を導入した所定のアプリケーションを利用して測定し、測定結果をユーザに通知する(ステップS3)。
次に、仮想マシン提供システムは、生成したVMをVMプールに追加したときに、VMプール内のVM数が予め定められた上限値を超えるかを判定する(ステップS4)。仮想マシン提供システムは、VMプール内のVM数が上限値を超えないと判定した場合、生成したVMをVMプールに追加する(ステップS5)。他方、ステップS4において仮想マシン提供システムは、VMプール内のVM数が上限値を超えると判定した場合、生成したVMがVMプール内の最低性能のVMかを判定する(ステップS6)。最低性能と判定された場合、生成したVMは削除される(ステップS7)。他方、ステップS6において最低性能でないと判定された場合、VMプール内の最低性能のVMを削除し、生成したVMをVMプールに追加する(ステップS8)。
仮想マシン提供システムは、VM取得(生成)要求のキャンセルを受け付けるまで前記判定処理を定期的に繰り返す。このため、一のユーザからの取得要求に対してそのユーザが要求する性能の仮想マシンの構築が可能かどうかは、他のユーザからの取得要求に影響を受けてしまうことがある。
そこで、一側面では、本発明は、取得要求された性能条件に応じた仮想マシンの構築が可能かを判定するタイミングの適正化を図ることを目的とする。
一つの案では、性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、処理をコンピュータに実行させる判定制御プログラムが提供される。
一側面によれば、取得要求された性能条件に応じた仮想マシンの構築が可能かを判定するタイミングの適正化を図ることができる。
VM生成判定処理の一例を示す図。 一実施形態にかかる仮想マシン提供システムの全体構成例を示す図。 一実施形態にかかる仮想マシン管理装置の機能構成の一例を示す図。 一実施形態にかかる標本調査データテーブルの一例を示す図。 一実施形態にかかるサンプリング周期管理テーブルの一例を示す図。 一実施形態にかかるポアソン分布によるVMの次回取得予想個数の確率の一例を示す図。 図6のVMの次回取得予想個数の確率を降順にソートした図。 一実施形態にかかるVMの次回取得予想性能分布の算出例を示す図。 一実施形態にかかる取得予想個数と希望個数との多次元ベクトル化の一例を示す図。 一実施形態にかかるサンプリング周期の適正化を説明するための図。 一実施形態にかかるVM確保及び性能評価処理の一例を示すフローチャート。 一実施形態にかかるVM確保及び性能評価処理の一例を示すフローチャート。 一実施形態にかかるVM確保及び性能評価処理の一例を示すフローチャート。 一実施形態にかかるVM確保及び性能評価処理の一例を示すフローチャート。 一実施形態にかかる性能測定処理の一例を示すフローチャート。 一実施形態にかかるサンプリング周期判定処理の一例を示すフローチャート。 一実施形態にかかる仮想マシン管理装置のハードウェア構成の一例を示す図。
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
[仮想マシン提供システムの全体構成]
まず、本発明の一実施形態に係る仮想マシン提供システム1の全体構成の一例について、図2を参照しながら説明する。一実施形態に係る仮想マシン提供システム1は、仮想マシン取得装置2、仮想マシン管理装置3及び性能の異なる複数の物理マシン5a、5b、5c・・・を有し、これらの装置はネットワーク5を介して接続されている。複数の物理マシン5a、5b、5c・・・は、総称して物理マシン5ともいう。複数の物理マシン5は、例えばデータセンター4内に配置される。
仮想マシン提供システム1は、仮想マシン取得装置2からの仮想マシンの取得要求に応じて、複数の物理マシン5によって構成される仮想環境に仮想マシンa〜i等を起動させ、ネットワーク5を介してユーザに仮想マシンの利用環境を提供する。以下、ユーザに提供する仮想マシンの利用環境を、「ユーザ仮想システム」ともいう。仮想マシン提供システム1によるサービスの提供は、クラウドサービスとも呼ばれる。
仮想マシン取得装置2は、ネットワークを介して仮想マシン管理装置3が管理する複数の物理マシン5に仮想マシンを起動させて利用したいユーザのユーザ端末であっても良いし、ユーザのローカル環境に設置されたコンピュータであっても良い。あるいは、物理マシン5上に起動した仮想マシンを、仮想マシン取得装置2として機能させるようにしても良い。
ユーザは、物理マシン5上に起動した仮想マシンを、PC(Personal Computer)等の自身のユーザ端末から接続して利用することができる。ここでは、1台の仮想マシン取得装置2を示して説明するが、仮想マシン提供システム1には複数のユーザの複数の仮想マシン取得装置2が接続されてもよい。
仮想マシン管理装置3は、仮想マシン取得装置2から送信される仮想マシンの取得要求に応じて、複数の物理マシン5a、5b、5c・・・に仮想マシンを生成・起動させる装置である。例えば、仮想マシン管理装置3は、複数の物理マシン5毎に、その物理マシン5に起動される仮想マシンのサイズ、物理マシン5上に生成可能な仮想マシンの台数等の情報を自身の記憶領域に記憶しておく。また、仮想マシン管理装置3は、どの物理マシン5に何台の仮想マシンを生成(起動)させたかを示す情報を自身の記憶領域に記憶しておく。仮想マシン管理装置3は、このような情報を参照して、仮想マシン取得装置2から送信される仮想マシンの取得要求に含まれる性能条件を満たし、仮想マシンを生成可能な物理マシン5に仮想マシンの取得要求を送信して仮想マシンを起動させる。また、仮想マシン管理装置3は、起動させた仮想マシンの識別情報を、仮想マシンの取得要求を行った仮想マシン取得装置2に送信する。仮想マシンの識別情報には、例えばIP(Internet Protocol)アドレス等を適用できる。
物理マシン5は、自身のコンピュータリソースを仮想化し、複数の仮想マシンを生成・起動させる仮想化機能を備えるコンピュータである。物理マシン5は、仮想マシン管理装置3を介して送信される仮想マシン取得装置2が取得要求する仮想マシンの性能条件に応じて、自身のコンピュータリソースに仮想マシンを生成・起動する。
ここで、物理マシン5は、予め定められた仮想マシンの性能に応じたサイズ単位に自身のコンピュータリソースを仮想化して複数の性能区分に区切り、区切った性能区分毎に仮想マシンを起動させる。例えば、CPU(Central Processing Unit)処理速度、メモリ容量、ディスク容量等の性能に基づいて、高性能の仮想マシンをH(High)、中性能の仮想マシンをM(Middle)、低性能の仮想マシンをL(Low)としてもよい。物理マシン5は、ユーザが希望する性能条件の取得要求に応じてリソースを仮想化した所望の仮想マシンを生成する。また、物理マシン5は、仮想マシン管理装置3からの仮想マシンの取得停止要求に応じて、自身のコンピュータリソース上に起動した仮想マシンの提供を停止させる。
このように、物理マシン5はユーザが取得を要求する性能の仮想マシンを生成・起動する。このとき、複数の物理マシン5の間では、規格等の相違、同一の物理マシン5上に起動している他の仮想マシンの稼働状況によって実際に起動する仮想マシンの性能には多少のバラツキが発生する。
すなわち、クラウド内において複数の物理マシン5により提供されるリソース(CPU、ネットワーク、ストレージなど)の性能が均一でないことから、その物理リソースの性能差により、仮想リソースの割り当て単位は同じでも、実際の仮想マシン(VM)の取得時の性能が異なる事象が発生することがある。特に、VMなどに割り当てられるリソース性能が、ユーザが要求する性能に合致している必要がある分野(例えば、シミュレーション処理やバッチ処理など)では、実際に起動するVMの性能のバラツキが課題となることがある。
そこで、要求する性能をもつVMを取得するために、図1に示すVM生成判定処理では、次の処理(1)〜(3)を定期的に繰り返す。この結果、要求する性能をもつVMの取得効率が悪くなる。
(1)VMの生成
(2)VM性能測定、評価
(2−1)性能評価後、要求する性能をもつVMであれば生成したVMを確保する。
(2−2)性能評価後、要求する性能をもつVMでなければ生成したVMを削除する。
(3)VMの削除
上記(1)〜(3)の処理が定期的に繰り返される時間間隔を以下、「サンプリング周期」とも表記する。サンプリング周期は、取得要求された性能条件を満たす仮想マシンの構築が可能かを判定する判定周期の一例である。例えば、サンプリング周期を長く設定した場合、ユーザが要求する性能のVMを取得できる機会を逃す場合が多く、結果、処理時間が掛かる性能のVMを取得する機会が増え、実施の処理時間が期待する処理時間を超えてしまう場合がある。他方、サンプリング周期を短く設定した場合、ユーザが要求する性能のVMを取得できる可能性は高くなる。しかし、多くのサンプリングを行う場合が発生し、結果VM生成判定処理に掛かる負荷が余分に発生する場合がある。
そこで、本実施形態にかかる仮想マシン管理装置3は、仮想マシンが構築可能かを判定するタイミングの適正化を図る。すなわち、VMの性能に対するユーザの要求と実際に取得できたVMの性能とに応じてサンプリング周期を適正化することで、要求された性能の仮想マシンの構築が可能かを判定するタイミングを最適化する。これにより、ユーザの要求に合った性能条件のVMの取得を効率的に行うことができる。これにより、より適切なVMをユーザに提供することができ、VMの生成及び削除に関する負荷を抑制することができる。
[仮想マシン管理装置の機能構成]
次に、仮想マシン管理装置3の機能構成の一例について、図3を参照しながら説明する。図3に示すように、仮想マシン管理装置3は、受信部10、VM確保部11、通知部12、記憶部18、デプロイ部19及びVMプール22を有する。受信部10は、VMの取得要求を受信する。VMの取得要求には、性能条件が含まれる。VM確保部11は、後述される標本調査の結果に基づき高性能なVMの確保制御を統合的に行う。通知部12は、取得要求に対してなされたVM生成の結果をユーザに通知する。
VMプール22は、VM確保部11によるVMの生成によって確保された高性能なVMを保存しておく。VMは一旦削除したり、停止させたりした場合、再起動時の性能を確保できる保証がないので、VMプール22に保管される。
デプロイ部19は、所望のアプリケーションをVMに導入し、VMにより該アプリケーションを利用可能とする。デプロイ部19は、アプリ導入削除部20及びVM取得解放部21を有する。アプリ導入削除部20は、指定されたVM識別子をもつVMに指定されたアプリケーションをインストールする。また、アプリ導入削除部20は、不要となったVMからアプリケーションをアンインストールする。VM取得解放部21は、インストールしたアプリケーションに応じたVMをVMプール22から取得し、アンインストールしたアプリケーションに応じたVMをVMプール22へ戻す。VM確保部11は、VM生成の結果、要求する性能のVMが得られた場合、生成したVMをVMプール22中に保管する。
記憶部18は、VMプールポリシーDB30、標本調査データテーブル31及びサンプリング周期管理テーブル32を有する。
VMプールポリシーDB30には、性能区分の修正ポリシーや、性能測定(以下、「標本調査」ともいう。)により得られたデータの収集周期や期間などの修正ポリシー定義情報が保持される。
記憶部18は、標本調査データテーブル31に、同一クラウドコンピュータ内のVM性能の標本調査の結果得られた標本調査データを保持する。標本調査データテーブル31の一例を図4に示す。例えば性能の一番低い値(1)から一番高い値(10)の範囲を5等分し、2値分を1区分とした性能区分1〜5の各区分に対応する標本調査回数131、発生数132、平均出現数133が標本調査データテーブル31に記録される。なお、ここでは、性能区分を5段階に設定したが、性能区分の数はこれに限らない。また、性能区分の数はユーザにより設定され得る。本実施形態では、標本調査は、S(=4,5時間)時間毎に行われ、生成された各性能区分のVM数をカウントし、全期間分の標本調査データを保存する。本実施形態では、一定期間のサンプリングを行う。例えば、1区間(サンプリング周期)を3時間とし、1週間分のサンプリングを行ってもよい。一度に生成されるVM数が少ない場合(例えば1個)は、1時間おきに、5分後ごとに5回VMの生成及び削除を行い、これに対する標本調査を行って得られた標本調査データを1回分のサンプリングデータとしてもよい。
図4の例では、S時間毎に生成されたVM数が記録されている。例えば、性能区分1の標本調査では、標本調査回数131が1回目のVM数のベンチマーク値は「1.1」、2回目のVM数は「0」、3回目のVM数は「1.2」、4回目のVM数は「1.8」であり、発生数(N)132は3回である。この結果、平均出現数133は、0.75(=3/4)となる。
また、性能区分2の標本調査では、標本調査回数131が1回目のVM数のベンチマーク値は「2.0」、2回目のVM数は「2.9」、「2.1」、3回目のVM数は「2.5」、4回目のVM数は「0」であり、発生数(N)132は4回である。この結果、平均出現数(ν)133は、1(=4/4)となる。
記憶部18は、図5に一例を示すサンプリング周期管理テーブル32に、取得要求内容231、取得要求発生時間232、周期時間233を記憶する。取得要求内容231は、ユーザからの取得要求であり、例えば取得要求内容231が(1,2,3,4,5)の場合、性能区分1のVMを1台、性能区分2のVMを2台、性能区分3のVMを3台、性能区分4のVMを4台、性能区分5のVMを5台要求する。取得要求発生時間232は、取得要求内容231を要求した時間を示し、周期時間233は、取得要求内容231を要求する周期を示す。
VM確保部11は、VM生成削除部13、性能測定部14、判定部15、周期設定部16及び測定値管理部17を有する。VM生成削除部13は、取得要求された性能条件に基づくVMの生成及び削除を行う。また、VM生成削除部13は、次回取得性能および個数予想機能の指示に基づくVMの生成及び削除を行う。
性能測定部14は、標本調査データに基づくVMの次回取得予想個数及び全体の性能などの計算を行う。
判定部15は、性能測定部14の計算結果に基づき複数の物理マシン5のいずれかにおいてユーザが取得要求する性能条件を満たすVMの構築が可能かを判定する。
周期設定部16は、判定部15の判定結果に基づき標本調査周期間隔を示すサンプリング周期の設定やVMの取得確保などの制御を行う。
測定値管理部17は、標本調査の結果やVMプール22に確保されているVMに関する情報等を保存及び管理する。
[サンプリング周期の適正化]
次に、一実施形態に係るサンプリング周期の適正化について、図6〜図9を参照しながら説明する。周期設定部16は、標本調査データテーブル31に保存されている標本調査データに基づき、例えば下記のポアソン分布式(1)に示すポアソン分布f(x)を用いて各性能区分の確率質量を算出する。
Figure 2017004266
ここで、xは標本調査データテーブル31に保存されている過去の標本調査結果のベンチマーク値、νは平均出現数である。図4に示す標本調査データテーブル31に示すVM生成では、各VMは5時間毎に4回〜6回生成される。ここで、VM取得の時間間隔や回数は、データセンター全体のVM性能分布を出来るだけ正確に収集できるように設定される。例えば、VM取得の時間間隔や回数は、1日ごとに30回や1日の内でも朝、昼、夜の3回/日で1ヶ月などに設定される。
収集した標本調査データは、性能測定部14に送られ、図4に示すように標本調査データテーブル31に保存される。標本調査データの収集が終了すると標本調査データの最小値と最大値とを5等分し、性能区分1〜5のデータに分ける。ここで、性能区分の数は、求める性能をどれだけ厳密に算出するかに応じて定められる。性能をより厳密に求める場合、標本調査データをより細かく等分することで性能区分の数を多くし、性能をそれほど厳密に求めない場合、標本調査データをより粗く等分することで性能区分の数を少なくする。
性能測定部14は、図4に示す各性能区分の発生回数(N)を求め、標本調査回数内での平均出現数(ν:ν=N/S)を求める。性能測定部14は、求められた平均出現数(ν)に基づき、ポアソン分布式(1)を用いて過去の複数回の標本調査結果から次回の性能評価を予想する。この結果、性能測定部14は、図6に一例を示すように、予想されるVMの次回取得予想個数の確率を算出する。例えば、性能区分1のVMを次回1台も取得できない確率は「0.472367」と算出される。また、性能区分1のVMを次回1台取得できる確率は「0.354275」、性能区分1のVMを次回2台取得できる確率は「0.132853」、性能区分1のVMを次回3台取得できる確率は「0.033213」と算出される。
次に、性能測定部14は、求めたVMの次回取得予想個数の確率を降順にソートする。図6のVMの次回取得予想個数の確率を降順にソートした結果を図7に示す。性能測定部14は、確率の上位からVMの次回取得予想個数の合計がサンプル数5個になる集合を求める。図7の場合、VMの次回取得予想個数の合計がサンプル数5個になる集合は、(0.367879,0.358131,0.354275,0.334695,0.303265)となる。
次に、性能測定部14は、VMの次回取得予想個数の合計がサンプル数5個になる集合が全体性能のどの程度に位置するかを調査し、VMを取得後、VMプール22に確保するか、標本調査データの収集に留めるかを判定する。また、周期設定部16は、サンプリング周期を修正するかを判定する。
具体的には、性能測定部14は、次回取得予想個数のVMの性能分布を数値化する。図8に示すように、まず、性能測定部14は、得られた標本調査データの各性能区分の平均値(X)を算出する。平均値は、Σサンプル値/発生数によって算出される。例えば、性能区分1の区分性能の平均値(X)は、(1.1+1.2+1.8)/3=1.37となる。
次に、性能測定部14は、求められた区分性能の平均値から標準偏差値(σ)を性能区分毎に求める。標準偏差値(σ)を求めるために、まず、性能測定部14は、各性能区分の分散を算出する。分散は、偏差(X−μ)を二乗した値である。μは、性能区分1〜5の区分性能の平均値(X)の平均値3.50(=17.50/5)である。
性能測定部14は、分散の平均値2.34(=11.7/5)を算出する。次に、性能測定部14は、分散の平均値から標準偏差値を算出する。標準偏差値(σ=√σ)は、分散の平均値から「2」と算出される。
次に、性能測定部14は、標準偏差値に基づき、各性能区分の偏差値を算出する。各性能区分の偏差値は、50+各性能区分の偏差(X−μ)+標準偏差値(σ)により算出される。性能区分の偏差値は、性能区分毎のVMの次回取得予想個数に対する取得可能性の指標である。判定部15は、各性能区分の偏差値の高低により、次回取得予想個数のVMが得られるかを判定する。
性能測定部14は、次回取得予想個数と次回取得要求個数の内積により高次元ベクトル化を行う。例えば、性能測定部14は、図9に示されるVMの次回取得予想個数(E)とサンプリング周期管理テーブル32に記憶されているユーザのVMの取得要求個数(N)とを多次元ベクトル化して表現する。ここでは、性能測定部14は、E=(1,1,1,1,1)、N=(0,0,0,1,2)に基づき式(2)の内積を計算する。
Figure 2017004266
なお、以上に説明した偏差値を考慮した性能区分毎の取得予想個数は、性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴の一例である。
(サンプリング周期)
次に、周期設定部16は、式(3)に基づき、多次元ベクトルとの類似度を算出する。類似度は、0以上1以下の値を取る。
Figure 2017004266
周期設定部16は、式(4)に基づきサンプリング周期Tを算出する。
Figure 2017004266
ここで、調整値Mは、初期のサンプリング周期であり、予め設定されている。例えば、調整値Mは、0時間でもよいし1時間でもよい。本実施形態では、調整値Mは0.8時間に設定される。標準サンプリング周期は、ここでは1時間に設定されている。類似度(sim(E,N))が0.2と算出された場合、周期設定部16は、次のサンプリング周期Tを1.6時間(=0.8+(1−0.2))×1)と算出する。
式(4)に基づけば、次のサンプリング周期Tは、類似度が大きくなるほど短くなり、類似度が小さくなるほど長くなる。図10を参照して、本実施形態にかかるサンプリング周期の適正化について説明する。横軸には時間軸が示され、サンプリング周期に基づくサンプリングの時刻(サンプリングタイミング)T、T、T、T・・・が明示されている。図10の例ではまず、標準サンプリング周期に基づく時刻Tに、ユーザが要求する性能条件1に基づき1回目のVM取得のためのサンプリングが実行される。次に、標準サンプリング周期に基づく時刻T〜時刻Tに性能条件1に基づき2回目〜4回目のためのVM取得のサンプリングが実行される。
性能条件1に基づき5回目のVM取得のためのサンプリングが実行される前にユーザが取得したい性能条件が変わり、性能条件2を求める新たなVM取得要求が送出された場合について考える。この場合、標準サンプリング周期に基づく5回目のVM取得のためのサンプリング予定時刻Tbに対して、サンプリング周期の適正化が図られる。
つまり、予想されていた次回のサンプリング周期Tbを迎える前に性能条件2の新たなVM取得要求を受信したことに応じて、VM確保部11は、次回のサンプリング周期を待たずに時刻Tにサンプリングを行う。その結果、VM確保部11は、性能条件2のVM取得要求に見合うもしくは性能条件2に近い性能のVMをVMプール22に保持し、サンプル取得したVMからユーザが求める性能のVMを割り当てる。
周期設定部16は、性能条件2のVM取得要求に併せて、新たな取得要求の性能条件2に基づく次回のサンプリング周期を計算する。もしVMの取得要求時に「新たな取得要求の性能条件2」が提示されていなければ、周期設定部16は、「性能条件1」と上記サンプリング結果に基づき、新たな次回以降のサンプリング周期を計算し、設定する。
VM生成削除部13は、サンプリング周期を求める際に算出された類似値が予め定められた閾値H(例えば、0.7)以上であれば、取得したVMのうち性能の高いVMを取得する。このとき、ユーザが要求するVM数の取得に達していなければ、式(4)に基づき算出された、前回よりも短いサンプリング周期Tに従い次回のサンプリングが実行される。これにより、次回のVM取得時に高性能のVMを取得する可能性を高めることができる。
また、類似値が閾値H(例えば、0.7)と閾値L(例えば、0.4)との間であれば、サンプリング周期Tは、式(4)に基づきそのままの周期Tとなる。また、類似値が閾値L(例えば、0.4)以下の場合、ユーザが要求するVM数の取得に達していなければ、式(4)に基づき算出された、前回よりも長いサンプリング周期T'に従い次回のサンプリングが実行される。これにより、サンプリング周期を適正化することができる。
以上に説明したように、本実施形態によれば、VMが構築可能かどうかの判定結果とその類似度に基づき次のサンプリング周期の適正化を図ることができる。例えば標本調査(性能測定)に使えるVMが少ない場合(例えば一度に使える物理メモリ量に制約がある場合等)、標準サンプリング周期を一時的に短くし(例:5分)1回の標本数を増やす。ある一定期間(例:2時間毎に10回)の標本調査が終わると、そのサンプリング周期に基づき次のサンプリング周期(例:2時間後)もしくは、確保したVMの利用予定時間における確保可能なVMの性能およびその数を、ポアソン分布などを用いて予想する。その結果、予想される確保可能なVMが要求する性能条件を満たさない場合、サンプリング周期を長くする。これにより、例えば、サンプリングが2時間毎に10回行われていたサンプリング周期から、4時間毎に10回行われるサンプリング周期に適正化される。
予想される確保可能なVMが要求する性能を満たす場合、サンプリング周期を短くし、要求を満たす性能のVMの取得確率を上げる。また、実際に期待するVM数に満たない場合で更に高性能なVMの取得が期待できる場合、サンプリング周期を更に短くし期待する性能のVMの取得確率をさらに上げる。
なお、標本調査データ収集中、飛び抜けたベンチマーク値(図4の標本調査回数毎に記載された値)が計測された場合、性能区分数を修正するようにしてもよい。例えば、ベンチマーク値が1−5の間であった場合、新しい高性能物理マシンが配備されるなどし、ベンチマーク値として10が計測された場合、性能区分数を5区分から10区分に拡張してもよい。ただし、性能区分数を5区分のままにしてもよい。この修正ポリシーは、VMプール22ポリシーDB30に定義され、定義された修正ポリシーに基づき性能区分数が調整される。また、本実施形態では、一ユーザのVM取得要求に対するVM確保及び性能評価処理について説明するが、複数ユーザ(テナント)のVM取得要求に対するVM確保及び性能評価処理についても対応可能である。
[VM確保及び性能評価処理]
次に、本実施形態に係るVM確保及び性能評価処理の一例について図11〜15を参照して説明する。まず、図11に示すように、ユーザ仮想システム40からVM取得要求が送出される(ステップS10)。VM取得要求には、性能区分数と各区分の取得要求VM数との情報が含まれる。性能区分数と各区分の取得要求VM数とは、VM取得要求の性能条件の一例である。
VM取得要求に応じたVM生成要求がVM生成削除部13に送出される(ステップS10)。VM生成要求には、必要なVM数、すなわち各区分のVM数の総和の情報(性能条件1の一例)が含まれる。VM生成削除部13は、仮想マシン提供システム1(クラウドサービス)に対して指定されたVM数の生成を依頼し(ステップS11)、VMの生成を待つ(ステップS12)。
VM生成削除部13は、デプロイ部19に性能測定機能の導入依頼を行う(ステップS13)。アプリ導入削除部20は、性能測定機能をVMに導入する(ステップS14)。仮想マシン提供システム1が、VMを生成すると(ステップS15)、アプリ導入削除部20は、各性能区分のVMに性能測定を開始させ、測定結果の測定値(ベンチマーク値)を測定値管理部17に通知する(ステップS14〜S16)。測定値管理部17は、測定値を標本調査データとして標本調査データテーブル31に登録し(ステップS17)、新しい標本調査データの登録が完了したことを通知する(ステップS18)。
性能測定部14は、次回取得予想個数確率の計算、類似度の計算を行い、周期設定部16は、サンプリング周期を算出し、新たなサンプリング周期を設定する(ステップS19)。また、判定部15は、各性能区分のVM数にVMプール22のVMが達していないと判定した場合、性能区分に該当するVMをVMプール22に保存させる(ステップS20)。判定部15は、VMプール22へのVMの保存依頼をVMプール22に送出する(ステップS21)。VMの保存依頼には、保存するVMを識別するVM識別子リストが含まれる。VMプール22は、生成されたVMのうちから指定されたVM識別子に該当するVMを取得する(ステップS22)。
また、判定部15は、不要なVMの削除要求を送出し(ステップS23)、VM生成削除部13に依頼する(ステップS24)。VMの削除要求には、削除するVMを識別する識別子のリストが含まれる。VM生成削除部13は、指定されたVM識別子に該当するVMを削除する(ステップS25)。判定部15は、ユーザが取得要求したVM数(性能条件1)が満たされたと判定した場合、ユーザにその旨を通知する(ステップS26)。これに応じて、要求されたVMの取得を完了したことを知らせる通知がユーザ仮想システム40に送信される(ステップS27)。ユーザ仮想システム40は、この通知を受け、要求VMの取得(ステップS28)及びVM取得解放部に要求VMの取得を依頼する(ステップS29)。
次に、図12に示すように周期設定部16は、設定されたサンプリング周期に応じた時間まで待ち、その時間になったら図11のステップS11へジャンプし(ステップS30)、VM生成要求処理及びそれ以降の処理を実行させる。
VM取得解放部21は、VMプール22からVMを取得し(ステップS31)、アプリケーション導入依頼を送出する(ステップS32)。アプリケーション導入依頼には、取得したVM識別子と導入アプリケーションのIDが含まれる。アプリ導入削除部20は、指定されたVM識別子をもつVMに指定されたアプリケーションを導入する(ステップS33)。アプリ導入削除部20は、指定されたVMへのアプリケーションの導入が完了し、VMの利用が可能になったことを通知する(ステップS34)。本通知にはVM識別子の情報が含まれる。
ユーザ仮想システム40は、VMの利用可能通知を受けてVMの利用を開始し、取得したVMの利用を終了すると、VMの開放を行う(ステップS35)。これにより、VM利用停止通知がVM取得解放部21に送出される(ステップS36)。VM利用停止通知には、開放するVMをのVM識別子の情報が含まれる。VM取得解放部21は、VM識別子により識別されるVMからアプリケーションを削除する(ステップS37)。これにより、アプリケーション削除依頼がアプリ導入削除部20に送出される(ステップS38)。アプリケーション削除依頼には、取得したVMの識別子と導入アプリケーションのIDが含まれる。アプリ導入削除部20は、指定されたVM識別子をもつVMから指定されたアプリケーションを削除する(ステップS39)。アプリ導入削除部20は、アプリケーションの削除完了通知を送出する(ステップS40)。アプリケーションの削除完了通知には、削除されたVM識別子が含まれる。
VM取得解放部21は、該当VMのVMプール22への返還を行う(ステップS41)。VM識別子により識別されるVMがVMプール22に返還される(ステップS42)。
以上、サンプリング周期に応じた時刻に行われるVM確保及び性能評価処理について説明した。次に、図13〜図16を参照しながらサンプリング周期が来る前にVM取得要求がなされた場合のVM確保及び性能評価処理と、サンプリング周期判定処理とについて説明する。
図13のステップS10〜S22は、図11の同ステップと同様であるためここでは説明を省略し、ステップS45から説明を始める。判定部15は、VMプール22からVM取得要求に見合うVM識別子を取得し、もし要求された性能区分のVMがないと判定した場合にはサンプルとして取得したVMから要求された性能区分に近いVMを取得し、それ以外のVMを削除する(ステップS45)。次に、判定部15は、不要なVMの削除要求を依頼する(ステップS46)。VMの削除要求には、削除するVM識別子のリストが含まれる。VM生成削除部13は、指定されたVM識別子に該当するVMを削除する(ステップS47)。
次に、図14に移り、判定部15は、取得したVM識別子をユーザ仮想システム40へ通知する(ステップS48)。これに応じて、要求されたVMの取得を完了したことを知らせる通知がユーザ仮想システム40に送信される(ステップS49)。周期設定部16は、設定されたサンプリング周期時間待つ。すなわち、周期設定部16は、VM取得要求が来た時間から類似度に応じて算出した、最適化されたサンプリング周期時間(例えば、図10のT、T')待ち状態となる。サンプリング周期時間に応じたサンプリングタイミングが来た場合、図13のステップS11へジャンプしVM生成要求処理が開始される(ステップS50)。
(サンプリング周期判定処理)
次に、本実施形態に係る標本調査、ポアソン分布による次回取得予想個数の確率の計算、類似度の計算、サンプリング周期判定処理の一例について図15及び図16を参照して説明する。
判定部15は、標本調査データテーブル31に蓄積された標本調査データに基づくサンプリング周期に達したかを判定する(ステップS100)。判定部15は、サンプリング周期に達したと判定した場合、ステップS106に進む。
判定部15は、サンプリング周期に達していないと判定した場合、VM取得要求が発生したかを判定する(ステップS102)。判定部15は、VM取得要求が発生していないと判定した場合、ステップS100に戻る。判定部15は、VM取得要求が発生したと判定した場合、取得要求フラグを立てる(ステップS104)。取得要求フラグは、VM取得要求の発生の有無を示すフラグである。
性能測定部14は、VM取得要求と併せて、新たな性能条件2のVM取得要求がなされた場合、これまでの取得要求の性能区分(性能条件1の一例)と置き換える。性能測定部14は、新たな取得要求が無い場合、これまでの取得要求の性能条件1を設定する(ステップS104)。
ステップS106において、性能測定部14は、標本調査データの収集を行う。性能測定部14は、必要な標本数の標本調査データを収集したかを判定する(ステップS108)。性能測定部14は、必要な標本数の標本調査データを収集するまで標本調査データを収集を繰り返す。性能測定部14が必要な標本数の標本調査データを収集した場合、判定部15は、標本調査データに従来の性能区分を超える値があるかを判定する(ステップS110)。
判定部15が標本調査データに従来の性能区分を超える値があると判定した場合、性能測定部14は、性能区分数の更新を行う(ステップS112)。判定部15が標本調査データに従来の性能区分を超える値がないと判定した場合、性能測定部14は、標本調査データを性能区分に分類する(ステップS114)。次に、性能測定部14は、分類した標本調査データに基づき各性能区分の平均出現数を求める(ステップS116)。次に、性能測定部14は、求めた平均出現数に基づき、ポアソン分布式を用いて次回取得予想個数の確率を求める(ステップS118:図6参照)。
次に、性能測定部14は、求めた次回取得予想個数の確率を降順にソートし、対応する取得予想個数、および対応する性能区分を求める(ステップS120:図7参照)。次に、性能測定部14は、求めた次回取得予想個数のうちから、標本調査の個数になるように上位所定個の次回取得予想個数を選択する(ステップS122)。
次に、性能測定部14は、得られた標本調査データから各性能区分の標準偏差値を求めるため、各性能区分の区分性能の平均値を求める(ステップS124:図8参照)。次に、性能測定部14は、求めた各性能区分の区分性能の平均値に基づき偏差、分散、標準偏差を求める(ステップS126:図8参照)。次に、性能測定部14は、求めた標準偏差に基づき各性能区分の標準偏差を求める(ステップS128:図8参照)。次に、性能測定部14は、求めた予想性能区分毎の数と、取得要求の性能区分毎の数を多次元ベクトル化し、式(3)に基づきその類似度を計算する(ステップS130:図9参照)。次に、周期設定部16は、サンプリング周期の判定処理を実行し(ステップS131)、実行後、本処理を終了する。
サンプリング周期判定処理の一例を、図16のフローチャートを参照しながら説明する。サンプリング周期判定処理が開始されると、周期設定部16は、算出された類似度が閾値H以上かを判定する(ステップS132)。周期設定部16は、類似度が閾値Hよりも小さいと判定した場合、類似度が閾値Hと閾値Lとの間かを判定する(ステップS134)。周期設定部16は、類似度が閾値Hと閾値Lとの間であると判定した場合、ステップS148に進む。他方、周期設定部16は、類似度が閾値Hと閾値Lとの間でないと判定した場合、類似度が閾値L以下であるかを判定する(ステップS136)。周期設定部16は、類似度が閾値L以下であると判定した場合、サンプリング周期を算出する式(4)に基づき、サンプリング周期を標準サンプリング周期よりも長く設定し(ステップS138)、ステップS148に進む。周期設定部16は、類似度が閾値L以下でないと判定した場合、ステップS148に進む。
ステップS132において、周期設定部16は、算出された類似度が閾値H以上であると判定した場合、要求するVMを取得する(ステップS140)。次に、周期設定部16は、VMの取得数が要求するVM数に達したかを判定する(ステップS142)。周期設定部16は、VMの取得数が要求するVM数に達したと判定した場合、サンプリング周期を標準のサンプリング周期に戻し(ステップS146)、ステップS148に進む。他方、周期設定部16は、VMの取得数が要求するVM数に達していないと判定した場合、サンプリング周期を算出する式(4)に基づき、サンプリング周期を標準サンプリング周期よりも短く設定し(ステップS144)、ステップS148に進む。
ステップS148にて、判定部15は、VM取得要求フラグが立っているかを判定する(ステップS148)。判定部15は、VM取得要求フラグが立っていないと判定した場合、本処理を終了する。他方、判定部15は、VM取得要求フラグが立っていると判定した場合、サンプルとして取得したVMから取得取得要求した性能区分のVM数を割り当てる(ステップS150)。
判定部15は、割り当てるVM数が不足する場合、VMプール22から補填する。これによってもVM数が不足する場合、判定部15は、サンプル及びVMプール22の余剰分のVMのうち、より近い性能のVMを割り当てる(ステップS152)。次に、判定部15は、VM取得要求フラグを下し(ステップS154)、本処理を終了する。
本実施形態に係る仮想マシン提供システム1によれば、取得要求に見合った仮想マシンが取得できなかった場合、過去の仮想マシンの取得実績に応じてサンプリング周期を適正化する。これにより、取得要求に見合った仮想マシンの構築が可能かをチェックするタイミングを変化させることで、ユーザが要求する性能の仮想マシンを効率的に取得することができる。
(ハードウェア構成例)
最後に、本実施形態に係る仮想マシン管理装置3のハードウェア構成について、図17を参照して説明する。仮想マシン管理装置3は、入力装置101、表示装置102、外部I/F103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、通信I/F107、及びHDD(Hard Disk Drive)108などを備え、それぞれがバスBで相互に接続されている。
入力装置101は、キーボードやマウスなどを含み、仮想マシン管理装置3に各操作信号を入力するために用いられる。表示装置102は、ディスプレイなどを含み、各種の処理結果を表示する。通信I/F107は、仮想マシン管理装置3をネットワークに接続するインタフェースである。これにより、仮想マシン管理装置3は、通信I/F107を介して、他の機器(仮想マシン取得装置2等)とデータ通信を行うことができる。
HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、仮想マシン管理装置3の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。例えば、HDD108には、各種のデータベースやプログラム等が格納されてもよい。
外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103aなどがある。これにより、仮想マシン管理装置3は、外部I/F103を介して記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aには、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory card)やUSBメモリ(Universal Serial Bus memory)等がある。
ROM105は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM105には、ネットワーク設定等のプログラム及びデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU106は、上記HDD108及びROM105等の記憶装置からプログラムやデータをRAM104上に読み出し、処理を実行することで装置全体の制御や搭載機能を実現する演算装置である。
かかる構成により、本実施形態に係る仮想マシン管理装置3では、CPU106が、ROM105やHDD108内に格納されたデータ及びプログラムを用いてVM確保及び性能評価処理、サンプリング周期判定処理を実行する。なお、VMプール22ポリシーDB30、標本調査データテーブル31及びサンプリング周期管理テーブル32に記憶された情報は、RAM104、HDD108、又はネットワークを介して仮想マシン管理装置3に接続されるクラウド上のコンピュータに格納され得る。
以上、判定制御プログラム、判定制御方法及び仮想マシン管理装置を上記実施形態により説明したが、本発明にかかる判定制御プログラム、判定制御方法及び仮想マシン管理装置は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
例えば、上記実施形態に係る仮想マシン提供システム1の構成は一例であり、本発明の範囲を限定するものではなく、用途や目的に応じて様々なシステム構成例があることは言うまでもない。例えば、仮想マシン取得装置2は、1台又は2台以上であり得る。複数台の仮想マシン取得装置2が設置される場合、仮想マシン管理装置3は、仮想マシン取得装置2のそれぞれからのVM取得要求に対して、VM確保及び性能評価処理、サンプリング周期判定処理を実行し、サンプリング周期の適正化を図る。
以上の説明に関し、更に以下の項を開示する。
(付記1)
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータに実行させる判定制御プログラム。
(付記2)
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記判定周期を設定する、
付記1に記載の判定制御プログラム。
(付記3)
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータが実行する判定制御方法。
(付記4)
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記判定周期を設定する、
付記3に記載の判定制御方法。
(付記5)
性能条件を含む仮想マシンの取得要求を受信する受信部と、
受信した前記取得要求に応じた複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定する判定部と、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定する周期設定部と、を有し、
前記判定部は、
設定した前記判定周期に応じて期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
仮想マシン管理装置。
(付記6)
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出する性能測定部を有し、
前記周期設定部は、前記類似度に基づいて前記判定周期を設定する、
付記5に記載の仮想マシン管理装置。
1:仮想マシン提供システム
2:仮想マシン取得装置
3:仮想マシン管理装置
5a、5b、5c、5:物理マシン
10:受信部
11:VM確保部
12:通知部
13:VM生成削除部
14:性能測定部
15:判定部
16:周期設定部
17:測定値管理部
18:記憶部
19:デプロイ部
20:アプリ導入削除部
21:VM取得解放部
22:VMプール
23:VM(性能区分1)
24:VM(性能区分2)
25:VM(性能区分3)
26:VM(性能区分4)
27:VM(性能区分5)
30:VMプール22ポリシーDB
31:標本調査データテーブル
32:サンプリング周期管理テーブル
40:ユーザ仮想システム

Claims (4)

  1. 性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
    前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
    設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
    処理をコンピュータに実行させる判定制御プログラム。
  2. 前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記判定周期を設定する、
    請求項1に記載の判定制御プログラム。
  3. 性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
    前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
    設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
    処理をコンピュータが実行する判定制御方法。
  4. 性能条件を含む仮想マシンの取得要求を受信する受信部と、
    受信した前記取得要求に応じた複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定する判定部と、
    前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定する周期設定部と、を有し、
    前記判定部は、
    設定した前記判定周期に応じて期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
    仮想マシン管理装置。
JP2015117753A 2015-06-10 2015-06-10 判定制御プログラム、判定制御方法及び仮想マシン管理装置 Active JP6550945B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015117753A JP6550945B2 (ja) 2015-06-10 2015-06-10 判定制御プログラム、判定制御方法及び仮想マシン管理装置
US15/156,652 US9940157B2 (en) 2015-06-10 2016-05-17 Computer readable medium, method, and management device for determining whether a virtual machine can be constructed within a time period determined based on historical data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015117753A JP6550945B2 (ja) 2015-06-10 2015-06-10 判定制御プログラム、判定制御方法及び仮想マシン管理装置

Publications (2)

Publication Number Publication Date
JP2017004266A true JP2017004266A (ja) 2017-01-05
JP6550945B2 JP6550945B2 (ja) 2019-07-31

Family

ID=57516988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015117753A Active JP6550945B2 (ja) 2015-06-10 2015-06-10 判定制御プログラム、判定制御方法及び仮想マシン管理装置

Country Status (2)

Country Link
US (1) US9940157B2 (ja)
JP (1) JP6550945B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019192006A (ja) * 2018-04-26 2019-10-31 富士通株式会社 リソース管理装置及びリソース管理プログラム
JP2020064567A (ja) * 2018-10-19 2020-04-23 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116527397A (zh) * 2016-06-16 2023-08-01 谷歌有限责任公司 云计算节点的安全配置
US20230362234A1 (en) * 2022-05-04 2023-11-09 Microsoft Technology Licensing, Llc Method and system of managing resources in a cloud computing environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058815A (ja) * 2010-09-06 2012-03-22 Hitachi Ltd 計算機システム、及び、計算機システムの制御方法
WO2014136302A1 (ja) * 2013-03-04 2014-09-12 日本電気株式会社 タスク管理装置及びタスク管理方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5434616B2 (ja) * 2010-01-15 2014-03-05 富士通株式会社 仮想計算機、仮想計算機モニタ、および計算機の制御方法
US8434088B2 (en) * 2010-02-18 2013-04-30 International Business Machines Corporation Optimized capacity planning
US8738333B1 (en) * 2010-05-25 2014-05-27 Vmware, Inc. Capacity and load analysis in a datacenter
US8769534B2 (en) * 2010-09-23 2014-07-01 Accenture Global Services Limited Measuring CPU utilization in a cloud computing infrastructure by artificially executing a bursting application on a virtual machine
JP5614226B2 (ja) * 2010-10-15 2014-10-29 富士通株式会社 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
JP5577283B2 (ja) 2011-03-29 2014-08-20 株式会社エヌ・ティ・ティ・データ 仮想マシン起動装置、仮想マシン起動方法、仮想マシン起動プログラム
JP5525654B2 (ja) 2011-04-01 2014-06-18 株式会社日立製作所 リソース管理方法および管理サーバ
EP2701062B1 (en) * 2011-04-20 2020-12-02 Nec Corporation Virtual machine administration device, virtual machine administration method, and program
US8782192B2 (en) * 2011-05-31 2014-07-15 Red Hat, Inc. Detecting resource consumption events over sliding intervals in cloud-based network
US9245096B2 (en) * 2012-01-24 2016-01-26 International Business Machines Corporation Software license management in a networked computing environment
JP2013190888A (ja) 2012-03-13 2013-09-26 Hitachi Ltd コンピュータリソース管理方法
US9256452B1 (en) * 2012-11-14 2016-02-09 Amazon Technologies, Inc. Providing an instance availability estimate
US9251115B2 (en) * 2013-03-07 2016-02-02 Citrix Systems, Inc. Dynamic configuration in cloud computing environments
US20140282520A1 (en) * 2013-03-15 2014-09-18 Navin Sabharwal Provisioning virtual machines on a physical infrastructure
US9678771B2 (en) * 2013-07-31 2017-06-13 Citrix Systems, Inc. Autonomic virtual machine session lingering of inactive virtual machine sessions by a virtualization computing platform
CN104424013B (zh) * 2013-08-26 2018-03-09 国际商业机器公司 在计算环境中部署虚拟机的方法和设备
US9389900B2 (en) * 2014-04-29 2016-07-12 Vmware, Inc. Method and system for supporting a change in state within a cluster of host computers that run virtual machines
US9459892B2 (en) * 2014-05-05 2016-10-04 International Business Machines Corporation Optimization of virtual machines
US9246828B1 (en) * 2014-06-18 2016-01-26 Juniper Networks, Inc. Traffic-aware sampling rate adjustment within a network device
US9563777B2 (en) * 2015-04-29 2017-02-07 International Business Machines Corporation Security policy generation based on snapshots of similar virtual machines

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058815A (ja) * 2010-09-06 2012-03-22 Hitachi Ltd 計算機システム、及び、計算機システムの制御方法
WO2014136302A1 (ja) * 2013-03-04 2014-09-12 日本電気株式会社 タスク管理装置及びタスク管理方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019192006A (ja) * 2018-04-26 2019-10-31 富士通株式会社 リソース管理装置及びリソース管理プログラム
US11281556B2 (en) 2018-04-26 2022-03-22 Fujitsu Limited Resource management apparatus and resource management method
JP7087634B2 (ja) 2018-04-26 2022-06-21 富士通株式会社 リソース管理装置及びリソース管理プログラム
JP2020064567A (ja) * 2018-10-19 2020-04-23 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法
JP7104327B2 (ja) 2018-10-19 2022-07-21 富士通株式会社 情報処理装置、仮想マシン管理プログラムおよび仮想マシン管理方法

Also Published As

Publication number Publication date
US20160364259A1 (en) 2016-12-15
JP6550945B2 (ja) 2019-07-31
US9940157B2 (en) 2018-04-10

Similar Documents

Publication Publication Date Title
Peng et al. Optimus: an efficient dynamic resource scheduler for deep learning clusters
US10877986B2 (en) Obtaining performance data via an application programming interface (API) for correlation with log data
US11782989B1 (en) Correlating data based on user-specified search criteria
US10592522B2 (en) Correlating performance data and log data using diverse data stores
US10614132B2 (en) GUI-triggered processing of performance data and log data from an information technology environment
US11119982B2 (en) Correlation of performance data and structure data from an information technology environment
US10257275B1 (en) Tuning software execution environments using Bayesian models
CN111263938A (zh) 基于规则的自主数据库云服务框架
US20140324862A1 (en) Correlation for user-selected time ranges of values for performance metrics of components in an information-technology environment with log data from that information-technology environment
US8606905B1 (en) Automated determination of system scalability and scalability constraint factors
US10262265B2 (en) Systems and methods for generating and communicating application recommendations at uninstall time
JP6550945B2 (ja) 判定制御プログラム、判定制御方法及び仮想マシン管理装置
EP3191948A1 (en) Computing instance launch time
US20190073137A1 (en) Real-Time, Self-Learning Automated Object Classification and Storage Tier Assignment
US10013288B2 (en) Data staging management system
EP3861433B1 (en) Upgrades based on analytics from multiple sources
Wang et al. CrowdNet: identifying large-scale malicious attacks over android kernel structures
CN110389817B (zh) 多云系统的调度方法、装置和计算机可读介质
US11206673B2 (en) Priority control method and data processing system
CN112328392A (zh) 一种数据处理方法及相关设备
US20170235608A1 (en) Automatic response to inefficient jobs in data processing clusters
US11343202B1 (en) Managing edge devices based on predicted network bandwidth utilization
US20190146781A1 (en) Dynamic data ingestion
CN109992468B (zh) 一种进程性能分析方法、装置、系统及计算机存储介质
US10311032B2 (en) Recording medium, log management method, and log management apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190527

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190604

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190617

R150 Certificate of patent or registration of utility model

Ref document number: 6550945

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150