JP2010231601A - グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム - Google Patents

グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム Download PDF

Info

Publication number
JP2010231601A
JP2010231601A JP2009079739A JP2009079739A JP2010231601A JP 2010231601 A JP2010231601 A JP 2010231601A JP 2009079739 A JP2009079739 A JP 2009079739A JP 2009079739 A JP2009079739 A JP 2009079739A JP 2010231601 A JP2010231601 A JP 2010231601A
Authority
JP
Japan
Prior art keywords
virtual machine
resource
distributed processing
machine monitor
monitor
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
JP2009079739A
Other languages
English (en)
Inventor
Ryo Gunjishima
亮 郡司島
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 JP2009079739A priority Critical patent/JP2010231601A/ja
Publication of JP2010231601A publication Critical patent/JP2010231601A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】グリッドコンピューティングの機能を追加することで、各仮想マシンモニタのあまったリソースを使用し、仮想マシンが安定して動作することを可能にする。
【解決手段】仮想マシン601A〜601C、602A〜602Cを制御する仮想マシンモニタ101A〜101C、102A〜102Cと管理サーバにおいて、仮想マシンモニタ101A〜101C、102A〜102Cがリソース監視手段等を備え、管理サーバが、リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、リソース借用要求を通知した仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定手段を備え、仮想マシンモニタが、管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理手段を、含む。
【選択図】図1

Description

