JP2004005113A - Virtual computer system operated on a plurality of actual computers, and control method thereof - Google Patents
Virtual computer system operated on a plurality of actual computers, and control method thereof Download PDFInfo
- Publication number
- JP2004005113A JP2004005113A JP2002158966A JP2002158966A JP2004005113A JP 2004005113 A JP2004005113 A JP 2004005113A JP 2002158966 A JP2002158966 A JP 2002158966A JP 2002158966 A JP2002158966 A JP 2002158966A JP 2004005113 A JP2004005113 A JP 2004005113A
- Authority
- JP
- Japan
- Prior art keywords
- host
- master
- hosts
- virtual
- memory
- 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
Links
- 238000000034 method Methods 0.000 title claims description 22
- 238000004891 communication Methods 0.000 claims abstract description 83
- 238000012545 processing Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 238000012217 deletion Methods 0.000 abstract 1
- 230000037430 deletion Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、複数の実計算機上で動作する仮想計算機システムに関し、特に、実計算機の追加や削除が任意の時点で容易に可能である仮想計算機システムに関する。
【0002】
【従来の技術】
現用系と待機系を有する冗長構成の仮想計算機システムが、従来より、知られている。この種の従来の仮想計算機システムに関する刊行物として、例えば特開平4−141744号公報には、現用系ホストと待機系ホストがスーパー及びホスト間通信装置を介して相互接続され、各ホストは、複数のオペレーティングシステム群を具備して複数のオペレーティングシステムで1個のハードウエアを共有する形態の仮想計算機システムにおいて、各ホストにオペレーティングシステム群を制御するとともに、特定のオペレーティングシステムのみをリセットする制御部を設け、仮想計算機上で動作しているオペレーティングシステム相互の間で待機系オペレーティングシステムが現用系オペレーティングシステムの異常を検出したら、待機系制御部から現用系制御部にスーパーを介してリセットすべきオペレーティングシステムの名前とリセット要求を通知し、現用系では、前記通知に基づいて特定のオペレーティングシステムをリセットするとともに、そのリセット結果を、現用系制御部からスーパーを介して待機系制御部に通知するように構成した仮想計算機のスタンバイ制御システムの構成が開示されている。
【0003】
このスタンバイ制御システムは、現用系のホスト内で動作している子OSが障害を起こした場合に、待機系ホストの子OSに制御を移すことにより、子OS単位で、システムの無停止運用を実現する、というものである。すなわち、現用系の全ての子OSに対して、対応する待機系の子OSを用意できるため、現用系のどの子OSが障害等により、システム停止状態に陥っても、システムの無停止運用が可能とされている。
【0004】
【発明が解決しようとする課題】
しかしながら、従来の仮想計算機システムは、下記記載の問題点を有している。
【0005】
第1の問題点は、計算機のCPU資源が十分に活用されていない、ということである。
【0006】
その理由は、待機系ホストは、通常、現用系ホストの異常に備えたバックアップとして存在しているため、現用系ホストが正常な場合には、待機系CPUは、実際の業務には使用されない遊休状態となるからである。
【0007】
第2の問題点は、ホストの追加や削除ができないということである。
【0008】
その理由は、現用系ホストと待機系ホストの2台の構成しか取り得ないためである。
【0009】
したがって、本発明の目的は、複数のホストのCPUを遊休させることなく、有効に活用する仮想計算機システムとその制御方法を提供することにある。
【0010】
本発明の他の目的は、運用中に任意のホストがダウンした場合でも、正常なホストが少なくとも1台あれば運用が停止しない仮想計算機システムとその制御方法を提供することにある。
【0011】
本発明の他の目的は、運用を停止することなく、任意の時点で、ホストの追加や削除を行うことができる仮想計算機システムとその制御方法を提供することにある。
【0012】
本発明の他の目的は、仮想計算機システムの上で、通常の計算機システム上で動作する任意のプログラムが、改造無しでそのまま動作する仮想計算機システムとその制御方法を提供することにある。
【0013】
【課題を解決するための手段】
上記目的の少なくとも1つを達成する本発明の仮想計算機システムは、仮想計算機を実行する仮想計算機実行手段と制御手段とを備えたホストを複数備え、複数の前記ホストに対してホスト間の通信を制御するホスト間通信手段を備え、前記各ホストの制御手段は前記ホスト間通信手段を介して他のホストと通信する制御を行い、複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段はマスタホスト上で動作し、複数の前記ホストのうちのマスタホスト以外のホストのCPU(中央処理装置)が、前記ホスト間通信手段を介して、前記仮想計算機のCPUとして割り当てられる。
【0014】
本発明において、前記マスタホスト上の前記制御手段は、マスタホストの前記仮想計算機実行手段に対して仮想計算機を実行するための機能を提供し、マスタホスト以外のホストの前記制御手段は、前記ホスト間通信手段を介してマスタホストと通信し、マスタホストからの要求に対して処理を実行し、前記マスタホストから、前記ホスト間通信手段を介して、メモリ、又はメモリ及びディスクの内容がマスタホスト以外のホストにコピーされる。
【0015】
本発明において、マスタホストが動作中、マスタホスト以外のホストが起動された場合、マスタホストの前記制御手段は、前記制御手段のメモリ、ディスクの内容を、前記ホスト間通信手段を介して新しく起動したホストの制御手段のメモリ、ディスクにコピーし、コピー完了後、仮想的なCPUを新たに追加して新しく起動したホストに割り当てる制御を行う構成としてもよい。
【0016】
本発明において、マスタホストが動作中、マスタホスト以外のホストが起動された場合、マスタホストの前記制御手段は、前記制御手段のメモリの内容を、前記ホスト間通信手段を介して新しく起動したホストの制御手段のメモリにコピーし、コピー完了後、仮想的なCPUを新たに追加して新しく起動したホストに割り当てる制御を行う構成としてもよい。
【0017】
本発明において、マスタホスト動作中にマスタホスト以外のホストがダウンした場合、前記ダウンしたホストに割り当てていた仮想的なCPUを削除する構成としてもよい。
【0018】
本発明において、マスタホストが未決定である場合、前記複数のホストのうち識別番号の値に基づき、1つのホストをマスタホストとする構成としてもよい。
【0019】
本発明において、前記複数のホストのうちマスタホストが障害発生等でダウンした場合、マスタホスト以外のホストのうちからマスタとなるホストが決定される構成としてもよい。
【0020】
本発明の他のアスペクト(側面)に係る方法は、仮想計算機を実行する仮想計算機実行手段と制御手段とを備えたホストを複数備え、ホスト間通信手段で前記ホスト間を通信を制御する仮想計算機システムの実行制御方法であって、複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段をマスタホスト上で動作させるステップと、複数の前記ホストのうちの前記マスタホスト以外のホストのCPU(中央処理装置)を、ホスト間通信手段を経由して前記仮想計算機のCPUとして割り当てるステップと、を含む。
【0021】
本発明に係る方法においては、前記マスタホストのメモリ、又はディスクとメモリの内容を、前記マスタホスト以外の全ホストにコピーするステップを有し、任意の時点でのホストの追加削除を可能としている。
【0022】
本発明に係る方法においては、複数の前記ホストに対して共用のディスクを用意しておき、マスタホストから他のホストへのディスクの内容のコピーを不要としている。
【0023】
【発明の実施の形態】
本発明の実施の形態について図面を参照して詳細に説明する。図1は、本発明の第1の実施の形態の構成を示す図である。図1を参照すると、本発明の第1の実施の形態のシステムは、プログラム制御により動作する複数ホスト3、4、5と、ホスト3、4、5に接続され、ホスト同士の通信に用いるホスト間通信手段1と、ホスト3、4、5に接続され、ホストの入出力(I/O)機能を提供するI/O装置2と、を備えている。
【0024】
各ホスト3、4、5は、仮想計算機実行手段31と制御手段32とを含む。なお、図1には、単に図面作成の都合及び説明の簡単のために、ホスト三台の構成が示されているが、本発明においてホストの台数は複数台とされ、3台に限定されるものでないことは勿論である。
【0025】
図2は、図1の仮想計算機実行手段31の構成を示す図である。仮想計算機実行手段31は、各ホスト3、4、5で同一構成とされる。図2を参照すると、仮想計算機実行手段31は、ゲストオペレーティングシステム311と、仮想メモリ提供手段312と、仮想ディスク提供手段313と、仮想CPU提供手段314と、仮想I/O提供手段315とを備えている。これらの手段はそれぞれ概略つぎのように動作する。
【0026】
仮想計算機実行手段31は、複数の正常なホストのうちマスタとなる1つのホスト上でのみ動作する。このホストを「マスタホスト」と呼ぶ。
【0027】
ゲストオペレーティングシステム311は、仮想計算機上で動作するオペレーティングシステムである。ゲストオペレーティングシステム311としては、例えば、通常の計算機上で動作する、汎用のオペレーティングシステムがそのまま用いられる。
【0028】
仮想メモリ提供手段312、仮想ディスク提供手段313、仮想CPU提供手段314、仮想I/O提供手段315を、ゲストオペレーティングシステム311で利用するために、ドライバが追加される。
【0029】
ゲストオペレーティングシステム311上で動作させるプログラムは、並列処理を意識したプログラムであってある必要はなく、通常の計算機上で動作するプログラムを変更無しに、そのまま動作させることが可能である。ゲストオペレーティングシステム311上で動作させるプログラムは、並列処理対応のプログラムであってもよい。
【0030】
仮想メモリ提供手段312は、仮想計算機を構成する仮想的なメモリを、ゲストオペレーティングシステム311に提供する。
【0031】
仮想ディスク提供手段313は、仮想計算機を構成する仮想的なディスクをゲストオペレーティングシステム311に提供する。
【0032】
仮想CPU提供手段314は、仮想計算機を構成する仮想的なCPUをゲストオペレーティングシステム311に提供する。
【0033】
仮想I/O提供手段315は、仮想計算機を構成する仮想的なI/Oデバイスをゲストオペレーティングシステム311に提供する。
【0034】
図3は、図1の制御手段32の構成を示す図である。制御手段32は、各ホスト3、4、5で同一の構成とされる。図3を参照すると、制御手段32は、ホスト制御手段321と、メモリ制御手段322と、ディスク制御手段323と、CPU制御手段324と、I/O制御手段325と、メモリ装置326と、ディスク装置327と、CPU装置328と、通信制御手段329をを備えている。これらの手段はそれぞれ概略つぎのように動作する。
【0035】
制御手段32は、ホスト3、4、5のうち全ての正常なホストの上で動作する。
【0036】
マスタホストでは、制御手段32は、仮想計算機実行手段31に対して、仮想計算機を実行するのに必要な機能を提供する。マスタホスト以外のホストでは、制御手段32は、ホスト間通信手段1経由で、マスタホストと通信し、マスタホストからの要求に対して、処理を実行する。
【0037】
ホスト制御手段321は、通信制御手段329を通じて、他のホストのホスト制御手段321と通信し、どのホストが正常であるかの判定を行う。
【0038】
また、ホスト制御手段321は、通信制御手段329を通じて、どのホストがマスタホストとなるべきかを判定する。
【0039】
さらに、ホスト制御手段321は、通信制御手段329を通じて、ホストのダウン、ダウンしていたホストの復帰、新たなホストの追加、既存のホストの除去(取り外し)を検出する。
【0040】
メモリ制御手段322は、仮想メモリの制御を行う。仮想計算機上でメモリの書き込みが行われた場合には、全てのホストのメモリ制御手段322を経由して全てのホストのメモリ装置326に情報が書き込まれる。
【0041】
ディスク制御手段323は、仮想ディスクの制御を行う。仮想計算機上でディスクの書き込みが行われた場合には、全てのホストのディスク制御手段323を経由して全てのホストのディスク装置327に情報が書き込まれる。
【0042】
CPU制御手段324は、仮想CPUの制御を行う。仮想計算機は、複数のCPUを持つ計算機であるように振舞う。仮想計算機上のそれぞれの仮想CPUは、各ホストのCPU制御手段324と対応付けられ、CPU装置328に割り当てられる。
【0043】
I/O制御手段325は、仮想I/Oデバイスの制御を行う。仮想計算機上で入出力(I/O)が行われた場合には、マスタホストのI/O制御手段を経由してI/O手段2で入出力操作(I/O)が行われる。
【0044】
通信制御手段329は、上位の各手段に対して他のホストと通信する手段を提供する。
【0045】
図4は、この実施の形態の動作の一例を説明するための流れ図である。次に、図4のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。
【0046】
まず、各ホストは、他のホストと通信し、正常に起動しているホストリストを決定する(図4のステップA−1)。決定ルールは、正常起動しているかどうかの通信電文に対して、一定時間以内に正常な応答が得られたホストを正常と判断する。
【0047】
次に、マスタホストを決定する(ステップA−2)。マスタホストの決定ルールは、例えば以下のようなルールとされる。すでにマスタホストとして動作しているホストが存在すれば、そのホストがマスタホストである。もし、マスタホストとして動作しているホストが存在していなければ、正常に起動しているホストのうち、最も小さいホストIDを持っているホストをマスタホストとして決定する。
【0048】
自ホストがマスタホストであれば、以降は、マスタモードで動作する(ステップA−3、A−4)。
【0049】
マスタモードでのホスト(マスタホスト)の動作は、以下のようなものである。
【0050】
まず、マスタホストは、仮想計算機実行手段31を実行し、ゲストオペレーティングシステム311を起動する。
【0051】
マスタホストにおいて、ゲストオペレーティングシステム311上でメモリ読み込みが発生した場合には、仮想メモリ提供手段312を経由して、ホスト制御手段321に、メモリ読み込み要求が伝達される。ホスト制御手段321はメモリ制御手段322を通じてメモリ装置326からデータを読み出す。
【0052】
マスタホストにおいて、ゲストオペレーティングシステム311上でメモリ書き込みが発生した場合には、仮想メモリ提供手段312を経由して、ホスト制御手段321にメモリ書き込み要求が伝達される。ホスト制御手段321はメモリ制御手段322を通じてメモリ装置326にデータを書き込む。また、同時に、マスタホストのメモリ制御手段322は、通信制御手段329、ホスト間通信手段1を介して、他の正常ホストに、書き込まれたデータを伝達する。
【0053】
マスタホストにおいて、ゲストオペレーティングシステム311上でディスク読み込みが発生した場合には、仮想ディスク提供手段313を経由して、ホスト制御手段321にディスク読み込み要求が伝達される。ホスト制御手段321はディスク制御手段323を通じてディスク装置327からデータを読み出す。
【0054】
マスタホストにおいて、ゲストオペレーティングシステム311上でディスク書き込みが発生した場合には仮想ディスク提供手段313を経由して、ホスト制御手段321にディスク書き込み要求が伝達される。ホスト制御手段321はディスク制御手段323を通じてディスク装置327にデータを書き込む。また、同時に、マスタホストのディスク制御手段323は、通信制御手段329、ホスト間通信手段1を介して、他の正常ホストに、書き込まれたデータを伝達する。
【0055】
マスタホストにおいて、ゲストオペレーティングシステム311上でのプログラムコードの実行は、正常ホストの個数分のCPUが、並列に処理する。仮想CPU提供手段314は、ゲストオペレーティングシステム311に対して、あたかも正常ホストの数だけのCPUがが存在するように振舞う。
【0056】
仮想的なそれぞれのCPUは、各ホストに割り当てられる。
【0057】
ホスト制御手段321は、各ホストのCPUが動作するのに必要な情報をCPU制御手段324に渡し、また実行結果を、CPU制御手段324から受け取る。マスタホストにおいて、CPU制御手段324は、必要に応じて、各ホストと通信して、各ホストに割り当てられたCPU実行に関する情報のやりとりを行う。
【0058】
マスタホストにおいて、ゲストオペレーティングシステム311上でI/O入力が発生した場合には、仮想I/O提供手段315を経由して、ホスト制御手段321にI/O入力要求が伝達される。ホスト制御手段321は、I/O制御手段325を通じてI/O装置2からデータを入力する。
【0059】
マスタホストにおいて、ゲストオペレーティングシステム311上でI/O出力が発生した場合には、仮想I/O提供手段315を経由して、ホスト制御手段321にI/O出力要求が伝達される。ホスト制御手段321はI/O制御手段325を通じてI/O装置2にデータを出力する。
【0060】
また、マスタモードで動作中に、他のホストが起動した場合には、マスタホストは、メモリ装置326及びディスク装置327の内容を、新しく起動したホストにコピーする。マスタホストは、コピーが完了した後、仮想的なCPUを新しく追加し、新しく起動したホストに割り当てる。
【0061】
マスタモードで動作中に、他のホストがダウンした場合には、マスタホストは、ダウンしたホストに割り当てていた仮想的なCPUを削除する。
【0062】
自ホストがマスタホストでなければ、以降は、スレーブモードで動作する(ステップA−3、A−5)。スレーブモードでの動作は、以下のようなものである。
【0063】
まず、マスタホストからホスト間通信手段1を通じて、マスタホストのメモリ装置326及びディスク装置327の記憶内容をコピーする。マスタホストのメモリの記憶内容は、ホスト間通信手段1、スレーブホストの通信制御手段329及びメモリ制御手段322を経由して、スレーブホストのメモリ装置326に書き込まれる。マスタホストのディスクの記憶内容は、ホスト間通信手段1、スレーブホストの通信制御手段329及びディスク制御手段323を経由してスレーブホストのディスク装置327に書き込まれる。
【0064】
マスタホストからメモリ書き込みが伝達された場合、ホスト間通信手段1、通信制御手段329及びメモリ制御手段322を経由してスレーブホストのメモリ装置326に書き込まれる。
【0065】
マスタホストからディスク書き込みが伝達された場合、ホスト間通信手段1、通信制御手段329及びディスク制御手段323を経由してスレーブホストのディスク装置327に書き込まれる。
【0066】
マスタホストからCPU実行に必要なデータが伝達された場合、ホスト間通信手段1、スレーブホストの通信制御手段329及びCPU制御手段324を経由して、スレーブホストのCPU装置328で命令コードが実行され、その結果は、スレーブホストのCPU制御装置324及び通信制御手段329、ホスト間通信手段1を経由して、マスタホストに返却される。
【0067】
スレーブモードで動作中に、マスタホストがダウンした場合には、ステップA−2と同様のマスタホスト決定を再試行し、その結果、自ホストがマスタホストとなった場合は、ステップA−4のマスタモードで動作を実行する。
【0068】
【実施例】
次に、具体的な実施例を用いて本実施の形態の動作を説明する。
【0069】
例えば、図1のようにホストが3台存在する構成において、全てのホストが正常に起動した場合、ホスト3がマスタモードとして動作し、ホスト4及びホスト5がスレーブモードで動作する。
【0070】
ホスト3の上の仮想計算機実行手段31のメモリ及びディスクの内容は、ホスト4及びホスト5に、随時、複製が作成される。
【0071】
また、仮想計算機実行手段31は、あたかも3つのCPUを持っているかのように振舞い、それぞれのCPUとして、実際には、ホスト3、ホスト4、ホスト5のCPUが使われる。この状態で、なんらかの障害によりホスト3がダウンした場合、ホスト4がマスタホストとして動作を開始する。仮想計算機のディスク及びメモリの内容は実行状態はホスト3がダウンする直前の状態がそのまま使われるため、仮想計算機上で実行していた業務は、ホスト3がダウンした影響を受けずに、そのまま継続することができる。
【0072】
次に、ホスト3が再起動して正常な状態になった場合、ホスト4がマスタホストのままであるが、ホスト4とホスト5の2台分のCPUしか用いられていなかった状態から、ホスト3、ホスト4、ホスト5の3台分のCPUが使用できる状態に移行するため、実行速度が上昇する。
【0073】
【第2の実施の形態】
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。図5は、本発明の第2の実施の形態の構成を示す図である。図5参照すると、本発明の第2の実施の形態は、図1の構成に、ホスト3、4、5に接続されている共有ディスク装置6が追加されている。すなわち、ホスト同士の通信に用いるホスト間通信手段1と、I/Oを提供するI/O装置2と、プログラム制御により動作する複数台のホスト(ホスト3、ホスト4、ホスト5)と、共有ディスク装置6から構成されている。それぞれのホストは、仮想計算機実行手段31と制御手段32Aとを含む。
【0074】
図6は、図5の仮想計算機実行手段31の構成を示す図である。この第2の実施の形態の仮想計算機実行手段31は、図2に示した前記実施の形態の仮想計算機実行手段31と同様とされる。すなわち、図6を参照すると、仮想計算機実行手段31は、ゲストオペレーティングシステム311と、仮想メモリ提供手段312と、仮想ディスク提供手段313と仮想CPU提供手段314と仮想I/O提供手段315から構成されている。仮想計算機実行手段31は、複数の正常なホストのうちの1つの上でのみ動作する。このホストをマスタホストと呼ぶ。ゲストオペレーティングシステム311は、仮想計算機上で動作するオペレーティングシステムであり、業務に必要な任意のプログラムを実行することが可能である。仮想メモリ提供手段312は、仮想計算機を構成する仮想的なメモリをゲストオペレーティングシステムに提供する。仮想ディスク提供手段313は、仮想計算機を構成する仮想的なディスクをゲストオペレーティングシステムに提供する。仮想CPU提供手段314は、仮想計算機を構成する仮想的なCPUをゲストオペレーティングシステムに提供する。仮想I/O提供手段315は、仮想計算機を構成する仮想的なI/Oデバイスをゲストオペレーティングシステムに提供する。
【0075】
図7は、図5の制御手段32Aの構成を示す図である。図7を参照すると、制御手段32Aは、ホスト制御手段321と、メモリ制御手段322と、ディスク制御手段323Aと、CPU制御手段324と、I/O制御手段325と、メモリ装置326と、CPU装置328と、通信制御手段329から構成されている。前記実施の形態と相違して、第2の実施の形態の制御手段32Aは、ディスク装置327を具備しない。これらの手段はそれぞれ概略つぎのように動作する。
【0076】
制御手段32Aは、全ての正常なホストの上で動作する。マスタホストでは、仮想計算機実行手段31に対して仮想計算機を実行するのに必要な機能を提供する。マスタホスト以外のホストでは、ホスト間通信手段1経由でマスタホストと通信し、マスタホストからの要求に対して処理を実行する。
【0077】
ホスト制御手段321は、通信制御手段329を通じて、他のホストのホスト制御手段と通信し、どのホストが正常であるかの判定を行う。また、どのホストがマスタホストとなるべきかを判定する。また、ホストのダウン、ダウンしていたホストの復帰、新たなホストの追加、既存のホストの除去(取り外し)を検出する。
【0078】
メモリ制御手段322は、仮想メモリの制御を行う。仮想計算機上でメモリの書き込みが行われた場合には、全てのホストのメモリ制御手段322を経由して全てのホストのメモリ装置326に情報が書き込まれる。
【0079】
ディスク制御手段323Aは、仮想ディスクの制御を行う。仮想計算機上でディスクの書き込みが行われた場合には、ディスク制御手段323を経由して、共有ディスク装置6に情報が書き込まれる。
【0080】
CPU制御手段324は、仮想CPUの制御を行う。仮想計算機は、複数のCPUを持つ計算機であるように振舞う。仮想計算機上のそれぞれの仮想CPUは、各ホストのCPU制御手段324と対応付けられ、CPU装置328に割り当てられる。
【0081】
I/O制御手段325は、仮想I/Oデバイスの制御を行う。仮想計算機上でI/Oがが行われた場合には、マスタホストのI/O制御手段を経由してI/O手段2でI/Oが行われる。
【0082】
通信制御手段329は、上位の各手段に対して他のホストと通信する手段を提供する。
【0083】
この第2の実施の形態の動作は、図4を参照して説明した前記第1の実施の形態と基本的に同様であるが、ゲストオペレーティングシステム上でディスク読み込み、ディスク書き込みの動作が相違している。以下、相違点について主に説明する。
【0084】
マスタモードでの動作は、以下のようなものである。まず、仮想計算機実行手段31を実行し、ゲストオペレーティングシステム311を起動する。
【0085】
マスタホストにおいて、ゲストオペレーティングシステム上でディスク読み込みが発生した場合には仮想ディスク提供手段313を経由して、ホスト制御手段321にディスク読み込み要求が伝達される。ホスト制御手段321はディスク制御手段323を通じて共有ディスク装置6から、データを読み出す。
【0086】
マスタホストにおいて、ゲストオペレーティングシステム上でディスク書き込みが発生した場合には仮想ディスク提供手段313を経由して、ホスト制御手段321にディスク書き込み要求が伝達される。ホスト制御手段321はディスク制御手段323を通じて共有ディスク装置6のデータを書き込む。
【0087】
また、マスタモードで動作中に、他のホストが起動した場合には、メモリの内容を全て新しく起動したホストにコピーする。コピーが完了した後、仮想的なCPUを新しく追加し、新しく起動したホストに割り当てる。この際、前記第1の実施の形態と相違して、マスタホストから他のホストへのディスクのコピーは行われない。
【0088】
マスタモードで動作中に、他のホストがダウンした場合には、ダウンしたホストに割り当てていた仮想的なCPUを削除する。
【0089】
自ホストがマスタホストでなければ、以降はスレーブモードで動作する(ステップA−3、A−5)。スレーブモードでの動作は、以下のようなものである。まず、マスタホストから、ホスト間通信手段1を通じて、メモリの記憶内容をコピーする。メモリの記憶内容は、通信制御手段329及びメモリ制御手段322を経由して、メモリ装置326に書き込まれる。なお、この実施の形態では、前記第1の実施の形態と相違して、マスタホストから他のホストへのディスクのコピーは行われない。
【0090】
マスタホストからメモリ書き込みが伝達された場合、ホスト間通信手段1を通じて、スレーブホストの通信制御手段329及びメモリ制御手段322を経由してスレーブホストのメモリ装置326に書き込まれる。
【0091】
マスタホストから、ホスト間通信手段1を通じて、CPU実行に必要なデータがスレーブホストに伝達された場合、通信制御手段329及びCPU制御手段324を経由して、スレーブホストのCPU装置328で命令コードが実行され、その結果は、スレーブホストのCPU制御装置324及び通信制御手段329と、ホスト間通信手段1を経由して、マスタホストに返却される。
【0092】
前記実施の形態と同様、スレーブモードで動作中に、マスタホストがダウンした場合には、ステップA−2と同様のマスタホスト決定を再試行し、その結果、自ホストがマスタホストとなった場合は、ステップA−4のマスタモードで動作を実行する。
【0093】
次に、本実施の形態の作用効果について説明する。
【0094】
本実施の形態では、ディスク装置を各ホストに具備するのではなく、システムとして、1つの共有ディスク装置として構成されている。このため、ディスクのデータを各ホストにコピーすることが不要とされている。この結果、本実施の形態では、ホストの起動に必要な時間を短縮することができるという作用効果を奏する。
【0095】
以上本発明を上記実施形態に即して説明したが、本発明は、上記実施形態にのみ限定されるものでなく、特許請求の範囲の各請求項の発明の範囲内で当業者であればなし得る各種変形、修正を含むことは勿論である。
【0096】
【発明の効果】
以上説明したように、本発明によれば下記記載の効果を奏する。
【0097】
本発明の第1の効果は、仮想計算機システムにおいて、CPU資源を有効に活用し、高い実行速度を実現することができる、ということである。
【0098】
その理由は、本発明においては、マスタホスト以外のホストのCPUも仮想計算機上のCPUとして割り当てられるためである。
【0099】
本発明の第2の効果は、運用中に任意のホストがダウンした場合でも、正常なホストが最低1台あれば運用が停止しない、ということである。
【0100】
その理由は、本発明においては、メモリやディスクの内容を各ホストに随時コピーしているため、どのホストがダウンしても、残った正常なサーバで運用を継続するのに必要な情報を全て保持しているためである。
【0101】
本発明の第3の効果は、計算機を任意の時点で追加や削除できる、ということである。その理由は、上記第2の効果と同じ理由によるものである。
【0102】
本発明の第4の効果は、実行するアプリケーションプログラムは、通常の計算機で動作するものを変更無しでそのまま仕様することが可能である、ということである。
【0103】
その理由は、本発明においては、仮想計算機上では通常の計算機上と同様のオペレーティングシステムが動作するため、アプリケーションプログラムに対して、通常の計算機で動作しているのと全く同じ機能を提供するためである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を示す図である。
【図2】本発明の第1の実施の形態の仮想計算機実行手段の構成を示す図である。
【図3】本発明の第1の実施の形態の制御手段の構成を示す図である。
【図4】本発明の第1及び第2の実施の形態の動作を示す流れ図である。
【図5】本発明の第2の実施の形態の構成を示す図である。
【図6】本発明の第2の実施の形態の仮想計算機実行手段の構成を示す図である。
【図7】本発明の第2の実施の形態の制御手段の構成を示す図である。
【符号の説明】
1 ホスト間通信手段
2 I/O装置(I/O手段)
3、4、5 ホスト
31 仮想計算機実行手段
311 ゲストオペレーティングシステム
312 仮想メモリ提供手段
313 仮想ディスク提供手段
314 仮想CPU提供手段
315 仮想I/O提供手段
32 制御手段
321 ホスト制御手段
322 メモリ制御手段
323 ディスク制御手段
324 CPU制御手段
325 I/O制御手段
326 メモリ装置
327 ディスク装置
328 CPU装置
329 通信制御手段
6 共有ディスク装置[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a virtual computer system operating on a plurality of real computers, and more particularly, to a virtual computer system in which real computers can be easily added or deleted at any time.
[0002]
[Prior art]
2. Description of the Related Art A redundant virtual computer system having an active system and a standby system has been conventionally known. As a publication related to this type of conventional virtual computer system, for example, Japanese Patent Application Laid-Open No. 4-141744 discloses that an active host and a standby host are interconnected via a super and inter-host communication device. In a virtual machine system having a configuration in which a plurality of operating systems share one piece of hardware with a plurality of operating systems, each host controls the operating system group and a control unit that resets only a specific operating system. If the standby operating system detects an abnormality in the active operating system among operating systems operating on the virtual machine, the operating system to be reset from the standby control unit to the active control unit via a supermarket. of The active system resets a specific operating system based on the notification, and notifies the standby system control unit of the reset result from the active system control unit via a supermarket. A configuration of a virtual machine standby control system described above is disclosed.
[0003]
This standby control system allows non-stop operation of the system in units of child OSs by transferring control to the child OS of the standby host when the child OS operating in the active host fails. To achieve it. That is, since a corresponding standby child OS can be prepared for all the child OSs of the active system, even if any child OS of the active system falls into a system halt state due to a failure or the like, the system can be operated without interruption. It is possible.
[0004]
[Problems to be solved by the invention]
However, the conventional virtual computer system has the following problems.
[0005]
The first problem is that the CPU resources of the computer are not fully utilized.
[0006]
The reason is that the standby host usually exists as a backup in preparation for the failure of the active host. Therefore, if the active host is normal, the standby CPU is not used for actual business. It is because it becomes a state.
[0007]
The second problem is that a host cannot be added or deleted.
[0008]
The reason for this is that only two systems, an active host and a standby host, can be used.
[0009]
Therefore, an object of the present invention is to provide a virtual machine system and a control method therefor that effectively utilize the CPUs of a plurality of hosts without idleness.
[0010]
It is another object of the present invention to provide a virtual computer system and a control method thereof, in which even if an arbitrary host goes down during operation, the operation is not stopped if at least one normal host is down.
[0011]
Another object of the present invention is to provide a virtual computer system capable of adding or deleting a host at any time without stopping operation, and a control method thereof.
[0012]
Another object of the present invention is to provide a virtual computer system in which an arbitrary program operating on a normal computer system can operate without modification on the virtual computer system, and a control method thereof.
[0013]
[Means for Solving the Problems]
A virtual computer system according to the present invention that achieves at least one of the above objects includes a plurality of hosts each including a virtual computer execution unit that executes a virtual computer and a control unit, and performs communication between the hosts with respect to the plurality of hosts. And a control unit for each host controls communication with another host via the inter-host communication unit, and one of the plurality of hosts is a master (mast host). The virtual machine execution means operates on the master host, and a CPU (central processing unit) of a host other than the master host among the plurality of hosts is connected to the host via the inter-host communication means. , Are assigned as CPUs of the virtual machine.
[0014]
In the present invention, the control means on the master host provides a function for executing a virtual machine to the virtual machine execution means of the master host, and the control means of a host other than the master host includes the host Communicates with the master host through the inter-communication means, executes processing in response to a request from the master host, and transfers the contents of the memory or the memory and the disk from the master host through the inter-host communication means. Is copied to other hosts.
[0015]
In the present invention, when a host other than the master host is started while the master host is operating, the control means of the master host newly starts the contents of the memory and disk of the control means via the inter-host communication means. The control means of the host may copy the data to a memory or a disk, and after the copy is completed, control may be performed so that a virtual CPU is newly added and assigned to the newly started host.
[0016]
In the present invention, when a host other than the master host is started while the master host is operating, the control unit of the master host stores the contents of the memory of the control unit in the newly started host via the inter-host communication unit. May be copied to the memory of the control means, and after the copy is completed, a control may be performed in which a virtual CPU is newly added and assigned to a newly started host.
[0017]
In the present invention, when a host other than the master host goes down during the operation of the master host, the virtual CPU allocated to the downed host may be deleted.
[0018]
In the present invention, when the master host is undecided, one of the plurality of hosts may be set as the master host based on the value of the identification number.
[0019]
In the present invention, when a master host among the plurality of hosts goes down due to a failure or the like, a host to be a master may be determined from hosts other than the master host.
[0020]
A method according to another aspect of the present invention includes a plurality of hosts each including a virtual machine execution unit for executing a virtual machine and a control unit, wherein the virtual machine controls communication between the hosts by an inter-host communication unit. A method for controlling execution of a system, wherein one of a plurality of hosts serves as a master (a host that is a mast is referred to as a “master host”), and the virtual machine execution means operates on a master host; Assigning a CPU (Central Processing Unit) of a host other than the master host among the hosts as a CPU of the virtual machine via inter-host communication means.
[0021]
In the method according to the present invention, the method includes a step of copying the memory of the master host or the contents of the disk and the memory to all hosts other than the master host, so that the host can be added or deleted at any time. .
[0022]
In the method according to the present invention, a common disk is prepared for the plurality of hosts, and it is unnecessary to copy the contents of the disk from the master host to another host.
[0023]
BEST MODE FOR CARRYING OUT THE INVENTION
Embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram showing a configuration of the first exemplary embodiment of the present invention. Referring to FIG. 1, a system according to a first embodiment of the present invention includes a plurality of
[0024]
Each of the
[0025]
FIG. 2 is a diagram showing the configuration of the virtual machine execution means 31 of FIG. The virtual machine execution means 31 has the same configuration in each of the
[0026]
The virtual machine execution means 31 operates only on one host that is a master among a plurality of normal hosts. This host is called a “master host”.
[0027]
The
[0028]
A driver is added to use the virtual
[0029]
The program that operates on the
[0030]
The virtual
[0031]
The virtual
[0032]
The virtual
[0033]
The virtual I /
[0034]
FIG. 3 is a diagram showing a configuration of the control means 32 of FIG. The control means 32 has the same configuration for each of the
[0035]
The control means 32 operates on all the normal hosts among the
[0036]
In the master host, the
[0037]
The
[0038]
Further, the
[0039]
Further, the
[0040]
The memory control unit 322 controls a virtual memory. When the memory is written on the virtual machine, the information is written to the
[0041]
The disk control unit 323 controls a virtual disk. When a disk is written on the virtual machine, information is written to the disk devices 327 of all hosts via the disk control means 323 of all hosts.
[0042]
The CPU control unit 324 controls a virtual CPU. The virtual machine behaves as a computer having a plurality of CPUs. Each virtual CPU on the virtual machine is associated with the CPU control means 324 of each host, and is assigned to the
[0043]
The I /
[0044]
The
[0045]
FIG. 4 is a flowchart for explaining an example of the operation of this embodiment. Next, the overall operation of the present embodiment will be described in detail with reference to the flowchart of FIG.
[0046]
First, each host communicates with another host to determine a list of hosts that are operating normally (step A-1 in FIG. 4). The determination rule determines that a host that has received a normal response within a certain period of time in response to a communication message indicating whether or not it has been started normally is normal.
[0047]
Next, a master host is determined (step A-2). The rules for determining the master host are as follows, for example. If there is a host already operating as the master host, that host is the master host. If there is no host operating as the master host, the host having the smallest host ID among the normally activated hosts is determined as the master host.
[0048]
If the host itself is the master host, it operates in the master mode thereafter (steps A-3 and A-4).
[0049]
The operation of the host (master host) in the master mode is as follows.
[0050]
First, the master host executes the virtual machine execution means 31 and starts the
[0051]
When a memory read occurs on the
[0052]
When a memory write occurs on the
[0053]
When a disk read occurs on the
[0054]
In the master host, when a disk write occurs on the
[0055]
In the master host, the execution of the program code on the
[0056]
Each virtual CPU is assigned to each host.
[0057]
The
[0058]
When an I / O input occurs on the
[0059]
When an I / O output occurs on the
[0060]
Further, when another host is started during operation in the master mode, the master host copies the contents of the
[0061]
If another host goes down while operating in the master mode, the master host deletes the virtual CPU assigned to the downed host.
[0062]
If the own host is not the master host, it operates in the slave mode thereafter (steps A-3 and A-5). The operation in the slave mode is as follows.
[0063]
First, the contents stored in the
[0064]
When a memory write is transmitted from the master host, it is written to the
[0065]
When a disk write is transmitted from the master host, it is written to the disk device 327 of the slave host via the inter-host communication means 1, the communication control means 329, and the disk control means 323.
[0066]
When data necessary for CPU execution is transmitted from the master host, the instruction code is executed by the
[0067]
If the master host goes down during operation in the slave mode, the same master host determination as in step A-2 is retried. As a result, if the own host becomes the master host, the operation proceeds to step A-4. Execute operation in master mode.
[0068]
【Example】
Next, the operation of the present embodiment will be described using a specific example.
[0069]
For example, in a configuration in which three hosts exist as shown in FIG. 1, when all the hosts start normally, the
[0070]
The contents of the memory and the disk of the virtual machine execution means 31 on the
[0071]
The virtual machine execution means 31 behaves as if it has three CPUs, and the CPUs of the
[0072]
Next, when the
[0073]
[Second embodiment]
Next, a second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 5 is a diagram showing a configuration of the second exemplary embodiment of the present invention. Referring to FIG. 5, in the second embodiment of the present invention, a shared disk device 6 connected to
[0074]
FIG. 6 is a diagram showing the configuration of the virtual machine execution means 31 of FIG. The virtual machine execution means 31 of the second embodiment is the same as the virtual machine execution means 31 of the embodiment shown in FIG. That is, referring to FIG. 6, the virtual machine execution means 31 is composed of a
[0075]
FIG. 7 is a diagram showing a configuration of the control means 32A of FIG. Referring to FIG. 7, the
[0076]
The control means 32A operates on all normal hosts. The master host provides the virtual machine execution means 31 with functions necessary to execute the virtual machine. Hosts other than the master host communicate with the master host via the inter-host communication means 1 and execute processing in response to requests from the master host.
[0077]
The
[0078]
The memory control unit 322 controls a virtual memory. When the memory is written on the virtual machine, the information is written to the
[0079]
The disk control unit 323A controls a virtual disk. When a disk is written on the virtual machine, information is written to the shared disk device 6 via the disk control unit 323.
[0080]
The CPU control unit 324 controls a virtual CPU. The virtual machine behaves as a computer having a plurality of CPUs. Each virtual CPU on the virtual machine is associated with the CPU control means 324 of each host, and is assigned to the
[0081]
The I /
[0082]
The
[0083]
The operation of the second embodiment is basically the same as that of the first embodiment described with reference to FIG. 4, except that the operation of reading and writing the disk on the guest operating system is different. ing. Hereinafter, differences will be mainly described.
[0084]
The operation in the master mode is as follows. First, the virtual machine execution means 31 is executed, and the
[0085]
In the master host, when a disk read occurs on the guest operating system, a disk read request is transmitted to the
[0086]
In the master host, when a disk write occurs on the guest operating system, a disk write request is transmitted to the
[0087]
When another host is started up while operating in the master mode, the entire contents of the memory are copied to the newly started up host. After the copy is completed, a new virtual CPU is added and assigned to the newly started host. At this time, unlike the first embodiment, copying of the disk from the master host to another host is not performed.
[0088]
If another host goes down while operating in the master mode, the virtual CPU assigned to the downed host is deleted.
[0089]
If the own host is not the master host, it operates in the slave mode thereafter (steps A-3 and A-5). The operation in the slave mode is as follows. First, the contents stored in the memory are copied from the master host through the inter-host communication means 1. The contents stored in the memory are written to the
[0090]
When the memory write is transmitted from the master host, it is written to the slave
[0091]
When data necessary for CPU execution is transmitted from the master host to the slave host via the inter-host communication means 1, the instruction code is transmitted to the slave
[0092]
When the master host goes down while operating in the slave mode as in the above-described embodiment, the same master host determination as in step A-2 is retried, and as a result, the own host becomes the master host. Executes the operation in the master mode in step A-4.
[0093]
Next, the operation and effect of the present embodiment will be described.
[0094]
In this embodiment, a disk device is not provided in each host, but is configured as a single shared disk device as a system. Therefore, it is unnecessary to copy the data of the disk to each host. As a result, in the present embodiment, there is an operational effect that the time required for starting the host can be reduced.
[0095]
Although the present invention has been described with reference to the above embodiments, the present invention is not limited to only the above embodiments, and is not limited to those skilled in the art within the scope of the claims. Needless to say, various variations and modifications to be obtained are included.
[0096]
【The invention's effect】
As described above, according to the present invention, the following effects can be obtained.
[0097]
A first effect of the present invention is that a high execution speed can be realized in a virtual machine system by effectively utilizing CPU resources.
[0098]
The reason is that, in the present invention, CPUs of hosts other than the master host are also assigned as CPUs on the virtual machine.
[0099]
A second effect of the present invention is that even if an arbitrary host goes down during operation, the operation does not stop if there is at least one normal host.
[0100]
The reason is that, in the present invention, since the contents of the memory and the disk are copied to each host as needed, even if any host goes down, all the information necessary to continue the operation on the remaining normal server is obtained. This is because it is held.
[0101]
A third effect of the present invention is that a computer can be added or deleted at any time. The reason is the same as the second effect.
[0102]
A fourth effect of the present invention is that an application program to be executed can be used as it is on a normal computer without any change.
[0103]
The reason is that, in the present invention, since the same operating system operates on a virtual machine as on a normal machine, it provides the application program with exactly the same functions as those running on a normal machine. It is.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a first exemplary embodiment of the present invention.
FIG. 2 is a diagram illustrating a configuration of a virtual machine execution unit according to the first embodiment of this invention.
FIG. 3 is a diagram illustrating a configuration of a control unit according to the first embodiment of the present invention.
FIG. 4 is a flowchart showing the operation of the first and second embodiments of the present invention.
FIG. 5 is a diagram showing a configuration of a second exemplary embodiment of the present invention.
FIG. 6 is a diagram illustrating a configuration of a virtual machine execution unit according to the second embodiment of this invention.
FIG. 7 is a diagram illustrating a configuration of a control unit according to a second embodiment of the present invention.
[Explanation of symbols]
1 Communication means between hosts
2 I / O device (I / O means)
3, 4, 5 host
31 Virtual machine execution means
311 Guest operating system
312 Virtual memory providing means
313 Virtual disk providing means
314 Virtual CPU providing means
315 Virtual I / O providing means
32 control means
321 Host control means
322 Memory control means
323 disk control means
324 CPU control means
325 I / O control means
326 Memory device
327 disk unit
328 CPU device
329 Communication control means
6 Shared disk device
Claims (22)
複数の前記ホストに対してホスト間の通信を制御するホスト間通信手段を備え、
前記各ホストの制御手段は、前記ホスト間通信手段を介して、他のホストと通信するための制御を行い、
複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段はマスタホスト上で動作し、
複数の前記ホストのうちのマスタホスト以外のホストのCPU(中央処理装置)が、前記ホスト間通信手段を介して、前記仮想計算機のCPUとして割り当てられる、ことを特徴とする仮想計算機システム。A plurality of hosts having means for executing a virtual machine (referred to as “virtual machine execution means”) and control means,
Comprising inter-host communication means for controlling communication between hosts for the plurality of hosts,
The control means of each host performs control for communicating with another host via the inter-host communication means,
One of the plurality of hosts becomes a master (a host that is a mast is referred to as a “master host”), and the virtual machine execution means operates on the master host,
A virtual machine system, wherein a CPU (central processing unit) of a host other than a master host among the plurality of hosts is assigned as a CPU of the virtual machine via the inter-host communication means.
複数の前記ホストのうちの前記マスタホスト以外のホストの前記制御手段は、前記ホスト間通信手段を介して、前記マスタホストと通信し、前記マスタホストからの要求に対して処理を実行し、
前記マスタホストから、前記マスタホストのメモリの内容、又は、メモリ及びディスクの内容が、前記ホスト間通信手段を介して、複数の前記ホストのうちの前記マスタホスト以外のホストにコピーされる、ことを特徴とする請求項1記載の仮想計算機システム。The control means on the master host provides the virtual machine execution means with a function for executing a virtual machine,
The control means of the host other than the master host among the plurality of hosts, via the inter-host communication means, communicates with the master host, executes a process for a request from the master host,
From the master host, the contents of the memory of the master host or the contents of the memory and the disk are copied to a host other than the master host among the plurality of hosts via the inter-host communication means. The virtual computer system according to claim 1, wherein:
仮想メモリ、仮想ディスク、仮想CPU(中央処理装置)、仮想I/O(入出力)のうちの1つ以上を、前記ゲストオペレーティングシステムに提供する手段を備えた仮想計算機実行手段と、
CPU、メモリ、ディスクと、前記CPU、前記メモリ、前記ディスクの各装置をそれぞれ制御するCPU制御手段、メモリ制御手段、ディスク制御手段、及び、I/O制御手段を含む制御手段と、
を備えたホストを複数備え、
前記各ホストの前記制御手段に接続され、前記ホスト間の通信を制御するホスト間通信手段と、
前記各ホストの制御手段に接続されるI/O手段と、
を備え、
前記各ホストの制御手段は、前記ホスト間通信手段を通じて他のホストとの通信を制御するホスト制御手段を備え、
複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段は、前記マスタホスト上で動作し、
前記各ホストの前記制御手段は、前記各ホストの上でそれぞれ動作し、
前記マスタホストの前記制御手段は、前記マスタホストの前記仮想計算機実行手段に対して仮想計算機を実行するための機能を提供し、
複数の前記ホストのうちの前記マスタホスト以外のホストのCPUが、仮想計算機のCPUとして、割り当てられ、前記仮想計算機は複数のCPUをもつように制御され、
複数の前記ホストのうちの前記マスタホスト以外のホストの前記制御手段は、前記ホスト間通信手段を介して、前記マスタホストと通信し、前記マスタホストからの要求に対して処理を実行し、
前記マスタホストから、前記ホスト間通信手段を介してメモリ及びディスクの内容が前記マスタホスト以外のホストにコピーされる、ことを特徴とする仮想計算機システム。A guest operating system,
Virtual machine execution means comprising means for providing one or more of virtual memory, virtual disk, virtual CPU (central processing unit), and virtual I / O (input / output) to the guest operating system;
A control unit including a CPU, a memory, and a disk, and a CPU control unit, a memory control unit, a disk control unit, and an I / O control unit for controlling each device of the CPU, the memory, and the disk;
Multiple hosts with
An inter-host communication unit connected to the control unit of each of the hosts and controlling communication between the hosts;
I / O means connected to the control means of each host;
With
The control unit of each host includes a host control unit that controls communication with another host through the inter-host communication unit,
One of the plurality of hosts becomes a master (a host that is a mast is referred to as a “master host”), and the virtual machine execution means operates on the master host;
The control means of each of the hosts operates on each of the hosts,
The control means of the master host provides a function for executing a virtual machine to the virtual machine execution means of the master host,
A CPU of a host other than the master host among the plurality of hosts is assigned as a CPU of a virtual machine, and the virtual machine is controlled to have a plurality of CPUs,
The control means of the host other than the master host among the plurality of hosts, via the inter-host communication means, communicates with the master host, executes a process for a request from the master host,
A virtual computer system, wherein the contents of a memory and a disk are copied from the master host to a host other than the master host via the inter-host communication means.
仮想メモリ、仮想ディスク、仮想CPU(中央処理装置)、仮想I/O(入出力)のうちの1つ以上を、前記ゲストオペレーティングシステムに提供する手段を備えた仮想計算機実行手段と、
CPU、メモリと、前記CPU及び前記メモリの各装置をそれぞれ制御するCPU制御手段及びメモリ制御手段と、I/O制御手段を含む制御手段と、
を備えたホストを複数備え、
前記各ホストの前記制御手段に接続され、前記ホスト間の通信を制御するホスト間通信手段と、
前記各ホストの制御手段に接続されるI/O手段と、
前記複数のホストで共有されるディスク装置と、
を備え、
前記各ホストの制御手段は、前記ホスト間通信手段を通じて他のホストとの通信を制御するホスト制御手段を備え、
複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段は、マスタホスト上で動作し、
前記各ホストの前記制御手段は、前記各ホストの上でそれぞれ動作し、
前記マスタホストの前記制御手段は、マスタホストの前記仮想計算機実行手段に対して仮想計算機を実行するための機能を提供し、
前記マスタホスト以外のホスト上のCPUが仮想計算機のCPUとして、割り当てられ、前記仮想計算機は、複数のCPUをもつように制御され、
前記マスタホスト以外のホストの前記制御手段は、前記ホスト間通信手段を介してマスタホストと通信し、マスタホストからの要求に対して処理を実行し、
前記マスタホストから、前記ホスト間通信手段を介してメモリの内容が前記マスタホスト以外のホストにコピーされる、ことを特徴とする仮想計算機システム。A guest operating system,
Virtual machine execution means comprising means for providing one or more of virtual memory, virtual disk, virtual CPU (central processing unit), and virtual I / O (input / output) to the guest operating system;
A control unit including a CPU, a memory, a CPU control unit and a memory control unit for respectively controlling the CPU and the memory, and an I / O control unit;
Multiple hosts with
An inter-host communication unit connected to the control unit of each of the hosts and controlling communication between the hosts;
I / O means connected to the control means of each host;
A disk device shared by the plurality of hosts;
With
The control unit of each host includes a host control unit that controls communication with another host through the inter-host communication unit,
One of the plurality of hosts becomes a master (a host that is a mast is referred to as a “master host”), and the virtual machine execution means operates on a master host;
The control means of each of the hosts operates on each of the hosts,
The control means of the master host provides a function for executing a virtual machine to the virtual machine execution means of the master host,
A CPU on a host other than the master host is allocated as a CPU of a virtual machine, and the virtual machine is controlled to have a plurality of CPUs,
The control means of the host other than the master host communicates with the master host via the inter-host communication means, executes processing in response to a request from the master host,
A virtual computer system, wherein the contents of a memory are copied from the master host to a host other than the master host via the inter-host communication means.
前記CPU制御手段は、必要に応じて、各ホストと通信して各ホストに割り当てられたCPU実行に関する情報の授受を行う、ことを特徴とする請求項12に記載の仮想計算機システム。The host control means passes information necessary for the CPU of each host to operate to the CPU control means, and receives an execution result in the CPU of each host from the CPU control means,
13. The virtual computer system according to claim 12, wherein the CPU control unit communicates with each host and transmits and receives information related to CPU execution assigned to each host as needed.
複数の前記ホストのうちの1つがマスタ(マストであるホストを「マスタホスト」という)となり、前記仮想計算機実行手段をマスタホスト上で動作させるステップと、
複数の前記ホストのうちの前記マスタホスト以外のホストのCPU(中央処理装置)を、ホスト間通信手段を経由して前記仮想計算機のCPUとして割り当てるステップと、
を含む、ことを特徴とする仮想計算機システムの制御方法。An execution control method for a virtual machine system comprising a plurality of hosts each having a virtual machine execution unit for executing a virtual machine and a control unit, and controlling communication between the hosts by an inter-host communication unit,
One of a plurality of the hosts serving as a master (a host that is a mast is referred to as a “master host”), and operating the virtual machine execution means on a master host;
Assigning a CPU (Central Processing Unit) of a host other than the master host among the plurality of hosts as a CPU of the virtual machine via inter-host communication means;
A method for controlling a virtual machine system, comprising:
任意の時点でのホストの追加削除を可能としている、ことを特徴とする請求項14記載の仮想計算機システムの制御方法。Copying the memory of the master host, or the contents of the disk and memory to all hosts other than the master host,
The method according to claim 14, wherein a host can be added or deleted at any time.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002158966A JP2004005113A (en) | 2002-05-31 | 2002-05-31 | Virtual computer system operated on a plurality of actual computers, and control method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002158966A JP2004005113A (en) | 2002-05-31 | 2002-05-31 | Virtual computer system operated on a plurality of actual computers, and control method thereof |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004005113A true JP2004005113A (en) | 2004-01-08 |
Family
ID=30428939
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002158966A Pending JP2004005113A (en) | 2002-05-31 | 2002-05-31 | Virtual computer system operated on a plurality of actual computers, and control method thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004005113A (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006268596A (en) * | 2005-03-25 | 2006-10-05 | Fujitsu Ltd | Service system redundancy method |
| JP2007219757A (en) * | 2006-02-15 | 2007-08-30 | Fujitsu Ltd | Program for functioning virtual computer system |
| JP2008165637A (en) * | 2006-12-28 | 2008-07-17 | Hitachi Ltd | System switching method and computer system in server virtualization environment |
| EP2146280A2 (en) | 2008-07-18 | 2010-01-20 | Fujitsu Limited | Resource migration system and resource migration method |
-
2002
- 2002-05-31 JP JP2002158966A patent/JP2004005113A/en active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006268596A (en) * | 2005-03-25 | 2006-10-05 | Fujitsu Ltd | Service system redundancy method |
| JP2007219757A (en) * | 2006-02-15 | 2007-08-30 | Fujitsu Ltd | Program for functioning virtual computer system |
| JP2008165637A (en) * | 2006-12-28 | 2008-07-17 | Hitachi Ltd | System switching method and computer system in server virtualization environment |
| EP2146280A2 (en) | 2008-07-18 | 2010-01-20 | Fujitsu Limited | Resource migration system and resource migration method |
| US8782235B2 (en) | 2008-07-18 | 2014-07-15 | Fujitsu Limited | Resource migration system and resource migration method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8694828B2 (en) | Using virtual machine cloning to create a backup virtual machine in a fault tolerant system | |
| US9519795B2 (en) | Interconnect partition binding API, allocation and management of application-specific partitions | |
| US8533415B2 (en) | Application migration and power consumption optimization in partitioned computer system | |
| US10922135B2 (en) | Dynamic multitasking for distributed storage systems by detecting events for triggering a context switch | |
| US9354907B1 (en) | Optimized restore of virtual machine and virtual disk data | |
| KR20140055451A (en) | Hypervisor-based server duplication system, method thereof and recording medium storing the computer program for the duplication | |
| JP2006085543A (en) | Virtual computer system | |
| WO2019061352A1 (en) | Data loading method and device | |
| JP5728812B2 (en) | Distributed information processing system and distributed storage system | |
| JP2001306407A (en) | Snapshot management method and computer system | |
| JP2010123055A (en) | Data migration program, data migration method, and data migration apparatus | |
| JP6123626B2 (en) | Process resumption method, process resumption program, and information processing system | |
| US7461201B2 (en) | Storage control method and system for performing backup and/or restoration | |
| JP5561334B2 (en) | Data transfer device | |
| US20210089379A1 (en) | Computer system | |
| JP2008033483A (en) | Computer system, computer, and moving method of computer operating environment | |
| CN107526653A (en) | The management method and server of a kind of virtual machine | |
| JP2007072975A (en) | Apparatus for switching systems for writing transaction data to disk, switching method, and switching program | |
| JP2021026375A (en) | Storage system | |
| JP6028415B2 (en) | Data migration control device, method and system for virtual server environment | |
| JP6123388B2 (en) | Fault tolerant server | |
| CN114115703A (en) | Bare metal server online migration method and system | |
| JP2001290665A (en) | Processor system | |
| JP2004005113A (en) | Virtual computer system operated on a plurality of actual computers, and control method thereof | |
| WO2022041839A1 (en) | Online migration method and system for bare metal server |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050927 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051025 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060307 |