JP5206674B2 - 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム - Google Patents

仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム Download PDF

Info

Publication number
JP5206674B2
JP5206674B2 JP2009516265A JP2009516265A JP5206674B2 JP 5206674 B2 JP5206674 B2 JP 5206674B2 JP 2009516265 A JP2009516265 A JP 2009516265A JP 2009516265 A JP2009516265 A JP 2009516265A JP 5206674 B2 JP5206674 B2 JP 5206674B2
Authority
JP
Japan
Prior art keywords
virtual machine
processing
providing server
server
virtual
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.)
Active
Application number
JP2009516265A
Other languages
English (en)
Other versions
JPWO2008146677A1 (ja
Inventor
輝幸 馬場
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2009516265A priority Critical patent/JP5206674B2/ja
Publication of JPWO2008146677A1 publication Critical patent/JPWO2008146677A1/ja
Application granted granted Critical
Publication of JP5206674B2 publication Critical patent/JP5206674B2/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/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/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Description

(関連出願についての記載)
本願は、先の日本特許出願2007−137709号(2007年5月24日出願)の優先権を主張するものであり、前記先の出願の全記載内容は、本書に引用をもって繰込み記載されているものとみなされる。
本発明は仮想マシン管理装置および仮想マシン管理方法に関し、特に複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理装置および仮想マシン管理方法に関する。
従来、単一のサーバ(ワークステーションやパーソナルコンピュータ等のコンピュータ)上で複数のオペレーティングシステム(OS)を動作させることにより、1台のコンピュータを仮想的に複数台のコンピュータとして使うことのできる仮想マシン(VM:Virtual Machine)技術が知られている。この種の技術を適用した製品として、ヴイエムウェア社による「VMWare ESX Server」、マイクロソフト社による「Virtual Server」、および米国Xen Source社による「Xen」などが知られている。これらの製品では、VM生成用のコマンドを発行することにより新たな仮想マシンを、サーバ上に起動することができる。
また、仮想マシン技術を利用したシステムとして、シンクライアントシステムがある。シンクライアントシステムは、複数の社員の業務用コンピュータをサーバ上の仮想マシンに集約し、社員はネットワークを介した端末からこの仮想マシンを操作するシステムである。企業での社員の通常業務は一般的に高性能化したコンピュータに対して使用効率が低いため、社員のコンピュータを仮想マシンとしてサーバに集約することで、コンピュータリソースの使用率向上を図っている。また、サーバ上に各社員の業務データを集約することで情報漏えい防止などのセキュリティを強化することもできる。
また、サーバがネットワークを通じて複数台接続された計算機システムにおいて、或るサーバ上で起動された仮想マシンを他のサーバに移動させる技術が知られている。たとえば、VMwareではvMotion、Xenではmigrationとして仮想マシンの移動機能を提供している。
このようにサーバが複数台に分散した環境において、仮想マシンを新たに起動する場合、特許文献1に記載されるように、リソースに余裕のあるサーバを選択する方法が採用されている。また特許文献1では、新規仮想マシンの起動とは非同期に、既存の仮想マシンの所定時間毎のパフォーマンスを示す実測データに基づいて、各仮想マシンを複数のサーバの何れかで稼動させた場合の各時間における各仮想マシンのパフォーマンス値の合計が最大となる仮想マシンとサーバの組み合わせを算出し、この算出した組合せに対して各仮想マシンの再配置を行うようにしている。
特開2005−115653号公報
以上の特許文献1の開示事項は、本書に引用をもって繰り込み記載されているものとする。以下に本発明による関連技術の分析を与える。
上述したように、仮想マシンの新規起動時、リソースに余裕のあるサーバを選択して仮想マシンを起動する方法では、選択したサーバ毎のリソース余裕度の相違によって仮想マシンの起動時間のばらつきが大きくなるという課題がある。以下、この課題について、図19を参照して具体的に説明する。
図19を参照すると、仮想マシン提供サーバ901が10台存在している。各仮想マシン提供サーバ901には、仮想マシンソフトウェア910がインストールされており、複数の仮想マシン903を起動することができるようになっている。このような計算機システムにおいて、各仮想マシン提供サーバ901に5台ずつ、合計50台の仮想マシンを起動させる際の各仮想マシンの起動時間を見積もる。ここでの計算では、次の条件を仮定する。
仮想マシン提供サーバ901のリソースを100%利用した際の各仮想マシンの起動時間を1分とする。起動後の運用中の仮想マシンには1台当たりサーバリソースの10%を割り当てる。仮想マシンの起動時は、サーバ内の余剰リソースを全て利用することができる。ここでの余剰リソースとは、運用中の仮想マシンに割り当てられたリソース量を除いたリソースを指す。また、同一仮想マシン提供サーバ901上で複数の仮想マシンが起動する際は、余剰リソースを等分して使用する。
このとき、図3に示すようなパターンで仮想マシンの起動要求が発生した場合の各仮想マシンの起動時間を計算する。図3において、横軸は時刻を、縦軸はその時点で生じる仮想マシンの起動要求数を示す。例えば、時刻t3では起動要求数は2であり、時刻t10では起動要求数は5である。
図19の計算機システムでは、起動要求を受け取ると、リソース使用率が低い仮想マシン提供サーバ901上で起動される。このため、仮想マシンを作成する順番は、最初の仮想マシン903−1は仮想マシン提供サーバ901−1に作成され、次の仮想マシン903−2が仮想マシン提供サーバ901−2に作成されるというように順に1台ずつ作成される。仮想マシン903−10が仮想マシン提供サーバ901−10に作成されると、全ての仮想マシン提供サーバ903上に仮想マシンが1台ずつ作成された状態となる。次に仮想マシン903−11を作成する際は、仮想マシン提供サーバ901−1へ戻って作成する。このように、図19の計算機システムでは、仮想マシン提供サーバ901上の仮想マシン数が均一になるように作成される。
各仮想マシン903の起動時間は、図19の表921で示す値となる。仮想マシン903−1から仮想マシン903−10までは、仮想マシン提供サーバ901のリソースを100%利用できるので、1分となる。仮想マシン903−11から仮想マシン903−20までは、既に1台の仮想マシンが運用中であるため、仮想マシン提供サーバ901のリソースの90%を利用する。このため、起動時間は、(1/0.9)分となる。同様に、仮想マシン903−41から仮想マシン903−50までは、既に4台の仮想マシン903が運用中であるため、仮想マシン提供サーバ901のリソースの60%を利用する。このため、起動時間は、(1/0.6)分となる。このように求められる仮想マシンの起動時間の分布を図20に示す。
このように図19の計算機システムによると、複数の仮想マシン提供サーバ901からリソースを均等に利用し、空きリソースが分散するため、上記の例では、6割の仮想マシンで起動時間が無負荷時の1.2倍以上となる。
仮想マシンに限らず一般のコンピュータの場合も同じであるが、起動時間のばらつきや遅延はユーザを苛立たせる原因になるため、できるだけ抑制する必要がある。
本発明の目的は、仮想マシンの起動処理のように、一時的に負荷が増大する処理の処理時間のばらつきを抑えることができる仮想マシン管理装置および方法を提供することにある。
本発明の第1の視点によれば、仮想マシンを稼動させる複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理装置が提供される。この仮想マシン管理装置は、仮想マシン提供サーバの負荷状態を管理する仮想マシン状態管理手段、例えば、仮想マシン状態管理テーブルを備える。また、この仮想マシン管理装置は、該仮想マシン状態管理手段に管理されたデータ、例えば、仮想マシン状態管理テーブルを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散手段を備える。また、この仮想マシン管理装置は、前記仮想マシン状態管理手段に管理されたデータ、例えば、仮想マシン状態管理テーブルを参照して、前記特定処理を終えた仮想マシンを移動させて、仮想マシンを多く集約する仮想マシン提供サーバと少ない仮想マシン提供サーバとに2極化する運用サーバ集約手段とを備える。即ち、前記運用サーバ集約手段は、仮想マシンを多く集約する仮想マシン提供サーバとその他の(仮想マシン数が少ない)仮想マシン提供サーバとに2極化するよう前記特定処理を終えた仮想マシンを他の仮想マシン提供サーバに移動する。
本発明の第2の視点によれば、仮想マシンを稼動させる複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理方法であって、仮想マシン提供サーバの負荷状態を記憶する仮想マシン状態管理手段に記憶されたデータを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散ステップと、前記特定処理を終えた仮想マシンを(他の仮想マシン提供サーバに)移動させて、仮想マシンを多く集約する仮想マシン提供サーバとその他の仮想マシン提供サーバとに2極化する運用サーバ集約ステップとを含む仮想マシン管理方法が提供される。
本発明の第3の視点によれば、仮想マシンを稼動させる複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理装置を構成するコンピュータを、仮想マシン提供サーバの負荷状態を記憶する仮想マシン状態管理手段に記憶されたデータを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散手段と、前記仮想マシン状態管理手段に記憶されたデータを参照して、前記特定処理を終えた仮想マシンを(他の仮想マシン提供サーバに)移動させて、仮想マシンを多く集約する仮想マシン提供サーバと少ない仮想マシン提供サーバとに2極化する運用サーバ集約手段として機能させる仮想マシン管理プログラムが提供される。
ここで、特定処理の一例は仮想マシンの起動処理であるが、それだけに限定されるものではない。
本発明によれば、仮想マシンの起動処理のように、一時的に負荷が増大する特定処理の処理時間のばらつきを抑えることができる。その理由は、特定処理を終えた仮想マシンを移動させて、仮想マシンを多く集約する仮想マシン提供サーバと少ない仮想マシン提供サーバとに2極化し、その後に特定処理が発生した場合に、できるだけ多くの特定処理を、仮想マシンの存在しない或いは少ない仮想マシン提供サーバ上で実行できるようにしているためである。
本発明の第1の実施形態の構成を示すブロック図である。 本発明の第1の実施形態の動作を示すフローチャートである。 仮想マシンの起動パターンの例である。 本発明の第1の実施形態の動作を具体的に説明するための図である。 本発明の第1の実施形態の動作を具体的に説明するための図である。 本発明の第1の実施形態の動作を具体的に説明するための図である。 本発明の第1の実施形態を利用した場合の仮想マシンの起動時間分布の例である。 本発明の第1の実施形態の動作を具体的に説明するための図である。 本発明の第2の実施形態の構成を示すブロック図である。 本発明の第2の実施形態の動作を示すフローチャートである。 仮想マシンの起動パターンの別の例である。 本発明の第2の実施形態の動作を具体的に説明するための図である。 本発明の第3の実施形態の構成を示すブロック図である。 本発明の第3の実施形態の動作を示すフローチャートである。 本発明の第3の実施形態の動作を具体的に説明するための図である。 本発明の第4の実施形態の構成を示すブロック図である。 仮想マシンの起動パターンの他の例である。 本発明の第4の実施形態の動作を示すフローチャートである。 本発明に関連する技術の動作を説明するための図である。 本発明に関連する技術を利用した場合の仮想マシンの起動時間分布の例である。
符号の説明
1、2、3、4 仮想マシン管理システム
11 処理要求受付手段
12 処理実行通知手段
13 実行サーバ分散手段
14 処理完了確認手段
15 移動通知手段
16 運用サーバ集約手段
17 パターン分析手段
20 処理方式選択手段
21 処理待ちキュー
22 処理時間計算手段
23 処理時間比較手段
24 選択手段
31 分散的処理指定テーブル
32 仮想マシン状態管理テーブル
33 仮想マシン数指定テーブル
34 要求パターンテーブル
90 仮想マシン提供サーバ
91 仮想マシン
92 仮想化ソフトウェア
93 ネットワーク
94 クライアント端末
901 仮想マシン提供サーバ
903 仮想マシン
904 ネットワーク
911 性能モニタ手段
910 仮想化ソフトウェア
912 リソース管理手段
913 仮想マシン管理手段
次に、本発明の実施形態について図面を参照して詳細に説明する。
図1を参照すると、本発明の第1の実施形態に係る計算機システムは、仮想マシン管理システム1と、複数の仮想マシン提供サーバ90と、複数のクライアント端末94とがネットワーク93を通じて相互に接続されている。
各々の仮想マシン提供サーバ90は、仮想マシン91と仮想化ソフトウェア92とを有する。
仮想マシン管理システム1は、分散的に実行する特定処理を指定する分散的処理指定テーブル31と、クライアント端末94から処理要求を受け付け、要求処理が特定処理かどうかを判断する処理要求受付手段11と、特定処理を実行する仮想マシン91を分散させるように実行サーバを決定する実行サーバ分散手段13と、仮想マシン91または仮想化ソフトウェア92へ処理の実行命令を通知する処理実行通知手段12と、仮想マシン91が動作している仮想マシン提供サーバ90と仮想マシン91の状態を管理する仮想マシン状態管理テーブル32と、特定処理実行後の通常運用中仮想マシンを集約するように仮想マシン91の配置を決定する運用サーバ集約手段16と、仮想マシン91で特定処理が完了したことを確認する処理完了確認手段14と、仮想化ソフトウェア92へ仮想マシンの移動命令を通知する移動通知手段15とから構成されている。
分散的処理指定テーブル31は、分散的に実行しようとする特定処理を登録する。分散的に処理しようとする特定処理の例としては、図1中に示すように、一時的に処理が増大するような仮想マシン起動やFTP(File Transfer Protocol)がある。他にも、ウィルスチェック、データのバックアップ、ログの解析、企業における売上データや受注データの集計処理など一定期間ごとに大量のデータを集めて処理するようなバッチ処理もある。
処理要求受付手段11は、クライアント端末94から処理要求を受け付け、分散的処理指定テーブル31を参照して、要求処理が分散的に処理すべき特定処理かどうかを判断する。
仮想マシン状態管理テーブル32は、仮想マシン91が動作している仮想マシン提供サーバ90と仮想マシン91の状態を登録する。状態には、図1中に示すように、運用中、処理中(指定処理の実行中)などの種類がある。他にも登録される状態としては、仮想マシンがどの仮想マシン提供サーバ上に存在するかの関係と、仮想マシンが特定処理を実行中か否かを示す情報が分かればよく、複数のテーブルとして登録することもできる。
実行サーバ分散手段13は、仮想マシン状態管理テーブル32を参照して、特定処理を実行する仮想マシン91を分散させるように実行サーバ(その特定処理を実行させる仮想マシン提供サーバ90)を決定する。
処理実行通知手段12は、実行サーバ分散手段13が決定する仮想マシン提供サーバ90に対して特定処理の実行命令を通知する。
処理完了確認手段14は、仮想マシン91で特定処理が完了したことを確認する。処理完了を確認する方法としては、仮想マシン91内での処理をモニタし、処理が完了すると仮想マシン管理システム1へ通知するソフトウェアを仮想マシン91内で動作させておく方法がある。他にも、特定処理が仮想マシン起動の場合は、仮想化ソフトウェア92が仮想マシン91の起動完了を仮想マシン管理システム1に通知する方法がある。
運用サーバ集約手段16は、特定処理実行後の通常運用中仮想マシンを集約するように仮想マシン91の配置を決定する。決定方法としては、仮想マシン状態管理テーブル32を参照して、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、仮想マシン数が予め定められた最大数に達していない仮想マシン提供サーバに特定処理終了後の仮想マシンを移動させる方法がある。または、仮想マシン状態管理テーブル32において仮想マシン91ごとのリソース使用率を保持しておき、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、各仮想マシン提供サーバに対して定められた上限リソース値を超えない範囲で、リソース使用率が上限に達していない仮想マシン提供サーバに特定処理終了後の仮想マシンを移動させる方法がある。
移動通知手段15は、運用サーバ集約手段16が決定する仮想マシンの配置に従い、仮想化ソフトウェア92へ仮想マシンの移動命令を通知する。
次に、図2のフローチャートを参照して、クライアント端末94から仮想マシンの起動に係る処理要求が発生した場合の本実施形態の動作について詳細に説明する。
まず、ステップS101で、処理要求受付手段11が、クライアント端末94から処理要求を受け付ける。
次に、ステップS102で、処理要求受付手段11が、受け付けた処理要求が分散的処理指定テーブル31に登録されているかどうかを判断する。分散的処理指定テーブル31に登録された処理の場合は、ステップS103以降を実行する。図1の分散的処理指定テーブル31を参照すると、特定処理として「仮想マシン起動」が登録されているため、ステップS103以降を実行する。なお、分散的処理指定テーブル31に登録されていない処理要求についての処理方法は任意で良く、本発明とは直接関係しないのでその説明は省略する。
次に、ステップS103で、実行サーバ分散手段13が、仮想マシン状態管理テーブル32を参照して、運用中及び指定処理実行中の仮想マシン数が少ない仮想マシン提供サーバ90を処理実行サーバとして指定する。仮想マシン状態管理テーブル32に各仮想マシンのリソース使用量を登録しておき、ステップS103での選択は、リソース使用量の少ないサーバを選択する方法もある。このとき、予め定められた仮想マシン数及びリソース使用量の上限を超えないよう仮想マシンの配置を選択する。
次に、ステップS104で、処理実行通知手段12が、実行サーバ分散手段13で決定したサーバへネットワーク93を介して処理の実行要求を通知する。処理の実行要求が通知された仮想マシン提供サーバ90では、仮想化ソフトウェア92の制御の下に、新たな仮想マシン91を生成する処理が開始される。
次に、ステップS105で、実行サーバ分散手段13が、仮想マシン状態管理テーブル32に、新規仮想マシンを起動中状態として追加する。
次に、ステップS106で、処理完了確認手段14が、要求した処理を完了した仮想マシン91から、処理完了通知を受け取る。このとき、運用サーバ集約手段16は、仮想マシン状態管理テーブル32を更新して、起動中状態であった新規仮想マシンの状態を運用中に変更する。
次に、ステップS107で、運用サーバ集約手段16が、仮想マシン状態管理テーブル32を参照して、運用中の仮想マシン91を集約するように、仮想マシン91を移動するサーバを指定する。
次に、ステップS108で、移動通知手段15が、運用サーバ集約手段16で決定したサーバの仮想化ソフトウェア92へ仮想マシンの移動を通知する。
次に、ステップS109で、仮想化ソフトウェア92が指定された仮想マシン91を移動する。
最後に、ステップS110で、運用サーバ集約手段16が、仮想マシン91の移動にあわせて仮想マシン状態管理テーブル32を更新する。
次に、発明が解決しようとする課題を説明する際に想定した図3に示す仮想マシンの起動要求パターンに対する本発明の第1の実施形態の動作を図4〜図6を参照してより具体的に説明する。
図4〜図6は、各仮想マシン提供サーバ90上に存在する仮想マシン91と、各仮想マシン91に割り当てたリソース量を時刻ごと(t1−t18)に示す。横軸は仮想マシン提供サーバ90を表す。縦軸は各仮想マシン91のリソース使用率を表す。また、各仮想マシン提供サーバ90のリソース使用の上限を仮想マシン数にして「5台」としている。
ステップS101で、図3に示す起動要求パターンの時刻t1では、処理要求受付手段11は、1台の仮想マシンの起動要求を受け付ける。
ステップS102で、分散的処理指定テーブル31を参照すると、特定処理として「仮想マシン起動」が登録されているため、ステップS103以降を実行する。
ステップS103で、時刻t1の場合は、実行サーバ分散手段13は、仮想マシン数が最も少ない仮想マシン提供サーバとして仮想マシン提供サーバ90−1を選択する。時刻t1の時点では、全ての仮想マシン提供サーバ上に仮想マシンは存在しないため、いずれの仮想マシン提供サーバを選択してもよいが、ここでは、仮想マシン提供サーバ90−1を選択したとして説明する。
ステップS104で、処理実行通知手段12は、仮想マシン提供サーバ90−1へ仮想マシン91−1の起動を通知する。
ステップS105で、実行サーバ分散手段13が、仮想マシン状態管理テーブル32に、仮想マシン91−1が仮想マシン提供サーバ90−1で起動中であることを登録する。処理実行通知を受けた仮想マシン提供サーバ90−1では、仮想マシン91−1を起動する。このとき図4〜図6のt1の仮想マシン提供サーバ使用状況に示すように、仮想マシン91−1は仮想マシン提供サーバ90−1のリソースの100%を使用する。
ステップS106で、時刻t1の時点では、仮想マシン提供サーバ90−1の仮想化ソフトウェア92−1が、処理完了確認手段14へ仮想マシン91−1の起動完了を通知する。
ステップS107で、時刻t1の時点では、仮想マシン提供サーバ90−1にのみ仮想マシンが存在するので、仮想マシン提供サーバ90−1へ仮想マシンを集約するように仮想マシンの配置を決定する。時刻t1では、仮想マシン91−1は既に仮想マシンサーバ90−1で動作しているため、移動要求は生じない。
ステップS108で、時刻t1では、運用サーバ集約手段16で仮想マシンの移動要求は生じなかったため、ステップS108での移動通知も行わない。
ステップS109で、時刻t1では、運用サーバ集約手段16で仮想マシンの移動要求は生じなかったため、ステップS109での仮想マシンの移動も行わない。
ステップS110で、時刻t1では、仮想マシン91−1が仮想マシン提供サーバ90−1上で運用中であることを仮想マシン状態管理テーブル32へ登録する。
続いて時刻t2の場合について、図4〜図6の仮想マシン提供サーバのリソース使用率を参照して説明する。
ステップS101で、図3に示す起動要求パターンの時刻t2では、処理要求受付手段11は、1台の仮想マシンの起動要求を受け付ける。
ステップS102で、分散的処理指定テーブル31を参照すると、特定処理として「仮想マシン起動」が登録されているため、ステップS103以降を実行する。
ステップS103で、時刻t2の場合は、実行サーバ分散手段13は、仮想マシン数が最も少ない仮想マシン提供サーバとして仮想マシン提供サーバ90−2を選択する。時刻t2の時点では、仮想マシン提供サーバ90−1に仮想マシン91−1が存在しているため、仮想マシン数が少ない仮想マシン提供サーバ90−2を選択する。仮想マシン提供サーバ90−1以外であれば、いずれの仮想マシン提供サーバを選択してもよいが、ここでは、仮想マシン提供サーバ90−2を選択したとして説明する。
ステップS104で、処理実行通知手段12は、仮想マシン提供サーバ90−2へ仮想マシン91−2の起動を通知する。
ステップS105で、実行サーバ分散手段13が、仮想マシン状態管理テーブル32に、仮想マシン91−2が仮想マシン提供サーバ90−2で起動中であることを登録する。処理実行通知を受けた仮想マシン提供サーバ90−2では、仮想マシン91−2を起動する。このとき図4〜図6のt2の仮想マシン提供サーバ使用状況に示すように、仮想マシン91−2は仮想マシン提供サーバ90−2のリソースの100%を使用する。
ステップS106で、時刻t2では、仮想マシン提供サーバ90−2の仮想化ソフトウェア92−2が、処理完了確認手段14へ仮想マシン91−2の起動完了を通知する。
ステップS107で、時刻t2では、運用サーバ集約手段16が、仮想マシン状態管理テーブル32を参照すると、仮想マシン提供サーバ90−1で仮想マシン91−1が運用中、仮想マシン提供サーバ90−2で仮想マシン91−2が起動中であることがわかる。運用サーバ集約手段16は、起動処理が終了した通常運用中の仮想マシンを仮想マシンの数が少ない仮想マシン提供サーバに集約するように仮想マシンの配置を決定するので、時刻t2では、仮想マシン91−2を仮想マシン提供サーバ90−2から仮想マシン提供サーバ90−1への移動を決定する。
ステップS108で、移動通知手段15が、ステップS107で運用サーバ集約手段16が決定した仮想マシン91−2を仮想マシン提供サーバ90−2から仮想マシン提供サーバ90−1への移動をするために、仮想マシン提供サーバ90−1と仮想マシン提供サーバ90−2へ仮想マシン91−2の移動命令を通知する。
ステップS109で、仮想マシン提供サーバ90−1と仮想マシン提供サーバ90−2の仮想化ソフトウェア92−1、92−2が連携して仮想マシン91−2を移動する。図4〜図6では、この移動を矢印で表す。
最後に、ステップS110で、運用サーバ集約手段16が、仮想マシン状態管理テーブル32内の仮想マシン91−2の状態を仮想マシン提供サーバ90−1上で運用中に更新する。
ここで、仮想マシンの移動に際しては、VMWareのVmotionや、XenのLive migrationのように仮想マシン上のサービスを無停止で移動を可能にする技術が存在する。このため、仮想マシンの起動直後に、ユーザに対するサービスの提供を開始することで、仮想マシンの移動時間を意識しないで仮想マシンサービスを提供することが可能である。
また、時刻tiで起動した仮想マシンの移動が、次の時刻ti+1までに完了するならば、次の時刻ti+1における仮想マシンの起動を直ちに開始することができる。たとえば、図4〜図6の時刻t2で仮想マシン提供サーバ90−2上で起動した仮想マシン91−2を仮想マシン提供サーバ90−1へ移動させる処理が時刻t3までに完了すれば、時刻t3で受け付けた仮想マシン要求に従って、仮想マシン提供サーバ90−2上に仮想マシン91−3を直ちに起動することができる。
時刻t3以降も上記で説明したt1、t2の場合と同じように、仮想マシンの起動要求に対して、ステップS101からステップS110を繰り返す。t1からt18までの仮想マシン提供サーバと仮想マシンの関係を図4〜図6に示す。
t1、t2は仮想マシンの起動要求が1台の場合であったが、時刻t3のように複数の仮想マシン要求を受け付けた場合は、ステップS103で、できる限り異なる仮想マシン提供サーバで起動させることで起動時に利用できるリソース量を大きくする。例えば、図3の要求パターンで時刻t3の場合は、要求数は2である。このときの仮想マシンの配置は図4〜図6の仮想マシン提供サーバ使用状況表(t3)に示すように仮想マシン91−3は仮想マシン提供サーバ90−2で、仮想マシン91−4は仮想マシン提供サーバ90−3で起動することになる。さらに、仮想マシン91−3、91−4は起動が完了し、運用状態になると、ステップS107において、集約されるように仮想マシン提供サーバ90−1への移動を指定する。
図4〜図6に示した仮想マシン提供サーバと仮想マシンの関係から、各仮想マシンが起動の際に利用できるリソース量をもとに仮想マシンの起動時間を計算し、求めた仮想マシン起動時間の分布を図7に示す。仮想マシンの起動時間の計算は、リソースを100%使用できる場合の起動時間を1分と仮定し、起動時間は利用できるリソース量に反比例するとした。例えば、時刻t13で仮想マシン91−39は70%のリソースを利用できるため、起動時間は1/0.7=1.43(分)となる。
図7に示す本実施形態による仮想マシン起動時間の分布を参照すると、仮想マシンの起動時間の平均値が小さくなり、仮想マシン提供サーバのリソースを100%利用した際の最適値である1分で起動する仮想マシン数が図20に示す関連技術の結果より、増えていることがわかる。また、全ての仮想マシンにおける平均起動時間も図20に示す関連技術より短縮できる。
以上のように、仮想マシンの起動のように処理負荷が一時的に増大する特定処理を複数の仮想マシンで同時に実行する際に、運用サーバ集約手段16が特定処理を終了した通常運用の仮想マシンを集約することで、空きリソースを集約させ、この集約された空きリソースを効率的に利用するように実行サーバ分散手段13が特定処理を実行する仮想マシンを、空きリソースを有する仮想マシン提供サーバに分散させることで、仮想マシンの起動時間のばらつきを抑えることができるようになる。
上記の説明では、仮想マシン数を集約するとして説明したが、仮想マシンを集約することは空きリソースを集約することと等価であるため、運用サーバ集約手段16は、空きリソースを集約させると理解することもできる。
本説明では、実行サーバ分散手段13で実行する仮想マシン提供サーバを分散させる特定処理を「仮想マシンの起動」として説明したが、本発明の効果は、一時的に負荷が増大する処理のために、空きリソースを集約しておき、この特定処理を実行する際に実行サーバ分散手段13で処理を分散的に実行することにより得られるため、特定処理は上記で説明した仮想マシンの起動のみに限るものではなく、一時的に負荷が増大する処理であれば何でもよい。このような処理の他の例として、本実施形態では、FTP(File Transfer Protocol)を例示している。
特定処理がFTPの場合、FTPの処理を実行させる仮想マシンを負荷の少ない仮想マシン提供サーバに移動させ、FTPの実行を終えたら再び集約する。たとえば、図4〜図6の時刻t3によって起動された仮想マシン91−3、91−4を含め、4台の仮想マシン91−1〜91−4が仮想マシン提供サーバ90−1に集約されている状態で、2つのFTP要求が発生した場合、たとえば仮想マシン91−3に1つのFTP処理を割り当て、仮想マシン91−4に残りの1つのFTP処理を割り当て、仮想マシン91−3はたとえば仮想マシン提供サーバ90−2に移動させてFTP処理を実行させ、仮想マシン91−4はたとえば仮想マシン提供サーバ90−3に移動させてFTP処理を実行させ、FTP処理を終えると、仮想マシン91−3、91−4を仮想マシン提供サーバ90−1に再び集約させる。
また、本説明では、各仮想マシン提供サーバのリソース使用の上限を仮想マシン数で指定したが、リソースの使用の上限を指定する方法は他の方法でもよい。例えば、仮想マシン提供サーバのリソース使用率の上限を与えてもよい。このようにリソース使用率で与える場合は、仮想マシンごとに使用を許可するリソース量が異なる状況でも、仮想マシン提供サーバのリソース使用量が偏ることを防ぐことができる。
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。
図9を参照すると、本発明の第2の実施形態に係る計算機システムは、図1に示す第1の実施形態と比較して、仮想マシン管理システム1の代わりに仮想マシン管理システム2を備えている点で相違する。また、仮想マシン管理システム2は、仮想マシン管理システム1と比較して、仮想マシン数指定テーブル33をさらに有する点で相違する。
仮想マシン数指定テーブル33は、時刻ごとに仮想マシン提供サーバ90内に作成可能な仮想マシンの最大数を登録したテーブルである。図9の仮想マシン数指定テーブル33では、時刻t1からt16までは各仮想マシン提供サーバ90では4台までの仮想マシンを作成可能であり、t17以降は、各仮想マシン提供サーバでは5台までの仮想マシンを作成可能であることを示している。この仮想マシン数指定テーブル33は、運用サーバ集約手段16で仮想マシンを集約する際の集約できる仮想マシン数の上限となる。各時刻ごとにどのような値の最大仮想マシン数を登録するかは、各時刻における処理要求パターンに基づいて事前に決定される。本実施形態においてはその決定方法は任意である。後述する第3の実施形態では、その決定を自動的に行っている。
次に、図10のフローチャートを参照して第2の実施形態の動作を説明する。
図10を参照すると、第2の実施形態の動作は、図2に示した第1の実施形態の動作のステップS107を、ステップS201、S202に置き換えたものである。ここでは、図2と異なる動作であるステップS201、ステップS202のみについて説明する。
ステップS106までの動作で既に仮想マシンの起動は完了し、その完了確認まで終了している。
続いて、ステップS201では、運用サーバ集約手段16が、仮想マシン数指定テーブル33を参照して、時刻から各仮想マシン提供サーバ90上に構成可能な最大仮想マシン数を取得する。
次に、ステップS202では、運用サーバ集約手段16が、サーバで提供可能な仮想マシン数内に仮想マシンを集約するように移動先のサーバを指定する。仮想マシン数指定テーブル33に登録された値が上限仮想マシン数ではなく、リソースの上限使用量であった場合は、リソース上限使用量を超えないように仮想マシンを集約するように移動先のサーバを指定する。
ステップS202終了後は、第1の実施形態と同様にステップS108以降を実行する。
図11のような仮想マシンの要求パターンの場合について、さらに具体的に動作を説明する。図11の要求パターンは、図3の要求パターンの時刻t18の後に、さらに時刻t19と時刻t20としてそれぞれ仮想マシン5台の要求を追加したものである。総仮想マシン数が10台増加するため、仮想マシン提供サーバ90を2台追加し、仮想マシン提供サーバ90を合計12台利用した状態を想定して以下では説明を行う。図12は、時刻t19およびt20における仮想マシン提供サーバ90と仮想マシン91の関係を示した図である。
時刻t18までは、第1の実施の形態と同様に動作する。ただし、時刻t16までは、各仮想マシン提供サーバ90の上限仮想マシン数は4であるため、ステップS202で各仮想マシン提供サーバ90での上限仮想マシン数を4として、仮想マシン91の配置を決定する。このため、時刻t16終了時点では、12台全ての仮想マシン提供サーバ90に仮想マシン91が4台ずつ存在する。時刻t17、t18では、仮想マシン91の要求は1台ずつであるため、それぞれ、仮想マシン提供サーバ90−1、90−2で起動、運用する。
時刻t19では、仮想マシンの要求数が5となる。このため、ステップS103で実行サーバ分散手段13が、空きリソースがある仮想マシン提供サーバ90−3〜90−12の中から、処理を分散させるために5台(図12の例では、仮想マシン提供サーバ90−3〜90−7)を選択する。時刻t20でも同様に仮想マシンの要求数が5となる。このため、ステップS103で実行サーバ分散手段13が、空きリソースがある仮想マシン提供サーバ90−8〜90−12の中から、処理を分散させるために5台(図12の例では、仮想マシン提供サーバ90−8〜90−12)を選択する。
次に本発明の第2の実施形態の効果について説明する。
本実施形態によれば、時刻により仮想マシン提供サーバ90上の仮想マシン数の上限を変更させるための仮想マシン数指定テーブル33を有し、仮想マシン提供サーバ90上の仮想マシン数の上限を時刻により変更させるため、図11の時刻t9、t10と時刻t19、t20のように、複数の要求ピークが存在する場合でも負荷を分散させて仮想マシン90を起動させることができる。このため、第1の実施形態と比べて、要求パターンが複数ピークを持つ場合でも仮想マシンの起動時間を短縮することが可能となる。
具体的には、第1の実施形態では、図11のような仮想マシン起動要求パターンの場合は、時刻t19、t20での仮想マシンの起動時のリソース使用状況は、図8のようになり、起動時の仮想マシンのリソース使用量が少なく、起動に時間がかかる。しかし、第2の実施形態では、図12に示すように、時刻t19、t20の時点でも、各仮想マシンの起動時のリソース使用量は第1の実施形態より多く、各仮想マシンの起動時間を短縮することができる。
図9では、全ての仮想マシン提供サーバ90の上限仮想マシン数は同じとして、仮想マシン数指定テーブル33の例を示したが、各仮想マシン提供サーバ90の上限仮想マシン数を異なる値として登録することも可能である。また、各仮想マシン提供サーバ90で上限仮想マシン数を切り替える時刻として異なった時刻を登録することも可能である。
また、仮想マシン数指定テーブル33には、時刻ではなく、運用中の仮想マシン数別に上限仮想マシン数を登録することも可能である。その場合、図10のステップS201は、運用サーバ集約手段16が仮想マシン状態管理テーブル32を参照して存在する総仮想マシン数を取得し、この取得した総仮想マシン数に対応する上限仮想マシン数を仮想マシン数指定テーブル33から取得する処理に変更される。
また、仮想マシン数指定テーブル33には、各仮想マシン提供サーバ90の上限仮想マシン数ではなく、各仮想マシン提供サーバ90のリソースの上限使用率を登録し、運用サーバ集約手段16でリソース使用率にもとづき仮想マシンを集約することも可能である。
次に、本発明の第3の実施形態について図面を参照して詳細に説明する。
図13を参照すると、本発明の第3の実施形態に係る計算機システムは、図9に示す第2の実施形態と比較して、仮想マシン管理システム2の代わりに仮想マシン管理システム3を備えている点で相違する。また、仮想マシン管理システム3は、仮想マシン管理システム2と比較して、要求パターンテーブル34とパターン分析手段17とをさらに有する点で相違する。
要求パターンテーブル34は、分散的処理指定テーブル31に登録された特定処理の要求発生の時刻分布を表す。図13の要求パターンテーブル34の例では、時刻t1、t2、t3、t4に、仮想マシンの起動要求がそれぞれ、1、1、2、2あることを表している。このような要求パターンテーブル34は、たとえば過去の要求ログに基づいて作成することができる。
パターン分析手段17は、要求パターンテーブル34を参照して、その処理要求の分布から、仮想マシン数指定テーブル33を作成する。
第3の実施形態の動作は、処理要求の受付から仮想マシンの作成、移動までは、図10を用いて説明した第2の実施形態の動作と同じである。第3の実施形態では、新たに、パターン分析手段17が仮想マシン数指定テーブル33を作成する動作が加わる。そこで、ここでは、第3の実施形態の動作としてパターン分析手段17が仮想マシン数指定テーブル33を作成する動作を図14及び図15を参照して説明する。
ステップS301では、パターン分析手段17が、要求パターンテーブル34から、時刻と処理要求数のデータを取得する。
ステップS302では、パターン分析手段17が、要求パターンテーブル34から、要求数の極小値を抽出する。例えば、図11のような要求パターンの場合は、極小値として、時刻t1のときの要求数1、時刻t17のときの要求数1、t21のときの要求数0を抽出する。
ステップS303では、パターン分析手段17が、要求パターンテーブル34から、極小値をとる時刻ごとに累積要求数を求める。図11の例では、図15に示すように、時刻t1から時刻t16までの累積要求数として要求群51内の要求数として48を求めることができる。同様に、t21の時点での累積要求数として、要求群1と要求群2の要求数の和として要求数60を求めることができる。
ステップS304では、パターン分析手段17が、ステップS302で抽出した時刻に対して、累積要求数から計算式に従い、サーバ当たりの仮想マシン数を計算する。計算式としては、例えば、図15に示すように、(仮想マシン提供サーバ当たりの上限仮想マシン数)=(累積要求数)/(仮想マシン提供サーバ数)で求めることができる。例えば、仮想マシン提供サーバ数が12台とすると、時刻t1から時刻t16までの累積要求数48を12で割った解として上限仮想マシン数が4台と求まる。また、時刻t17以降では、累積要求数60を12で割った解として上限仮想マシン数が5台と求まる。
次に本発明の第3の実施形態の効果について説明する。
前述した第2の実施形態では、仮想マシン数指定テーブル33に登録する上限仮想マシン数が予め与えられる必要があった。しかし、第3の実施形態では、パターン分析手段17が要求パターンテーブル34から仮想マシン数指定テーブル33を作成することができるため、過去のログなどから容易に入手できる要求パターンテーブル34を登録するだけで、自動的に仮想マシン数指定テーブル33を作成することができる。
要求パターンテーブル34としては、過去の要求ログを利用できる他、仮想マシンの起動であれば、仮想マシンの起動は社員の出社後すぐに行われると想定されるため、社員の入場記録などを利用することもできる。
仮想マシン数指定テーブル33に登録する上限値がリソース使用量の場合は、パターン分析手段17は、要求パターンテーブル34から処理要求数の極小値を求め、この極小値をとる時刻までの累積要求数を求め、この累積要求数に割り当てる運用中のリソース量の総和を仮想マシン提供サーバ数で除算した解を、その時刻での仮想マシン提供サーバ当たりの上限リソース使用量として求めることができる。
次に本発明の第4の実施形態について図面を参照して詳細に説明する。
図16を参照すると、本発明の第4の実施形態に係る計算機システムは、図1に示す第1の実施形態と比較して、仮想マシン管理システム1の代わりに仮想マシン管理システム4を備えている点で相違する。また、仮想マシン管理システム4は、仮想マシン管理システム1と比較して、処理方式選択手段20をさらに有する点で相違する。
処理方式選択手段20は、処理待ちキュー21と、処理時間計算手段22と、処理時間比較手段23と、選択手段24とで構成される。
処理待ちキュー21は、処理要求受付手段11で受け付けた処理要求を一時的に保持する。
処理時間計算手段22は、処理待ちキュー21に保持するすべての処理要求を同時に実行要求する場合と、待ちの処理要求を何回かに分けて実行要求する場合それぞれについて処理実行時間を計算する。さらに、処理要求を分割する回数を複数種類の処理要求通知パターンで計算することもできる。たとえば、処理待ちキュー21に待ち数が6あった場合に、一度に6要求を出す場合、3要求ずつ2回出す場合、2要求ずつ3回出す場合、1回目は1要求、2回目は2要求、3回目は3要求と各回異なる要求数とする場合など複数パターンで処理時間を計算することも可能である。また、各仮想マシン提供サーバ上で起動中である仮想マシン数が常に1台となるように仮想マシンの起動要求を逐次的に実行要求する場合も1パターンとして考慮して良い。さらに、運用サーバ集約手段16で行われる処理を実行する場合、実行しない場合に分けて処理時間を計算することも可能である。
処理時間比較手段23は、処理時間計算手段22で計算された複数の処理要求通知パターンでの処理時間を比較する。例えば、仮想マシンの起動までに要する時間の平均値を比較する。他にも、仮想マシンの起動時間のばらつき(分散値)や、仮想マシンの起動時間の最悪値を比較してもよい。
選択手段24は、処理時間比較手段23で比較した結果に従い、例えば、仮想マシンの起動までに要する時間の平均が最小の処理要求通知パターンを選択する。他にも、仮想マシンの起動時間のばらつき(分散値)が最小のパターンを選択する方法や、仮想マシンの起動時間の最悪値を最小にするパターンを選択してもよい。
次に本発明の第4の実施形態の動作について図17、図18を参照して説明する。図17は仮想マシン起動要求パターンの一例である。図3と比較して、時刻t14でバースト的に要求が増加している点が特徴である。
図18は本発明の第4の実施形態の動作を示すフローチャートである。以下では、図18を参照して一般的な動作を説明する。これと同時に、図17のt14の時点での動作を具体例として説明する。
ステップS401では、処理要求受付手段11が処理要求を処理待ちキュー21へ登録する。例えば図17の時刻t14の場合は、6件の処理要求を処理待ちキュー21へ登録する。
ステップS402では、処理時間計算手段22が、処理方式ごとの処理時間を計算する。例えば、図17の時刻t14の場合に対しては、6件の要求を1回に同時に処理要求として通知する場合と、各仮想マシン提供サーバ上で起動中である仮想マシン数が常に1台となるように仮想マシンの起動要求を逐次的に通知する場合の2通りを計算したとする。t14の開始時点では、図4〜図6のt14の状態から、t14のタイムスロットの始まりでは仮想マシン提供サーバ90−9には運用中仮想サーバ1台、仮想マシン提供サーバ90−10には運用中仮想サーバが無いことが分かる。この状態で6件の要求を同時に処理しようとすると、仮想マシン提供サーバ90−9、90−10上にそれぞれ3台の仮想マシンを起動することになる。この際の起動時間は、仮想マシン提供サーバ90−9上では、仮想マシン1台当たり30%のリソースを利用できるので、3.3分となる。また、仮想マシン提供サーバ90−10上では、仮想マシン1台当たり33%のリソースを利用できるので、3.0分となる。したがって、6台全ての仮想マシンの起動時間の平均は、3.15分となる。
一方、仮想マシン起動要求を逐次的に処理する場合は、最初の2台を仮想マシン提供サーバ90−9,90−10で1台ずつ起動することで、それぞれ、90%と100%のリソースを利用できる。このため、起動時間はそれぞれ1.1分と1分となる。次の2台も仮想マシン提供サーバ90−9,90−10で前の仮想マシンの起動終了かつ移動後に1台ずつ起動することで、それぞれ、80%と90%のリソースを利用できる。このため、起動時間はそれぞれ1.3分と1.1分となる。処理待ちキュー21での滞在時間を含めると、2.4分と2.1分となる。最後の2台も仮想マシン提供サーバ90−9,90−10で1台ずつ起動することで、それぞれ、70%と80%のリソースを利用できる。このため、起動時間はそれぞれ1.4分と1.3分となる。処理待ちキュー21での滞在時間を含めると、3.8分と3.4分となる。このように処理待ちキュー21で要求を待たせて逐次的に処理する場合は、時刻t14で受け付けた6件の仮想マシン起動要求の平均起動時間は、2.3分と計算できる。ここでは仮想マシンの移動に要する時間を無視したが、精度を高めるためには移動に要する時間を考慮する必要がある。
ステップS403では、処理時間比較手段23が、処理時間計算手段21が計算した処理方式ごとの処理時間を比較する。例えば、図17の時刻t14の場合は、6件全て同時処理の場合と逐次的に処理する場合それぞれの仮想マシン起動時間の平均値を比較する。今、比較の結果、平均起動時間が短いのが、逐次的に処理する方法であったとする。
ステップS404では、選択手段24が、処理時間の平均が小さい方式を実行サーバ分散手段13と運用サーバ集約手段16へ通知する。例えば、図17の時刻t14の場合は、平均起動時間が短い、処理待ちキュー21に処理を待たせ逐次的に処理する方法を選択する。
ステップS405では、選択手段24が、処理待ちキュー21から処理要求を取り出し、実行サーバ分散手段13へ処理要求を通知する。例えば、図17の時刻t14の場合は、逐次的に処理する方法を選択したので、最初は処理待ちキュー21から2件の処理要求を取り出し、実行サーバ分散手段13へ処理依頼として通知する。その後も、処理要求を処理待ちキュー21から取り出し、実行サーバ分散手段13へ処理依頼として通知する。
ステップS406では、処理待ちキュー21が空か判断する。処理待ちキュー21にまだ要求処理が残っている場合は、ステップS402から動作を繰り返す。処理待ちキュー21が空の場合は、再度ステップS401での処理要求の到着を待つ。例えば、図17の時刻t14の場合は、タイムスロットの最初の時点で処理待ちキュー21に6件登録される。処理完了確認手段14が、仮想マシンの起動終了を確認するたびに、処理待ちキュー21が空であるか確認し、処理待ちキュー21に処理が存在する場合は、ステップS402以降を再度実行する。
次に本発明の第4の実施形態の効果を説明する。
前述した第1の実施形態では、図17の時刻t14に示すようなバースト的な処理要求を受け付けた場合は、空きリソースを多数の要求で分割してそれぞれの処理を実行するため、全ての処理に対して処理時間が遅くなる場合があった。しかし、第4の実施形態では、処理方式選択手段20が、処理要求を一時的に処理待ちキュー21に保持し、各処理方式を用いた際の処理時間を計算し、この計算した処理時間を比較して処理時間が短い方式を選択し、その方式にあわせて処理要求の数を処理待ちキュー21から取り出すことができるため、処理時間の平均値を短縮することができる。第4の実施形態のように、処理要求を一時的に待たせる処理待ちキュー21を有することによって、バッチ処理のように一括で要求を受けた場合でも、処理要求を待たせることができるので、本発明を適応させることができる。
第1の実施形態から第4の実施形態まで、仮想マシン管理システム1〜4は、仮想マシン提供サーバ90と別のコンピュータ上で動作するとして説明してきた。しかし、本発明の効果は、別コンピュータで動作させることに特徴を持つものではないため、仮想マシン提供サーバ90上の仮想マシン91内や、仮想化ソフトウェア92で仮想マシン管理システムを動作させても既に説明したのと同様の効果を実現することができる。
また、第1の実施形態から第4の実施形態をそれぞれ組み合わせることで、それぞれの効果を有する仮想マシン管理システムを提供することもできる。
また、本発明では、ある時刻で特定処理を実行している仮想マシン数が少なくなるので、障害時に影響を受ける仮想マシン数を削減できるという効果もある。
以上本発明を上記実施形態に即して説明したが、本発明は、上記実施形態にのみ限定されるものではなく、本願特許請求の範囲の各請求項の発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。

Claims (31)

  1. ネットワークに接続され、それぞれが仮想マシンを稼動可能である複数の仮想マシン提供サーバの負荷状態を管理する仮想マシン状態管理手段と、
    前記仮想マシン状態管理手段に管理されたデータを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散手段と、
    前記仮想マシン状態管理手段に管理されたデータを参照して、前記特定処理を終えた仮想マシンを移動させて、仮想マシンを多く集約する仮想マシン提供サーバと、その他の仮想マシン提供サーバとに2極化する運用サーバ集約手段と、
    を備えることを特徴とする仮想マシン管理装置。
  2. 前記特定処理は、前記仮想マシンサーバの処理負荷を一時的に増大させる処理であることを特徴とする請求項1記載の仮想マシン管理装置。
  3. 受け付けた前記特定処理の要求を一時的に保持する処理待ちキューと、該処理待ちキューに保持された要求を処理する予め定められた複数の処理方式ごとの処理時間を計算する処理時間計算手段と、該処理時間計算手段で計算された各処理方式の処理時間を比較する処理時間比較手段と、該処理時間比較手段での比較結果に基づき、処理方式を選択する選択手段とを有することを特徴とする請求項1または2に記載の仮想マシン管理装置。
  4. 前記実行サーバ分散手段は、リソース使用率が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項1乃至3何れか1項に記載の仮想マシン管理装置。
  5. 前記実行サーバ分散手段は、動作中の仮想マシン数が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項1乃至3何れか1項に記載の仮想マシン管理装置。
  6. 前記運用サーバ集約手段は、各仮想マシン提供サーバのリソース使用率が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項1乃至5何れか1項に記載の仮想マシン管理装置。
  7. 前記運用サーバ集約手段は、各仮想マシン提供サーバの仮想マシン数が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項1乃至5の何れか1項に記載の仮想マシン管理装置。
  8. 各仮想マシン提供サーバの使用可能なリソース量の上限を時刻別に登録する仮想マシン数指定テーブルを有し、前記運用サーバ集約手段は、前記仮想マシン数指定テーブルを参照して各仮想マシン提供サーバに対して定められた上限リソース値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項1乃至の何れか1項に記載の仮想マシン管理装置。
  9. 各仮想マシン提供サーバの提供可能な仮想マシン数の上限を時刻別に登録する仮想マシン数指定テーブルを有し、前記運用サーバ集約手段は、前記仮想マシン数指定テーブルを参照して各仮想マシン提供サーバに対して定められた仮想マシン数を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項1乃至の何れか1項に記載の仮想マシン管理装置。
  10. 前記特定処理の要求が発生する時刻分布を表す要求パターンテーブルと、該要求パターンテーブルの表す前記時刻分布に適合した前記仮想マシン数指定テーブルを作成するパターン分析手段とを有することを特徴とする請求項8に記載の仮想マシン管理装置。
  11. 前記パターン分析手段は、前記要求パターンテーブルから処理要求数の極小値を求め、該極小値をとる時刻までの累積要求数を求め、該累積要求数に割り当てる運用中のリソース量の総和を仮想マシン提供サーバ数で除算した解をその時刻での仮想マシン提供サーバ当たりの上限リソース使用量として前記仮想マシン数指定テーブルに登録することを特徴とする請求項10に記載の仮想マシン管理装置。
  12. 前記特定処理の要求が発生する時刻分布を表す要求パターンテーブルと、該要求パターンテーブルの表す前記時刻分布に適合した前記仮想マシン数指定テーブルを作成するパターン分析手段とを有することを特徴とする請求項に記載の仮想マシン管理装置。
  13. 前記パターン分析手段は、前記要求パターンテーブルから処理要求数の極小値を求め、該極小値をとる時刻までの累積要求数を求め、該累積要求数を仮想マシン提供サーバ数で除算した解をその時刻での仮想マシン提供サーバ当たりの上限仮想マシン数として前記仮想マシン数指定テーブルに登録することを特徴とする請求項12に記載の仮想マシン管理装置。
  14. 仮想マシンを稼動させる複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理方法であって、仮想マシン提供サーバの負荷状態を記憶する仮想マシン状態管理手段に記憶されたデータを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散ステップと、前記特定処理を終えた仮想マシンを移動させて、仮想マシンを多く集約する仮想マシン提供サーバと、その他の仮想マシン提供サーバとに2極化する運用サーバ集約ステップとを含むことを特徴とする仮想マシン管理方法。
  15. 受け付けた前記特定処理の要求を処理待ちキューに一時的に保持し、前記処理待ちキューに保持された要求を処理する予め定められた複数の処理方式ごとの処理時間を計算し、該計算された各処理方式の処理時間を比較し、該比較結果に基づき、処理方式を選択する処理方式選択ステップを含むことを特徴とする請求項14記載の仮想マシン管理方法。
  16. 前記実行サーバ分散ステップでは、リソース使用率が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項14または15に記載の仮想マシン管理方法。
  17. 前記実行サーバ分散ステップでは、動作中の仮想マシン数が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項14または15に記載の仮想マシン管理方法。
  18. 前記運用サーバ集約ステップでは、各仮想マシン提供サーバのリソース使用率が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項14乃至17の何れか1項に記載の仮想マシン管理方法。
  19. 前記運用サーバ集約ステップでは、各仮想マシン提供サーバの仮想マシン数が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項14乃至17の何れか1項に記載の仮想マシン管理方法。
  20. 前記運用サーバ集約ステップでは、各仮想マシン提供サーバの使用可能なリソース量の上限を時刻別に記憶する仮想マシン数指定テーブルを参照して、各仮想マシン提供サーバに対して定められた上限リソース値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項14乃至17の何れか1項に記載の仮想マシン管理方法。
  21. 前記運用サーバ集約ステップでは、各仮想マシン提供サーバの提供可能な仮想マシン数の上限を時刻別に記憶する仮想マシン数指定テーブルを参照して、各仮想マシン提供サーバに対して定められた仮想マシン数を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシンサーバを選択することを特徴とする請求項14乃至17の何れか1項に記載の仮想マシン管理方法。
  22. 前記特定処理の要求が発生する時刻分布を表す要求パターンテーブルを参照して、前記時刻分布に適合した前記仮想マシン数指定テーブルを作成するパターン分析ステップを含むことを特徴とする請求項20に記載の仮想マシン管理方法。
  23. 前記パターン分析ステップでは、前記要求パターンテーブルから処理要求数の極小値を求め、該極小値をとる時刻までの累積要求数を求め、該累積要求数に割り当てる運用中のリソース量の総和を仮想マシン提供サーバ数で除算した解をその時刻での仮想マシン提供サーバ当たりの上限リソース使用量として前記仮想マシン数指定テーブルに登録することを特徴とする請求項21に記載の仮想マシン管理方法。
  24. 前記特定処理の要求が発生する時刻分布を表す要求パターンテーブルを参照して、前記時刻分布に適合した前記仮想マシン数指定テーブルを作成するパターン分析ステップを含むことを特徴とする請求項21に記載の仮想マシン管理方法。
  25. 前記パターン分析ステップでは、前記要求パターンテーブルから処理要求数の極小値を求め、該極小値をとる時刻までの累積要求数を求め、該累積要求数を仮想マシン提供サーバ数で除算した解をその時刻での仮想マシン提供サーバ当たりの上限仮想マシン数として前記仮想マシン数指定テーブルに登録することを特徴とする請求項24に記載の仮想マシン管理方法。
  26. 仮想マシンを稼動させる複数の仮想マシン提供サーバがネットワークを通じて接続された計算機システムにおける仮想マシン管理装置を構成するコンピュータを、仮想マシン提供サーバの負荷状態を記憶する仮想マシン状態管理手段に記憶されたデータを参照して、予め定められた特定処理を負荷の少ない仮想マシン提供サーバに分散して実行する実行サーバ分散手段と、前記仮想マシン状態管理手段に記憶されたデータを参照して、前記特定処理を終えた仮想マシンを移動させて、仮想マシンを多く集約する仮想マシン提供サーバと、その他の仮想マシン提供サーバとに2極化する運用サーバ集約手段として機能させるための仮想マシン管理プログラム。
  27. 前記コンピュータを、さらに、受け付けた前記特定処理の要求を一時的に保持する処理待ちキューと、該処理待ちキューに保持された要求を処理する予め定められた複数の処理方式ごとの処理時間を計算する処理時間計算手段と、該処理時間計算手段で計算された各処理方式の処理時間を比較する処理時間比較手段と、該処理時間比較手段での比較結果に基づき、処理方式を選択する選択手段として機能させるための請求項26記載の仮想マシン管理プログラム。
  28. 前記実行サーバ分散手段は、リソース使用率が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項26または27に記載の仮想マシン管理プログラム。
  29. 前記実行サーバ分散手段は、動作中の仮想マシン数が最小の仮想マシン提供サーバを処理実行サーバとして選択することを特徴とする請求項26または27に記載の仮想マシン管理プログラム。
  30. 前記運用サーバ集約手段は、各仮想マシン提供サーバのリソース使用率が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項26乃至29の何れか1項に記載の仮想マシン管理プログラム。
  31. 前記運用サーバ集約手段は、各仮想マシン提供サーバの仮想マシン数が予め定められた最大値を超えない範囲で、仮想マシンが存在しない仮想マシン提供サーバ数を最大にするように、前記特定処理を終えた仮想マシンの移動先仮想マシン提供サーバを選択することを特徴とする請求項26乃至29の何れか1項に記載の仮想マシン管理プログラム。
JP2009516265A 2007-05-24 2008-05-21 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム Active JP5206674B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009516265A JP5206674B2 (ja) 2007-05-24 2008-05-21 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007137709 2007-05-24
JP2007137709 2007-05-24
PCT/JP2008/059345 WO2008146677A1 (ja) 2007-05-24 2008-05-21 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム
JP2009516265A JP5206674B2 (ja) 2007-05-24 2008-05-21 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム

Publications (2)

Publication Number Publication Date
JPWO2008146677A1 JPWO2008146677A1 (ja) 2010-08-19
JP5206674B2 true JP5206674B2 (ja) 2013-06-12

Family

ID=40074935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009516265A Active JP5206674B2 (ja) 2007-05-24 2008-05-21 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム

Country Status (3)

Country Link
US (1) US8250574B2 (ja)
JP (1) JP5206674B2 (ja)
WO (1) WO2008146677A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8484355B1 (en) * 2008-05-20 2013-07-09 Verizon Patent And Licensing Inc. System and method for customer provisioning in a utility computing platform
US8473615B1 (en) 2008-05-20 2013-06-25 Verizon Patent And Licensing Inc. System and method for customer provisioning in a utility computing platform
JP5257077B2 (ja) * 2009-01-06 2013-08-07 日本電気株式会社 リソース配分装置、その方法及びプログラム
WO2010123140A1 (ja) * 2009-04-24 2010-10-28 日本電気株式会社 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4947390B2 (ja) * 2009-07-15 2012-06-06 日本電気株式会社 共有データ管理システム、共有データ管理方法および共有データ管理プログラム
JP5378946B2 (ja) * 2009-10-26 2013-12-25 株式会社日立製作所 サーバ管理装置およびサーバ管理方法
JP5544951B2 (ja) * 2010-03-16 2014-07-09 日本電気株式会社 仮想コンピュータシステム、管理サーバ、仮想マシンの構築方法およびそのプログラム
JP5585140B2 (ja) 2010-03-18 2014-09-10 富士通株式会社 仮想計算機システムの管理プログラム,管理装置及び管理方法
EP2609522A4 (en) * 2010-08-26 2014-10-29 Telcordia Tech Inc SYSTEM, METHOD AND PROGRAM FOR VIRTUALIZING AND MANAGING A TELECOMMUNICATIONS INFRASTRUCTURE
WO2012031112A2 (en) * 2010-09-03 2012-03-08 Time Warner Cable, Inc. Methods and systems for managing a virtual data center with embedded roles based access control
US8984506B2 (en) 2011-01-07 2015-03-17 International Business Machines Corporation Techniques for dynamically discovering and adapting resource and relationship information in virtualized computing environments
US8533383B2 (en) * 2011-01-14 2013-09-10 Oracle International Corporation System and method for locking memory areas in a JVM to facilitate sharing between virtual servers
US8539094B1 (en) 2011-03-31 2013-09-17 Amazon Technologies, Inc. Ordered iteration for data update management
US8745264B1 (en) 2011-03-31 2014-06-03 Amazon Technologies, Inc. Random next iteration for data update management
US9210048B1 (en) 2011-03-31 2015-12-08 Amazon Technologies, Inc. Clustered dispersion of resource use in shared computing environments
US8392575B1 (en) * 2011-03-31 2013-03-05 Amazon Technologies, Inc. Clustered device dispersion in a multi-tenant environment
JP5822527B2 (ja) * 2011-05-09 2015-11-24 キヤノン株式会社 情報処理装置、その制御方法、および制御プログラム
JP5342615B2 (ja) * 2011-08-15 2013-11-13 株式会社日立システムズ 仮想サーバ制御システム及びプログラム
JP5768651B2 (ja) * 2011-10-21 2015-08-26 富士通株式会社 通信装置、通信方法、および、通信プログラム
US9223623B2 (en) * 2012-03-28 2015-12-29 Bmc Software, Inc. Dynamic service resource control
JP6044131B2 (ja) * 2012-06-25 2016-12-14 富士通株式会社 プログラム、管理サーバおよび仮想マシン移動制御方法
US9286130B2 (en) * 2012-08-27 2016-03-15 International Business Machines Corporation Optimizing virtual machine deployment time by temporarily allocating more processing resources during the initial deployment time of the virtual machine
US9086902B2 (en) * 2012-12-18 2015-07-21 International Business Machines Corporation Sending tasks between virtual machines based on expiration times
TW201426551A (zh) * 2012-12-26 2014-07-01 Hon Hai Prec Ind Co Ltd 虛擬機啟動排程系統及方法
US9407505B2 (en) * 2013-03-04 2016-08-02 Amazon Technologies, Inc. Configuration and verification by trusted provider
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
JP6160253B2 (ja) * 2013-05-30 2017-07-12 富士通株式会社 仮想機械管理装置、仮想機械管理方法及び情報処理システム
KR101387971B1 (ko) 2013-08-05 2014-04-22 주식회사 파이오링크 가상 머신 사이의 통신을 지원하기 위한 방법, 가상 머신, 시스템 및 컴퓨터 판독 가능한 기록 매체
US9558192B2 (en) * 2013-11-13 2017-01-31 Datadirect Networks, Inc. Centralized parallel burst engine for high performance computing
US9836476B2 (en) * 2014-09-25 2017-12-05 Netapp, Inc. Synchronizing configuration of partner objects across distributed storage systems using transformations
JP6495645B2 (ja) * 2014-12-19 2019-04-03 株式会社東芝 リソース制御装置、方法、及びプログラム
US10628195B2 (en) * 2015-10-22 2020-04-21 Genband Us Llc High availability for virtual network functions
US9678785B1 (en) * 2015-11-30 2017-06-13 International Business Machines Corporation Virtual machine resource allocation based on user feedback
JP6954267B2 (ja) * 2016-03-28 2021-10-27 日本電気株式会社 ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
US10083057B1 (en) * 2016-03-29 2018-09-25 EMC IP Holding Company LLC Migration of active virtual machines across multiple data centers
CN109376006B (zh) * 2018-09-04 2021-09-21 西安电子科技大学 一种云计算环境下基于用户需求时变特性的资源整合方法
US11366702B1 (en) * 2019-03-29 2022-06-21 United Services Automobile Association (Usaa) Dynamic allocation of resources
CN111835592B (zh) * 2020-07-14 2022-09-27 北京百度网讯科技有限公司 用于确定健壮性的方法、装置、电子设备及可读存储介质
US20230362234A1 (en) * 2022-05-04 2023-11-09 Microsoft Technology Licensing, Llc Method and system of managing resources in a cloud computing environment

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2001265613A (ja) * 2001-02-26 2001-09-28 Hitachi Ltd 仮想計算機システム
JP2002007364A (ja) * 2000-06-22 2002-01-11 Fujitsu Ltd 並列計算機システムのジョブスケジューリングを行うスケジューリング装置
JP2003162515A (ja) * 2001-11-22 2003-06-06 Fujitsu Ltd クラスタシステム
JP2005115653A (ja) * 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム
WO2005109195A2 (en) * 2004-05-08 2005-11-17 International Business Machines Corporation Dynamic migration of virtual machine computer programs
JP2006244481A (ja) * 2005-02-28 2006-09-14 Hewlett-Packard Development Co Lp クラスタシステムの仮想マシンをマイグレーションするためのシステム及び方法
JP2007004661A (ja) * 2005-06-27 2007-01-11 Hitachi Ltd 仮想計算機の制御方法及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006248A (en) * 1996-07-12 1999-12-21 Nec Corporation Job application distributing system among a plurality of computers, job application distributing method and recording media in which job application distributing program is recorded
US6748414B1 (en) * 1999-11-15 2004-06-08 International Business Machines Corporation Method and apparatus for the load balancing of non-identical servers in a network environment
US7203944B1 (en) * 2003-07-09 2007-04-10 Veritas Operating Corporation Migrating virtual machines among computer systems to balance load caused by virtual machines
US7373451B2 (en) * 2003-12-08 2008-05-13 The Board Of Trustees Of The Leland Stanford Junior University Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers
JP4733399B2 (ja) * 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
JP4864557B2 (ja) * 2006-06-15 2012-02-01 富士通株式会社 ソフトウェアの更新処理プログラム及び更新処理装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212467A (ja) * 1996-01-30 1997-08-15 Fujitsu Ltd 負荷分散制御システム
JP2002007364A (ja) * 2000-06-22 2002-01-11 Fujitsu Ltd 並列計算機システムのジョブスケジューリングを行うスケジューリング装置
JP2001265613A (ja) * 2001-02-26 2001-09-28 Hitachi Ltd 仮想計算機システム
JP2003162515A (ja) * 2001-11-22 2003-06-06 Fujitsu Ltd クラスタシステム
JP2005115653A (ja) * 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム
WO2005109195A2 (en) * 2004-05-08 2005-11-17 International Business Machines Corporation Dynamic migration of virtual machine computer programs
JP2007536657A (ja) * 2004-05-08 2007-12-13 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想マシン・コンピュータ・プログラムの動的マイグレーション
JP2006244481A (ja) * 2005-02-28 2006-09-14 Hewlett-Packard Development Co Lp クラスタシステムの仮想マシンをマイグレーションするためのシステム及び方法
JP2007004661A (ja) * 2005-06-27 2007-01-11 Hitachi Ltd 仮想計算機の制御方法及びプログラム

Also Published As

Publication number Publication date
US8250574B2 (en) 2012-08-21
US20100175070A1 (en) 2010-07-08
WO2008146677A1 (ja) 2008-12-04
JPWO2008146677A1 (ja) 2010-08-19

Similar Documents

Publication Publication Date Title
JP5206674B2 (ja) 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム
US10873623B2 (en) Dynamically modifying a cluster of computing nodes used for distributed execution of a program
EP2972746B1 (en) Storage unit selection for virtualized storage units
JP4519098B2 (ja) 計算機の管理方法、計算機システム、及び管理プログラム
US8260840B1 (en) Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
CN106371894B (zh) 一种配置方法、装置和数据处理服务器
US8321558B1 (en) Dynamically monitoring and modifying distributed execution of programs
JP7161262B2 (ja) 自動化プロセスの処理の分散を最適化するシステム
US20110314465A1 (en) Method and system for workload distributing and processing across a network of replicated virtual machines
EP1750200A2 (en) System and method for executing job step, and computer product
US8239872B2 (en) Method and system for controlling distribution of work items to threads in a server
CN101694633A (zh) 计算机作业调度设备、方法及***
CN109614227B (zh) 任务资源调配方法、装置、电子设备及计算机可读介质
CN113886089B (zh) 一种任务处理方法、装置、***、设备及介质
JP4495688B2 (ja) 検証システム
CN111190691A (zh) 适用于虚拟机的自动迁移方法、***、装置及存储介质
JP5151509B2 (ja) 仮想マシンシステム及びそれに用いる仮想マシン分散方法
JP7439928B2 (ja) 管理装置、管理方法、管理プログラム、及び管理システム
Xhafa et al. Immediate mode scheduling of independent jobs in computational grids
Wang et al. Improving utilization through dynamic VM resource allocation in hybrid cloud environment
JP2010026828A (ja) 仮想計算機の制御方法
CN114020408A (zh) 一种任务分片配置方法及装置、设备、存储介质
JP2014206805A (ja) 制御装置
CN111045778B (zh) 一种虚拟机的创建方法、装置、服务器及存储介质
JP2011215812A (ja) 仮想計算機管理方法、計算機システム及びリソース管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121016

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121217

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: 20130122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5206674

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150