JP5695404B2 - ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム - Google Patents

ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム Download PDF

Info

Publication number
JP5695404B2
JP5695404B2 JP2010275034A JP2010275034A JP5695404B2 JP 5695404 B2 JP5695404 B2 JP 5695404B2 JP 2010275034 A JP2010275034 A JP 2010275034A JP 2010275034 A JP2010275034 A JP 2010275034A JP 5695404 B2 JP5695404 B2 JP 5695404B2
Authority
JP
Japan
Prior art keywords
computer system
storage medium
computer
image
service
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.)
Expired - Fee Related
Application number
JP2010275034A
Other languages
English (en)
Other versions
JP2011123891A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011123891A publication Critical patent/JP2011123891A/ja
Application granted granted Critical
Publication of JP5695404B2 publication Critical patent/JP5695404B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

技術分野
開示される主題は、全般的に仮想マシンに関し、特に、ネットワーク環境において仮想マシンのリモート配備(deployment)を管理することに関する。
仮想化環境では、1つ以上のソフトウェアまたはハードウェア基盤(すなわち、ホスト・マシン)上で動作しているホスト・ソフトウェア(例えば、ハイパーバイザ)が、そのホスト・マシンを、ゲスト・ソフトウェア用にエミュレートあるいは仮想化することができる。言い換えれば、ハイパーバイザは、仮想マシン(VM:virtual machine)を実現して、ゲスト・ソフトウェアへサービスを提供する。ハイパーバイザは、VMを実現するのに利用されるデータ(すなわち、VMイメージ)を、リポジトリからホスト・マシンのメモリへロードすることによって、ホスト・マシンにVMを配備する。
VMイメージがリモートのリポジトリに保存されている場合、ハイパーバイザは、リモート・リポジトリからローカル・リポジトリへVMイメージをコピーし、ローカル・リポジトリにあるVMイメージを用いてVMを配備する。VMの配備は、VMイメージがローカル・リポジトリへ完全にコピーされるまで滞ることになる。別の実装では、VMがネットワーク上でリモート・サーバに配備されるが、この実装は、待ち時間の問題を引き起こし、当該リモート・サーバにホスト・マシンが常時接続されていることを必要とし、さらにはそのリモート・サーバによるVMのサポートおよび更新の管理を必要とするものである。
一実施形態によれば、ネットワーク環境において仮想マシン(VM)のリモート配備を管理する方法が提供される。第2ストレージ媒体に保存されたVMイメージが、第1ストレージ媒体へコピーされる。第1ストレージ媒体は、第1コンピュータ・システムに近接しており、第2ストレージ媒体は、第1コンピュータ・システムからリモートにあって第2コンピュータ・システムに近接している。VMイメージがコピーされている最中に、第1VMが、第1ストレージ媒体に保存されたVMイメージの部分的なコピーから第1コンピュータ・システムに配備され、第2VMが、第2ストレージ媒体に保存されたVMイメージから第2コンピュータ・システムに配備される。第1コンピュータ・システムにサブミットされるサービス要求は、要求されているサービスのタイプに基づいて、第1VMによってローカルに、あるいは第2VMによってリモートに管理される。
1つ以上の実施形態によれば、1つ以上の論理ユニットを含んだシステムが提供される。1つ以上の論理ユニットは、上記に開示された方法に関連する機能および動作を実施するように構成されている。さらに別の実施形態では、コンピュータ可読プログラムを備えたコンピュータ可読媒体を含むコンピュータ・プログラムが提供される。コンピュータ可読プログラムは、コンピュータ上で実行されると、上記に開示された方法に関連する機能および動作をコンピュータに実施させる。
いくつかの選択肢に加え上記に開示された1つ以上の実施形態について、添付の図面を参照しつつ以下により詳しく提示する。ただし、開示の主題は、開示されるいずれか特定の実施形態に限定されるものではない。
1つ以上の実施形態による、例示的なネットワーク環境を示す図である。 一実施形態による、リモート・リポジトリに保存されたVMイメージを用いるVMの配備を管理する方法のフロー図である。 一実施形態による、リモート・リポジトリに保存されたVMイメージを用いるVMの配備を管理する方法のフロー図である。 1つ以上の実施形態による、開示されるシステムおよび方法が動作可能なハードウェア環境のブロック図である。 1つ以上の実施形態による、開示されるシステムおよび方法が動作可能なソフトウェア環境のブロック図である。
請求される主題の実施形態は、上記に提示されたような添付図面の各図を参照することにより理解される。
別々の図面において同一の数字によって参照される特徴、要素および態様は、1つ以上の実施形態による同一の、同等のあるいは類似する特徴、要素および態様を示す。
以下の数々の具体的な詳細は、多様な実施形態を十分に説明するために示すものである。これらの特定の詳細を伴わずにあるいは詳細をいくらか変形させて、何らかの実施形態を実施することも可能である。一部の事例では、他の態様を分かりにくくしないように、或る特定の特徴についてあまり詳細には説明していない。各々の要素または特徴に関する詳細の程度は、1つの特徴が他の特徴よりも斬新であるまたは大切であることを示すものと解釈されるべきではない。
1つ以上の実施形態による図1を参照すると、例示的なネットワーク環境100には、コンピュータ・システム110、コンピュータ・システム120、ネットワーク130、およびリモート・リポジトリ140が含まれる。コンピュータ・システム110は、ネットワーク130を介して、コンピュータ・システム120にリモートで接続されている。コンピュータ・システム120は、リモート・リポジトリ140にとってローカルな、あるいは近接するコンピュータ・システムである。コンピュータ・システム110上で実行されているソフトウェア・アプリケーションが、或るVMによってサービスを受けることになる要求を生成するとよい。そのVMのイメージがリモート・リポジトリ140に保存されている場合、要求にサービスを提供するのに、コンピュータ・システム110に近接する範囲内のストレージ媒体(例えば、ローカル・リポジトリ150)へ当該VMイメージをコピーして、ローカルVM114を配備することが望ましいと考えられる。
VMイメージをリモート・リポジトリ140からローカル・リポジトリ150へコピーし、さらに、コンピュータ・システム110上で動作している移動先ホスト112にローカルVM114を配備することは、利用可能なネットワーク帯域幅ならびにリモート・リポジトリ140とコンピュータ・システム110との間の距離によっては、長い時間がかかり得る。図1および図2を参照すると、リモート・リポジトリ140からのVMイメージのコピーおよび配備に関連する待ち時間を最小化するように、一実施形態に従い、リモートVM124が、VMイメージを利用して、コンピュータ・システム120上で動作している一時ホスト122に配備されている(P200)。リモート・リポジトリ140はコンピュータ・システム120に近接しているため、VMを一時ホスト122に配備することは、VMを移動先ホスト112に配備するよりもはるかに高速である。
実装によっては、VMイメージを一時ホスト122に配備する前、配備している間、あるいは配備した後に、VMイメージをローカル・リポジトリ150へコピーすることもできる(P210)。VMイメージがリモート・リポジトリ140からローカル・リポジトリ150へコピーされている間、ローカルVM114が全面的に配備可能となる前であっても、ローカル・リポジトリ150に保存されたVMイメージの部分的なコピーを利用して、1つ以上の機能またはサービスを備えたローカルVM114を、移動先ホスト112に配備することができる(P220)。従って、ローカルVM114は、移動先ホスト112にサブミットされる1つ以上の要求に対し、ローカルにサービスを提供することができる。
ローカル・レベルで利用可能な機能またはサービスのレベルに応じて、移動先ホスト112にサブミットされるサービス要求を、ローカルVM114とリモートVM124との間で分割することもできる。或る特定の実施形態では、リモート・リポジトリ140からローカル・リポジトリ150へVMイメージが完全にコピーされ、ローカルVM114が全面的に配備されるまで、上記の分割が続けられてもよい(P230)。ローカルVM114が完全に配備され次第、移動先ホスト112は、ローカルVM114とリモートVM124との間におけるサービス要求の分割を中止し、そのサービス要求をローカルVM114にサブミットすることが望ましい(P240)。実装および最適な性能に応じて、一部の実施形態では、ローカルVM114が全面的に配備された後であっても、移動先ホスト112が、ローカルVM114とリモートVM124との間におけるサービス要求の分割を継続してもよい。
言い換えれば、イメージが全面的にローカル・リポジトリ150へ転送された後には、リモートVM124の状態がローカルVM114に転送され結合されており、ローカルVM114があたかもローカル・リポジトリ150から通常のやり方で配備されたかのように全ての機能を引き継いで動作し続けるのに対し、リモートVM124は無効化されている。上記の状態転送は、VMのライブ移行で一般に使用される技術を用いて実施される。
以下にさらに詳しく提示するように、上記に提示されたプロセス利用すると、VMを移動元環境から移動先環境へ透過的に移行させることができる。本明細書にて開示される例示的な実施形態の関連においては、移動元環境とは、リモート・リポジトリ140と、1つ以上の潜在的な一時ホストとを含む環境のことを指す。移動先環境とは、ローカル・リポジトリ150と、そこからサービス要求がサブミットされる移動先ホスト112とを含む環境のことを指す。
図1および図3を参照すると、一実施形態に従い、移動先ホスト112またはその他のコンピュータ・エンティティが、VMによって仮想化される1つ以上のコンポーネント(例えば、中央処理装置(CPU:central processing unit)、メモリ、ディスク、ユーザ・インターフェース、ネットワーク、またはその他のコンポーネント)間における通信ワークロードおよび強度を分析することができる(P300)。VMの移動元環境と移動先環境との間におけるネットワークおよびストレージ接続性(例えば、トポロジ、帯域幅、待ち時間、またはその他の経験則)も分析され得る(P310)。
上述の分析結果を利用すると、VMイメージのコピーが移動先環境へダウンロードされている間に移動元環境および移動先環境のそれぞれによって提供可能な機能またはサービスの数およびタイプを判断することができる。さらに、コンピュータ・システム110および120に関するネットワーク130のトポロジ、リモート・リポジトリ140とコンピュータ・システム120との近接性などといった1つ以上の要素に従って、一時ホスト122が選択されるとよい(P320)。
ネットワークおよび帯域幅の関連要素に応じて、ローカルVM114が、機能またはサービスの第1セットを提供するべく移動先ホスト112に配備されるとよく、さらにリモートVM124が、機能またはサービスの第2セットを提供するべく一時ホスト122に配備されるとよい(P330)。例えば、リモートVM124が、CPU、メモリ、およびディスク・コンポーネントを仮想化するように配備され、ローカルVM114が、ユーザ・インターフェース(例えば、キーボード、映像、マウスなど)およびネットワーク・コンポーネントを仮想化するのに利用されてもよい。
先に述べたように、ローカルVM114およびリモートVM124によってサポートされる機能またはサービスのレベルおよび数、ならびにそうしたサービスおよび機能がそれら2つのVM間で分割されるやり方は、VMイメージが移動先ホスト112および一時ホスト122のそれぞれによって配備されるやり方に基づけばよい。従って、移動先ホスト112にサブミットされるサービス要求は、要求されているサービスのタイプに基づいて、ローカルVM114によってローカルに管理されてもよいし、あるいはリモートVM124によってリモートに管理されてもよい(P340)。
移動先ホスト112が、ローカルVM114およびリモートVM124に向けられた通信に関し、ローカルVM114のプロキシとして機能する仮想ネットワーク・エージェントを実行してもよいことは注目に値する。言い換えれば、移動先ホスト112には、例えば、周辺コンポーネント相互接続(PCI:peripheral component interconnect)バスを介して中央処理装置(CPU)およびメモリと通信しさらに移動先ホスト112の外部にあるネットワーク・ブリッジまたはスイッチを介してネットワーク130と通信する、ネットワーク・アダプタが含まれ得る。このようなコンポーネント群を仮想ネットワーク・エージェントで置き換えることが可能であり、仮想ネットワーク・エージェントは、ネットワーク・スタックを下って(例えば、PCIからネットワーク・カードへ、ネットワーク・カードからブリッジまたはスイッチへ、ブリッジまたはスイッチからネットワーク130へ、のように)トラフィックを伝える代わりに、そのトラフィックを一時ホスト122へ転送する。
最も有利にするには、移動先ホスト112にサブミットされる要求の全てに対しローカルVM114がサービスを与えるようにすることが望ましいと言える。そのようなシナリオでは、ミラーリング技術を用いて、VMイメージをリモート・リポジトリ140からローカル・リポジトリ150へコピーするとよく、そうするとストレージのミラー切り換えがVM移行ハンドオフに同期する。ミラーリングとは、アプリケーションが動作しているときにデータをバックアップ位置に複製(すなわちコピー)し、回復プロセスの間、バックアップ位置にあるデータを使用してアプリケーションを再開することを指す。一実装では、バックアップ・コピーが読み取り専用となるように構成し、その後回復プロセスの間は読み書きが可能になるよう許可を変更することによって、データの整合性を保つことができる。このようなミラーリングをVMライブ移行に適用してもよく、その場合VMは、一時ホスト122から移動先ホスト112へと移行される。
要約すると、VMを一時ホスト122(すなわち、当該VMのイメージにとってローカルなあるいは近接するホスト)に配備することにより、望ましくは、リモートに位置する移動先ホストへVMがコピーされ配備されるのを待たずに済むVMの高速配備が可能になる。一時ホストがインスタント・配備をサポートしている場合であれば、配備は、即時に行われ得る。VMを移動元環境(例えば、コンピュータ・システム120)から移動先環境(例えば、コンピュータ・システム110)へ移行することにより、望ましくは、VMの高速配備に加え、移動先ホスト112によってサブミットされるサービス要求の高速処理もサポートされる。
別の実施形態では、開示される主題が、ハードウェア要素およびソフトウェア要素双方の組み合わせとして実現されてもよく、あるいは完全にハードウェアの形で実現されてもまたは完全にソフトウェアの形で実現されてもよい。さらに、本明細書に開示されるコンピュータ・システムおよびプログラム・ソフトウェアには、本明細書にて意図されている結果を達成する方法およびプロセスを実施するように実行されるハードウェア・コンポーネントまたは論理コードによって示され得る、制御されたコンピュータ環境を含めてもよい。上記の方法およびプロセスは、汎用コンピュータ・システムまたはマシンによって実施される場合には、その汎用マシンを特殊用途マシンにコンバートする。
図4および図5を参照すると、例示的な実施形態によるコンピュータ・システム環境は、ハードウェア環境1110およびソフトウェア環境1120で構成されるとよい。ハードウェア環境1110は、ソフトウェア環境1120のコンポーネント群に実行環境を提供する論理ユニット、回路またはその他の機械および機器を含むとよい。その結果としてソフトウェア環境1120が、ハードウェア環境1110の多様なコンポーネントに、基礎を成す動作設定および構成などが含まれた実行命令を提供するとよい。
図4を参照すると、本明細書にて開示されるアプリケーション・ソフトウェアおよび論理コードが、例示的なハードウェア環境1110によって表される1つ以上のコンピュータ・システム上で実行されるコンピュータ可読コードの形で実現され得る。図に示すように、ハードウェア環境1110は、システム・バス1100を介して1つ以上のストレージ要素に連結されているプロセッサ1101を含むとよい。ストレージ要素には、例えば、ローカル・メモリ1102、ストレージ媒体1106、キャッシュ・メモリ1104またはその他のコンピュータ使用可能またはコンピュータ可読の媒体が含まれるとよい。本開示の関連においては、コンピュータ使用可能またはコンピュータ可読のストレージ媒体として、プログラム・コードの収容、保存、通信、伝搬または伝送に利用し得る、任意の記録可能な製品を挙げることができる。
コンピュータ可読ストレージ媒体は、電子、磁気、光、電磁気、赤外線、または半導体の媒体、システム、装置またはデバイスとすればよい。コンピュータ可読ストレージ媒体は同様に、そのような実装が合法な対象と見なされる範囲内では制限されることなく、伝搬媒体により実現することもできる。コンピュータ可読ストレージ媒体の例としては、半導体すなわちソリッド・ステートのメモリ、磁気テープ、着脱可能なコンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read−only memory)、固定型磁気ディスク、光ディスク、または適切な場合には搬送波などが挙げられる。光ディスクの現行の例には、コンパクト・ディスク−読み取り専用メモリ(CD−ROM:compact disk−read only memory)、コンパクト・ディスク読み/書き(CD−R/W:compact disk read/write)、デジタル映像ディスク(DVD:digital video disk)、高解像度映像ディスク(HD−DVD:high definition video disk)またはBlu−ray(商標)ディスクが挙げられる。
一実施形態では、プロセッサ1101は、ストレージ媒体1106からローカル・メモリ1102へ、実行可能コードをロードする。キャッシュ・メモリ1104は、実行に向けてコードがロードされる回数を減らすのに役立つ一時ストレージを提供することによって、処理時間を最適化する。1つ以上のユーザ・インターフェース・デバイス1105(例えば、キーボード、ポインティング・デバイスなど)およびディスプレイ・スクリーン1107が、直接的に、あるいは、例えば介在するI/Oコントローラ1103を介して、ハードウェア環境1110内の他の要素に連結されているとよい。ハードウェア環境1110が、ローカルあるいはリモートにあるコンピュータ・システム、プリンタおよびストレージ・デバイスと、介在するプライベートまたはパブリックのネットワーク(例えば、インターネット)を介して通信することが可能になるように、ネットワーク・アダプタなどの通信インターフェース1108が提供されるとよい。有線のあるいはワイヤレスのモデムおよびEthernet(R)カードは、ネットワーク・アダプタの例示的なタイプの一部である。
ハードウェア環境1110は、或る特定の実装においては、上述のコンポーネントの一部または全てを含まない場合も、あるいは補足的な機能または有用性をもたらすように追加的なコンポーネントを含む場合もあるということに注目すべきである。意図されている用途および構成に応じて、ハードウェア環境1110は、デスクトップもしくはラップトップ・コンピュータであってもよいし、または、セットトップ・ボックス、パーソナル・デジタル・アシスタント(PDA:personal digital assistant)、パーソナル・メディア・プレーヤ、移動体通信ユニット(例えば、ワイヤレス電話)などの組み込みシステムに必要に応じて具現化されるその他のコンピュータ・デバイスであってもよいし、あるいは、情報処理またはデータ・ストレージ機能を有する同様のその他のハードウェア・プラットフォームであってもよい。
一部の実施形態では、通信インターフェース1108は、プログラム・コードなど、各種の情報を表現しているアナログまたはデジタルのデータ・ストリームを搬送するデジタル信号、電気信号、電磁気信号または光信号を送受信することによって、1つ以上のコンピュータ・システムとの通信手段をもたらすデータ通信ポートの機能を果たす。上記の通信は、ローカルまたはリモートのネットワークによって確立されてもよいし、あるいは別の方法として空気またはその他の媒体を介した伝達によって確立されてもよく、例えば搬送波による伝搬などが挙げられるが、これに限定されない。
本明細書に提示するように、図に示すハードウェア要素にて実行される開示のソフトウェア要素は、例示的な性質の論理的または機能的関係に従って定義される。一方、上記の例示的なソフトウェア要素によって実現されるそれぞれの方法も、例えば、構成されプログラムされたプロセッサ、特定用途向け集積回路(ASIC:application specific integrated circuit)、フィールド・プログラマブル・ゲート・アレイ(FPGA:field programmable gate array)およびデジタル信号プロセッサ(DSP:digital signal processor)などによって、同様に上述のハードウェア要素において符号化することが可能であることに留意する必要がある。
図5を参照すると、ソフトウェア環境1120は、1つ以上のハードウェア環境1110上で実行されるとき、概して、システム・ソフトウェア1121およびアプリケーション・ソフトウェア1122を備える2つのクラスに分かれると考えられる。一実施形態では、本明細書に開示される方法およびプロセスが、システム・ソフトウェア1121として、またはアプリケーション・ソフトウェア1122として、あるいはこれらの組み合わせとして実現され得る。システム・ソフトウェア1121は、ハードウェア環境1110にある1つ以上のプロセッサ1101(例えば、マイクロコントローラなど)に対してどのように機能し情報を処理するかについての指示を与える、オペレーティング・システム(OS:operating system)あるいは情報管理システムなどといった制御プログラムを含むとよい。アプリケーション・ソフトウェア1122には、プログラム・コード、データ構造、ファームウェア、常駐ソフトウェア、マイクロコード、またはプロセッサ1101によって読み取り、分析もしくは実行され得る情報またはルーチンの他の任意の形が含まれるとよいが、これらに限定するものではない。
言い換えれば、アプリケーション・ソフトウェア1122は、コンピュータまたは任意の命令実行システムによってあるいは関連して使用されるプログラム・コードを提供するコンピュータ使用可能もしくはコンピュータ可読のストレージ媒体の形でコンピュータ・プログラムに組み込まれた、プログラム・コードとして実現されるとよい。加えて、アプリケーション・ソフトウェア1122は、ストレージ媒体1106からローカル・メモリ1102へロードされてからシステム・ソフトウェア1121上で実行される、1つ以上のコンピュータ・プログラムを含んでもよい。クライアント−サーバ・アーキテクチャでは、アプリケーション・ソフトウェア1122は、クライアント・ソフトウェアおよびサーバ・ソフトウェアを含むとよい。例えば、一実施形態では、クライアント・ソフトウェアが、サーバ・ソフトウェアが実行されているサーバ・コンピュータ・システムとは別個であり独立しているクライアント・コンピュータ・システム上で実行されてもよい。
ソフトウェア環境1120はさらに、ローカルまたはリモートのコンピュータ・ネットワークで入手可能なデータにアクセスするブラウザ・ソフトウェア1126をも含むとよい。さらに、ソフトウェア環境1120は、ユーザのコマンドおよびデータを受信するユーザ・インターフェース1124(例えば、グラフィカル・ユーザ・インターフェース(GUI:graphical user interface))を含むとよい。上述したハードウェアおよびソフトウェアのアーキテクチャならびに環境は、例示を目的とするものであることは繰り返し述べるに値する。従って、1つ以上の実施形態を、任意のタイプのシステム・アーキテクチャ、機能または論理プラットフォーム、あるいは処理環境上で実現することも可能である。
さらに当然のことながら、論理コード、プログラム、モジュール、プロセス、方法、および各方法のそれぞれのプロセスが実施される順序は、単に例示的なものに過ぎない。実装に応じて、プロセスもしくは任意の潜在的なサブプロセスならびに方法は、本開示にて特に指定のない限り、任意の順序で実施することあるいは同時に実施することが可能である。さらに、特に具体的に述べられていない限り、本開示の関連における論理コードの記述は、いずれか特定のプログラミング言語に関係するあるいは限定されるものではなく、分散型環境、非分散型環境、単一または多重処理環境にて1つ以上のプロセッサ上で実行可能な1つ以上のモジュールを含めることもできる。
当業者には当然のことながら、ソフトウェアの実施形態には、ファームウェア、常駐ソフトウェア、マイクロコードなどを含めてもよい。ソフトウェアもしくはハードウェアを含んだ、あるいはソフトウェアおよびハードウェアの側面を組み合わせた何らかのコンポーネントは、本明細書において一般に、「回路」、「モジュール」または「システム」と称される場合がある。加えて、開示される主題は、具現化されたコンピュータ可読プログラム・コードを備えた1つ以上のコンピュータ可読ストレージ媒体(単数または複数)に具現化されたコンピュータ・プログラムとして実現されてもよい。1つ以上のコンピュータ可読ストレージ媒体(単数または複数)の任意の組み合わせを利用することもできる。コンピュータ可読ストレージ媒体は、コンピュータ可読信号媒体またはコンピュータ可読ストレージ媒体とすればよい。コンピュータ可読ストレージ媒体は、例えば、電子、磁気、光、電磁気、赤外線、または半導体のシステム、装置、またはデバイス、あるいは上記の任意の適切な組み合わせとすればよいが、これらに限定されない。
本文書の関連においては、コンピュータ可読ストレージ媒体は、命令実行システム、装置、またはデバイスによってあるいは関連して使用されるプログラムを収容または保存することのできる任意の有形の媒体であればよい。コンピュータ可読信号媒体は、例えばベースバンドで、または搬送波の一部として、具現化されたコンピュータ可読プログラム・コードを備えた伝搬データ信号を含むとよい。このような伝搬信号は、電磁気、光、またはこれらの任意の適切な組み合わせを含むがこれに限定されない多種多様な形のうちの任意の形をとることができる。コンピュータ可読信号媒体は、コンピュータ可読ストレージ媒体ではない、何らかのコンピュータ可読ストレージ媒体であって、命令実行システム、装置、またはデバイスによってあるいは関連して使用されるプログラムを通信、伝搬、または伝送可能なものであればよい。
コンピュータ可読ストレージ媒体上に具現化されたプログラム・コードは、ワイヤレス、ワイヤライン、光ファイバ・ケーブル、RFなどを含むがこれらに限定されない任意の適切な媒体、あるいは上記媒体の任意の適切な組み合わせを用いて伝送されればよい。開示された動作を実行するコンピュータ・プログラム・コードは、Java(R)、Smalltalk(R)、C++などといったオブジェクト指向プログラミング言語、ならびに「C」プログラミング言語または同様のプログラミング言語などの従来型手続きプログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれるとよい。
プログラム・コードは、完全にユーザのコンピュータ上で実行されてもよいし、スタンドアローン型ソフトウェア・パッケージとして部分的にユーザのコンピュータ上で実行されてもよいし、部分的にユーザのコンピュータ上で実行されてさらに部分的にリモート・コンピュータ上で実行されても、あるいは完全にリモート・コンピュータまたはサーバ上で実行されてもよい。後の方のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN:local area network)または広域ネットワーク(WAN:wide area network)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されていてもよいし、あるいはこの接続が、(例えば、インターネット・サービス・プロバイダを使ったインターネットを介して)外部コンピュータに対して設けられていてもよい。
一部の実施形態は、実施形態による方法、装置(システム)およびコンピュータ・プログラムのフローチャート説明図またはブロック図あるいはその両方に関連して開示される。当然のことながら、フローチャート説明図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート説明図またはブロック図あるいはその両方のブロック群の組み合わせは、コンピュータ・プログラム命令によって実現することができる。こうしたコンピュータ・プログラム命令は、汎用コンピュータ、特殊用途コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを形成してもよく、それにより、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサによって実行される命令が、フローチャートまたはブロック図あるいはその両方の単数または複数のブロックに明示されている機能/作用を実現する手段をもたらすようになる。
上記のコンピュータ・プログラム命令は、さらに、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスを特定のやり方で機能するよう仕向けることができるコンピュータ可読ストレージ媒体に保存されてもよく、それにより、コンピュータ可読ストレージ媒体に保存された命令が、フローチャートまたはブロック図あるいはその両方の単数または複数のブロックに明示されている機能/作用を実現する命令を含んだ製品を形成するようになる。
コンピュータ・プログラム命令は、さらに、コンピュータ実装されたプロセスを生成するように、コンピュータ、その他のプログラム可能なデータ処理装置またはその他のデバイスにロードされて、コンピュータ、その他のプログラム可能なデータ処理装置またはその他のデバイスにて実施される一連の動作ステップを引き起こすこともでき、それにより、コンピュータまたはその他のプログラム可能なデータ処理装置にて実行される命令が、フローチャートまたはブロック図あるいはその両方の単数または複数のブロックに明示されている機能/作用を実現するプロセスをもたらすようになる。
図面のフローチャートまたはブロック図は、多様な実施形態によるシステム、方法およびコンピュータ・プログラムのあり得る実装のアーキテクチャ、機能、および動作を説明している。この関連で、フローチャートまたはブロック図の各ブロックが、特定の論理機能(単数または複数)を実現するための1つ以上の実行可能命令を含むモジュール、セグメントあるいはコードの一部に相当する場合もある。さらに、一部の代替的な実装では、ブロックに示された各機能が、図面に示された順序から外れて生じ得ることにも留意する必要がある。
例えば、必要な機能に応じて、連続して示された2つのブロックが実際にはほどんど同時に実行されることもあり、あるいは、それらのブロックが、ときには逆の順序で実行されることもある。さらに、ブロック図またはフローチャート説明図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート説明図あるいはその両方のブロック群の組み合わせは、明示されている機能または作用を実施する特殊用途ハードウェアベースのシステムによって実現すること、あるいは、特殊用途ハードウェアとコンピュータ命令との組み合わせによって実現することが可能であることも分かるであろう。
請求される主題について、1つ以上の特徴または実施形態に関連して本明細書に提示してきた。当業者には当然のことながら、本明細書にて提示された例示的な実施形態が本質的に詳細にわたるものであるにもかかわらず、全体として意図されている範囲を制限することあるいは逸脱することなく、上述の実施形態に対して変更および修正を加えることが可能である。本明細書に提示される実施形態の、上述のおよびその他様々な適応および組み合わせは、請求項によって定義される開示の主題およびその同等物一式の範囲内にある。
100 ネットワーク環境
110、120 コンピュータ・システム
112 移動先ホスト
114 ローカルVM
122 一時ホスト
124 リモートVM
130 ネットワーク
140 リモート・リポジトリ
150 ローカル・リポジトリ

