"仮想マシンvirtualmachine、VMを、信頼性をもって移行するコンピュータ実装方法であって、前記方法は:ホスティングファブリック内のホストについてのオーバーヘッドおよび信頼性因子を受信することと;前記ホスティングファブリック内でソースVMをソースホストからターゲットホストに移行するための複数の実行可能な移行パスを求めることであって、前記移行は一連の移行フェーズ群を通じて達成され、ただし、フェーズは移行パス内における、1つのホストから別のホストへの前記ソースVMの移行を含む、求めることと;各移行パスに関連付けられる合計オーバーヘッドコストを求めることと;前記オーバーヘッドコストおよび信頼性因子に従って前記複数の移行パスの中から移行パスを選択することであって、前記選択されたパスにわたる前記移行の前記信頼性は監視され、前記ソースVMの1つ以上の複製を前記移行ファブリック内の1つ以上のホスト上に動的に割り当てることおよび割り当て解除することによって制御される、選択することと;を含む、方法。前記選択された移行パスは、最も低コストの移行選択肢を提供する、請求項1に記載の方法。前記選択された移行パスは、最も信頼性のある移行選択肢を提供する、請求項1に記載の方法。前記選択された移行パスは、最も低コストであることと最も信頼性があることとを兼ね備えた移行選択肢を提供する、請求項1に記載の方法。前記ソースVMの前記移行のための移行目標が最小信頼性閾値に従って定義される、請求項1に記載の方法。前記移行の間の前記ソースVMのための前記複製の数は前記移行目標を満たすように調整される、請求項5に記載の方法。より安定性の高い移行環境が望まれる場合には前記複製の前記数が増やされる、請求項6に記載の方法。より安定性の低い移行環境が望まれる場合には前記複製の前記数が減らされる、請求項6に記載の方法。前記1つ以上の複製は前記移行の間に前記ソースVMと同期される、請求項1に記載の方法。前記方法は:前記選択された移行パスはもはや実行可能でないと判定することに応答して、代替の移行パスを選択すること、をさらに含む、請求項1に記載の方法。仮想マシンVMをソースホストからターゲットホストに信頼性をもって移行するシステムであって、前記システムは:ホスティングファブリック内のホストについてのオーバーヘッドおよび信頼性因子を受信する論理装置と;前記ホスティングファブリック内でソースVMをソースホストからターゲットホストに移行するための複数の実行可能な移行パスを求める論理装置であって、前記移行は一連の移行フェーズ群を通じて達成され、ただし、フェーズは移行パス内における、1つのホストから別のホストへの前記ソースVMの移行を含む、論理装置と;各移行パスに関連付けられる合計オーバーヘッドコストを求める論理装置と;前記オーバーヘッドコストおよび信頼性因子に従って前記複数の移行パスの中から移行パスを選択する論理装置であって、前記選択されたパスにわたる前記移行の前記信頼性は監視され、前記ソースVMの1つ以上の複製を前記移行ファブリック内の1つ以上のホスト上に動的に割り当てることおよび割り当て解除することによって制御される、論理装置と;を含む、システム。前記選択された移行パスは、最も低コストの移行選択肢を提供する、請求項11に記載のシステム。前記選択された移行パスは、最も信頼性の高い移行選択肢を提供する、請求項11に記載のシステム。前記選択された移行パスは、最も低コストであることと最も信頼性があることとを兼ね備えた移行選択肢を提供する、請求項11に記載のシステム。前記ソースVMの前記移行のための移行目標が最小信頼性閾値に従って定義される、請求項11に記載のシステム。前記移行の間の前記ソースVMのための前記複製の数は前記移行目標を満たすように調整される、請求項15に記載のシステム。前記システムは:前記選択された移行パスはもはや実行可能でないと判定することに応答して、代替の移行パスを選択する論理装置、をさらに含む、請求項11に記載のシステム。コンピュータ可読記憶媒体に保存されたコンピュータプログラムであって、前記コンピュータプログラムはコンピュータ上で実行されると前記コンピュータに:ホスティングファブリック内のホストについてのオーバーヘッドおよび信頼性因子を受信することと;前記ホスティングファブリック内でソースVMをソースホストからターゲットホストに移行するための複数の実行可能な移行パスを求めることであって、前記移行は一連の移行フェーズ群を通じて達成され、ただし、フェーズは移行パス内における、1つのホストから別のホストへの前記ソースVMの移行を含む、求めることと;各移行パスに関連付けられる合計オーバーヘッドコストを求めることと;前記オーバーヘッドコストおよび信頼性因子に従って前記複数の移行パスの中から移行パスを選択することであって、前記選択されたパスにわたる前記移行の前記信頼性は監視され、前記ソースVMの1つ以上の複製を前記移行ファブリック内の1つ以上のホスト上に動的に割り当てることおよび割り当て解除することによって制御される、選択することと;をさせる、コンピュータプログラム。前記選択された移行パスは、最も低コストの移行選択肢を提供する、請求項18に記載のコンピュータプログラム。前記選択された移行パスは、最も信頼性のある移行選択肢を提供する、請求項18に記載のコンピュータプログラム。技術的な難関のために、ライブVM移行は通例、ローカル環境に限定される。このローカル環境内において、複製VMはソースVMと同じ物理記憶および同じ物理ネットワークにアクセスするように構成される。しかし、例えば、障害回復、クライアントシステムへのさらなる近接、またはホスティング業者の変更の目的のためにリモート環境へのVMの移行を必要とするアプリケーションがある。リモート移行は、関連レイテンシに起因するシステム不安定性またはサービスの利用不能を生じさせてしまう場合がある。つまり、例えば、移行距離が長すぎたりまたはネットワーク帯域幅が限定されすぎていたりすると、プロビジョニングサービスにおけるレイテンシが不適切に知覚できるようになってしまう場合がある。場合によっては、ネットワーク接続が失われることがあったり、またはホストシステムが故障することがあったりし、サービスを完全に中断させたり、または性能を著しく劣化させたりしてしまう。さらに、長距離移行シナリオでは、VMは一連のより短い移行フェーズを通じて移行されればよい。より短い移行の最中におけるより低いホストの信頼性または接続性の喪失のせいで中間移行のうちの1つにおいてVMを失うことに関連付けられるリスクがある。例えば、VMが2つのデータセンターの間で移行されることになっていれば、信頼性が比較的より低い中間データセンターが用いられる必要がある場合がある。このような移行計画は、追加の信頼性因子のプロビジョニングがなければ、望ましくないことに失敗のリスクを増大させてしまう。要約の目的のために、いくつかの態様、利点および新しい特徴が本願明細書において記載されている。このような利点はいずれか1つの特定の実施形態によってすべて達成されなくてもよいことを理解されたい。それ故、開示されている主題は、本願明細書において教示または示唆されればよいようにすべての利点を達成せずとも1つの利点または一群の利点を最適化または達成するように具体化されるかまたは行われればよい。1つの実施形態によれば、仮想マシンVMを移行するシステムおよび方法が提供される。本方法は、ホスティングファブリック内のホストについてのオーバーヘッドおよび信頼性因子を受信することと;ホスティングファブリック内でソースVMをソースホストからターゲットホストに移行するための複数の実行可能な移行パスを求めることであって、移行は一連の移行フェーズ群を通じて達成され、ただし、フェーズは移行パス内における、1つのホストから別のホストへのソースVMの移行を含む、求めることと;各移行パスに関連付けられる合計オーバーヘッドコストを求めることと;オーバーヘッドコストおよび信頼性因子に従って前記複数の移行パスの中から移行パスを選択することであって、選択されたパスにわたる移行の信頼性は監視され、ソースVMの1つ以上の複製を移行ファブリック内の1つ以上のホスト上に動的に割り当てることおよび割り当て解除することによって制御される、選択することと;を含む。1つ以上の実施形態によれば、1つ以上の論理装置を含むシステムが提供される。1つ以上の論理装置は、上記開示されている方法に関連付けられる機能および動作を遂行するように構成される。さらに別の実施形態では、コンピュータ可読プログラムを有するコンピュータ可読記憶媒体を含むコンピュータプログラムが提供される。コンピュータ可読プログラムは、コンピュータ上で実行されると、上記開示されている方法に関連付けられる機能および動作をコンピュータに遂行させる。いくつかの代替に加えて上記開示されている実施形態のうちの1つ以上が、以下において添付の図面を参照しながらさらに詳細に示される。しかし、開示されている主題は、開示されているいずれの特定の実施形態にも限定されるものではない。開示されている実施形態は、以下に示されるように、添付の図面における図を参照することによってより良く理解されればよい。異なる図において同じ数字によって参照されている特徴、要素および態様は、1つ以上の実施形態による、同じ、同等のまたは類似の特徴、要素または態様を表す。以下に、様々な実施形態の完全な記載を提供するために特定の詳細が数多く説明されている。或る実施形態は、これらの特定の詳細を備えることなく実施されてもよいし、または細部にわたる何らかの変形を備えて実施されてもよい。場合によっては、他の態様を分かりにくくしないようにするために或る特徴はあまり詳細に記載されていない。要素または特徴の各々に関連付けられる詳細のレベルは、1つの特徴の、他のものに対する新規性または重要性を限定するように解釈されてはならない。ソースホストからターゲットホストへのVM移行は、移行パスまたは計画を一連のより短距離の移行フェーズに細分化することによって遂行されればよい。つまり、一連の比較的より短い移行パス例えば、ホップが用いられればよく、ここで、ホップの最大長は、関係するシステムおよび資源の性質、ならびに移行中のVMによって処理される作業に依存する。ホップ距離は、移行プロセスがロバストなものになるよう、十分短く構成される。ロバストな移行は、所定の閾値を越える、サービスの大きな中断、ならびに性能劣化および費用のかかる回復動作を生じさせる場合がある望ましくない状況を抑制するまたは回避する。移行労力を安定化させるには、いくつかの信頼性因子を考慮して移行経路が算出されればよい。移行経路は、移行されるべきソースVMが最初に存在する物理ホストコンピュータ例えば、ソースホストにおいて開始し、VMが最終的に移行されるべきターゲットホストで終了する。図1を参照すると、例示的なネットワーク10が示されており、そこで、ソースホスト14内のVM12がターゲットホスト16に移行するよう指定されている。移行は、プロセッサ20を有し、それぞれの移行機能およびプロセスを行うための、メモリ22内のプログラムを実行する管理用コンピューティングデバイス18を用いて開始され調整されればよい。代替的に、移行は、ターゲットホスト16等の、任意の適当なホストにおいて実行するVMMの制御下で行われてもよい。図示のように、ホスト14はソースネットワーク24に接続され、ソース記憶28内に配置されるソース2次データ26を用いる。ここで、ソースホスト14とターゲットホスト16との間には、6つの候補中間ホスト32、34、36、38、40、42があるが、それらのすべてが移行パス内に入らなくてもよい。図2を参照すると、移行計画は、最初のシステム74を特定することによって開始する。図1において示される環境例内の最初のシステムは、VM12、VM12によって用いられる資源、および移行を開始するためにVM12によって必要とされる入力移行データを含めばよい。1つの実施形態では、移行パスが他に例のないものかまたはすでに知られているものかどうかの判定がなされる76。移行計画は、既知のパスに従って実施されればよい78。移行パスが既知でなければ、入力移行データは分析され80、1つ以上のホストが移行パス内の候補として用いられてよいかどうかを判定する82。その結果、最善の移行パスが選択され84、前記選択されたパスから移行計画が生成される86。その後、移行計画は実施され78、不測の事象が何もなければ完了される88。図1を再び参照すると、図2において開示されている移行方法が用いられればよく、それにより、1ソースVM12をソースホスト14からホスト32に移行し、そこで、それはVM複製44としてインストールされる、2VM複製44のネットワーク接続をソースネットワーク24から中間ネットワーク46に移行する;3VM複製44をホスト32からホスト36に移行し、かくしてVM複製48を作成する;4ソース2次データ26をソース記憶28から中間記憶50に移行し、そこで、それは、今度は中間2次データ52になる;5VM複製44のネットワーク接続を中間ネットワーク46から中間ネットワーク54に移行する;および6VM複製48をホスト36からホスト38に移行し、そこで、それは、今度はVM複製56になる。移行方法はさらに利用されればよく、それにより、7中間2次データ52を中間記憶50から中間記憶58に移行し、そこで、それは、今度は中間2次データ60になる;8VM複製56のネットワーク接続を中間ネットワーク54から中間ネットワーク62に移行する;9VM複製56をホスト38からホスト40に移行し、そこで、それはVM複製64になる;10VM複製64のネットワーク接続を中間ネットワーク62からターゲットネットワーク66に移行する;11VM複製64をホスト40からホスト42に移行し、そこで、それはVM複製68になる;12中間2次データ60を中間記憶58からターゲット記憶70に移行し、そこで、それはターゲット2次データ72になる;および13VM複製68をホスト42からターゲットホスト16に移行し、そこで、それはターゲットVM30になる。VMおよびその資源の移行はどんな順序で行われてもよい。ただし、接続性の問題の故に、移行のうちの2つ以上が同時に起こる可能性があり得るときがある場合がある。要約して言えば、1つの実施形態によれば、成功したライブ移行は、1つ以上の移行ホップにおいて以下のプロセスのうちの少なくとも1つを含む:aVMの状態例えば、メモリ、レジスタ等の、ソースホストからターゲットホストへの複製;b最初のVMの一時停止および複製VMの起動;ならびにc元のVMの破棄。1つの実施形態では、上述の移行方式は、移行が進行中である間、移行環境の技術的安定性を考慮するように強化される。例えば、システムは、移行中にホストまたは接続の障害が起きる状況において所望の信頼性レベルを維持するのを助けるために、あらかじめまたはリアルタイムのいずれかで、非常時の移行計画を1つ以上決定するように構成されればよい。1つ以上の実施形態によれば、移行計画は、移行が進む最中にシステム安定性を確保する例えば、独立して維持されるマシン上のデータまたはホストの冗長度を提供するようにさらに実施されればよい。移行中、選択された移行パスに沿ってソースVMが移動するのに従い、障害が発生した場合に或るレベルの信頼性が維持されることを確実にするために、異なるホスト上で走る、ソースVMの1つ以上の複製が作成されればよい。複製の数は、ソースVMすなわち、1次VMについての目標信頼性または安定性因子、ならびにもし1次VMが移行中に利用不能になれば引き継ぐように構成される複製すなわち、2次VMの累積可用性に依存すればよい。以下においてさらに詳述されるように、移行にかかわらず、様々な理由で例えば、ハードウェアまたは接続性の障害のせいで1次VMが利用不能になる場合がある。VMがホップに沿ってソースからターゲットホストに移行される間、中間ホップにおけるハードウェアまたは接続性のより低い信頼性のせいで、VMが利用不能になってしまうことになる恐れが高まる。それ故、移行についての環境安定性因子および信頼性目標に依存して、選択された移行パスに沿って1つ以上の複製が動的に割り当てられたりまたは割り当て解除されたりすればよい。一貫性のために、複製は、任意の適当な同期方法例えば、仮想同期またはVM高可用性/フォールトトレランス機構を用いて1次VMと同期されればよい。以下においてさらに詳述されるように、頻繁なデータ同期が遂行されればよい。なぜなら、もし1次VMが障害を起こせば、複製のうちの1つが1次VMとして引き継ぐよう指定されることになり、それ故、できるだけ最新のものである必要があるからである。移行プロセス中の信頼性目標を維持するまたは高めるために必要に応じて追加の複製が随意に作成されてもよい。従って、1つ以上の2次VMが、1次VMを複製するように構成されすなわち、データ冗長度をサポートするように、それにより、1次VMの利用不能が起こった場合には、少なくとも該2次VMが1次VMのクライアントに対応し続けることができるようにすればよい。実装によっては、必要に応じてまたは許容されるなら、冗長度レベルは移行パスに沿って動的に変更されてよい。例えば、以下においてさらに詳述されるように、移行パス内のホストの可用性の大きな中断等の不測の事象のせいで、万一、選択された移行計画が失敗した場合に備えて、移行のパスに沿って複製VM群が並行して移行され、システム帯域幅および資源が、追加のシステム安定性およびVM信頼性を提供することを許すようにすればよい。このようにして、長距離移行における失敗のリスクが低減されればよく、VMの可用性、応答性、およびデータの結束性を促進するロバストな移行エクスペリエンスを提供する。1つの実施形態では、既定数の移行ホップが完了された後、またはVMの信頼性に影響を及ぼす外部事象が起きたとき、1次VMおよびその複製の構成が再評価され、望ましい信頼性目標を満たすべく調整されればよい。望ましい信頼性目標を達成するために、以下の情報が考慮されればよい:1ホスティングファブリックの構成例えば、ネットワーク化されたホストの可用性および資源、ネットワークの接続性および帯域幅、等、2移行パスに沿ったホストに関連付けられる容量および制約、3移行に関与するホストおよび対応する構成要素の信頼性、4ソースVMのサービスおよび構成、5目標信頼性/安定性因子、ならびに6ターゲットホストの構成、距離、可用性および資源。図3ないし19を参照すると、1つの実施形態による例示的な移行シナリオを示すために、一連の辺によって接続された複数のノードを示すグラフが示されている。以下においてさらに詳述されるように、本例では、目標は、5の最小信頼性レベル例えば、5のデータ冗長度レートを維持しつつ、性能に関するオーバーヘッドを最小限に抑え、且つサービスの中断がほぼないように、ソースVMをノードSからノードTに移行することである。図3における凡例は、本例では、黒い正方形によって1次VMが指定され、灰色の正方形によって複製VMが指定されることを示す。円形のノードは、選択された移行戦略に依存して、利用されてもよいしまたは利用されなくてもよい、移行ファブリック内のホストマシンを表す。各円形ノードの中に示される値は、それぞれのホストについて指定されたリアルタイムの信頼性レベルである。第1のノードを第2のノードに接続する辺は、例えば、該ノードのうちの一方の上にVMが配置されていれば、該VMは1ホップで他方のノードにうまく移行すればよいことを示す。2つのノードの間の辺に付与されている値は、VMを一方のノードから他方に移行することに関連付けられるオーバーヘッドの指示である。1つの例では、オーバーヘッドは、2つのノードの間の物理的距離を反映する値であればよい―用語ノードおよびホストは、本文書では、特に別に開示されないかぎり、交換可能に用いられる。図3ないし6を参照すると、<S,S>[5,0]は、移行中のVMの複製が2つあり、どちらもホストS上に存在する構成または状態を表す。より一般的に言えば、表記<X1,...,Xn>[r,s]は、移行中のVMの<n>個のコピーすなわち、1つは1次VMコピーであり、残りは2次VM複製であるが、それに対応してホストX1からXnまでの上にある繰り返しを含むことがあり得よう構成または状態を表す。表記<r>および
は、<n>個の複製すべての合計信頼性、およびそれに対応して、それらを同期状態に保つことの合計コストである。複製の各々は他の複製とは独立に移行されていることに留意されたい。以下においてさらに詳述されるように、<S,S>[5,0]から<S,B>[8,1]への遷移は、複製のうちの1つはS上に残り、第2のものはSからBに移行したことを意味する。その結果、2つの複製が、1つはSに、1つはBにあり、5から8に増加した合計信頼性を有し、同時に、今や各々は異なるホスト上にあり、対応する辺上の同期コストが1であるため、それらを同期状態に保つ合計コストも0から1に増加した構成が達成された。上述の方法論に基づき且つ、移行ファブリック内のホストについてのコストおよび信頼性のデータを入手することで、1つ以上の移行計画またはパスが求められればよい。ここで、各移行ホップにおける各パスについてのコストおよび信頼性レベルはあらかじめ算出されればよい。図20を参照すると、定義された信頼性制約に従って最適移行パスを求めるすなわち、算出する例示的な方法が示されている。図21は、以下においてさらに詳述されるとおりの1つの実施形態による、算出された移行計画を実行する例示的な方法を示す。移行ファブリック内のホストについての構成、能力および他の移行関連因子例えば、信頼性、移行コスト、オーバーヘッド、等を求めるために、例えば、移行計画立案システムが利用され、移行ファブリックを横断すればよい。前記情報の一部またはすべては、例えば、外部から他の方法で移行計画立案システムに提供されてもよい。図20を参照すると、前記情報を用いて、ファブリック内のホスト例えば、ノードの対に関連付けられるオーバーヘッドおよび信頼性因子が求められればよいS210。1つの実装では、移行計画立案システムは前記情報を用いて、ソースノードからターゲットノードへのソースVMの移行をサポートする、移行ファブリック内のあり得る実行可能な移行パスを求めるS220。その結果、1つ以上の移行パス候補が発見されればよい。移行パス候補は調査され、そのパスを介してVMを移行することに関連付けられる合計コストを求めるS230。移行パスが、他の発見されたパス候補よりも低コストであると判定されればS240、選択されたパスを通じた移行が、VMについて指定された信頼性制約を満足する限り、そのパスが最適移行パスとして選択されるS250。さもなければ、移行計画立案システムは、適当な移行パスが見つからなかったことを示す出力を生成することになり、初めから再スタートする、追加の情報を要求する、または停止するS260。指定された移行因子をすべてが同等に満足する1つ以上の移行パスが発見される場合には、その中の1つがランダムに選択されてもよいし、または他の因子が検討されて、どれがいちばん最適なパスとなろうかを判定してもよい。例えば、実施形態によっては、純粋な移行オーバーヘッドまたは信頼性制約以外の因子に基づく最適移行パスとして選択パスが選ばれればよい。他の因子としては、例えば、或る移行パスに沿ったネットワーク帯域幅例えば、より高速な移行を可能にする、あるいは全体として移行の成功、失敗または安定性に影響を及ぼす可能性のある他の因子が挙げられてよい。図21を参照すると、最適移行パスまたは計画が選択されると、例えば、移行実行システムが利用され、選択された移行パスに沿ってソースVMすなわち、1次VMを1つのノードから次に移行すればよいS310。かくして、移行は、外部事象が起きるまで選択されたパスに沿って続くS320。それに応じて、移行実行システムは、移行のステータスを評価し、および場合によっては、移行パスの残りに沿ったホストの実行可能性を評価しS330、選択された移行計画が依然として実行可能であるかどうかを判定すればよいS340。もしそうであれば、移行は、1次VMがターゲットソースに無事に移行されるまで続くS310。事象の性質が、移行の中断を招く例えば、移行パス内の1つ以上のノードの間の接続が失われる、またはさもなければ、提供されるサービスの中断を生じさせる例えば、1次VMが実行していたホストが障害を起こすようなものであれば、代替の移行パスが決定されればよい。実装によっては、上記開示されたように、可能な候補として以前に求められた移行パスのセットから代替の移行パスが選ばれればよい。代替的に、移行が開始してから後にファブリック環境が変化している場合には、ファブリックを再度横断し、新しい最適移行パスまたは他の実行可能な候補を求めてそれらの妥当性を確認することが望ましい場合がある。図3ないし19を再び参照すると、ソースVMがソースホストSからターゲットホストTに移行されることになっている例示的なシナリオが示されている。先に示された移行計画立案および実行方法に従い、ノードS、B、DおよびTを通る移行パスが最適移行パスであると判定されればよい。図示のように、選ばれたパスは、3の累積オーバーヘッドを有し、5の最小信頼性因子を満足する。図6を参照すると、1つの実施形態では、ホストS上に複製VM例えば、灰色のボックスとして図示が作成されればよい。ソースVMは、中に数5を有する黒のボックスとして示されている―数5は、VMがS上でホストされるときの信頼性因子を指定している。図7を参照すると、ソースVMは選択されたパスに沿ってSからBに移行する。VMがホストB上に来ると、累積信頼性レベルは53=8になる。なぜなら、ホストBにある1次VMは3の信頼性因子を有し、ホストSにある複製VMは追加の5の信頼性因子を与えるからである。図8に示されるように、1次VMは選択された移行パス内の次のホスト、ノードD、に移行する。1次VMについての累積信頼性因子は、今度は25=7になる。先に示されたように、1つの実施形態では、移行中のVMの累積信頼性因子は、1次VMが存在するホストの信頼性因子に、2次VM単数または複数が存在するホストの累積信頼性因子を加えたものに等しい。図9は、2次VMがホストSからホストBに移行する例示的なシナリオを示す。2次VMの、1次VMにより近づく移行は、万一、1次VMを2次VMで置き換えることが必要となった場合に、このような置換に関連づけられるオーバーヘッドを低減するのを助ける。さらに、1次VMと2次VM単数または複数との間がより近接していることは、移行中に1次VMが変化することに備えて2次VMを最新状態に保つために必要とされればよい同期オーバーヘッドに関連付けられるコストを低減する。図10は、1つの実施形態による、1次VMが動作していたホストDが障害を起こし、その結果、ホストB上にある2次VMが引き継ぐシナリオの図である。このシナリオでは、引き継ぎが実施された後すなわち、ノードB上のVMが1次VMの役目を負うとき、1次VMの信頼性因子は3であり、5の例示的な望ましい閾値未満であることは注目に値する。図11ないし14を参照すると、移行プロセスを継続するために、ノードB、C、E、FおよびTを含むパスに沿った代替の移行パスが決定される。信頼性因子の問題は、ホストB上に2次VMを作成し、1次VMをホストCに移動することにより是正されることに留意されたい。2次VMは、ホストB以外のいずれのホスト上に作成されてもよいことは注目に値する。しかし、効率の目的のためには、ホストC上でのVMの作成がより適切であればよい例えば、コピーオンライトプロセスが利用されて、ホストB上のソースVMの即時コピーを作成すればよい。図15ないし17を参照すると、1次VMおよび2次VMは、移行の新しい計画に従ってそれぞれホストFおよびCに引き続き移行すればよい。図17に示される累積信頼性因子は25=7であり、ホストFは、この移行のために指定された最小信頼性因子5に等しい信頼性因子すなわち、5を有することに留意されたい。1つの実施形態では、移行の各ホップまたは段階における信頼性因子は見直されればよい。すると、例えば、1次VMが存在するホストの信頼性因子が、指定された最小信頼性因子に等しいかそれよりも大きければ、2次VM単数または複数は、他の目的のために必要でなければ、削除または破棄されてよい。ここで開示されている例示的なシナリオでは、図18は、ホストC上に配置されていた2次コピーが削除される例を示す。このような操作は、2次VM単数または複数を維持することに関連付けられるオーバーヘッドコストを低減すること、および同様に2次VM単数または複数と1次VMとの間のデータの同期に関連付けられるコストをなくすまたは低減することを助ければよい。図19はホストFからホストTへの最後の移行ホップを示し、ここで、最後の信頼性レベルは6である。移行プロセス中のホストDの障害のせいで、ホストSからホストTへの成功した移行に関連付けられる合計オーバーヘッドは、ノードS、B、DおよびTに沿った最初に選択された移行パスに関連付けられる最初に算出された3のコストの代わりに、8となるすなわち、2次移行パスはノードS、B、D、B、C、E、F、Tに沿っており、1111112=8ことに留意されたい。それでも、ソースホストからターゲットホストへの完全な移行が、より高いコストではあるが、最小信頼性レベルを満たしつつ無事に達成される。本開示において、コストおよび信頼性という用語ならびに同等の術語は、VMの移行が計画されるネットワークファブリックのインフラストラクチャに依存するいくつかの因子に関連付けられる、動的に変化する値を定義するために用いられている。例えば、制限なく、用語‘コスト’は以下のもののうちの1つ以上またはそれらの組み合わせに言及すればよい:VMを1つのノードから次のノードに、または1つのノードからターゲットノードに移行するコスト、選択された移行パスにおける移行のコスト、障害が起きた場合の回復例えば、1次VMを置き換えることのコスト、ならびに2次VMの同期または維持のコスト。用語‘信頼性’は、制限なく、安定性のレベルを理解および定義するために用いられればよい因子、あるいは選択された移行パスの全体的な信頼性、等に言及すればよい安定性のレベルとは、例えば、VMの複数の複製を作成すること、または、1次VMおよび複製VMの間の同期の頻度、または、移行をサポートするホスト同士の間の距離および接続性ダイナミックス、または1つ以上のVMのためのホストマシンの異なるハードウェアもしくはソフトウェア構成要素に関連付けられる信頼性のレベルを求めること、により達成されればよい。異なる実施形態では、クレームされている主題は、ハードウェアおよびソフトウェア両方の要素の組み合わせとして実装されてもよいし、あるいは代替的に、完全にハードウェアの形態または完全にソフトウェアの形態のいずれかで実装されてもよい。さらに、本願明細書において開示されるコンピューティングシステムおよびプログラムソフトウェアは、ハードウェア構成要素、あるいは本願明細書において考えられている結果を達成する方法およびプロセスを遂行するために実行される論理コードを単位として提示されればよい、制御されたコンピューティング環境を含んでよい。前記方法およびプロセスは、汎用コンピューティングシステムまたはマシンによって遂行されると、汎用マシンを特定の目的のマシンに転換する。図22および23を参照すると、例示的な実施形態によるコンピューティングシステム環境はハードウェア環境1110およびソフトウェア環境1120で構成されればよい。ハードウェア環境1110は、ソフトウェア環境1120の構成要素のための実行環境を提供する論理装置、回路あるいは他の装置類および機器を含めばよい。次に、ソフトウェア環境1120は、基本的な動作設定および構成を含む実行命令をハードウェア環境1110の様々な構成要素に提供すればよい。図22を参照すると、本願明細書において開示されるアプリケーションソフトウェアおよび論理コードは、例示的なハードウェア環境1110によって代表される1つ以上のコンピューティングシステム上にわたって実行されるコンピュータ可読コードの形態で実装されればよい。図示のように、ハードウェア環境1110は、システムバス1100により1つ以上の記憶要素に結合されるプロセッサ1101を含めばよい。記憶要素は、例えば、ローカルメモリ1102、記憶媒体1106、キャッシュメモリ1104あるいは他のコンピュータ可用またはコンピュータ可読媒体を含んでよい。本開示の文脈において、コンピュータ可用またはコンピュータ可読記憶媒体とは、プログラムコードを包含、記憶、伝達、伝搬または輸送するために利用されればよい任意の記録可能物を含めばよい。コンピュータ可読記憶媒体は、電子的、磁気的、光学的、電磁的、赤外線または半導体媒体、システム、機器または装置であればよい。コンピュータ可読記憶媒体は、このような実装が法定主題と見なされる程度まで、制限なく、伝搬媒体の形で実装されてもよい。コンピュータ可読記憶媒体の例としては、半導体または固体メモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリrandomaccessmemory、RAM、リードオンリーメモリread-onlymemory、ROM、リジッド磁気ディスク、光ディスク、または適切な場合には、搬送波が挙げられればよい。光ディスクの現在の例としては、コンパクトディスクリードオンリーメモリcompactdiskreadonlymemory、CD-ROM、コンパクトディスクリード/ライトcompactdiskread/write、CD-R/W、デジタルビデオディスクdigitalvideodisk、DVD、高精細度ビデオディスクhighdefinitionvideodisk、HD-DVDまたはブルーレイ商標ディスクが挙げられる。1つの実施形態では、プロセッサ1101は実行可能コードを記憶媒体1106からローカルメモリ1102にロードする。キャッシュメモリ1104は、コードが実行のためにロードされる回数を低減することを助ける一時記憶を提供することによって処理時間を最適化する。1つ以上のユーザインターフェースデバイス1105例えば、キーボード、ポインティングデバイス、等およびディスプレイ画面1107は、ハードウェア環境1110内の他の要素に、直接または例えば介在I/Oコントローラ1103を通じるかのいずれかによって結合されればよい。ネットワークアダプタ等の通信インターフェースユニット1108は、ハードウェア環境1110が、私設または公衆の介在ネットワーク例えば、インターネットを介してローカルのまたは遠隔配置されたコンピューティングシステム、プリンタおよび記憶デバイスと通信することを可能にするために提供されればよい。有線または無線モデムおよびイーサネットRカードが、ネットワークアダプタの例示的な種類の数例である。或る実装では、ハードウェア環境1110は、上述の構成要素の一部またはすべてを含まなくてもよいし、あるいは補足的な機能性または効用を提供するために追加の構成要素を含んでもよいことは注目に値する。考えられている用途および構成に応じて、ハードウェア環境1110は、デスクトップもしくはラップトップコンピュータ、あるいはセットトップボックス、パーソナルデジタルアシスタントpersonaldigitalassistant、PDA、パーソナルメディアプレイヤー、移動通信ユニット例えば、無線電話、または情報処理もしくはデータ記憶能力を有する他の同様のハードウェアプラットフォーム等の組み込みシステムで任意に具体化される他のコンピューティングデバイスであればよい。実施形態によっては、通信インターフェース1108は、プログラムコードを含む様々な種類の情報を表すアナログまたはデジタルデータストリームを搬送するデジタル、電気、電磁または光信号を送受信することによって1つ以上のコンピューティングシステムとの通信の手段を提供するデータ通信ポートの役割を果たす。通信は、ローカルまたはリモートネットワークにより、あるいは代替的に、搬送波を通じた伝搬を含む、ただしそれに限定されるものではない、空中または他の媒体を通じた伝達により確立されればよい。ここで示されるように、図示のハードウェア要素上で実行される、開示されているソフトウェア要素は、本質的に例示的なものである論理的または機能的関係に従って定義されている。しかし、前記例示的なソフトウェア要素により実装されるそれぞれの方法は、例えば、構成およびプログラムされたプロセッサ、特定用途向け集積回路applicationspecificintegratedcircuit、ASIC、フィールドプログラマブルゲートアレイfieldprogrammablegatearray、FPGAおよびデジタル信号プロセッサdigitalsignalprocessor、DSPにより、前記ハードウェア要素内にエンコードされてもよいことに留意されたい。図23を参照すると、ソフトウェア環境1120は、1つ以上のハードウェア環境1110上で実行されるものとしてシステムソフトウェア1121およびアプリケーションソフトウェア1122を含む2つの種別に大まかに分けられればよい。1つの実施形態では、ここで開示されている方法およびプロセスは、システムソフトウェア1121、アプリケーションソフトウェア1122、またはその組み合わせとして実装されればよい。システムソフトウェア1121は、ハードウェア環境1110内の1つ以上のプロセッサ1101例えば、マイクロコントローラに、どのように機能し情報を処理するかについて命令する、オペレーティングシステムoperatingsystem、OSまたは情報管理システム等の制御プログラムを含めばよい。アプリケーションソフトウェア1122は、プログラムコード、データ構造、ファームウェア、常駐ソフトウェア、マイクロコード、あるいはプロセッサ1101によって読み込まれる、分析されるまたは実行される任意の他の形態の情報またはルーチンを含めばよい。ただし、それらに限定されるものではない。換言すると、アプリケーションソフトウェア1122は、コンピュータまたは任意の命令実行システムによって利用される、またはそれらと連携して利用されるプログラムコードを提供するコンピュータ可用またはコンピュータ可読記憶媒体の形態でコンピュータプログラム内に組み込まれるプログラムコードとして実装されればよい。さらに、アプリケーションソフトウェア1122は、記憶媒体1106からローカルメモリ1102にロードされた後にシステムソフトウェア1121に加えて実行される1つ以上のコンピュータプログラムを含んでもよい。クライアント-サーバアーキテクチャにおいて、アプリケーションソフトウェア1122はクライアントソフトウェアおよびサーバソフトウェアを含んでよい。例えば、1つの実施形態では、クライアントソフトウェアは、サーバソフトウェアが実行されるサーバコンピューティングシステムとは別個で分離可能であるクライアントコンピューティングシステム上で実行されればよい。ソフトウェア環境1120は、ローカルまたはリモートコンピューティングネットワークを通じて利用可能なデータにアクセスするためのブラウザソフトウェア1126も含んでよい。さらに、ソフトウェア環境1120は、ユーザコマンドおよびデータを受信するためのユーザインターフェース1124例えば、グラフィカルユーザインターフェースgraphicaluserinterface、GUIを含んでもよい。上述のハードウェアおよびソフトウェアアーキテクチャおよび環境は例示の目的のためのものであることは繰り返して言うに値する。それ故、1つ以上の実施形態は、任意の種類のシステムアーキテクチャ、機能的または論理プラットフォームあるいは処理環境の上に実装されてよい。論理コード、プログラム、モジュール、プロセス、方法、および各方法のそれぞれのプロセスが遂行される順序は純粋に例示的なものであることも理解されたい。実装によっては、プロセスあるいは任意の基盤サブプロセスおよび方法は、本開示において特に別に示されない限り、任意の順序でまたは同時に遂行されてよい。さらに、特に特定性をもって提示されない限り、本開示の文脈の中での論理コードの定義はいかなる特定のプログラミング言語にも関連しないまたは限定されず、分散型、非分散型、単一または多重処理環境内の1つ以上のプロセッサ上で実行されればよい1つ以上のモジュールを含んでよい。当業者によって理解されるように、ソフトウェアの実施形態はファームウェア、常駐ソフトウェア、マイクロコード等を含めばよい。ソフトウェアまたはハードウェアを含むあるいはソフトウェアおよびハードウェアの態様を組み合わせた或る構成要素は本願明細書において広く回路、モジュールまたはシステムと呼ばれる。さらに、開示されている主題は、1つ以上のコンピュータ可読媒体単数または複数であって、その上に具体化されるコンピュータ可読プログラムコードを有する、コンピュータ可読記憶媒体内に具体化されるコンピュータプログラムとして実装されてもよい。1つ以上のコンピュータ可読媒体単数または複数の任意の組み合わせが利用されてよい。コンピュータ可読媒体はコンピュータ可読信号媒体またはコンピュータ可読記憶媒体であればよい。コンピュータ可読記憶媒体は、例えば、電子的、磁気的、光学的、電磁的、赤外線または半導体システム、装置またはデバイス、あるいは上述のものの任意の適当な組み合わせであればよい。ただし、それらに限定されるものではない。本文書の文脈において、コンピュータ可読記憶媒体とは、命令実行システム、装置またはデバイスによって用いられるまたはそれらと連係して用いられるプログラムを包含または記憶することができる任意の有形媒体であればよい。コンピュータ可読信号媒体とは、例えば、基底帯域内にまたは搬送波の一部として、内部にコンピュータ可読プログラムコードが具体化される伝搬データ信号を含むものであればよい。このような伝搬信号は、電磁気的、光学的、またはそれらの任意の適当な組み合わせを含む、ただしそれらに限定されるものではない、様々な形態のいずれを取ってもよい。コンピュータ可読信号媒体とは、コンピュータ可読記憶媒体ではない、命令実行システム、装置またはデバイスによって用いられるまたはそれらと連係して用いられるプログラムを伝達、伝搬または輸送することができる任意のコンピュータ可読媒体であればよい。コンピュータ可読媒体上に具体化されるプログラムコードは、無線、有線、光ファイバケーブル、RF等、または上述のものの任意の適当な組み合わせを含む、ただしそれらに限定されるものではない、任意の適切な媒体を用いて送信されればよい。開示されている作業を行うためのコンピュータプログラムコードは、JavaR、SmalltalkR、Cまたは同様のもの等のオブジェクト指向プログラミング言語、ならびにCプログラミング言語または同様のプログラミング言語等の従来の手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書き込まれればよい。プログラムコードは、スタンドアロンソフトウェアパッケージとして完全にまたは一部分はユーザのコンピュータ上で実行するか、一部分はユーザのコンピュータ上で且つ一部分はリモートコンピュータ上で実行するか、または完全にリモートコンピュータもしくはサーバ上で実行すればよい。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワークlocalareanetwork、LANまたはワイドエリアネットワークwideareanetwork、WANを含む、任意の種類のネットワークを通じてユーザのコンピュータに接続されてもよいし、あるいは接続は、例えば、インターネットサービスプロバイダを利用しインターネットを通じて外部のコンピュータになされてもよい。或る実施形態が、実施形態による方法、装置システムおよびコンピュータプログラムのフローチャート図もしくはブロック図またはその両方を参照しながら開示されている。フローチャート図もしくはブロック図またはその両方の各ブロック、ならびにフローチャート図もしくはブロック図またはその両方におけるブロックの組み合わせは、コンピュータプログラム命令によって実装されることができることは理解されよう。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出せばよく、それにより、命令は、コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサを介して実行し、フローチャートもしくはブロック図またはその両方のブロックまたはブロック群において特定される機能群/動作群を実装する手段を生み出す。これらのコンピュータプログラム命令は、コンピュータ、他のプログラム可能なデータ処理装置または他のデバイスを特定の様式で機能するように仕向けることができるコンピュータ可読媒体内に記憶されてもよく、それにより、コンピュータ可読媒体内に記憶された命令は、フローチャートもしくはブロック図またはその両方のブロックまたはブロック群において特定される機能/動作を実装する命令を含む製造品を作り出す。コンピュータプログラム命令は、コンピュータ、他のプログラム可能なデータ処理装置または他のデバイス上にロードされ、一連の作業ステップをコンピュータ、他のプログラム可能な装置または他のデバイス上で遂行させ、コンピュータ実装プロセスを作り出してもよく、それにより、コンピュータまたは他のプログラム可能な装置上で実行する命令は、フローチャートもしくはブロック図またはその両方のブロックまたはブロック群において特定される機能群/動作群を実装するためのプロセス群を提供する。図中のフローチャートおよびブロック図は、様々な実施形態によるシステム、方法およびコンピュータプログラムのあり得る実装のアーキテクチャ、機能性、および動作を示す。これに関連して、フローチャートまたはブロック図の各ブロックは、特定の論理機能単数または複数を実装するための1つ以上の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表せばよい。代替の実装によっては、ブロック内に記された機能は、図に記された順序を外れて行われてよいことにも留意されたい。例えば、連続して示されている2つのブロックが、実際は、実質的に同時に実行されてもよいし、またはブロックは、関係する機能性に依存して、時には逆順序で実行されてもよい。ブロック図もしくはフローチャート図またはその両方の各ブロック、ならびにブロック図もしくはフローチャート図またはその両方におけるブロックの組み合わせは、特定の機能または動作を遂行する専用ハードウェアベースのシステム、あるいは専用ハードウェアおよびコンピュータ命令の組み合わせによって実装されることができることにも留意されたい。クラウドコンピューティングとは、最小限の管理労力またはサービスのプロバイダとの最小限の対話をもって迅速にプロビジョニングされ解放されればよい、構成可能なコンピューティング資源例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、記憶、アプリケーション、仮想マシン、およびサービスの共用プールへの簡便なオンデマンドネットワークアクセスを可能にするためのサービスデリバリのモデルである。このクラウドモデルは少なくとも5つの特性、少なくとも3つのサービスモデル、および少なくとも4つの配置モデルを含めばよい。オンデマンドセルフサービスを用いて、クラウド消費者がサーバタイムおよびネットワーク記憶等のコンピューティング能力を一方的に、必要な場合にはサービスのプロバイダとの人的対話を要することなく自動的に、プロビジョニングすればよい。広域なネットワークアクセス能力がネットワーク全体にわたって利用可能であり、異種のシンまたはシッククライアントプラットフォーム例えば、携帯電話、ラップトップ、およびPDAによる利用を促進する標準機構を通じてアクセスされればよい。資源のプーリングにより、プロバイダのコンピューティング資源がプールされ、マルチテナントモデルを用いて、異なる物理資源および仮想資源が需要に従って動的に割り振りおよび再割り振りされながら、複数の消費者に対応することが可能になる。消費者は一般的に、提供される資源の正確な場所を制御することおよび知ることはないが、より高いレベルの抽象化における場所例えば、国、州、またはデータセンターを指定することはできる場合があるという点で、一種の場所独立性がある。迅速な弾力性能力は、迅速且つ弾力的に、場合によっては自動的に、プロビジョニングされ速やかにスケールアウトし且つ、迅速に解放され速やかにスケールインすればよいというものである。消費者にとって、プロビジョニングのために利用可能な能力は大抵、無制限であるように見え、いつでもいかなる量で購入されてもよい。従量に基づくサービスにより、クラウドシステムは、サービスの種類例えば、記憶、処理、帯域幅、および有効なユーザアカウントに適した何らかの抽象化レベルでの計量能力を活用することによって資源の利用を自動的に制御し最適化することができる。資源の利用量が監視、制御および報告され、利用されているサービスのプロバイダおよび消費者の両者に透明性を提供すればよい。実装に応じて、いくつかのサービスモデルが利用可能である。サービスとしてのソフトウェアSoftwareasaService、SaaSは、クラウドインフラストラクチャ上で走るプロバイダのアプリケーションを用いる能力を提供する。アプリケーションは、ウェブブラウザ例えば、ウェブベースのeメール等のシンクライアントインターフェースを通じて様々なクライアントデバイスからアクセス可能である。消費者は、限定ユーザ専用のアプリケーション構成設定の可能性を除いて、ネットワーク、サーバ、オペレーティングシステム、記憶、またはさらには個々のアプリケーション能力を含む基盤クラウドインフラストラクチャを管理または制御しない。サービスとしてのプラットフォームPlatformasaService、PaaSは、プロバイダによってサポートされるプログラミング言語およびツールを用いて作成された消費者作成または取得アプリケーションをクラウドインフラストラクチャ上に配置する能力を提供する。消費者は、ネットワーク、サーバ、オペレーティングシステムまたは記憶を含む基盤クラウドインフラストラクチャを管理または制御しないが、配置されたアプリケーション、および場合によってはアプリケーションホスティング環境構成を制御する。サービスとしてのインフラストラクチャInfrastructureasaService、IaaSは、オペレーティングシステムおよびアプリケーションを含んでよい任意のソフトウェアを消費者が配置し走らせることができる、処理、記憶、ネットワークおよび他の基本的なコンピューティング資源をプロビジョニングする能力を提供する。消費者は基盤クラウドインフラストラクチャを管理または制御しないが、オペレーティングシステム、記憶、配置されたアプリケーション、および場合によっては選択ネットワーキング構成要素例えば、ホストファイヤウォールの限定的制御を制御する。いくつかの配置モデルが提供されてよい。プライベートクラウドは、組織体のためだけに運用されるクラウドインフラストラクチャを提供する。それは当該組織体または第三者によって管理されればよく、オンプレミスで存在してもよいしまたはオフプレミスで存在してもよい。コミュニティクラウドは、いくつかの組織体によって共用され、共有関心事例えば、任務、セキュリティ要件、政策、およびコンプライアンスの配慮を持つ特定の集団を支援するクラウドインフラストラクチャを提供する。それは当該組織体または第三者によって管理されればよく、オンプレミスで存在してもよいしまたはオフプレミスで存在してもよい。パブリッククラウドは、一般公衆または大きな業界団体に対して利用可能とされ、クラウドサービスを販売する組織体によって所有されるクラウドインフラストラクチャを提供すればよい。ハイブリッドクラウドは、固有の実体のままであるが、データおよびアプリケーションの可搬性を可能にする標準化または独自技術例えば、クラウド同士の間の負荷バランシングのためのクラウドバースティングによって結び付けられる2つ以上のクラウドプライベート、コミュニティまたはパブリックの複合であるクラウドインフラストラクチャを提供する。クラウドコンピューティング環境は、ステートレス性、疎結合、モジュール性および意味論的相互運用性に重点を置いたサービス指向型のものである。クラウドコンピューティングの中心には、相互接続されたノードのネットワークを含むインフラストラクチャがある。次に図24を参照すると、クラウドコンピューティングノードの例の概略図が示されている。クラウドコンピューティングノード2010は適当なクラウドコンピューティングノードの1つの例であって、本願明細書において記載されている実施形態の利用または機能性の範囲についていかなる限定を示唆することも意図されていない。どのようなものであれ、クラウドコンピューティングノード2010は、本願明細書において上述されている機能性のいずれを実装されることもできるもしくは遂行することができるまたはそのどちらも可能なものである。クラウドコンピューティングノード2010には、コンピュータシステム/サーバ2012があり、該コンピュータシステム/サーバ2012は数多くの他の汎用または専用コンピューティングシステム環境または構成とともに動作可能である。コンピュータシステム/サーバ2012とともに使用するために適していればよい周知のコンピューティングシステム、環境もしくは構成またはそれらの組み合わせの例としては、パーソナルコンピュータシステム、サーバコンピュータシステム、シンクライアント、シッククライアント、ハンドヘルドもしくはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な消費者家電製品、ネットワークPC、ミニコンピュータシステム、メインフレームコンピュータシステム、および上記のシステムもしくはデバイスのいずれかを含む分散型クラウドコンピューティング環境、ならびに同様のものが挙げられる。ただし、それらに限定されるものではない。コンピュータシステム/サーバ2012は、コンピュータシステムによって実行されている、プログラムモジュール等の、コンピュータシステム実行可能命令の一般的な文脈において記載されればよい。一般的に、プログラムモジュールは、特定のタスクを遂行するまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、論理、データ構造、等を含めばよい。コンピュータシステム/サーバ2012は、通信ネットワークを通じてリンクされるリモート処理デバイスによってタスクが遂行される分散型クラウドコンピューティング環境内で実施されればよい。分散型クラウドコンピューティング環境において、プログラムモジュールは、メモリ記憶デバイスを含むローカルおよびリモートいずれのコンピュータシステム記憶媒体内に配置されてもよい。図24に示されるように、クラウドコンピューティングノード2010内のコンピュータシステム/サーバ2012は汎用コンピューティングデバイスの形態で示されている。コンピュータシステム/サーバ2012の構成要素は、1つ以上のプロセッサまたは処理装置2016、システムメモリ2028、ならびにシステムメモリ2028を含む様々なシステム構成要素を処理装置2016に結合するバス2018を含めばよい。ただし、それらに限定されるものではない。バス2018は、メモリバスまたはメモリコントローラ、周辺バス、アクセラレーテッドグラフィックスポート、ならびに様々なバスアーキテクチャのいずれかを用いるプロセッサまたはローカルバスを含む、いくつかの種類のバス構造のいずれかのうちの1つ以上を表す。例として、ただし限定ではなく、このようなアーキテクチャとして、業界標準アーキテクチャIndustryStandardArchitecture、ISAバス、マイクロチャネルアーキテクチャMicroChannelArchitecture、MCAバス、拡張ISAEnhancedISA、EISAバス、ビデオエレクトロニクススタンダーズアソシエーションVideoElectronicsStandardsAssociation、VESARローカルバス、および周辺機器相互接続PeripheralComponentInterconnects、PCIバスが挙げられる。コンピュータシステム/サーバ2012は通例、様々なコンピュータシステム可読媒体を含む。このような媒体は、コンピュータシステム/サーバ2012によってアクセス可能である任意の利用可能媒体であればよく、それは揮発性媒体および不揮発性媒体のどちらも、取り外し可能媒体および非取り外し可能媒体のどちらも含む。システムメモリ2028は、ランダムアクセスメモリRAM2030もしくはキャッシュメモリ2032またはその両方等の、揮発性メモリの形態のコンピュータシステム可読媒体を含めばよい。コンピュータシステム/サーバ2012は他の取り外し可能/非取り外し可能、揮発性/不揮発性コンピュータシステム記憶媒体をさらに含んでよい。例として、非取り外し可能な不揮発性磁気媒体図示しないが通例、ハードドライブと呼ばれるに対して読み出しおよび書き込みするための記憶システム2034が提供されればよい。図示はされていないが、取り外し可能な不揮発性磁気ディスク例えば、フレキシブルディスクに対して読み出しおよび書き込みするための磁気ディスクドライブ、ならびにCD-ROM、DVD-ROMまたは他の光媒体等の取り外し可能な不揮発性光ディスクに対して読み出しまたは書き込みするための光ディスクドライブが提供されてもよい。例によっては、上記の構成要素は1つ以上のデータ媒体インターフェースによってバス2018に接続されればよい。以下においてさらに図示され記載されるように、メモリ2028は、1つ以上の実施形態の機能を行うように構成されるプログラムモジュールのセット例えば、少なくとも1つを有するプログラムを少なくとも1つ含めばよい。オペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータも同様に、例として、ただし限定ではなく、プログラムモジュール2042のセット少なくとも1つを有するプログラム/ユーティリティ2040がメモリ2028内に記憶されればよい。オペレーティングシステム、1つ以上のアプリケーションプログラム、他のプログラムモジュール、およびプログラムデータの各々、あるいはそれらの何らかの組み合わせは、ネットワーキング環境の実装を含めばよい。プログラムモジュール2042は通常、1つ以上の実施形態の機能もしくは方法論またはその両方を行う。コンピュータシステム/サーバ2012は、キーボード、ポインティングデバイス、ディスプレイ2024など等の1つ以上の外部デバイス2014;ユーザがコンピュータシステム/サーバ2012と対話することを可能にする1つ以上のデバイス;もしくはコンピュータシステム/サーバ2012が1つ以上の他のコンピューティングデバイスと通信することを可能にする任意のデバイス例えば、ネットワークカード、モデム等;またはそれらの組み合わせと通信してもよい。このような通信はI/Oインターフェース2022を介して行われればよい。さらになお、コンピュータシステム/サーバ2012は、ネットワークアダプタ2020を介して、ローカルエリアネットワークLAN、一般のワイドエリアネットワークWAN、もしくはパブリックネットワーク例えば、インターネット、またはそれらの組み合わせ等の1つ以上のネットワークと通信すればよい。図示のように、ネットワークアダプタ2020はバス2018を介してコンピュータシステム/サーバ2012の他の構成要素と通信する。図示はされていないが、コンピュータシステム/サーバ2012と連動して他のハードウェアもしくはソフトウェア構成要素またはその両方が用いられることができようことを理解されたい。例として:マイクロコード、デバイスドライバ、余分の処理装置、外部ディスクドライブアレイ、RAIDシステム、テープドライブ、およびデータアーカイブ記憶システム等が挙げられる。ただし、それらに限定されるものではない。次に図25を参照すると、例示的なクラウドコンピューティング環境2050が示されている。図示のように、クラウドコンピューティング環境2050は、例えば、パーソナルデジタルアシスタントPDAもしくはセルラー電話2054A、デスクトップコンピュータ2054B、ラップトップコンピュータ2054C、または自動車コンピュータシステム2054N、あるいはそれらの組み合わせ等の、クラウド消費者によって用いられるローカルコンピューティングデバイスが通信すればよい1つ以上のクラウドコンピューティングノード2010を含む。ノード2010は互いに通信し合えばよい。それらは、本願明細書において上述されたとおりのプライベート、コミュニティ、パブリックまたはハイブリッドクラウド、あるいはそれらの組み合わせ等の、1つ以上のネットワーク内で物理的または仮想的にグループ化されてよい不図示。これにより、クラウドコンピューティング環境2050は、クラウド消費者がローカルコンピューティングデバイス上に資源を維持する必要がない、サービスとしてのインフラストラクチャ、プラットフォームもしくはソフトウェアまたはそれらのすべてを提供することができる。図25において示されるコンピューティングデバイス2054A~Nの種類はあくまで例示として意図されていること、ならびにコンピューティングノード2010およびクラウドコンピューティング環境2050は、任意の種類のネットワークもしくはネットワークアドレス指定可能接続例えば、ウェブブラウザを用いるまたはその両方を通じて任意の種類のコンピュータ化デバイスと通信してよいことが理解される。次に図26を参照すると、クラウドコンピューティング環境2050図25によって提供される機能抽象化層のセットが示されている。図26に示される構成要素、層および機能は1つ以上の実施形態の例示として意図されているものであり、それらに限定されるものではないことをあらかじめ理解されたい。図示のように、以下の層および対応する機能が示されている。ハードウェアおよびソフトウェア層2060はハードウェアおよびソフトウェア構成要素を含む。ハードウェア構成要素の例としてはメインフレームが挙げられ、1つの例では、IBMIBM社の登録商標zSeriesIBM社の登録商標システム;RISCReducedInstructionSetComputer、縮小命令セットコンピュータアーキテクチャベースのサーバ、1つの例では、IBMpSeriesIBM社の登録商標システム;IBMxSeriesIBM社の登録商標システム;IBMBladeCenterIBM社の登録商標システム;記憶デバイス;ネットワークおよびネットワーキング構成要素、が挙げられる。ソフトウェア構成要素の例としてはネットワークアプリケーションサーバソフトウェアが挙げられ、1つの例では、IBMWebSphereIBM社の登録商標アプリケーションサーバソフトウェア;およびデータベースソフトウェア、1つの例では、IBMDB2IBM社の登録商標データベースソフトウェア、が挙げられる。IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多数の法域で登録されているインターナショナルビジネスマシンコーポレーションInternationalBusinessMachinesCorporationの商標である。仮想化層2062は、以下の仮想実体の例:仮想サーバ;仮想記憶;仮想プライベートネットワークを含む仮想ネットワーク;仮想アプリケーションおよびオペレーティングシステム;ならびに仮想クライアント、が提供されればよい抽象化層を提供する。1つの例では、管理層2064は、以下に記載される機能を提供すればよい。資源プロビジョニングは、クラウドコンピューティング環境内でタスクを遂行するために利用されるコンピューティング資源および他の資源の動的調達を提供する。計量および価格決定は、クラウドコンピューティング環境内で資源が利用されるのに応じたコストの追跡、およびこれらの資源の消費についての請求書作成または送り状作成を提供する。1つの例では、これらの資源はアプリケーションソフトウェアライセンスを含んでよい。セキュリティがクラウド消費者およびタスクのための本人確認、ならびにデータおよび他の資源の保護を提供する。ユーザポータルは消費者およびシステム管理者にクラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理は、要求サービスレベルが満たされるようにクラウドコンピューティング資源の割り当ておよび管理を提供する。サービス品質保証契約ServiceLevelAgreement、SLA計画および達成は、SLAに従って将来の要件が予想されるクラウドコンピューティング資源のための事前の取り決めおよびそれらの調達を提供する。作業負荷層2066は、クラウドコンピューティング環境が利用されればよい機能性の例を提供する。この層から提供されればよい作業負荷および機能の例として:マッピングおよびナビゲーション;ソフトウェア開発およびライフサイクル管理;仮想教室教育配信;データ分析処理;トランザクション処理;その他、が挙げられる。クレームされている主題は本願明細書において1つ以上の特徴または実施形態を参照しながら示されている。当業者は、本願明細書において示されている例示的な実施形態の詳細性にもかかわらず、普遍的に意図された範囲を限定したりまたはそれから逸脱したりすることなく前記実施形態に改変および変更が加えられてよいことを認識し理解しよう。本願明細書において示されている実施形態のこれらおよび様々な他の適合および組み合わせは、クレームおよびそれらの同等物一式によって定義されるとおりの開示されている主題の範囲内である。"