本発明は仮想マシンモニタのリソースの制御システムに関し、特にグリッドコンピューティングを用いたリソースの制御方式に関する。
1台のコンピュータ上で複数のOS(Operating System)を制御するプログラムとして、仮想マシンモニタが知られている。特に、英国ケンブリッジ大学で開発が進められたXen(商標)やVMware社のVMware(登録商標)等は広く知られた仮想マシンモニタである。
この仮想マシンモニタを用いると、1台のコンピュータが複数の異なるOSを制御し、各OS上で異なるジョブを並列に処理することができる。仮想マシンモニタは、複数の仮想マシンを実行し、各仮想マシンは、互いに異なるOSを動作させることができる。
しかし、複数の物理サーバで仮想マシンモニタを使用している場合に、従来は他サーバの仮想マシンモニタのリソースを使用することはできなかった。そのため各仮想マシンモニタのほとんどにおいて余剰のリソースが存在していた。
例えば図1において、仮想マシンモニタ101A、101B、101Cは、それぞれリソースとして7で表される能力を有し、仮想マシン601A〜602Cはそれぞれ3のリソースを消費するものとする。
各仮想マシンモニタでは仮想マシンが2台ずつ稼動しており、合計6のリソースを要求している。一方仮想マシンモニタのリソースは7であるため、各仮想マシンモニタにおいて7−6=1の余剰リソースがある。
次に、図2においては、仮想マシンモニタ101Aで仮想マシンが3台稼動している。
図1同様、仮想マシンモニタ101A、101B、101Cは、それぞれリソースとして7で表される能力を有し、仮想マシン601A〜602Cはそれぞれ3のリソースを消費するものとすると、仮想マシンモニタ101Aのリソースは7であり、仮想マシンモニタ101A上の仮想マシン601A、602A、603Aは合計9のリソースを要求しているため、リソースとして2不足している。そのため仮想マシン601A、602A、603Aは安定したパフォーマンスを提供することはできない。
また仮想マシンモニタ101B、101Cではリソースがそれぞれ1余っているが、他サーバのリソースは使用することはできないため、いずれにせよこの環境において全ての仮想マシンに安定したパフォーマンスを提供する手段は持たない。
このように、仮想マシンモニタは1台の物理サーバにおいてリソースを分割することはできるが、複数物理サーバとリソースを共有し柔軟に分割することはできない。従ってそれぞれの物理サーバにおいて仮想マシンが使用していない部分のリソースが無駄になってしまう。
この問題を解決するため、各仮想マシンモニタの余剰リソースを使用するために仮想マシンモニタにグリッドコンピューティングの機能を用いる技術が開示されている。例えば特許文献1に記載の技術は、グリッドコンピューティング専用の仮想マシンを設けることで余剰リソースを有効活用する技術が提案されている。
なお、グリッドコンピューティングとは、ネットワークを介して複数のコンピュータを結ぶことで仮想的に高性能コンピュータをつくり、利用者はそこから必要なだけ処理能力や記憶容量を取り出して使うシステムのことである。グリッドコンピューティングでは複数のコンピュータに並列処理を行わせることで、一台一台の性能は低くとも高速に大量の処理を実行できるようになる。
特開2008−171076
特許文献1に記載の技術は、グリッドコンピューティング専用の仮想マシンを設ける必要があり、OS費やアプリケーションコスト費が余分に必要となるという問題がある。
また、特許文献1に記載の技術は、インターネットなどを使用して広範囲のマシンを分散処理の対象としているため、第3者の不正介入の危険性があるという問題がある。
また、特許文献1に記載の技術は、分散処理を行うプログラムを管理サーバに送信し、管理サーバから個々の仮想マシンモニタへプログラムを送信しているため、転送するデータ量が大きいという問題と、分散処理先でゲストOS(仮想マシン上で動作しているOS)が必要となるため、ゲストOSが分散処理を意識する必要があるという問題がある。
また、特許文献1に記載の技術は、仮想マシン毎のリソース監視は行っておらず、サーバ単位でのCPU、メモリのリソース監視のみしか行っていないため、負荷分散決定に改善の余地がある。
(発明の目的)
本発明の目的は、仮想マシンモニタを導入している環境において、グリッドコンピューティングの機能を追加することで、各仮想マシンモニタのあまったリソースを使用し、仮想マシンが安定して動作することを可能としたグリッドコンピューティングシステムを提供することである。
本発明の他の目的は、分散先にOS(つまりゲストOS)配置せずに、仮想化レイヤで実行命令を送受信することで分散処理を実現することである。
本発明の第1のグリッドコンピューティングシステムは、仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムであって、各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバを備え、仮想マシンモニタが、仮想マシンのリソース使用状況を監視するリソース監視手段と、仮想マシンのリソース割り当て状況をチェックし、仮想マシンのリソース使用状況情報及び仮想マシンモニタのリソース空き状況情報を管理サーバに通知するパフォーマンスチェック手段と、記仮想マシンのリソースの割り当てが不十分である場合に、仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、管理サーバへリソース借用要求を通知するリソース最適化チェック手段を備え、管理サーバが、リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、リソース借用要求を通知した仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定手段を備え、仮想マシンモニタが、管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理手段を、含む。
本発明の第1のリソース制御方法は、仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムのリソース制御方法であって、仮想マシンモニタが、仮想マシンのリソース使用状況を監視するリソース監視ステップと、仮想マシンのリソース割り当て状況をチェックし、仮想マシンのリソース使用状況情報及び仮想マシンモニタのリソース空き状況情報を管理サーバに通知するパフォーマンスチェックステップと、仮想マシンのリソースの割り当てが不十分である場合に、仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、管理サーバへリソース借用要求を通知するリソース最適化チェックステップを実行し、各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバが、リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、リソース借用要求を通知した仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定ステップを実行し、仮想マシンモニタが、管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理ステップを実行する。
本発明の第1のリソース制御プログラムは、仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムのリソース制御プログラムであって、仮想マシンモニタに、仮想マシンのリソース使用状況を監視するリソース監視機能と、仮想マシンのリソース割り当て状況をチェックし、仮想マシンのリソース使用状況情報及び仮想マシンモニタのリソース空き状況情報を管理サーバに通知するパフォーマンスチェック機能と、仮想マシンのリソースの割り当てが不十分である場合に、仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、管理サーバへリソース借用要求を通知するリソース最適化チェック機能を実行させ、各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバに、リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、リソース借用要求を通知した仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定機能を実行させ、仮想マシンモニタに、管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理機能を実行させる。
本発明によれば、仮想マシンモニタを導入している環境において、グリッドコンピューティングの機能を追加することで、各仮想マシンモニタのあまったリソースを使用し、仮想マシンが安定して動作することを可能にする。
本発明の背景技術のシステム構成例を示すブロック図である。 本発明の背景技術のシステム構成例を示すブロック図である。 本発明の第1の実施の形態の構成を示すブロック図である。 第1の実施の形態に係るリソース制御手段の構成を示すブロック図である。 第1の実施の形態に係る管理サーバの構成を示すブロック図である。 第1の実施の形態の動作の具体例を示す図である。 第1の実施の形態の動作を示すフローチャートである。 第1の実施の形態に係るリソース監視手段の動作を示すフローチャートである。 第1の実施の形態に係る分散処理手段の構成を示すブロック図である。 本発明の第2の実施の形態の構成を示すブロック図である。
次に、本発明の実施の形態について図3、図4、図5を参照して詳細に説明する。
(第1の実施の形態)
本発明の第1の実施の形態に係るグリッドコンピューティングシステム100は、仮想マシンモニタ101A、101B、101Cと、仮想マシンモニタ101B上で動作する仮想マシン601と、各仮想マシンモニタのリソース使用状況の一元管理及び処理分散の決定を行う管理サーバ501とを含む。
仮想マシンモニタ101A、101B、101Cは、仮想601のリソース使用状況を監視するリソース監視手段131と、仮想マシン601のリソース割り当て状況をチェックし、仮想マシン601のリソース使用状況情報及び仮想マシンモニタ101A、101B、101Cのリソース空き状況情報を通知するパフォーマンスチェック手段132と、リソース最適化が可能かチェックしリソースの最適化ができないと判断したときに管理サーバへリソース借用要求を通知するリソース最適化チェック手段133と、リソースの最適化を行うリソース最適化手段134と、タスク毎の計算処理先を決定し計算を行う分散処理手段135とを含むリソース制御手段103A、103B、103Cと、各仮想マシンモニタ間で実効命令の送受信を行うインターナルLAN(Local Area Network)通信手段104A、104B、104Cを有する。
リソース監視手段131は、仮想マシン601を有する場合は、仮想マシン601のCPU使用率およびメモリの使用状況を監視する機能を有する。リソース監視手段131は、カーネル内の監視プログラム等を想定している。
パフォーマンスチェック手段132は、仮想マシン601を有する場合は、仮想マシン601にリソースが十分に割り当たっているかをチェックし、管理サーバへ仮想マシン601のリソース使用状況情報及び仮想マシンモニタ101A、101B、101Cのリソース空き状況情報を通知する機能を有する。
パフォーマンスチェック手段132は、仮想マシン601に十分なリソースが割り当たっていると判断した場合には、仮想マシン601のリソース使用状況及び仮想マシンモニタ101A、101B、101Cの余剰リソース量情報を管理サーバに送信する。
パフォーマンスチェック手段132は、仮想マシン601に十分なリソースが割り当たっていないと判断された場合には、仮想マシン601のリソース使用状況及び仮想マシンモニタ101A、101B、101Cの不足リソース量情報を管理サーバへと送信する。
なお、パフォーマンスチェック手段132は、仮想マシンを有しない場合は、仮想マシンモニタ101A、101B、101Cのリソース空き状況情報のみを管理サーバに送信する。
リソース最適化チェック手段133は、リソース最適化手段134により仮想マシン601のリソースを最適化する余地があるかどうかを判断する機能を有する。
リソース最適化チェック手段133は、仮想マシン601のリソースを最適化できると判断したときはリソース最適化手段134へ処理を移行し、仮想マシン601のリソースの最適化ができないと判断したときは管理サーバにリソース借用要求を行う。
リソース最適化手段134は、仮想マシン601の最適化を行う機能を有する。
分散処理手段135は、管理サーバ501の分散先決定手段502より送信された分散処理開始命令に従い、仮想マシンが実行するタスクの分散処理を行う。
分散処理手段135は、仮想マシンが実行するタスク毎に、ローカルマシンで計算処理を行うか、リモートマシンで計算を行うかを決定し、リモートマシンで計算を行う場合は、リモートマシンとの間でインターナルLAN140を介して実行命令の送受信を行う。
分散処理手段135は、分散処理が終了した場合にはリソースを開放し、処理終了した旨を管理サーバへ情報送信する。
また、分散処理手段135は、リモートマシンから実効命令が送信された場合に、即座に計算処理を行う。
なお、分散処理手段135は、仮想デバイスドライバを想定している。図9は、分散処理手段135の構成の一例を示したブロック図である。
インターナルLAN通信手段104は、仮想マシンモニタ間での実効命令の送受信を行う機能を有し、インターナルLAN140を構成する。
管理サーバ501は、パフォーマンスチェック手段132から送られてきた仮想マシン601のリソース使用状況および仮想マシンモニタ101A、101B、101Cのリソース空き状況情報の一元管理を行う。
また、管理サーバ501は、各仮想マシンモニタからリソース借用要求があった場合に、どの仮想マシンモニタからどの程度リソースを借用するべきかを決定し、リソース借用要求を通知してきた仮想マシンモニタへ情報送信する分散先決定手段502を有する。
分散先決定処理手段502は、仮想マシン601のリソース使用状況および仮想マシンモニタ101A、101B、101Cのリソース空き状況情報と、仮想マシンモニタによって要求されたリソース量から、どの仮想マシンモニタからどの程度リソースを借用するべきかを決定する機能を有する。処理の分散が決定した後、分散先決定手段502は分散処理開始命令を管理LAN510経由でリソース借用要求を通知してきた仮想マシンモニタへ送信する。
(第1の実施の形態の動作の説明)
次に、図6〜図8を参照して本発明の実施の形態の動作について詳細に説明する。なお、仮想マシンモニタ101A、101Cは仮想マシン601を搭載していないため、仮想マシンモニタ601を例にとって説明を行う。
まず、仮想マシンモニタ101Bは、リソース監視手段131を用いて仮想マシン601のリソース監視処理を行う(ステップS701)。リソース監視手段131は、仮想マシン601の使用率およびメモリの使用状況を監視する。
リソース監視手段131は、仮想マシン601のリソース使用状況を一定時間取得し、その一定期間における仮想マシン601のリソース使用状況の性能平均値を算出する。図8はリソース監視処理(ステップS701)の処理フローの例である。
リソース監視処理が終わると、仮想マシンモニタ101Bは、パフォーマンスチェック手段132を用いてパフォーマンスチェック処理(ステップS702)を行う。
パフォーマンスチェック手段132は、仮想マシン601にリソースが十分に割り当たっているかをチェックし、仮想マシン601のリソース使用状況情報と、仮想マシンモニタ101A、101B、101Cのリソース空き状況情報を管理サーバへ送信する。
仮想マシン601に十分なリソースが割り当たっている場合、パフォーマンスチェック手段132は、仮想マシン601のリソース使用状況情報及び仮想マシンモニタ101Bの余剰リソース量情報を管理サーバ501に送信し、再度リソース監視処理へと移行する(ステップS702”YES”)。
パフォーマンスチェック処理で仮想マシン601に十分なリソースが割り当たっていないと判断された場合(ステップS702”NO”)は、パフォーマンスチェック手段132は、仮想マシン601のリソース使用状況情報および仮想マシンモニタ101Bの不足リソース量情報を管理サーバ501へと送信し、次いで、リソース最適化チェック処理(ステップS703)へ移行する。
なお、仮想マシン601を有しない101A、101Cは、仮想マシンモニタ101A、101Cのリソース空き状況情報のみを送信し、以後、再びリソース監視処理へ移行するものとする。
パフォーマンスチェック処理により、管理サーバ501は常に仮想マシンモニタ101A、101B、101Cの性能情報を一元管理することができる。
リソース最適化チェック処理(ステップS703)では、まず、仮想マシンモニタ101Bは、リソース最適化チェック手段133を用いて、リソース最適化手段134で仮想マシン601のリソースを最適化する余地があるかどうかを判断する。
リソース最適化チェック手段133は、仮想マシン601のリソースを最適化する余地があると判断した場合(ステップS703”YES”)は、リソース最適化処理(ステップS704)へ移行する。
リソース最適化処理では、仮想マシンモニタ101Bはリソース最適化手段134により、仮想マシン601のリソース最適化処理を行う。
リソース最適化処理を行った後は、仮想マシンモニタ101Bは再びリソース監視処理(ステップS701)を行う。
一方、リソース最適化チェック手段133は、仮想マシン601のリソースを最適化する余地がないと判断した場合(ステップS703”NO”)は、管理サーバ501へリソース借用通知を送信し(ステップS705)、通知を受けた管理サーバ501は、分散先決定手段502を用いて分散先決定処理(ステップS705)を行う。
分散先決定処理では、分散先決定手段502が、仮想マシンモニタ601のリソース使用状況及び仮想マシンモニタ101A、101B、101Cのリソース空き状況情報、そして仮想マシンモニタ101Bのリソース最適化チェック手段133に要求された借用リソース量から、どの仮想マシンモニタからどの程度リソースを借用するべきかを決定する。
処理の分散先が決定した後、分散先決定手段502は、リソース借用通知を行った仮想マシンモニタ101Bへどの仮想マシンモニタからどの程度リソースを借用するべきかを示した分散処理開始命令を発信し、分散処理開始命令を受け取った仮想マシンモニタ101Bは、分散処理手段135を用いて、分散処理(ステップS706)を行う。
分散処理手段135は、分散処理開始命令を元に、仮想マシン601が実行するタスク毎にローカルマシンで計算処理を行うか、リモートマシンで計算を行うかを決定し、分散処理を行う各仮想マシンモニタ間でインターナルLANを介してCPUのインストラクションレベルの実行命令を送受信する。
分散処理が終了した場合には、分散処理手段135は、リソースを開放し、処理終了した旨を管理サーバ501へ情報送信する。その後仮想マシンモニタ101Bは、再びリソース監視処理を行う。
次に、具体的な実施例を用いて本実施の形態の動作を説明する。図6は、第1の実施の形態を、具体的な例の1つとして、仮想マシンモニタとしてVMwareを使用し、仮想マシンサーバとしてESXサーバを使用した場合のグリッドコンピューティングシステムの実施例を示す図である。
(構成の説明)
図6に示すグリッドコンピューティングシステム100は、ESXサーバ109A、109B、109Cと、ストレージ401と、管理サーバ501と、ESXサーバ109A、109B、109Cと管理サーバ501を接続して管理LAN510を構成するL2(Layer 2)スイッチ201と、ESXサーバ109A、109B、109C同士を接続してインターナルLAN140を構成するL2スイッチ202と、ESXサーバ109A、109B、109Cとストレージ401とを接続するFC(Fibre Channel)スイッチ301と、を含む。
ESXサーバ109A、109B、109Cは、VMware110A、110B、110C、ハードウェア102A、102B、102C、HBA(Host Bus Adapter)105A、105B、105C、NIC(Network Interface Card)106A、106B、106C及び107A、107B、107C、SC108A、108B、108Cを有する。SCとは仮想マシンモニタにおける管理用仮想マシンを示す。
管理サーバ501は、NIC506を有し、NIC506を用いて管理LAN510に接続している。
HBA105A、105B、105Cは、FCスイッチ301に接続している。FCスイッチ301にはストレージ401も接続されており、ESXサーバ109A、109B、109Cは、共通のストレージ401が見えるように接続されている。
NIC106A、106B、106C、506は、L2スイッチ201に接続し、管理LAN510を構成している。
管理LAN510は、管理サーバ501による各VMwareの一元管理のために使用される。
NIC107A、107B、107Cは、L2スイッチ202に接続し、インターナルLAN140を構成している。
インターナルLAN140は、ESXサーバ109A、109B、109Cのみを相互に接続したプライベートなLANである。
ESXサーバ109A、109B、109Cは同一のCPUまたは互換性のあるCPUを搭載しているものとする。同一または互換性のあるCPUを搭載することにより、CPUの実効命令を転送することが可能となる。
VMware110A、110B、110Cは、それぞれリソース監視手段131、パフォーマンスチェック手段132、リソース最適化手段133、分散処理手段135を有するものとする
また、VMware110Aは仮想マシン601を搭載しているものとする。
(動作の説明)
次に、本発明の実施例の動作についてESXサーバ109Aを例にとって詳細に説明する。
まず、VMware110Aは、リソース監視手段131を用いて仮想マシン601のリソース監視処理を行うリソース監視処理を行う(ステップS701)。リソース監視処理では、リソース監視手段131は、仮想マシン601のCPU使用率およびメモリの使用状況を監視する。
リソース監視手段131は、仮想マシン601のリソース使用状況を一定時間取得し、その一定期間におけるVMware110Aのリソース使用状況の性能平均値(リソース使用状況情報)を算出する。
リソース監視処理が終わると、VMware110Aは、パフォーマンスチェック手段132を用いてパフォーマンスチェック処理(ステップS702)を行う。
パフォーマンスチェック手段132は、仮想マシン601にリソースが十分に割り当たっているかをチェックし、仮想マシン601のリソース使用状況情報と、VMware110Aのリソースの空き状況情報を管理サーバへ送信する。
仮想マシン601に十分なリソースが割り当たっている場合、パフォーマンスチェック手段132は、仮想マシン601のリソース使用状況情報及びVMware110Aの余剰リソース量情報を管理サーバ501に送信し、再度リソース監視処理へと移る(ステップS702”YES”)。
パフォーマンスチェック処理で仮想マシン601に十分なリソースが割り当たっていないと判断された場合(ステップS702”NO”)は、パフォーマンスチェック手段132は、仮想マシン601のリソース使用状況情報およびVMware110Aの不足リソース量情報を管理サーバ501へと送信し、次いで、リソース最適化チェック処理(ステップS703)へ移行する。
パフォーマンスチェック処理により、管理サーバ501は常にVMware110Aの性能情報を管理することができる。なお、VMware110B、110Cでもリソース監視処理は行われているため、管理サーバ501は、VMware110A、110B、110Cの性能情報を一元管理することができる。
リソース最適化チェック処理(ステップS703)では、まず、VMware110Aは、リソース最適化チェック手段133を用いて、仮想マシン601のリソースを最適化する余地があるかどうかを判断する。
リソース最適化チェック手段133は、具体的には、仮想マシンモニタVMware ESX(商標)においてはVMware DRS(商標)が該当する。
リソース最適化チェック手段133は、リソース最適化チェック処理で仮想マシン601のリソースを最適化する余地があると判断した場合(ステップS703”YES”)は、リソース最適化処理(ステップS704)へ移行する。
リソース最適化処理では、VMware110Aは、リソース最適化手段134(VMware DRS)により、仮想マシン601のリソース最適化処理を行う。
リソース最適化処理を行った後は、VMware110Aは、再びリソース監視処理(ステップS701)を行う。
一方、リソース最適化チェック手段133は、リソース最適化チェック処理で仮想マシン601のリソース最適化の余地がないと判断した場合(ステップS703”NO”)は、管理サーバ501へリソース借用通知を送信し(ステップS705)、通知を受けた管理サーバ501は、分散先決定手段502を用いて分散先決定処理(ステップS705)を行う。
分散先決定処理では、分散先決定手段502が、仮想マシン601のリソース使用状況情報及びVMware110A、110B、110Cのリソース空き状況情報、そしてリソース最適化チェック手段133によって要求されたリソース量から、どのVMwareからどの程度リソースを借用するべきかを決定する。
処理の分散先が決定した後、分散先決定手段502は、VMware110Aへ分散処理開始命令を発信し、分散処理開始命令を受け取ったVMware110Aは、分散処理手段135を用いて分散処理(ステップS706)を行う。
分散処理手段135は、分散処理開始命令を元に、仮想マシン601が実行するタスク毎にローカルマシンで計算処理を行うか、リモートマシンで計算を行うかを決定し、分散処理を行う各仮想マシンモニタ間でインターナルLANを介してCPUのインストラクションレベルの実行命令を送受信する。
分散処理が終了した場合には、分散処理手段135は、リソースを開放し、処理終了した旨を管理サーバ501へ情報送信する。その後VMware110Aは、再びリソース監視処理を行う。
(第1の実施の形態による効果)
次に本実施の形態の効果について説明する。
第1の効果は各仮想マシンモニタの余剰リソースが使用できるようになることである。すなわち、他サーバのリソースも自由に使えるようになるため、サーバの台数を減少させることも期待でき、グリーンなITの先駆けとなる。
第2の効果は、ライセンス費用の削減である。分散処理先では仮想マシンを必要としないためOS費およびアプリケーションコスト費の削減をすることができる。
第3の効果は、ゲストOSが分散処理を意識する必要がない点である。CPUのインストラクションレベルの命令の転送により、仮想マシンモニタ間で分散処理を実行するため、上位アプリケーションを問わず全て分散処理を実行することができる。
第4の効果は、分散処理専用のネットワークであるインターナルLANを設けることによって、第3者介入の危険性を防ぐことができる点である。また、管理LANとは別にすることで広帯域のネットワークを確保できる。
第5の効果は、仮想マシンモニタのみならず仮想マシン毎のリソース監視も行っているため、管理サーバでの負荷分散決定を適切に行うことができる。
(第2の実施の形態)
次に、本発明の第2の実施の形態について図10を参照して説明する。
本発明の第1の実施の形態では、仮想マシンモニタ3台に対し仮想マシン1台として実施していたが、仮想マシン台数および仮想マシンモニタの数にはこだわらず自由に拡張することが可能である。
図10を参照すると、本実施の形態のグリッドコンピューティングシステム100は、仮想マシンモニタ101A、101B、101Cと、管理サーバ501を有する。
仮想マシンモニタ101A、101B、101Cは、それぞれ、仮想マシン601A、601B、601Cを有する。
その他の物理的な構成は図3と同様であるため、詳細は省略する。
(第2の実施の形態の動作の説明)
本実施の形態の動作の詳細は第1の実施の形態の動作と同等であるので説明は省略する。
(第2の実施の形態による効果)
本実施の形態により、仮想マシン台数および仮想マシンモニタの数にはこだわらず自由に拡張することができる
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
100:グリッドコンピューティングシステム
101、101A、101B、101C:仮想マシンモニタ
102、102A、102B、102C:ハードウェア
103、103A、103B、103C:リソース制御手段
104、104A、104B、104C:インターナルLAN通信手段
105A、105B、105C:HBA
106A、106B、106C:NIC
107A、107B、107C、506:NIC
108A、108B、108C:SC
109A、109B、109C:ESXサーバ
110A、110B、110C:VMware
131:リソース監視手段
132:パフォーマンスチェック手段
133:リソース最適化チェック手段
134:リソース最適化手段
135:分散処理手段
140:インターナルLAN
201:L2スイッチ
301:FCスイッチ
401:ストレージ
501:管理サーバ
502:分散先決定手段
510:管理LAN
601、601A、601B、601C:仮想マシン
901:外部装置
902:デバイスドライバ
903:インターフェース部
904:仮想デバイスドライバ
905、906、907:タスク