Claims (24)

  1. ネットワーク環境において仮想マシン(VM)のリモート配備を管理する、コンピュータ実装された方法であって、前記方法は、
    第2ストレージ媒体に保存されたVMイメージを第1ストレージ媒体へコピーするステップであって、前記第1ストレージ媒体は、第1コンピュータ・システムに近接しており、前記第2ストレージ媒体は、第2コンピュータ・システムに近接しており、前記第2ストレージ媒体は、前記第1コンピュータ・システムからリモートにある、コピーするステップと、
    サービスの第1セットを提供する第1VMを、前記第1ストレージ媒体に保存された前記VMイメージの部分的なコピーから前記第1コンピュータ・システムに配備するステップであって、サービスの第2セットを提供する第2VMは、前記第2ストレージ媒体に保存された前記VMイメージから前記第2コンピュータ・システムに配備され、前記第1コンピュータ・システムにサブミットされるサービス要求は、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、配備するステップと、
    を含む、方法。
  2. 前記VMイメージが前記第1ストレージ媒体へ完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求はもっぱら前記第1VMによって管理される、請求項1に記載の方法。
  3. 前記VMイメージが前記第1ストレージ媒体へ完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求は引き続き、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、請求項1に記載の方法。
  4. 1つ以上の仮想化コンポーネント間の通信ワークロードおよび強度を分析するステップをさらに含む、請求項1に記載の方法。
  5. 前記第1コンピュータ・システムと前記第2コンピュータ・システムとの間のネットワークおよびストレージ接続性を分析するステップをさらに含む、請求項4に記載の方法。
  6. 前記第2コンピュータ・システムは、前記仮想化コンポーネント、あるいは前記第1コンピュータ・システムと前記第2コンピュータ・システムとの間の前記ネットワークおよびストレージ接続性に関連する、1つ以上の要素に従って選択される、請求項5に記載の方法。
  7. 前記第2コンピュータ・システムは、前記第2コンピュータ・システムと前記第2
    ストレージ媒体との近接性に従って選択される、請求項6に記載の方法。
  8. 前記第2VMは、中央処理装置(CPU)、メモリ、およびディスク・コンポーネントを仮想化する、請求項1に記載の方法。
  9. 前記第1VMは、ユーザ・インターフェースおよびネットワーク・コンポーネントを仮想化する、請求項8に記載の方法。
  10. 前記第2VMの代わりとするべく仮想ネットワーク・エージェントを前記第1コンピュータ・システム上で実行するステップをさらに含む、請求項1に記載の方法。
  11. 前記仮想ネットワーク・エージェントは、前記第2VMによって管理されるべきサービス要求を、周辺コンポーネント相互接続(PCI)を介して前記第2コンピュータ・システムへ転送する、請求項10に記載の方法。
  12. 前記仮想ネットワーク・エージェントは、前記第2VMによって管理されるべきサービス要求を、Ethernetを介して前記第2コンピュータ・システムへ転送する、請求項10に記載の方法。
  13. 前記仮想ネットワーク・エージェントは、前記サービスの第2セットと、前記第1VMによって提供される前記サービスの第1セットとの結合を受けて終了する、請求項10に記載の方法。
  14. ストレージのミラー切り換えがVM移行ハンドオフに同期するように、前記VMイメージは、ミラーリング技術を用いて前記第1ストレージ媒体へコピーされる、請求項1に記載の方法。
  15. ネットワーク環境において仮想マシン(VM)のリモート配備を管理するシステムであって、前記システムは、
    第2ストレージ媒体に保存されたVMイメージを第1ストレージ媒体へコピーする論理ユニットであって、前記第1ストレージ媒体は、第1コンピュータ・システムに近接しており、前記第2ストレージ媒体は、第2コンピュータ・システムに近接しており、前記第2ストレージ媒体は、前記第1コンピュータ・システムからリモートにある、論理ユニットと、
    サービスの第1セットを提供する第1VMを、前記第1ストレージ媒体に保存された前記VMイメージの部分的なコピーから前記第1コンピュータ・システムに配備する論理ユニットであって、サービスの第2セットを提供する第2VMは、前記第2ストレージ媒体に保存された前記VMイメージから前記第2コンピュータ・システムに配備され、前記第1コンピュータ・システムにサブミットされるサービス要求は、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、論理ユニットと、
    を含む、システム。
  16. 前記VMイメージが前記第1ストレージ媒体へ完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求はもっぱら前記第1VMによって管理される、請求項15に記載のシステム。
  17. 前記VMイメージが前記第1ストレージ媒体に完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求は引き続き、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、請求項15に記載のシステム。
  18. 前記第2コンピュータ・システムは、仮想化コンポーネント、あるいは前記第1コンピュータ・システムと前記第2コンピュータ・システムとの間のネットワークおよびストレージ接続性に関連する、1つ以上の要素に従って選択される、請求項15に記載のシステム。
  19. 前記第2VMの代わりとするべく仮想ネットワーク・エージェントを前記第1コンピュータ・システム上で実行することをさらに含む、請求項15に記載のシステム。
  20. コンピュータ可読媒体に備えられたコンピュータ・プログラムであって、前記コンピュータプログラムは、コンピュータ上で実行されると、前記コンピュータに以下のこと:
    第2ストレージ媒体に保存された仮想マシン(VM)イメージを第1ストレージ媒体へコピーすることであって、前記第1ストレージ媒体は、第1コンピュータ・システムに近接しており、前記第2ストレージ媒体は、第2コンピュータ・システムに近接しており、前記第2ストレージ媒体は、前記第1コンピュータ・システムからリモートにある、コピーすること;および
    サービスの第1セットを提供する第1VMを、前記第1ストレージ媒体に保存された前記VMイメージの部分的なコピーから前記第1コンピュータ・システムに配備することであって、サービスの第2セットを提供する第2VMは、前記第2ストレージ媒体に保存された前記VMイメージから前記第2コンピュータ・システムに配備され、前記第1コンピュータ・システムにサブミットされるサービス要求は、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、配備すること、
    を行わせる、コンピュータ・プログラム。
  21. 前記VMイメージが前記第1ストレージ媒体へ完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求はもっぱら前記第1VMによって管理される、請求項20に記載のコンピュータ・プログラム。
  22. 前記VMイメージが前記第1ストレージ媒体へ完全にコピーされ、前記第1VMが前記第1コンピュータ・システムに全面的に配備された後、サービス要求は引き続き、要求されているサービスのタイプに基づいて、前記第1VMによってローカルに、あるいは前記第2VMによってリモートに管理される、請求項20に記載のコンピュータ・プログラム。
  23. 前記第2コンピュータ・システムは、仮想化コンポーネント、あるいは前記第1コンピュータ・システムと前記第2コンピュータ・システムとの間のネットワークおよびストレージ接続性に関連する、1つ以上の要素に従って選択される、請求項20に記載のコンピュータ・プログラム。
  24. 前記コンピュータ可読プログラムは、コンピュータ上で実行されると、前記コンピュータにさらに、記第2VMの代わりとするべく仮想ネットワーク・エージェントを前記第1コンピュータ・システム上で実行させる、請求項20に記載のコンピュータ・プログラム。
