【手続補正書】
【提出日】平成24年5月8日(2012.5.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想マシンを実行するための１つまたは複数の物理ホストを有するコンピュータシステムにおいて、前記コンピュータシステム内のアプリケーション層が、前記コンピュータシステム内の仮想マシン層を通して１つまたは複数のアプリケーション・プログラムに対する１つまたは複数の仮想マシンの作成と操作を開始し管理するために、コンピュータによって実行される方法であって、
前記コンピュータシステムの前記アプリケーション層において実行されるエグゼクティブ・アプリケーションが、前記コンピュータシステムの前記仮想マシン層にて１つまたは複数の仮想マシン内でアプリケーション・プログラムをインストールするための１つまたは複数の要求を受け取るステップと、
前記１つまたは複数の要求を受け取るステップに応答して、前記エグゼクティブ・アプリケーションが、アプリケーション・リポジトリと通信して、前記１つまたは複数の要求において特定される前記要求されたアプリケーション・プログラムの１つまたは複数のプロパティを決定するステップであって、前記プロパティは、前記要求されたアプリケーション・プログラムに対してデプロイされうる仮想マシンの１つまたは複数の構造を特定する、決定するステップと、
前記１つまたは複数のプロパティに基づいて、前記エグゼクティブ・アプリケーションが、前記要求されたアプリケーション・プログラムを実行するためにデプロイされるべき、仮想マシン・ライブラリから入手可能な１つまたは複数の仮想マシンを特定するステップと、
前記１つまたは複数の仮想マシンを特定すると、前記エグゼクティブ・アプリケーションが、前記要求されたアプリケーション・プログラムに対して前記仮想マシン・ライブラリから特定された１つまたは複数の仮想マシンをデプロイするように仮想マシン・マネージャに指示する１つまたは複数の仮想マシン命令を、前記アプリケーション層から、前記仮想マシン層において実行される前記仮想マシン・マネージャに送るステップと、
前記エグゼクティブ・アプリケーションが、前記１つまたは複数の仮想マシンがデプロイされたことを表わす１つまたは複数のメッセージを、前記仮想マシン・マネージャから受け取るステップと、
前記１つまたは複数のメッセージを前記仮想マシン・マネージャから受け取ると、前記エグゼクティブ・アプリケーションが、前記１つまたは複数のデプロイされた仮想マシンの各々に、前記要求されたアプリケーション・プログラムを前記１つまたは複数のプロパティから特定された構成に従ってインストールするように指示する１つまたは複数の指示を送るステップと
を含む方法。
【請求項２】
前記アプリケーション層が、前記アプリケーション・プログラムを開始するための前記要求を受け取るエグゼクティブ・アプリケーションを備え、
前記エグゼクティブ・アプリケーションが、前記受け取ったプロパティを前記１つまたは複数の仮想マシン命令に変換する
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記仮想マシン層が、前記１つまたは複数の仮想マシン命令を前記エグゼクティブ・アプリケーションから受け取る１つまたは複数の仮想マシン・マネージャを備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記要求されたアプリケーションに対応する前記プロパティが、前記要求されたアプリケーション・プログラムに関連付けられた１つまたは複数の宣言的なモデルを備え、
前記１つまたは複数の宣言的なモデルが、前記決定された仮想マシンに対する１つまたは複数の構成を備える
ことを特徴とする請求項２に記載の方法。
【請求項５】
前記要求されたアプリケーションに対応する前記プロパティが、前記要求されたアプリケーションをデプロイすべき１つまたは複数の物理ホストを示すことを特徴とする請求項４に記載の方法。
【請求項６】
前記要求されたアプリケーションに対応する前記プロパティが、前記要求されたアプリケーション・プログラムに対してデプロイすべき仮想マシンの数と種類を示すことを特徴とする請求項４に記載の方法。
【請求項７】
前記仮想マシンの前記数と種類の一部または全部が、前記要求されたアプリケーションのバージョンに依存することを特徴とする請求項６に記載の方法。
【請求項８】
前記要求されたアプリケーション・プログラムをインストールする前記動作がさらに、前記アプリケーション層が１つまたは複数の指示を前記１つまたは複数のデプロイされた仮想マシンの各々のドライバに送るステップを含むことを特徴とする請求項１に記載の方法。
【請求項９】
データ構造を更新して、前記要求されたアプリケーションと、前記デプロイされた１つまたは複数の仮想マシンの間の相関関係を示す動作をさらに備えることを特徴とする請求項１に記載の方法。
【請求項１０】
前記データ構造を更新して、前記要求されたアプリケーションが前記デプロイされた１つまたは複数の仮想マシンに、および１つまたは複数の物理ホストに、インストールされたことを示す動作をさらに備えることを特徴とする請求項８に記載の方法。
【請求項１１】
前記要求されたアプリケーションがアンインストールされたことを特定する動作をさらに含むことを特徴とする請求項９に記載の方法。
【請求項１２】
前記要求されたアプリケーションがアンインストールされたことを決定する前に、
前記要求されたアプリケーションを前記１つまたは複数のデプロイされた仮想マシンからアンインストールすべきことを特定し、
前記要求されたアプリケーションをアンインストールするための１つまたは複数の指示を前記仮想マシン層に送る
動作をさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記要求されたアプリケーションをアンインストールすべきと特定する前記動作が、前記アプリケーションがアンインストールまたは廃棄する準備ができていることを、前記要求されたアプリケーションに対応する前記データ構造内の１つまたは複数のプロパティから特定するステップを含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記デプロイされた１つまたは複数の仮想マシンを前記対応する物理ホストから削除する１つまたは複数の指示を前記アプリケーション層から前記仮想マシン層に送る動作をさらに含むことを特徴とする請求項１１に記載の方法。
【請求項１５】
前記データ構造を更新して、前記以前にデプロイした１つまたは複数の仮想マシンが前記対応する物理ホストから削除されたことを示す動作をさらに含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
１つまたは複数のプロセッサを有するコンピュータシステムにおいて、前記コンピュータシステム内のアプリケーション層が、１つまたは複数の仮想マシンを１つまたは複数のアプリケーション・プログラムに沿って作成し、操作し、廃棄することを開始および管理するために、コンピュータによって実行される方法であって、
前記コンピュータシステムの前記アプリケーション層において実行されるエグゼクティブ・アプリケーションが、前記コンピュータシステムの仮想マシン層にて１つまたは複数の仮想マシン内でアプリケーション・プログラムをインストールするための１つまたは複数の要求を受け取るステップであって、前記要求されたアプリケーション・プログラムが、使用される仮想マシンの種類と数および特定された前記仮想マシンの種類と数の範囲内での使用のためのアプリケーション構成を示す１つまたは複数のプロパティを含む、受け取るステップと、
前記１つまたは複数の要求を受け取るステップに応答して、前記エグゼクティブ・アプリケーションが、前記アプリケーション層内の１つまたは複数のデータ構造を検証して、前記仮想マシン層内のデプロイに利用可能な１つまたは複数の仮想マシンを仮想マシン・ライブラリから特定するステップと、
前記１つまたは複数の仮想マシンの特定に基づいて、前記エグゼクティブ・アプリケーションが、前記仮想マシン層において実行される仮想マシン・マネージャに、１つまたは複数の物理ホストにて前記仮想マシン・ライブラリから特定された１つまたは複数の仮想マシンをデプロイするように指示するステップと、
前記エグゼクティブ・アプリケーションが、前記１つまたは複数の特定された仮想マシンが前記１つまたは複数の物理ホストにてデプロイされたことを表わす１つまたは複数のメッセージを、前記仮想マシン・マネージャから受け取るステップと、
前記エグゼクティブ・アプリケーションが、前記１つまたは複数のデプロイされた仮想マシンの各々に指示して、前記要求されたアプリケーション・プログラムを、前記１つまたは複数の仮想マシンのデプロイに基づく前記アプリケーション構成に従って、対応する仮想マシンにてインストールするステップと、
前記１つまたは複数のデータ構造を通して、前記要求されたアプリケーション・プログラムが前記１つまたは複数のデプロイされた仮想マシンのうちの少なくとも１つからアンインストールされたことを特定すると、前記エグゼクティブ・アプリケーションが、前記少なくとも１つのデプロイされた仮想マシンを対応する物理ホストから削除するように前記仮想マシン・マネージャに指示するステップと
を含む方法。
【請求項１７】
前記特定された１つまたは複数の仮想マシンが、オペレーティング・システムのチェックポイントに対して設定された１つまたは複数の仮想マシン・テンプレートを備え、
前記仮想マシンを前記対応する物理ホストから削除する動作が、前記仮想マシンを以前のチェックポイントに復帰させ、更新されたバージョンの前記仮想マシンが前記物理ホストから削除され、前記以前のチェックポイントに対応する以前のバージョンの前記仮想マシンが前記物理ホストに留まるようにする
ことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記アプリケーション層がさらに、前記アプリケーション層または仮想マシン層内の１つまたは複数のコンポーネントによって更新できる１つまたは複数のデータ構造を備えることを特徴とする請求項１６に記載の方法。
【請求項１９】
前記データ構造が、前記システム内にデプロイされた全ての仮想マシンと、前記仮想マシンにインストールされた全てのアプリケーション・プログラムと、前記インストールされたアプリケーションおよびデプロイされた仮想マシンの各々に対する意図されたライフ・サイクルを示す１つまたは複数のプロパティと、を示すことを特徴とする請求項１６に記載の方法。
【請求項２０】
コンピュータに、コンピュータシステム内のアプリケーション層が前記コンピュータシステム内の仮想マシン層を通して１つまたは複数のアプリケーション・プログラムに対する１つまたは複数の仮想マシンの作成と操作を開始し管理する方法を実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体であって、前記方法は、
前記コンピュータシステムの前記アプリケーション層において実行されるエグゼクティブ・アプリケーションが、前記コンピュータシステムの前記仮想マシン層にて１つまたは複数の仮想マシン内でアプリケーション・プログラムをインストールするための１つまたは複数の要求を受け取るステップと、
前記１つまたは複数の要求に基づいて、前記エグゼクティブ・アプリケーションが、アプリケーション・リポジトリと通信して、前記要求されたアプリケーション・プログラムの１つまたは複数のプロパティを決定するステップであって、前記プロパティは、前記要求されたアプリケーション・プログラムに対してデプロイされうる、仮想マシン・ライブラリにて入手可能な仮想マシンの１つまたは複数の種類、これらの仮想マシンの１つまたは複数の構成、前記要求されたアプリケーション・プログラムの１つまたは複数の構成を特定する、決定するステップと、
前記１つまたは複数のプロパティに基づいて、前記エグゼクティブ・アプリケーションが、前記要求されたアプリケーション・プログラムを実行するためにデプロイされるべき仮想マシン・ライブラリから入手可能な１つまたは複数の仮想マシン、および前記１つまたは複数の仮想マシンの１つまたは複数の構成を特定するステップと、
前記１つまたは複数の仮想マシンを特定すると、前記エグゼクティブ・アプリケーションが、前記要求されたアプリケーション・プログラムに対して前記仮想マシン・ライブラリから特定された１つまたは複数の仮想マシンを、前記特定された１つまたは複数の仮想マシンの１つまたは複数の構成に従ってデプロイするように仮想マシン・マネージャに指示する１つまたは複数の仮想マシン命令を、前記アプリケーション層から、前記仮想マシン層において実行される前記仮想マシン・マネージャに送るステップと、
前記エグゼクティブ・アプリケーションが、前記１つまたは複数の仮想マシンがデプロイされたことを表わす１つまたは複数のメッセージを、前記仮想マシン・マネージャから受け取るステップと、
前記１つまたは複数の仮想マシンのデプロイに応答して、前記エグゼクティブ・アプリケーションが、前記１つまたは複数のデプロイされた仮想マシンの各々に、前記要求されたアプリケーション・プログラムを前記要求されたアプリケーション・プログラムの１つまたは複数の構成に従ってインストールするように指示する１つまたは複数の指示を送るステップと、
前記エグゼクティブ・アプリケーションが、データ構造において、前記要求されたアプリケーション・プログラムが前記１つまたは複数のデプロイされた仮想マシン上にインストールされているという識別情報を格納するステップと、
を含む、コンピュータ読み取り可能な記録媒体。