Claims (22)

  1. 仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムであって、
    各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバを備え、
    前記仮想マシンモニタが、
    前記仮想マシンのリソース使用状況を監視するリソース監視手段と、
    前記仮想マシンのリソース割り当て状況をチェックし、前記仮想マシンのリソース使用状況情報及び前記仮想マシンモニタのリソース空き状況情報を前記管理サーバに通知するパフォーマンスチェック手段と、
    前記仮想マシンのリソースの割り当てが不十分である場合に、前記仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、前記管理サーバへリソース借用要求を通知するリソース最適化チェック手段を備え、
    前記管理サーバが、
    リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、前記リソース借用要求を通知した前記仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定手段を備え、
    前記仮想マシンモニタが、
    前記管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理手段を備えることを特徴とするグリッドコンピューティングシステム。
  2. 前記タスクの分散処理を行う実行命令を前記前記仮想マシンモニタ間で送受信するインターナルLAN通信手段を備えることを特徴とする請求項1に記載のグリッドコンピューティングシステム。
  3. 前記仮想マシンモニタが、
    前記リソース最適化チェック手段で仮想マシンのリソースの最適化ができると判断した場合に、仮想マシンのリソースの最適化を行うリソース最適化手段を備えることを特徴とする請求項1又は請求項2に記載のグリッドコンピューティングシステム。
  4. 前記リソース監視手段は、CPU使用率およびメモリの使用状況を含む仮想マシンのリソース使用状況を一定時間取得し、その一定期間における仮想マシンのリソース使用状況の性能平均値を算出することを特徴とする請求項1から請求項3の何れかに記載のグリッドコンピューティングシステム。
  5. 前記分散処理手段は、管理サーバより送信された分散処理開始命令に従い、前記仮想マシンが実行するタスク毎に分散処理を行う前記仮想マシンモニタを決定することを特徴とする請求項1から請求項4に記載のグリッドコンピューティングシステム。
  6. 前記分散処理手段は、前記仮想マシンが実行するタスクの分散処理先が他の仮想マシンモニタである場合、当該他の仮想マシンモニタに対して前記インターナルLAN通信手段を介して前記他の仮想マシンモニタに実行させる実行命令を送信することを特徴とする請求項5に記載のグリッドコンピューティングシステム。
  7. 前記分散処理手段は、前記分散処理開始命令に基づく分散処理が終了した場合、リソースを開放し、処理終了した旨を前記管理サーバへ情報送信することを特徴とする請求項1から請求項6の何れかに記載のグリッドコンピューティングシステム。
  8. 前記インターナルLAN通信手段は、L2スイッチを介してデータリンク層のネットワーク(インターネットLAN)を構築し、仮想化レイヤで実行命令の送受信を行うことを特徴とする請求項2に記載のグリッドコンピューティングシステム。
  9. 仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムのリソース制御方法であって、
    前記仮想マシンモニタが、
    前記仮想マシンのリソース使用状況を監視するリソース監視ステップと、
    前記仮想マシンのリソース割り当て状況をチェックし、前記仮想マシンのリソース使用状況情報及び前記仮想マシンモニタのリソース空き状況情報を前記管理サーバに通知するパフォーマンスチェックステップと、
    前記仮想マシンのリソースの割り当てが不十分である場合に、前記仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、前記管理サーバへリソース借用要求を通知するリソース最適化チェックステップを実行し、
    各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバが、
    リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、前記リソース借用要求を通知した前記仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定ステップを実行し、
    前記仮想マシンモニタが、
    前記管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理ステップを実行することを特徴とするグリッドコンピューティングシステムのリソース制御方法。
  10. 前記仮想マシンモニタが、前記タスクの分散処理を行う実行命令をインターナルLANを介して他の前記仮想マシンモニタ間で送受信することを特徴とする請求項9に記載のグリッドコンピューティングシステムのリソース制御方法。
  11. 前記仮想マシンモニタが、
    前記リソース最適化チェックステップで仮想マシンのリソースの最適化ができると判断した場合に、仮想マシンのリソースの最適化を行うリソース最適化ステップを有することを特徴とする請求項9又は請求項10に記載のグリッドコンピューティングシステムのリソース制御方法。
  12. 前記リソース監視ステップで、CPU使用率およびメモリの使用状況を含む仮想マシンのリソース使用状況を一定時間取得し、その一定期間における仮想マシンのリソース使用状況の性能平均値を算出することを特徴とする請求項9から請求項11の何れかに記載のグリッドコンピューティングシステムのリソース制御方法。
  13. 前記分散処理ステップで、管理サーバより送信された分散処理開始命令に従い、前記仮想マシンが実行するタスク毎に分散処理を行う前記仮想マシンモニタを決定することを特徴とする請求項9から請求項12の何れかに記載のグリッドコンピューティングシステムのリソース制御方法。
  14. 前記分散処理ステップで、前記仮想マシンが実行するタスクの分散処理先が他の仮想マシンモニタである場合、当該他の仮想マシンモニタに対して前記インターナルLAN通信ステップを介して前記他の仮想マシンモニタに実行させる実行命令を送信することを特徴とする請求項13に記載のグリッドコンピューティングシステムのリソース制御方法。
  15. 前記分散処理ステップで、前記分散処理開始命令に基づく分散処理が終了した場合、リソースを開放し、処理終了した旨を前記管理サーバへ情報送信することを特徴とする請求項9から請求項14の何れかに記載のグリッドコンピューティングシステムのリソース制御方法。
  16. 仮想マシンを制御する仮想マシンモニタを備える複数のコンピュータをネットワークを介して接続したグリッドコンピューティングシステムのリソース制御プログラムであって、
    前記仮想マシンモニタに、
    前記仮想マシンのリソース使用状況を監視するリソース監視機能と、
    前記仮想マシンのリソース割り当て状況をチェックし、前記仮想マシンのリソース使用状況情報及び前記仮想マシンモニタのリソース空き状況情報を前記管理サーバに通知するパフォーマンスチェック機能と、
    前記仮想マシンのリソースの割り当てが不十分である場合に、前記仮想マシンのリソースの最適化が可能かどうかを判断し、リソースの最適化ができないと判断したときに、前記管理サーバへリソース借用要求を通知するリソース最適化チェック機能を実行させ、
    各仮想マシンモニタと仮想マシンのリソースを一元管理する管理サーバに、
    リソース借用要求があった場合、どの仮想マシンモニタからどの程度のリソースを借用するかを決定し、前記リソース借用要求を通知した前記仮想マシンモニタに、当該仮想マシンモニタの仮想マシンのタスクを他の仮想マシンモニタに実行させる分散処理開始命令を送信する分散先決定機能を実行させ、
    前記仮想マシンモニタに、
    前記管理サーバから送信された分散処理開始命令に従い、自身の仮想マシンのタスクの分散処理を行う分散処理機能を実行させることを特徴とするグリッドコンピューティングシステムのリソース制御プログラム。
  17. 前記仮想マシンモニタに、前記タスクの分散処理を行う実行命令をインターナルLANを介して他の前記仮想マシンモニタ間で送受信させることを特徴とする請求項16に記載のグリッドコンピューティングシステムのリソース制御プログラム。
  18. 前記仮想マシンモニタに、
    前記リソース最適化チェック機能で仮想マシンのリソースの最適化ができると判断した場合に、仮想マシンのリソースの最適化を行うリソース最適化機能を実行させることを特徴とする請求項16又は請求項17に記載のグリッドコンピューティングシステムのリソース制御プログラム。
  19. 前記リソース監視機能で、CPU使用率およびメモリの使用状況を含む仮想マシンのリソース使用状況を一定時間取得し、その一定期間における仮想マシンのリソース使用状況の性能平均値を算出することを特徴とする請求項9から請求項18の何れかに記載のグリッドコンピューティングシステムのリソース制御プログラム。
  20. 前記分散処理機能で、管理サーバより送信された分散処理開始命令に従い、前記仮想マシンが実行するタスク毎に分散処理を行う前記仮想マシンモニタを決定することを特徴とする請求項16から請求項19の何れかに記載のグリッドコンピューティングシステムのリソース制御プログラム。
  21. 前記分散処理機能で、前記仮想マシンが実行するタスクの分散処理先が他の仮想マシンモニタである場合、当該他の仮想マシンモニタに対して前記インターナルLAN通信機能を介して前記他の仮想マシンモニタに実行させる実行命令を送信することを特徴とする請求項13に記載のグリッドコンピューティングシステムのリソース制御プログラム。
  22. 前記分散処理機能で、前記分散処理開始命令に基づく分散処理が終了した場合、リソースを開放し、処理終了した旨を前記管理サーバへ情報送信することを特徴とする請求項16から請求項21の何れかに記載のグリッドコンピューティングシステムのリソース制御プログラム。
JP2009079739A 2009-03-27 2009-03-27 グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム Pending JP2010231601A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009079739A JP2010231601A (ja) 2009-03-27 2009-03-27 グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009079739A JP2010231601A (ja) 2009-03-27 2009-03-27 グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム

Publications (1)

Publication Number Publication Date
JP2010231601A true JP2010231601A (ja) 2010-10-14

Family

ID=43047340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009079739A Pending JP2010231601A (ja) 2009-03-27 2009-03-27 グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム

Country Status (1)

Country Link
JP (1) JP2010231601A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101408037B1 (ko) * 2012-01-13 2014-06-17 주식회사 케이티 클라우드 시스템에서의 가상 머신 통합 모니터링 장치 및 방법
JP2014531677A (ja) * 2012-06-08 2014-11-27 ▲ホア▼▲ウェイ▼技術有限公司 通信装置のハードウェア・リソースの仮想化管理方法および関連装置
US9158554B2 (en) 2013-04-09 2015-10-13 International Business Machines Corporation System and method for expediting virtual I/O server (VIOS) boot time in a virtual computing environment
US9779685B2 (en) 2012-12-19 2017-10-03 Denso Corporation Display control device for vehicle to generate native display images and versatile display images

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997035255A1 (fr) * 1996-03-15 1997-09-25 Hitachi, Ltd. Systeme d'ordinateur virtuel reparti
JP2004199561A (ja) * 2002-12-20 2004-07-15 Hitachi Ltd 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997035255A1 (fr) * 1996-03-15 1997-09-25 Hitachi, Ltd. Systeme d'ordinateur virtuel reparti
JP2004199561A (ja) * 2002-12-20 2004-07-15 Hitachi Ltd 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
伊藤 孝之, 第70回(平成20年)全国大会講演論文集(4) インタフェース コンピュータと人間社会, JPN6013050329, 13 March 2008 (2008-03-13), pages 4 - 517, ISSN: 0002652246 *
宮本 久仁男, XEN 徹底入門, vol. 第1版, JPN6013050328, 19 December 2007 (2007-12-19), pages 183 - 184, ISSN: 0002652245 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101408037B1 (ko) * 2012-01-13 2014-06-17 주식회사 케이티 클라우드 시스템에서의 가상 머신 통합 모니터링 장치 및 방법
JP2014531677A (ja) * 2012-06-08 2014-11-27 ▲ホア▼▲ウェイ▼技術有限公司 通信装置のハードウェア・リソースの仮想化管理方法および関連装置
US9558025B2 (en) 2012-06-08 2017-01-31 Huwaei Technologies Co., Ltd. Inter-board virtualization management for managing hardware resources corresponding to interrupts
US9779685B2 (en) 2012-12-19 2017-10-03 Denso Corporation Display control device for vehicle to generate native display images and versatile display images
US9158554B2 (en) 2013-04-09 2015-10-13 International Business Machines Corporation System and method for expediting virtual I/O server (VIOS) boot time in a virtual computing environment
US9158553B2 (en) 2013-04-09 2015-10-13 International Business Machines Corporation System and method for expediting virtual I/O server (VIOS) boot time in a virtual computing environment