JP2010275034A 2009-12-13 2010-12-09 ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム Expired - Fee Related JP5695404B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/636,742 US8850426B2 (en) 2009-12-13 2009-12-13 Managing remote deployment of a virtual machine and service request to be processed by the virtual machines based on network bandwith and storage connectivity
US12/636742 2009-12-13

Publications (2)

Publication Number Publication Date
JP2011123891A JP2011123891A (ja) 2011-06-23
JP5695404B2 true JP5695404B2 (ja) 2015-04-08

Family

ID=44131049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010275034A Expired - Fee Related JP5695404B2 (ja) 2009-12-13 2010-12-09 ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム

Country Status (5)

Country Link
US (1) US8850426B2 (ja)
JP (1) JP5695404B2 (ja)
KR (1) KR101720343B1 (ja)
CN (1) CN102098171B (ja)
TW (1) TW201120753A (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8621275B1 (en) 2010-08-06 2013-12-31 Open Invention Network, Llc System and method for event-driven live migration of multi-process applications
US8301700B1 (en) * 2010-08-06 2012-10-30 Open Invention Network Llc System and method for event-driven live migration of multi-process applications
US8584145B1 (en) 2010-08-06 2013-11-12 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US9389895B2 (en) * 2009-12-17 2016-07-12 Microsoft Technology Licensing, Llc Virtual storage target offload techniques
US20110153715A1 (en) * 2009-12-17 2011-06-23 Microsoft Corporation Lightweight service migration
US8726275B2 (en) * 2009-12-18 2014-05-13 International Business Machines Corporation Selective partial cloning of virtual machines in a virtual computing environment
US8601226B1 (en) 2010-05-20 2013-12-03 Gogrid, LLC System and method for storing server images in a hosting system
US8826272B2 (en) * 2010-11-29 2014-09-02 International Business Machines Corporation Planning a reliable migration in a limited stability virtualized environment
US9326001B2 (en) * 2011-03-22 2016-04-26 International Business Machines Corporation Scalable image distribution in virtualized server environments
JP5720483B2 (ja) 2011-08-11 2015-05-20 富士通株式会社 移行プログラム、移行装置、および移行方法
US10310879B2 (en) * 2011-10-10 2019-06-04 Nvidia Corporation Paravirtualized virtual GPU
TWI453669B (zh) * 2011-12-21 2014-09-21 Inventec Corp 虛擬機器遷移方法與雲端伺服系統
EP2712122B1 (en) * 2011-12-29 2016-08-31 Huawei Technologies Co., Ltd. Energy saving monitoring method and device
US20130290952A1 (en) * 2012-04-25 2013-10-31 Jerry W. Childers, JR. Copying Virtual Machine Templates To Cloud Regions
US9135045B2 (en) 2012-05-29 2015-09-15 International Business Machines Corporation Generating user-requested virtual machine templates from super virtual machine templates and cacheable patches
US10387201B2 (en) * 2012-06-26 2019-08-20 Vmware, Inc. Storage performance-based virtual machine placement
US8990798B2 (en) * 2012-09-28 2015-03-24 Sap Ag Software appliance installation systems and methods
US9298491B2 (en) * 2013-06-25 2016-03-29 Vcumulus Limited System and method for live conversion and movement of virtual machine image and state information between hypervisors
TWI573024B (zh) * 2013-07-23 2017-03-01 中華電信股份有限公司 雲端自動同步系統與雲端自動同步方法
US9509626B2 (en) * 2013-10-17 2016-11-29 Ciena Corporation Method and apparatus for provisioning a virtual machine (VM) from a network service provider
JP6393612B2 (ja) 2014-12-26 2018-09-19 株式会社日立製作所 システムのバックアップ装置及びバックアップ方法
JP6476932B2 (ja) 2015-02-02 2019-03-06 富士通株式会社 ストレージ装置,制御プログラム,ストレージシステム及びデータ転送方法
KR101669567B1 (ko) 2015-04-27 2016-10-27 울산과학기술원 가상 머신의 배치를 관리하는 방법
US11120892B2 (en) 2015-06-18 2021-09-14 Amazon Technologies, Inc. Content testing during image production
JP2017033375A (ja) * 2015-08-04 2017-02-09 富士通株式会社 並列計算システム、マイグレーション方法、及びマイグレーションプログラム
US10013265B2 (en) 2016-06-23 2018-07-03 International Business Machines Corporation Management of container host clusters
CN106982244B (zh) * 2016-12-30 2020-10-23 中国银联股份有限公司 在云网络环境下实现动态流量的报文镜像的方法和装置
CN108345490B (zh) * 2017-01-24 2021-04-09 华为技术有限公司 一种nfv中部署虚拟机的方法和系统
KR101886317B1 (ko) 2017-04-28 2018-08-08 울산과학기술원 가상 머신 배치 선택 장치 및 방법
US20190273779A1 (en) * 2018-03-01 2019-09-05 Hewlett Packard Enterprise Development Lp Execution of software on a remote computing system
CN111045822B (zh) * 2019-12-07 2023-12-29 深圳先进技术研究院 一种移动云计算中的服务迁移方法、系统及终端设备
US11841772B2 (en) * 2021-02-01 2023-12-12 Dell Products L.P. Data-driven virtual machine recovery

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6874020B1 (en) * 2000-08-28 2005-03-29 International Business Machines Corporation System uses application manager and master agent to communicate with mini-agents for remotely managing application resources distributed across multiple Java virtual machines
US6895444B1 (en) * 2000-09-15 2005-05-17 Motorola, Inc. Service framework with local proxy for representing remote services
JP3687587B2 (ja) * 2001-03-27 2005-08-24 ソニー株式会社 データ処理システム及びデータ処理方法、情報処理装置及び情報処理方法、並びにコンピュータ・ソフトウェア
JP2002318862A (ja) * 2001-04-19 2002-10-31 Nippon Telegr & Teleph Corp <Ntt> クラスタリングサービス提供方式
US7577722B1 (en) * 2002-04-05 2009-08-18 Vmware, Inc. Provisioning of computer systems using virtual machines
US7313793B2 (en) 2002-07-11 2007-12-25 Microsoft Corporation Method for forking or migrating a virtual machine
US20050060590A1 (en) 2003-09-16 2005-03-17 International Business Machines Corporation Power-aware workload balancing usig virtual machines
US20060107269A1 (en) * 2004-11-17 2006-05-18 International Business Machines Corporation Virtual device hub
US7849462B2 (en) * 2005-01-07 2010-12-07 Microsoft Corporation Image server
JP2007066265A (ja) 2005-09-02 2007-03-15 Hitachi Ltd 計算機装置及び仮想マシン提供方法
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
WO2007136021A1 (ja) * 2006-05-24 2007-11-29 Nec Corporation 仮想マシン管理装置、仮想マシン管理方法およびプログラム
US9392078B2 (en) * 2006-06-23 2016-07-12 Microsoft Technology Licensing, Llc Remote network access via virtual machine
US8667500B1 (en) * 2006-10-17 2014-03-04 Vmware, Inc. Use of dynamic entitlement and adaptive threshold for cluster process balancing
WO2008117500A1 (ja) * 2007-03-27 2008-10-02 Nec Corporation 仮想マシン運用システム、仮想マシン運用方法およびプログラム
JP2009223778A (ja) * 2008-03-18 2009-10-01 Hitachi Software Eng Co Ltd 仮想マシンイメージによるプログラム配布装置
US8473594B2 (en) * 2008-05-02 2013-06-25 Skytap Multitenant hosted virtual machine infrastructure
US8005991B2 (en) * 2008-08-15 2011-08-23 Dell Products, Lp Virtual machine image management system and methods thereof
US8336079B2 (en) * 2008-12-31 2012-12-18 Hytrust, Inc. Intelligent security control system for virtualized ecosystems
US7904540B2 (en) * 2009-03-24 2011-03-08 International Business Machines Corporation System and method for deploying virtual machines in a computing environment
US8296419B1 (en) * 2009-03-31 2012-10-23 Amazon Technologies, Inc. Dynamically modifying a cluster of computing nodes used for distributed execution of a program
US8464267B2 (en) * 2009-04-10 2013-06-11 Microsoft Corporation Virtual machine packing method using scarcity

Also Published As

Publication number Publication date
JP2011123891A (ja) 2011-06-23
US8850426B2 (en) 2014-09-30
CN102098171A (zh) 2011-06-15
US20110145816A1 (en) 2011-06-16
TW201120753A (en) 2011-06-16
KR20110067081A (ko) 2011-06-21
CN102098171B (zh) 2014-08-27
KR101720343B1 (ko) 2017-03-27

Similar Documents

Publication Publication Date Title
JP5695404B2 (ja) ネットワーク環境において仮想マシンのリモート配備を管理する方法、システムおよびコンピュータ・プログラム
EP3762826B1 (en) Live migration of virtual machines in distributed computing systems
JP5922307B2 (ja) ローミング・リモート・デスクトップを提供するための方法及びシステム
US9996396B2 (en) Cross architecture virtual machine migration
US8490090B2 (en) Multilevel support in a nested virtualization environment
JP5689475B2 (ja) ホスト・コンピューティング・システム上に1つまたは複数の仮想計算機を配備するための方法、コンピューティング・システムのメモリに1組のデータをロードするための方法、システム、およびコンピュータ・プログラム(コンピューティング・システムのメモリへのデータの効率的なロード)
US9317314B2 (en) Techniques for migrating a virtual machine using shared storage
JP5822678B2 (ja) 安定性制限のある仮想化環境における信頼性の高い移行の計画を提供する方法、システムおよびコンピュータ・プログラム
US10445122B2 (en) Effective and efficient virtual machine template management for cloud environments
JP6327810B2 (ja) モビリティ動作リソース割り当てのための方法、システム、コンピュータ・プログラム
US20150205542A1 (en) Virtual machine migration in shared storage environment
US9529620B1 (en) Transparent virtual machine offloading in a heterogeneous processor
US20210224100A1 (en) Virtual machine migration using multiple, synchronized streams of state data
US20120173653A1 (en) Virtual machine migration in fabric attached memory
US11231953B2 (en) Minimizing downtime when importing virtual machines from other platforms
US10936330B2 (en) Instantaneous boot of virtual machine instances via remote direct memory access
US10430227B2 (en) Fast instantiation of virtual machines in distributed computing systems
US11372636B2 (en) Live updating a virtual machine virtualizing physical resources
US20230015103A1 (en) Live updating a virtual machine virtualizing physical resources

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140922

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150206

R150 Certificate of patent or registration of utility model

Ref document number: 5695404

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees