複数のボリュームを有するストレージシステムと、複数のホストシステムと、当該ストレージシステム及び当該ホストシステムにネットワークを介して結合されている管理サーバとを含むサーバシステムを管理する方法であって、仮想マシンイメージファイルに対応する前記ストレージシステムにゴールデンイメージを生成することと、前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかに仮想マシンデータをコピーすることと、前記仮想マシンのアクティビティを監視することにより、仮想マシンデータをコピーした前記ボリュームのステータスを、前記管理サーバによって追跡記録することとを含む方法であり、監視された仮想マシンの前記アクティビティが、前記仮想マシンVMのデプロイの開始である場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用される前記VMデータを格納するボリュームの前記ステータスが、ボリュームプール内にあり、かつ前記仮想マシンのデプロイの実行の前にストレージ管理APIを介してターゲットLUN論理ユニット番号に取り付けられていないかをチェックすることを含み、監視された仮想マシンの前記アクティビティが、前記仮想マシンを開始する前の前記仮想マシンのデプロイである場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用される前記VMデータを格納するボリュームの前記ステータスが、前記仮想マシンがデプロイされるホストシステムのために取り付けられたボリュームとして取り付けられているかをチェックすることを含み、及び監視された仮想マシンの前記アクティビティが、前記仮想マシンの格納の終了である場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用された前記VMデータを格納するボリュームの前記ステータスが、ターゲットLUN論理ユニット番号から切り離され、かつストレージ管理APIを介してボリュームプール内にあるかをチェックすることを含む、サーバシステム管理方法。前記ゴールデンイメージは、前記ストレージシステムの管理者又は前記管理サーバの管理者からの入力なしに、VM管理者からの入力に従って前記ストレージシステムの記憶能力を使用して生成される、請求項1に記載の方法。前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかにVMデータをコピーする前に、VMデータを格納するための前記複数のボリュームの各々を作成することと、ボリュームにマップすることができる前記ホストシステムのWWNワールドワイドネームを有するホストシステムのグループであるホストグループに、前記作成されたボリュームの各々を取り付けることとをさらに含む、請求項1に記載の方法。前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかにVMデータをコピーした後で、前記ホストグループから前記ボリュームの各々を切り離すことと、各ホストシステムのために、1前記ホストシステムのプロセッサ上に存在し、かつVMによって利用されるコア、及び2前記コアを使用するあらゆる仮想マシンの名前を格納するか、又は前記コアがいずれの仮想マシンによっても使用されていない場合には、一切エントリを格納しないステータスを示すホストリストから未使用又は共有のコアを選択することによって、VMのためにホストを予約して、前記選択されたコアにおける前記VMについての予約済み状態を挿入することにより、ターゲットコアのための専用VMデプロイを行うこととをさらに含む、請求項3に記載の方法。前記切り離し及び予約の後で、前記ホストグループに前記切り離されたボリュームの各々を取り付けることと、前記取り付けられたボリュームの各々についてVMファイル名を更新することと、ホストのために1つ以上の新しいボリュームを発見するために前記ストレージシステム内のディスクを再スキャンすることであって、当該1つ以上の新しいボリュームの各々は、仮想マシンがデプロイされるホストシステムのために発見されたボリュームとして発見されるように再スキャンすることと、前記発見されたボリュームに基づいて前記再スキャンされたディスクをオンラインにすることと、前記オンラインディスクをマウントすることとをさらに含む、請求項4に記載の方法。前記再スキャン、オンライン化、及びマウントの後で、前記マウントされたディスクに基づいてVMイメージを開始することと、前記選択されたコア内の前記開始されたVMについての前記予約済み状態の代わりに前記ホストリストVM名に挿入することによって、ホストを使用済みに設定することと、前記開始されたVMのために前記ボリュームの各々について前記VMファイル名を更新することとをさらに含む、請求項5に記載の方法。ホストグループにボリュームを取り付ける前に、前記ボリュームが既に取り付けられていないかを判断するために、取り付けられる前記ボリュームについて前記ホストグループの接続ステータスをチェックすることと、ホストグループからボリュームを切り離す前に、前記ボリュームが取り付けられているかを判断するために、切り離される前記ボリュームについて前記ホストグループの接続ステータスをチェックすることとをさらに含む、請求項5に記載の方法。前記ホストグループの前記ホストシステムのWWNをチェックすることによって、前記ホストグループのクラスタ構成の妥当性を確認することをさらに含む、請求項4に記載の方法。監視された仮想マシンの前記アクティビティが、前記仮想マシンのデプロイの開始である場合は、前記ホストシステムのWWNの数が少なくとも2つであるかを判断し、かつ前記ストレージシステムのポートの数が少なくとも2つであるかを判断することと、前記判断において少なくとも2つのWWN及び少なくとも2つポートが存在しない場合、前記仮想マシンの前記デプロイの操作済み変数を格納し、かつ当該格納された操作済み変数を使用して回復を実行することとをさらに含む、請求項8に記載の方法。監視された仮想マシンの前記アクティビティが、前記仮想マシンのデプロイの開始である場合は、VMをデプロイするための利用可能なコアが存在するかを判断し、YESの場合は、前記選択されたコア内に前記VMについての予約済み状態を挿入することによって、利用可能なコアを選択すること、NOの場合は、利用可能なコアを見つけることに失敗した旨のアラートを送信することとをさらに含む、請求項4に記載の方法。ストレージシステム及び複数のホストシステムにネットワークを介して結合されている管理サーバであって、当該ストレージシステムは複数のボリュームを有し、当該管理サーバは、プロセッサと、メモリと、プランエグゼキュータとを備え、当該プランエグゼキュータは、仮想マシンイメージファイルに対応する前記ストレージシステムにゴールデンイメージを生成し、前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかに仮想マシンデータをコピーし、前記仮想マシンのアクティビティを監視することにより、仮想マシンデータをコピーした前記ボリュームのステータスを、前記管理サーバによって追跡記録するためにプランを実行するものであり、監視された仮想マシンの前記アクティビティが、前記仮想マシンVMのデプロイの開始である場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用される前記VMデータを格納するボリュームの前記ステータスが、ボリュームプール内にあり、かつ前記仮想マシンのデプロイの実行の前にストレージ管理APIを介してターゲットLUN論理ユニット番号に取り付けられていないかをチェックすることを含み、監視された仮想マシンの前記アクティビティが、前記仮想マシンを開始する前の前記仮想マシンのデプロイである場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用される前記VMデータを格納するボリュームの前記ステータスが、前記仮想マシンがデプロイされるホストシステムのために発見されたボリュームとして発見されるかをチェックすることを含み、及び監視された仮想マシンの前記アクティビティが、前記仮想マシンの格納の終了である場合は、前記追跡記録は、前記ストレージシステムから前記仮想マシンをデプロイするために使用された前記VMデータを格納するボリュームの前記ステータスが、ターゲットLUN論理ユニット番号から切り離され、かつストレージ管理APIを介してボリュームプール内にあるかをチェックすることを含む、サーバシステム管理方法。前記ゴールデンイメージは、前記ストレージシステムの管理者又は前記管理サーバの管理者からの入力なしに、VM管理者からの入力に従って前記ストレージシステムの記憶能力を用いて生成される、請求項11に記載の管理サーバ。前記プランエグゼキュータは、前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかにVMデータをコピーする前に、VMデータを格納するための前記複数のボリュームの各々を作成し、ボリュームにマップすることができる前記ホストシステムのWWNワールドワイドネームを有するホストシステムのグループであるホストグループに、前記作成されたボリュームの各々を取り付けるためのプランを実行するように構成されている、請求項11に記載の管理サーバ。前記プランエグゼキュータは、前記ゴールデンイメージから前記ストレージシステム内の前記複数のボリュームのいくつかにVMデータをコピーした後で、前記ホストグループから前記ボリュームの各々を切り離し、各ホストシステムのために、1前記ホストシステムのプロセッサ上に存在し、かつVMによって利用されるコア、及び2前記コアを使用するあらゆる仮想マシンの名前を格納するか、又は前記コアがいずれの仮想マシンによっても使用されていない場合には、一切エントリを格納しないステータスを示すホストリストから未使用又は共有のコアを選択することによって、VMのためにホストを予約して、前記選択されたコアにおける前記VMについての予約済み状態を挿入することにより、ターゲットコアのための専用VMデプロイを行うためのプランを実行するように構成されている、請求項13に記載の管理サーバ。前記プランエグゼキュータは、前記切り離し及び予約の後で、前記ホストグループに前記切り離されたボリュームの各々を取り付け、前記取り付けられたボリュームの各々についてVMファイル名を更新し、ホストのために1つ以上の新しいボリュームを発見するために前記ストレージシステム内のディスクを再スキャンすることであって、当該1つ以上の新しいボリュームの各々は、仮想マシンがデプロイされるホストシステムのために発見されたボリュームとして発見されるように再スキャンし、前記発見されたボリュームに基づいて前記再スキャンされたディスクをオンラインにし、前記オンラインディスクをマウントするためのプランを実行するように構成されている、請求項14に記載の管理サーバ。前記プランエグゼキュータは、前記再スキャン、オンライン化、及びマウントの後で、前記マウントされたディスクに基づいてVMイメージを開始し、前記選択されたコア内の前記開始されたVMについての前記予約済み状態の代わりに前記ホストリストVM名に挿入することによって、ホストを使用済みに設定し、前記開始されたVMのために前記ボリュームの各々について前記VMファイル名を更新するためのプランを実行するように構成されている、請求項15に記載の管理サーバ。前記プランエグゼキュータは、ホストグループにボリュームを取り付ける前に、前記ボリュームが既に取り付けられていないかを判断するために、取り付けられる前記ボリュームについて前記ホストグループの接続ステータスをチェックし、ホストグループからボリュームを切り離す前に、前記ボリュームが取り付けられているかを判断するために、切り離される前記ボリュームについて前記ホストグループの接続ステータスをチェックするためのプランを実行するように構成されている、請求項15に記載の管理サーバ。前記プランエグゼキュータは、前記ホストグループの前記ホストシステムのWWNをチェックすることによって、前記ホストグループのクラスタ構成の妥当性を確認するためのプランを実行するように構成されている、請求項14に記載の管理サーバ。前記プランエグゼキュータは、監視された仮想マシンの前記アクティビティが、前記仮想マシンのデプロイの開始である場合は、前記ホストシステムのWWNの数が少なくとも2つであるかを判断し、かつ前記ストレージシステムのポートの数が少なくとも2つであるかを判断し、前記判断において少なくとも2つのWWN及び少なくとも2つポートが存在しない場合、前記仮想マシンの前記デプロイの操作済み変数を格納し、かつ当該格納された操作済み変数を使用して回復を実行するためのプランを実行するように構成されている、請求項18に記載の管理サーバ。前記プランエグゼキュータは、監視された仮想マシンの前記アクティビティが、前記仮想マシンのデプロイの開始である場合は、VMをデプロイするための利用可能なコアが存在するかを判断し、YESの場合は、前記選択されたコア内に前記VMについての予約済み状態を挿入することによって、利用可能なコアを選択すること、NOの場合は、利用可能なコアを見つけることに失敗した旨のアラートを送信するためのプランを実行するように構成されている、請求項14に記載の管理サーバ。0025以下の本発明についての詳細な説明では、開示の一部を成すとともに、それによって本発明が実施され得る例示的実施形態が実例として但し限定ではない示される、添付の図面を参照する。当該図面において、類似の数字は、いくつかの図面を通してほぼ同様の構成要素を示すものである。また、留意すべき点として、詳細な説明では様々な例示的実施形態を提供する以下に説明し、かつ図面で示される通りが、本発明は本明細書において説明されかつ示される実施形態に限定されず、当業者が知っているであろう又は知るようになり得るその他の実施形態にも及び得る。本明細書における一実施形態、本実施形態、又は上述の実施形態の言及は、当該実施形態に関連して説明される特定の特性、構造又は特徴が、本発明の少なくとも一つの実施形態に含まれることを意味し、本明細書の様々な箇所において上記文言が使用されていても、必ずしもすべてが同一の実施形態を言及するものではない。さらに、以下の詳細な説明において、本発明を徹底して理解できるように、多くの具体的な詳細が記載されている。但し、本発明を実施するためにこれらの具体的な詳細すべてが必要なわけではないことは、当業者にとって明らかであろう。他の状況では、本発明を不必要に曖昧にしないように、周知の構造、材料、回路、プロセス及びインタフェースの詳細については説明しておらず、かつ/又はブロック図において図示している場合もある。0026さらに、以下の詳細な説明の一部は、コンピュータ内のオペレーションのアルゴリズム及び象徴的な態様に関して示されている。これらのアルゴリズム記述及び象徴的な態様は、データ処理分野の当業者がその新しいアイディアのエッセンスを最も効果的に他の当業者に伝えるために使用する手段である。アルゴリズムとは、望ましい最終状態又は結果へと導く一連の定義されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための相当量の物理的操作を必要とする。通常は必ずしもそうではないが、当該数量は、格納、転送、組み合わせ、比較、その他の操作が可能な電気もしくは磁気信号又は命令の形態を取る。主に一般的な使用のために、上記の信号をビット、値、要素、記号、文字、用語、数字、命令等として言及することが時として便利であることが証明されている。但し、上記の及び類似の用語のすべてが、適切な物理数量に関連付けられるものであり、かつ当該数量に適用される単に便利なラベルであることを留意すべきである。別段の記載がない限り、以下の解説から明らかなように、当然のことながら説明全体を通して、処理、演算、計算、判断、表示等の用語を用いた解説は、コンピュータシステムのレジスタ及びメモリ内の物理的電子的数量として表わされるデータを、コンピュータシステムのメモリもしくはレジスタ又はその他の情報記憶、送信もしくは表示装置の中の物理的数量として同様に表わされるその他のデータに操作しかつ変換する、コンピュータシステム又はその他の情報処理装置の動作又はプロセスを含み得る。0027本発明は、本明細書における動作を実施する装置にも関する。この装置は、必要とされる目的のために特別に構築してもよく、又は一つ以上のコンピュータプログラムによって選択的に起動又は再構成された一つ以上の汎用コンピュータを含み得る。当該コンピュータプログラムは、光ディスク、磁気ディスク、読取専用記憶装置ROM、ランダムアクセスメモリRAM、ソリッド状態装置及びドライブ、又は電子情報の格納に適したその他の種類の媒体等但し、これらに限定されないのコンピュータ読取可能記憶媒体に格納され得る。本明細書において示されるアルゴリズム及び提示は、特定のコンピュータ又はその他の装置に本質的に関係しているわけではない。様々な汎用システムを、本明細書における教示に従ってプログラム及びモジュールと共に使用してもよく、又は望ましい方法ステップを実施するためにより特化した装置を構築することが都合がよいということが判明するかもしれない。さらに、本発明は、特定のプログラミング言語を参照して説明されてはいない。当然のことながら、本明細書に記載されている通りに本発明の教示を実施するために、様々なプログラミング言語を使用してもよい。プログラミング言語の命令は、一つ以上の処理装置、例えば中央処理装置CPU、プロセッサ、又はコントローラによって実行され得る。0028以下により詳細に示す本発明の例示的実施形態は、仮想マシンのデプロイ及び格納を含むデータセンターファイルシステムを管理するための装置、方法及びコンピュータプログラムを提供する。0029図1は、情報システムのハードウェア構成の一例を示す。このシステムは、管理サーバ110及び少なくとも1つのホスト130、並びにストレージサブシステム140を含むパーソナルコンピュータPCを備える。これらのPCは、SANストレージエリアネットワークなどのネットワーク260を介してストレージサブシステム140に接続する。SANは通常、ファイバチャネルネットワークであり、よって、ファイバチャネルスイッチ及びケーブルを含む。SANは、iSCSIなどのIPネットワークを使用し得る。この場合、ネットワークスイッチとしてイーサネット登録商標ケーブル及びイーサネット登録商標スイッチを使用する。PC110、130及びストレージサブシステム140は、LANローカルエリアネットワーク270によって接続される。LANは、本実施形態ではイーサネット登録商標ネットワークを使用し、このイーサネット登録商標ネットワークは、イーサネット登録商標スイッチ及びケーブルを含む。0030各PC110、130は、汎用コンピュータであり、CPUと、メモリと、ディスクとを含む。各PC110、130は、SAN260に接続するためにストレージ用のホストバスアダプタHBAを備える。HBAは、ワールドワイドネームWWN形式の固有な識別子を有する。このPCはまた、LAN270に接続するためのネットワークインタフェースカードNICを有する。NICは、MACアドレスを有する。0031ストレージサブシステム140は、ストレージプロセッサMP160と、ディスク143と、メモリ170と、SAN260に接続するポート180と、サービスプロセッサSVP150とを有する。ポート、MP、ディスク、及びメモリは、内部バス142によって接続される。メモリは、本実施形態ではNVRAMである。ポート、メモリ、ディスク、MP、SVP、及び内部バスは、システム信頼性のために冗長であることができる。MP160は、CPUと、ローカルメモリと、NICとを有する。このNICを使用して、MP160は、SVP150と通信することができる。SVP150は、内部LAN190及び外部LAN270のための2つのNICと、CPUと、メモリ170と、ディスク143とを有する。0032図2は、図1のアーキテクチャに適用される論理構成の一例を示す。システムは、仮想管理サーバ又は単に管理サーバ210と、仮想マシンVM実行可能なサーバ又はホスト230と、ストレージサブシステム240とを備える。管理サーバは、図1ではPC110を使用してもよい。0033管理サーバは、ウェブポータルサーバ図示されていないと、プランエグゼキュータ211と、VMファイル状態テーブル212とを有する。ウェブポータルサーバは、VM管理者がVMを作成し、かつVMをデプロイするためのGUIを表す。ユーザの要求に基づいて、OSイメージプール管理モジュール図示されていないは、仮想マシンデプロイプロセスVMデプロイプロセスを実行する。VMデプロイプロセスは、ダミーポートからボリューム既にコピーされたゴールデンイメージであるを切り離し、ホスト上にボリュームを取り付け、ホストのOS上のボリュームを発見し、次にVM実行可能なハイパーバイザは、ボリューム上のVMを開始することを実行する。ゴールデンイメージは、OSイメージプール管理モジュールのスケジュールに基づいてゴールデンイメージクリエータ図示されていないによって事前に作成される。プランエグゼキュータ211は、各アクトについて同時並行性を考慮する際にいくつかのプランの実行を手助けする。このアクトは、原子操作である。このアクトは、管理サーバ210上の各コアで実行する。このアクトは、プラン実行失敗の場合に回復操作のための実行済み状態を保護する。0034ホスト230には、オペレーティングシステム又はOS図示されていないと、ハイパーバイザと、HA高可用性ソフトウェアとがある。0035ストレージサブシステム240には、構成情報としてポート構成テーブル243及び仮想ボリュームプール234がある。ストレージサブシステム240は、日立ダイナミックプロビジョニングHDPなどのシンプロビジョニング技術で実行可能な日立のユニバーサルプラットフォームV又は日立の仮想プラットフォームを使用してもよい。他のストレージサブシステムもまた、使用することができる。ポート構成243に基づいて、ストレージサブシステム240は、1つのポート上のダミーグループ及び他のポート上のホストグループを構成する。ホストグループは、ボリュームにマップすることができるホストのWWNを有するホストのグループである。ポートをいかに構成するかについては後述する。ダミーグループには、ゴールデンイメージ及びターゲットボリュームであるいくつかのボリュームがある。ホストグループには、いくつかのホストに取り付けられたボリュームがある。ゴールデンイメージからのターゲットボリュームの作成については以下で説明する。ストレージサブシステム240を管理するために、RMI/Fインタフェースなどの管理APIがある。APIの使いやすさのために、XMLI/Fを代表する日立のデバイスマネージャなどのプロキシサーバを使用して、RMII/FからXMLI/Fへの変換が行われてもよい。0036図示されるシステムで提供される装置において、管理サーバ210は、ストレージサブシステム240及びホスト230に要求を発行することによって、AVM作成及びデプロイ、BVM格納、及びCVMデプロイ操作を実行する。データの移動は、ストレージシステム240上で実行される。VM作成及びデプロイ操作では、ストレージシステム240は、VMデータをゴールデンイメージから新しいボリュームにコピーし、VMをデプロイするためにホストグループにボリュームを再取り付けする。VM格納操作では、ストレージシステム240は、ホストグループからボリュームを切り離し、そしてホストグループにボリュームを取り付ける。これらの操作の詳細については後述する図10を参照。0037図3は、ポート構成テーブル243の一例を示す。ポート構成テーブル242は、ポート番号301、ホストグループ番号302、ホストグループ番号303の名前、ホストワールドワイドネームWWN304、LUN305、及びV-VOL仮想ボリューム番号306の欄を有する。情報は、ストレージサブシステム240において管理される。ポート番号301で識別されるポートは、図1の物理ポート180に対応する。ホストグループ番号日立製品ではホストドメイン名としても知られるは、ホストのワールドワイドネームWWNを使用するホストのグループを作るために各ポート上にある。ホストのWWNは、ホストのポート接続とHBAのポート接続との間で特定するために、ホストのHBAのポートによって提供される。LUNは、ホストグループ上にある。従って、各ホストグループは、いくつかのLUNを有する。LUNは、ボリュームVOLに接続されている。VOL番号は、ストレージサブシステム内で固有のものである。ボリューム番号は、ポート間のパラレル性能及びフェイルオーバーのためにマルチパス構成を保持することを確保するために、異なるポートのホストグループ上のいくつかのLUNによって共有される。0038ポート上では、マイクロコードは、ホストグループ図2のダミーグループ241及びホストグループ242として仮想ポートグループを作成する。ダミーホストグループ241は、任意のホストからのアクセスを禁止するためにデータをコピーするためのものである。従って、データセンター管理ソフトウェアシステムは、ダミーホストグループ241上の0x0000000000000001などのダミーWWNを割り当てる。一方、ホストグループ242は、そのホスト242からのアクセスを許可するために、対応するホストのWWNを有する。ホストグループ上では、ストレージサブシステム240は、LUNにVOLを取り付ける。クラスタ構成のために、異なるポート上のいくつかのホストグループにボリュームを割り当てることができる。例えば、ホスト1は、ポート1及びポート2に接続され、ホスト2は、ポート1及びポート2に接続される。各ポート上の各ホストグループは、ホスト1のWWN及びホスト2のWWNを有する。そのため、同じLUN又は異なるLUNを使用して、各ホストグループを1つのボリュームに取り付けることができる。これらのポート、LUN、及びホストグループ242の使用が当技術分野で周知であるが、ダミーホストグループ241の使用は新規である。0039図4は、VM仮想マシンファイルテーブル212の一例を示す。このテーブルは、VMのファイル名401、ボリュームの署名402、ステートフル又はステートレス詳細は後述というVMデプロイのタイプ/状態403、ゴールデンイメージフラグ404、ボリューム番号405、ボリュームのLUN411、ターゲットホスト名406、VMを実行するターゲットコア番号407、VM操作状態408、現在のステップ操作409、及び現在の操作についてのステータス410の欄を有する。0040このテーブルは、ファイル名401を有するVMファイルの現在の状態を示す。ファイルは、ファイルについての位置のボリュームを見つけるために署名402と結合される。署名は、MBRフォーマットの場合はディスク署名であり、GPTGUIDパーティションテーブルパーティションフォーマットの場合は区画されたGUIDである。この署名は、VMファイルを格納するために同一ボリュームを使用する。ファイルは、VM操作のために記憶能力を使用するステートフル及び単にホストのハイパーバイザ能力を用いて使用するためのものであるステートレスとしての状態403を有する。ファイルは、VMファイルデータのマスターであるゴールデンイメージ404としての特別の属性を有する。ストレージサブシステム240におけるディスク位置を特定するために、ファイルは、ボリューム番号405、及びLUNについてホスト及びポートにアドレスを示すための、ボリュームのLUN411を有する。ホストグループ番号に関して、データセンター管理ソフトウェアサーバ210は、ボリューム番号405及びポート番号412を使用して、及びXML又はRMIAPIなどのストレージAPIを介して図3のポート構成テーブル243を使用して、ストレージサブシステム240においてホストグループ番号を発見することができる。0041ファイルは、ターゲットホスト406のターゲットコア番号407上にある。ターゲットホスト406とは、名前又はインターネットプロトコルアドレスであり得る。データセンター管理ソフトウェアサーバの管理者が、いくつかのハイパーザイザの中から共有コアとして選択した場合に、コア番号407を共有することができる。操作ステータスとは、VM操作状態408である。また、ファイルは、成功又は失敗であるステータス410のための現在のステップ操作409として現在の実行ステップを示す必要がある。図4は、ファイルについてディレクトリを示さない。図4は、署名402によって署名されたボリューム上のファイルを特定するためにディレクトリ情報を追加してもよい。0042さらに、いくつかのVMをボリュームと共有することができる。この状況では、管理サーバは、VMが存在するボリュームを取り付けたり、又は切り離したりする前に、すべてのVMの状態が格納済み状態であることをチェックする。例えば、ボリュームを取り付けたり、又は切り離したりする際に、管理サーバは、ボリューム上のすべてのVMがVM操作で格納済みであることをチェックする必要がある。このステップは、VMデプロイ又はVM格納における各取り付け又は切り離し操作のために実行されるべきである。例は、S908及びS1006である。回復の場合には、ボリューム操作の格納済み状態並びに通常の場合を追跡記録すべきである。0043図5は、テーブル形式のターゲットホストリストの一例を示す。ホストテーブルは、管理サーバ210に格納され図2を参照、このテーブルは、ホスト501、コア502、及びステータス503の欄を含む。ホスト501は、ホストの名前又はホストのIPアドレスである。コア502は、ホストのCPU上にある。CPUは、マルチコアプロセッサであってもよい。各コアは、VMによって利用される。使用中は、取り除きファイル拡張子などのVM名の名前がある。使用中でない時は、エントリはない。デプロイ又は格納の際に、状態は予約済みである。なぜならば、展開の後又は回復としての格納が失敗した場合にコアが使用されるからである。この予約の利点は、VM管理者がターゲットコアのための専用VMデプロイを行うことができるということである。0044図2で示されるように、データセンター管理ソフトウェアシステムの作業は、プランエグゼキュータ211を含む。プランは、一連のアクトを含む。図6は、通常プロセスとしてのアクトのプロセスを例示する流れ図の一例を示す。S601では、アクトは、アクトの操作を実行する。この操作は各アクトについて定義される。これについてはプランの説明で説明する図8、図9、図10、及び図14を参照。S602では、アクトは、実行が成功か否かを判断する。成功した場合は、プロセスはS603に進む。失敗した場合は、プロセスはS604に進む。S603成功では、アクトは、回復操作の場合に使用するローカルアクトインスタンスに実行済み変数を格納する。S604失敗では、アクトは、プランに、前に実行されたアクトで取り消し操作を実行するように通知する。0045図7は、回復プロセスとしてのアクトのプロセスを例示する流れ図の一例を示す。S701では、アクトは、ローカルインスタンスで実行済み変数を回復する。S702では、アクトは、回復された変数を使用してその回復操作を実行する。回復操作は、プランの説明で説明する図8、図9、図10、及び図14を参照。0046アクトを使用して、管理サーバ210は、プランを実行する。データセンター管理ソフトウェアの特徴を可能にする3つの大きなプランがある。これらの特徴は、プラン実行ステップを用いて説明する。それらは、ゴールデンイメージを作成し図8、VMを作成及びデプロイし図9、VMを格納する図10ためのプランを含む。0047図8は、ゴールデンイメージを作成するプランについての流れ図の一例を示す。ボックスは、図6のS601で実行されるアクトの実行インデックスで示されるように2001を示す。実行の際にはターゲット装置又はソフトウェア2002及び変数2003がある。回復のためには、図7のS701で実行されるアクトの回復実行2004及び図6のS603に格納される回復変数2005もある。このアクトに基づいて、プランは、以下のアクトを実行する。図8、図9、図10、及び図14では、通常操作については実線、回復操作については破線を使用する。0048S801では、プランは、ボリューム作成アクトを実行する。このアクトは、ストレージプール番号を指定することによってボリューム作成操作を実行する。操作が成功した場合は、ストレージは、データを格納するためにボリューム番号を返す。番号は、ローカルインスタンスに格納される。アクトが失敗した場合は例えば、プール能力がない場合、プランは実行しない。次のステップの失敗に基づく回復の場合は、このアクトは、格納された変数に基づいてボリュームを削除することを実行する。0049S802は、プランは、ホストグループにVOLを取り付けるアクトを実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってホストグループにボリュームを取り付けるためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。また、VOL取り付けが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが意図しないHGに既に取り付けられていないか、又はXMLAPIを使用していないかをチェックすることを実行してもよい。XMLAPIは、HGSCSIのLUNとボリュームの間のパスというとボリュームの関係を示すために、ボリューム番号についてのHG情報を提供する。成功した場合は、アクトは、アクトのローカルインスタンスに実行済み変数を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、実行されたアクトの回復S801を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてホストグループからのVOLの切り離しを実行する。また、VOL切り離しが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが既にHGに取り付けられているか、又はXMLAPIを使用していないかを確認することを実行してもよい。0050S803では、プランは、DBデータベース上にレコードを作成をするアクトを実行する。このアクトは、VOL番号、LUN、及びポート番号を有する空のVMのレコードを作成するために、データセンター管理ソフトウェアサーバ210でDBを実行する。実行が成功した場合は、アクトは、それらのローカルインスタンスに実行済み変数を格納する。実行が失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいてS802から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合は、このアクトは、格納された変数に基づくレコードを削除することを実行する。0051S804では、プランは、ディスク再スキャンアクトを実行する。このアクトは、ホストのディスクとして新しいボリュームを発見するためにディスク再スキャン操作を行うためにホスト230を実行する。発見に関して、ホスト230は、SCSI問い合わせのページ83又はLUNを通してボリューム番号一般にデバイス識別というを使用してもよい。実行が成功した場合は、アクトは何も格納しない。ホスト上の新しいディスクとしてボリュームを見つけることに失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S803から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合は、このアクトは何も実行しない。0052S805では、プランは、ディスクオンライン化アクトを実行する。このアクトは、発見されたボリュームに基づいてディスクをオンラインにするためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S804から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてディスク番号を指定することによってディスクをオンラインにすることを実行する。0053S806では、プランは、フォーマットディスクアクトを実行する。このアクトは、オンラインディスクに基づいてフォーマットディスクにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S805から開始までの実行されたアクトの回復を実行する。プランは、実行された順番に基づいて、S805から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは何も実行しない。0054S807では、プランは、ディスクマウントアクトを実行する。このアクトは、フォーマット済みディスクに基づいてディスクをマウントするためにホスト230を実行する。実行が成功した場合は、アクトは、ディスク番号及びマウントポイントを格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S806から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてマウントポイントを指定することによってディスクをアンマウントすることを実行する。0055S808では、プランは、VMコピーアクトを実行する。このアクトは、マウントされたディスクにVMイメージをコピーするためにホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は例えば、閾値ストレージシステムに基づいたプール234容量の不足のために、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S807から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイル名を指定することによってVMファイルを削除することを実行する。0056S809では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、ストレージのVOL番号についてVMファイル名を更新するためにDBを実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S808から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新する。0057S810では、プランは、ディスクアンマウントアクトを実行する。このアクトは、マウントポインを指定することによってディスクをアンマウントするためにホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S809から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてディスク番号及びマウントポイントを指定してディスクをマウントすることを実行する。0058S811では、プランは、署名初期化アクトを実行する。このアクトは、ディスク番号を実行することによってオンラインディスクのために署名を初期化するためにホスト230を実行する。実行が成功した場合は、アクトは何も格納しない。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S810から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは何も実行しない。0059S812では、プランは、ディスクオフライン化アクトを実行する。このアクトは、ディスク番号を指定することによってディスクをオフラインにするためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトは、プランに失敗を通知する。プランは、実行された順番に基づいて、S811から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合は、このアクトは、格納された変数に基づいてディスク番号を指定することによってディスクをオンライン化することを実行する。0060S813では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、ストレージのVOL番号について署名を更新するためにDBを実行する。実行が成功した場合は、アクトは何も格納しない。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S812から開始までの実行されたアクトの回復を実行する。0061このプランには2つの利点がある。第一に、VM管理者は、ストレージ管理者及びサーバ管理者と交渉することなしに記憶能力を用いてゴールデンイメージを作成することができる。第二に、複数の管理者はその操作を覚える必要がなく、従って、データセンターの複雑なシステムでの欠損操作における人的過誤は減る。0062図9は、VMを作成し、かつVMをデプロイするためのプランを示す流れ図の一例を示す。このプランでは、VM管理者は、ストレージのコピー能力を使用してVMイメージを作成し、かつストレージのボリュームマッピング能力ホストグループのためのVOL取り付け及び切り離しを使用してVMをデプロイすることができる。その利点は、VM管理者が、ストレージ管理者及びサーバ管理者なしにボリュームの作成およびボリュームのデプロイを実行することができることである。アクトのインデックス及び利用は、図8と同じである。0063S901では、プランは、ボリューム作成アクトを実行する。このアクトは、ストレージプール番号を指定することによってボリューム作成操作を実行する。操作が成功した場合は、ストレージは、データを格納するためにボリューム番号を返す。ボリューム番号は、ローカルインスタンスに格納される。アクトが失敗した場合は例えば、ストレージシステムの閾値に基づいたプール容量の欠如のために、プランは実行しない。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてボリュームを削除することを実行する。0064S902では、プランは、ホストグループにVOLを取り付けるアクトを実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってホストグループ242にボリュームを取り付けるためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。また、VOL取り付けが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが意図しないHGに既に取り付けられていないか、又はXMLAPIを使用していないかをチェックすることを実行してもよい。成功した場合は、アクトは、アクトのローカルインスタンスに実行済み変数を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、実行されたアクトの回復S901を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてホストグループからVOLを切り離すことを実行する。また、VOL切り離しが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが既にHGに既に取り付けられているか、又はXMLAPIを使用していないかチェックすることを実行してもよい。0065取り付け失敗状態は、図11に示されている。LUNが既に取り付けられている場合、データセンター管理ソフトウェアは、APIを介してストレージエラーを検出する。ターゲットホストグループは、図3のポート構成テーブル243にリストされたダミーホストグループである。ダミーグループに取り付ける理由は、OSが新しいボリュームを発見した時に、毎回ホストのOSがボリュームのために新しい署名を割り当て、次に、ストレージが独立して以下のコピーステップに従うことによって署名を変更するからである。この状況では、署名の変更がストレージアレイでのみ行われるので、OSは署名を混同し、正しく作用しない。0066S903では、プランは、DB上でレコードを作成するアクトを実行する。このアクトは、ストレージサブシステム上の現在のボリュームアドレスを追跡記録するために、VOL番号、LUN、及びポート番号を有する空のVMのレコードを作成するために、データセンター管理ソフトウェアサーバ210でDBを実行する。実行が成功した場合は、アクトは、そのローカルインスタンスに実行済み変数を格納する。実行が失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S902から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてレコードを削除することを実行する。0067S904では、プランは、ゴールデンイメージから作成済みボリュームにボリュームをコピーするアクトを実行する。このアクトは、作成され図8を参照、図4でゴールデンイメージとマークされたゴールデンイメージボリュームから、S901の作成済みボリュームにボリュームをコピーするためにストレージサブシステム240を実行する。実行が成功した場合は、アクトは、そのローカルインスタンスで実行済み変数を格納する。実行が失敗した場合例えば、プール閾値に基づいたプール容量の不足のために、又はビットマップを作成するためのメモリがないために、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S903から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてレコードを削除することを実行する。0068S905では、プランは、ホストグループからVOLを切り離すアクトを実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによって、ホストグループ242からボリュームを切り離すためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。また、VOL切り離しが実行される前に、プランは、切り離しアクトを保証するために、ボリュームが既にHGに取り付けられているか、又はXMLAPIを使用していないかをチェックすることを実行してもよい。XMLAPIは、HGSCSIのLUNとボリュームの間のパスというとボリュームの間の関係を示すために、ボリューム番号についてのHG情報を提供する。それが成功又は失敗した場合は、アクトは、変数を格納しない。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、実行されたアクトの回復S903を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてホストグループからVOLを切り離すことを実行する。切り離し失敗の状態は、図11に示されている。LUNがすでに切り離されている場合は、データセンター管理ソフトウェアは、APIを介してストレージエラーを検出する。また、VOL切り離しが実行される前に、プランは、切り離しアクトを保証するために、ボリュームが既にHGに取り付けられているか、又はXMLAPIを使用していないか確認することを実行してもよい。0069S906では、プランは、ホスト予約アクトを実行する。このアクトは、図5のホストリストから未使用又は共有のコアを選択するためにDBを実行する。実行が成功した場合は、アクトは、ステータス503上にVM名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S903から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、コア上のホストの予約をクリアするためにレコードを初期化するように更新することを実行する。コアの選択は、ユーザの選択に基づく。ユーザは、共有のコア又は専用のコアを選択することができる。ステートフルの場合は、データセンター管理ソフトウェアは、専用のコアを選択する。ステートレスの場合は、データセンター管理ソフトウェアは、共有のコアを選択する。0070S907では、プランは、ホストグループにおけるクラスタのWWNの妥当性を確認するアクトを実行する。このアクトは、リストにおけるWWNの存在をチェックするために図3のポート構成テーブル及び仮想管理サーバを使用して、ポート上のWWNのリストを取得するためにストレージ240を実行する。クラスタ構成を検証するため、ホストのWWNであるWWNの番号又はまさにホストのWWNアドレスをチェックしてもよい。WWNは、OSの管理インタフェースを使用して各ホストについて集めることができる。それが成功又は失敗のいずれかである場合、アクトは、変数を格納しない。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順序に基づいて、実行されたアクトの回復S906を実行する。次のステップの失敗に基づいた回復に基づいた回復の場合、このアクトは何も実行しない。0071S908では、プランは、ホストグループにVOLを取り付けるアクトに実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってホストグループ242にボリュームを取り付けるためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。また、VOL取り付けが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが、既に意図しないHGに取り付けられていないか、又はXMLAPIを使用していないかをチェックすることを実行してもよい。成功した場合は、アクトは、アクトのローカルインスタンスに実行済み変数を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、実行されたアクトの回復S906を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてホストグループからVOLを切り離すことを実行する。また、VOL切り離しが実行される前に、プランは、切り離しアクトを保証するために、ボリュームが既にHGに取り付けられているか、又はXMLAPIを使用していないかをチェックすることを実行してもよい。0072S909では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、ストレージのVOL番号についてVMファイル名を更新するためにDBを実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S908から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新することを実行する。0073S910では、プランは、ディスク再スキャンアクトを実行する。このアクトは、ホストのディスクとしての新しいボリュームを発見するためにディスク再スキャン操作を行うためにホスト230を実行する。発見に関しては、ホストは、検証するためにSCSI問合せのページ83又はLUNを介してボリューム番号を使用してよい。実行が成功した場合は、アクトは何も格納しない。ホスト上の新しいディスクとしてのボリューム間違ったボリューム番号も含み得るを見つけることに失敗した場合、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S909から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは何も実行しない。0074S911では、プランは、ディスクオンライン化アクトを実行する。このアクトは、発見されたボリュームに基づいてディスクをオンラインにするためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S910から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合は、このアクトは、格納された変数に基づいてディスク番号を指定することによってディスクをオフラインにすることを実行する。ディスクオンライン化の失敗の状態は、図11に示されている。ディスクが既にオンラインである場合は、データセンター管理ソフトウェアは、OSのI/Fを介してステータスを検出する。0075S912では、プランは、ディスクマウントアクトを実行する。このアクトは、オンラインディスクに基づいてディスクをマウントするためにホスト230を実行する。実行が成功した場合は、アクトは、ディスク番号及びマウントポイントを格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S911から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてマウントポイントを指定することによってディスクのアンマウントを実行する。マウントの失敗の状態は、図11に示されている。マウントポイントが既に使用されている場合は、データセンター管理ソフトウェアは、OSの管理インタフェースを介してステータスを検出する。0076S913では、プランは、VM開始アクトを実行する。このアクトは、マウントされたディスクに対してVMイメージを開始するために、ホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は例えば、VMイメージは存在しないか、又はVMイメージが破損している、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S912から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイル名を入力してVMファイルを削除することを実行する。0077S914では、プランは、ホストを使用済みとして設定するアクトを実行する。このアクトは、図5のホストリストの名前での予約済み状態の代わりに特定のコアについてVM名を挿入するためにDBを実行する。実行が成功した場合は、アクトは、ステータス503上にVMの名前を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S913から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納されたホスト名を入力してレコードを更新することを実行する。0078S915では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、ストレージのVOL番号についてVMファイル名を更新するためにDBを実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S914から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新することを実行する。0079プラン上の回復の利点は、図8に関連して上述した第二の利点、即ち、複数の管理者はその操作を覚える必要がなく、従って、データセンターの複雑なシステムにおける欠損操作の人的過誤が減るという利点を含む。二つの追加の利点がある。第一に、VM管理者は、ホストグループのためにボリューム取り付け及びボリューム切り離しアクトの妥当性を確認することによってオフラインボリュームを管理することができる。第二に、VM管理者は、ストレージ管理者及びサーバ管理者なしにホストグループ上のWWNを使用してホストクラスタ構成の妥当性を確認することによって、オフラインボリュームを管理することができる。0080図10は、VM格納を実行するためのプランを例示する流れ図の一例を示す。このプランでは、VM管理者は、VMデプロイプランの後に、ストレージのコピー能力を用いてVMイメージを作成でき、かつストレージのボリュームマッピング能力ホストグループのためにVOLを切り離すを用いてVMを格納できる。0081S1001では、プランは、VM停止アクトを実行する。このアクトは、VMデプロイプロセスで開始されたVMへのVMイメージを停止するためにホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、エラーによってこのプランの実行を終了する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイル名を指定することによってVMを再開することを実行する。0082S1002では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、ストレージのVOL番号についてVMファイル名を更新するためにDBを実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1001から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数を入力してレコードを更新することを実行する。0083S1003では、プランは、ディスクアンマウントアクトを実行する。このアクトは、マウントポイントを指定することによってディスクをアンマウントするためにホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は例えば、既にアンマウントされている場合、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1002から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてディスク番号及びマウントポイントを指定することによってディスクをマウントすることを実行する。アンマウントの失敗の状態は、図11に示されている。ディスクが既にアンマウントされている場合は、データセンター管理ソフトウェアは、OSの管理インタフェースを介してステータスを検出する。0084S1004では、プランは、ディスクオフライン化アクトを実行する。このアクトは、ディスク番号を指定することによってディスクをオフラインにするためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1003から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてディスク番号を指定することによってディスクをオンラインにすることを実行する。ディスクオフライン化の失敗の状態は、図11に示されている。ディスクが存在する場合は、データセンター管理ソフトウェアは、OSの管理インタフェースを介してステータスを検出する。0085S1005では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、VMファイル名のディスクについてオフラインとしてディスクステータスを更新するためにDBを実行する。実行が成功した場合は、アクトは、ディスク番号に基づいてオンラインの状態を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、破線で示される回復の順番に基づいて、S1003から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてVMファイル名を入力してレコードを更新することを実行する。0086S1006では、プランは、ホストグループからVOLを切り離すアクトを実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってホストグループ242からボリュームを切り離すためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。また、VOL切り離しが実行される前に、プランは、アクトプロセスを保証するために、ボリュームが既にHGに取り付けられているか又はXMLAPIを使用していないかをチェックすることを実行してもよい。実行が成功した場合は、アクトは、VOL番号、LUN、HG番号、及びポート番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、破線で示される回復の順番に基づいて、S1008から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってボリュームを取り付けることを実行する。切り離し失敗の状態は、図11に示されている。LUNが既に切り離されている場合は、データセンター管理ソフトウェアは、APIを介してストレージエラーを検出する。0087S1007では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、VOL番号405、LUN411、HG番号406、及びポート番号412が記載されている図4において、LUN、HG番号、VOL用ポート番号を、切り離しLUN番号-、HG番号-及びポート番号-として更新するために、DBを実行する。実行が成功した場合は、アクトは、VOL番号、LUN、HG番号、及びポート番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、破線で示される回復の順番に基づいて、S1004から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてVOL番号405、LUN411、HG番号406、及びポート番号412を入力してレコードを更新することを実行する。0088S1008では、プランは、ディスク再スキャンアクトを実行する。このアクトは、ホストのディスクとしてS1006において切り離されたボリュームに対してディスク再スキャン操作を行うためにホスト230を実行する。実行が成功した場合は、アクトは何も格納しない。ホスト上の新しいディスクとしてのボリュームを見つけることに失敗した場合、アクトはプランに失敗を報告する。プランは、破線で示される回復の順番に基づいて、S1007から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、ディスクを再スキャン及び発見することを実行する。0089S1009では、プランは、ホスト解放アクトを実行する。このアクトは、図5のホストリストのVM名を除去するためにDBを実行する。実行が成功又は失敗のいずれかである場合は、アクトは何も格納しない。失敗した場合は、アクトはプランに失敗を報告する。プランは、回復の順番に基づいて、S1008から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新することを実行する。0090本プランには、アクトの回復の利点と共に二つの利点がある。第一に、VM管理者は、ストレージ管理者及びサーバ管理者と交渉することなしにストレージ上にVM切り離しボリュームを格納することができる。第二に、S1006があるため、VM管理者は、ストレージ管理者がいたとしても、ボリューム切り離しを良好に管理できる。0091VMのデプロイだけの場合、データセンター管理ソフトウェアは、図10のS906からS915までのプランとして実行する。回復操作は、図10のS906~S915に書かれているのと同じである。0092VM管理者は、VMの状態を、ステートレスからステートフルに、又はステートフルからステートレスに変更したいかもしれない。これについては以下で説明する。0093図12は、VM管理者がVMの状態への変更を管理するためのGUIグラフィカルユーザインタフェースを示す。GUIは、VM名1201、操作ステータス1202、詳細なステータス1207、現在の状態1203、選択可能なプルダウンリストを示すボタン1204、変更を破棄するためのキャンセルボタン1205、及び変更を実行するためのOKボタン1206を含む。VM名1201は、DB図4上の拡張子のないファイル名401を示す。操作ステータス1202は、DBのVM操作状態408である。現在の状態1203は、DBの状態403である。VM管理者は、選択可能プルダウンリストボタン1204を用いて、各VMについて次の状態を選択し、そして変更を実行するためにOKボタン1206を押す。VM管理者が変更を破棄したい場合は、変更を破棄するためにキャンセルボタン1205を押してよい。また、詳細なステータス1207では、管理者は、ストレージ関連の操作などの管理ソフトウェアの現在の詳細なステータスを見る事ができる。この情報は、図4の現在のステップ操作409から来る。0094図13は、VM状態をステートレスからステートフルにマイグレートするためにシナリオを示す。GUIを介したユーザの要求に基づいて、データセンター管理ソフトウェアサーバ210は、ストレージ240に対して、ボリュームを作成すること及びクラスタの場合にはホスト単数又は複数230についてボリュームを取り付けることを要求する。データセンター管理ソフトウェアサーバ210は、ターゲットのホストボリュームが取り付けられる対象に対して、ボリューム内のファイルシステム即ち、OSのディスクをフォーマットし、これをローカルファイルシステムにマウントし、ソースホストからVMイメージをコピーし、かつ仮想マシン上でVMを開始することを要求する。0095図14は、図13に示されるようなVM状態についてステートレスからステートフルへのマイグレーションプランを示す流れ図の一例を示す。0096S1401では、プランは、VM停止アクトを実行する。このアクトは、VMデプロイプロセスにおいて開始されたVMに対してVMイメージを停止するために、ホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、本プランを終了し、本プランを実行するためにエラーを返す。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイル名を指定することによってVMを再開することを実行する。0097S1402では、プランは、ボリューム作成アクトを実行する。このアクトは、ストレージプール番号を指定することによってボリューム作成操作を実行する。操作が成功した場合、ストレージは、データを格納するためにボリューム番号を返す。この番号はローカルインスタンスに格納される。失敗した場合は、アクトはプランに失敗を通知する。プランは、実行された順番に基づいて、実行されたアクトの回復S1401を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてボリュームを削除することを実行する。ボリュームの作成では、データセンター管理ソフトウェアは、VMファイルサイズや、ファイルシステムメタデータ及び構成ツールファイルのようなその他の関連サイズに基づいて、ボリュームサイズを特定し得る。0098S1403では、プランは、ホストグループにVOLを取り付けるアクトを実行する。このアクトは、ボリューム番号、LUN、ホストグループHG番号、及びポート番号を指定することによってホストグループ242にボリュームを取り付けるためにストレージ240を実行する。ストレージは、成功又は失敗である結果を戻す。成功した場合は、アクトは、アクトのローカルインスタンスに実行済み変数を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、実行されたアクトの回復S1402を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてホストグループからVOLを切り離すことを実行する。取り付け失敗の状態は、図11に示されている。LUNが既に取り付けられている場合は、データセンター管理ソフトウェアは、APIを介してストレージエラーを検出する。0099S1404では、プランは、DB上でレコードを作成するアクトを実行する。このアクトは、VOL番号、LUN、及びポート番号を有する空のVMのレコードを作成するためにデータセンター管理ソフトウェアサーバ210内のDBを実行する。実行が成功した場合は、アクトは、そのローカルインスタンスに実行済み変数を格納する。実行が失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1403から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてレコードを削除することを実行する。0100S1405では、プランは、ホスト予約アクトを実行する。このアクトは、図5のホストリストから未使用又は共有のコアを選択するためのDBを実行する。実行が成功した場合は、アクトは、ステータス503上にVMの名前を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1404から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新することを実行する。コアの選択は、ユーザの選択に基づいている。このケースでは、ステートフルとして専用のコアを選択する。0101S1406では、プランは、ディスク再スキャンアクトを実行する。このアクトは、新しいボリュームをホストのディスクとして発見するためにディスク再スキャン操作を実行するためにホスト230を実行する。発見に関しては、ホストは、検証するためにSCSI問合せのページ83又はLUNを介してボリューム番号を使用してよい。実行が成功した場合は、アクトは何も格納しない。ホスト上の新しいディスクとしてのボリュームを見つけることに失敗した場合、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1405から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは何も実行しない。0102S1407では、プランは、ディスクオンライン化アクトを実行する。このアクトは、発見済みボリュームに基づいてディスクをオンライン化するためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1406から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づいた回復では、このアクトは、格納された変数に基づいてディスク番号を指定することによってディスクをオフラインにすることを実行する。ディスクオンライン化の失敗の状態は、図11に示されている。ディスクがすでにオンラインである場合は、データセンター管理ソフトウェアは、OSのI/Fを介してステータスを検出する。0103S1408では、プランは、ディスクフォーマットアクトを実行する。このアクトは、オンラインディスクに基づいてディスクをフォーマットするためにホスト230を実行する。実行が成功した場合は、アクトはディスク番号を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1407から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは何も実行しない。0104S1409では、プランは、ディスクマウントアクトアクトを実行する。このアクトは、オンラインディスクに基づいてディスクをマウントするためにホスト230を実行する。実行が成功した場合は、アクトは、ディスク番号及びマウントポイントを格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1408から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてマウントポイントを指定することによって、ディスクのアンマウントを実行する。マウントの失敗の状態は、図11に示されている。マウントポイントがすでに使用されている場合は、データセンター管理ソフトウェアは、OSのI/Fを介してステータスを検出する。0105S1410では、プランは、VMファイルコピーアクトを実行する。このアクトは、VMイメージファイルが特定されたファイル名及びおそらくソースホストからのパスを移動するために、ターゲットホストを実行する。実行が成功した場合は、アクトは、そのローカルインスタンスに実行済み変数を格納する。実行が失敗した場合例えば、ファイルの削除のせいで、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1409から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイルをソースホストに移動することを実行する。0106S1411では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、図4の状態403におけるステートフルとしてVMファイル名を更新するために、DBを実行する。実行が成功した場合は、アクトは、VMについてステートレスとして状態を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1410から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、ステートレスを指定することによってレコードを更新することを実行する。0107S1412では、プランは、VM開始アクトを実行する。このアクトは、マウントされたディスクに対してVMイメージを開始するためにホスト230を実行する。実行が成功した場合は、アクトはファイル名を格納する。失敗した場合は例えば、破損又は削除されたファイルのために、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1411から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納された変数に基づいてファイル名を入力してVMファイルの停止を実行する。0108S1413では、プランは、ホストを使用済みとして設定するアクトを実行する。このアクトは、図5のホストリストの名前での予約済み状態の代わりに特定のコアについてVM名を挿入するためにDBを実行する。実行が成功した場合は、アクトは、図5のステータス503上にVMの名前を格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1412から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、格納されたホスト名を入力してレコードを更新することを実行する。0109S1414では、プランは、DB上のレコードを更新するアクトを実行する。このアクトは、VMイメージが特定されたファイル名についてVMステータスを更新するために、DBを実行する。実行が成功した場合は、アクトは、ファイル名及び実行中というステータスを格納する。失敗した場合は、アクトはプランに失敗を報告する。プランは、実行された順番に基づいて、S1413から開始までの実行されたアクトの回復を実行する。次のステップの失敗に基づく回復の場合、このアクトは、レコードを初期化するためにレコードを更新することを実行する。0110図15は、VM状態をステートフルからステートレスにマイグレートするためのシナリオの一例を示す。GUIを介したユーザの要求に基づいて、データセンター管理ソフトウェアサーバ210は、ホスト230に対して、VMを停止しかつVMを再び開始した後で、VMファイルをターゲットホストに移動するように要求する。このプロセスは、一般的なVMマイグレーションプロセスと同じであり、マイグレーションの後でボリュームを切り離して削除するようにストレージに要求し続ける。0111上記のシステムは、ボリュームの識別子としてファイルを使用して、ボリュームのステータス、特にストレージサブシステム上で切り離されたボリュームのステータスを確保する。また、システムは、デプロイでコア予約能力を用いる数個のVMによる連続を防ぐ。さらにシステムは、SANベースのVMデプロイと、マイグレーション能力を用いた通常のVMデプロイとの間の変更の有用性を改善する。0112当然のことながら、図1及び図2に示すシステム構成は、本発明が実施され得る情報システムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、上述の発明を実施するために用いられるモジュール、プログラム及びデータ構造を格納しかつ読み出すことができる公知のI/O装置例えば、CD及びDVDドライブ、フロッピー登録商標ディスクドライブ、ハードドライブ等も有し得る。これらのモジュール、プログラム及びデータ構造は、当該コンピュータ読取可能媒体上で符号化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムが存在する一つ以上のコンピュータ読取可能媒体から独立したコンピュータ読取可能媒体に格納することができる。システムの構成要素は、あらゆる形態又は媒体のデジタルデータ通信例えば、通信ネットワークによって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク、ワイドエリアネットワーク例えば、インターネット、無線ネットワーク、ストレージエリアネットワーク等を含む。0113説明では、本発明を徹底的に理解できるようにするために説明する目的で多くの詳細が記載されている。しかし、当業者にとっては、本発明を実施するためにはこれら具体的な詳細のすべてが必要なわけではないことは明らかであるだろう。また、留意すべき点として、本発明は、通常はフローチャート、流れ図、構成図又はブロック図として記載されるプロセスとして説明されてもよい。フローチャートでは動作を逐次プロセスとして説明し得るが、動作の多くは並行して又は同時に実行することができる。さらに、動作の順番は並び替えてもよい。0114当技術分野では周知であるように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの組み合わせによって実行することができる。本発明の実施形態の様々な態様は、回路や論理装置ハードウェアを用いて実施してよく、その一方で、その他の態様は、機械読み取り可能媒体ソフトウェア上に記憶された命令を用いて実施してもよく、これがプロセッサによって実行された場合には、本発明の実施形態を実行する方法をプロセッサに実施させるものである。さらに、本発明のいくつかの実施形態は、ハードウェアのみにおいて実施されてよく、その他の実施形態は、ソフトウェアのみで実施されてよい。さらに、説明された様々な機能は、一つのユニットで実施することができ、又はあらゆる方法によって多くの構成要素に分散することができる。ソフトウェアによって実施された場合、上記の方法は、コンピュータ読取可能媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。望ましい場合には、圧縮及び/又は暗号化形式で命令を媒体に記憶することができる。0115上記により、本発明が、仮想マシンのデプロイ及び格納を伴うデータセンターファイルシステムを管理するための方法、装置及びコンピュータ読取可能媒体に記憶されたプログラムを提供するものであることが明らかであろう。さらに、本明細書において特定の実施形態が示され説明されているが、当業者にとって当然のことながら、開示された特定の実施形態の代わりに、同じ目的を達成するために創出されたいかなる構成を用いてもよい。本開示は、本発明のあらゆる適応又はバリエーションを対象とすることを意図したものであり、また以下の請求項で用いられる用語は、本発明を本明細書で開示されている特定の実施形態に限定するものとは解釈されるべきではないことが理解される。むしろ本発明の範囲は、以下の請求項によって全面的に判断されるものであり、以下の請求項は、当該請求項が権利を有する同等物の範囲全体と共に、請求項の解釈について確立された原則に従って解釈されるものである。