Similar Documents

Publication Publication Date Title
CN107003887B (zh) Cpu超载设置和云计算工作负荷调度机构
KR101781063B1 (ko) 동적 자원 관리를 위한 2단계 자원 관리 방법 및 장치
CN105426245B (zh) 包括分散的部件的动态地组成的计算节点
KR102103596B1 (ko) 계산 작업을 처리하기 위한 컴퓨터 클러스터 장치 및 이를 작동시키기 위한 방법
US9395786B2 (en) Cross-layer power management in a multi-layer system
JP5689526B2 (ja) マルチキュー・ネットワーク・アダプタの動的再構成によるリソース・アフィニティ
US8949847B2 (en) Apparatus and method for managing resources in cluster computing environment
WO2018035856A1 (zh) 实现硬件加速处理的方法、设备和系统
JP5088366B2 (ja) 仮想計算機制御プログラム、仮想計算機制御システムおよび仮想計算機移動方法
US9329664B2 (en) Power management for a computer system
US20060143617A1 (en) Method, apparatus and system for dynamic allocation of virtual platform resources
US8589538B2 (en) Storage workload balancing
US10489208B1 (en) Managing resource bursting
US11740921B2 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
US11169846B2 (en) System and method for managing tasks and task workload items between address spaces and logical partitions
JP2008226181A (ja) 並列実行プログラム、該プログラムを記録した記録媒体、並列実行装置および並列実行方法
KR101432751B1 (ko) 가상화 환경 내 하둡 맵리듀스의 부하 분산 방법 및 시스템
US20200042608A1 (en) Distributed file system load balancing based on available node capacity
WO2012050224A1 (ja) コンピュータリソース制御システム
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
EP4124932A1 (en) System, apparatus and methods for power communications according to a cxl.power protocol
CN112600761A (zh) 一种资源分配的方法、装置及存储介质
US20140289728A1 (en) Apparatus, system, method, and storage medium
CN116319240A (zh) 使用用于确定性微服务性能的交互式矩阵的规模化遥测
JP2010231601A (ja) グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131009

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20131010

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140225