(57)【特許請求の範囲】
【請求項１】
クラウド・コンピューティング環境内で仮想インスタンスを起動する方法であって、コンピュータ・システムが、
前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、
前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、
前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップであって、前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む、前記検証するステップと、
前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、
前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動するステップと、
前記機能不全仮想インスタンスを終了させるステップと
を実行することを含む、前記方法。
【請求項２】
前記新規仮想インスタンスが仮想マシンを含む、請求項１に記載の方法。
【請求項３】
前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む、請求項１または２に記載の方法。
【請求項４】
前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル（ＩＰ）アドレスの持ち主であるかどうかを判定するステップを含む、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記所定の閾値はゼロを含む、請求項１〜５のいずれか一項に記載の方法。
【請求項７】
前記コンピュータ・システムが、
前記ユーザに対する前記新規仮想インスタンスのブート・イメージ、予約済みＩＰアドレス、および永続性ストレージを登録するステップ
を実行することをさらに含む、請求項１〜６のいずれか一項に記載の方法。
【請求項８】
前記新規仮想インスタンスは、前記機能不全仮想インスタンスの再起動を含む、請求項１〜７のいずれか一項に記載の方法。
【請求項９】
クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムであって、
命令を包含するメモリ媒体と、
前記メモリ媒体に連結されたバスと、
前記バスに連結されたプロセッサと
を含み、
前記プロセッサは、前記命令を実行したとき、前記システムが、
前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、
前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、
前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、ここで、前記検証することは前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定することを含み、
前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、
前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動し、
前記機能不全仮想インスタンスを終了する、
ことを実行する、前記システム。
【請求項１０】
前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定することを含む、請求項９に記載のシステム。
【請求項１１】
前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル（ＩＰ）アドレスの持ち主であるかどうかを判定することを含む、請求項９または１０に記載のシステム。
【請求項１２】
前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するように更にされている、請求項９〜１１のいずれか一項に記載のシステム。
【請求項１３】
前記システムは、前記ユーザに対する前記新規仮想インスタンスのブート・イメージ、予約済みＩＰアドレス、および永続性ストレージを登録することをさらに実行する、請求項９〜１２のいずれか一項に記載のシステム。
【請求項１４】
クラウド・コンピューティング環境内で仮想インスタンスを起動するコンピュータ・プログラムであって、コンピュータ・システムに、請求項１〜８のいずれか一項に記載の方法の各ステップを遂行させる、前記コンピュータ・プログラム。
【請求項１５】
クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法であって、コンピュータ・システムが、
前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、
前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、
前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、ここで、前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定することを含み、
前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、
前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動し、
前記機能不全仮想インスタンスを終了させる
ように作動する、コンピュータ・インフラストラクチャを提供するステップを実行することを含む、前記方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にクラウド・コンピューティングに関する。具体的には、本発明はクラウド・コンピューティング環境において仮想インスタンスを起動することに関する。
【背景技術】
【０００２】
クラウド・コンピューティングは、従前のグリッド環境の拡張であり、これにより、複数のグリッドおよび他のコンピューティング・リソースをクラウド層によってさらに抽象化することができ、しかして、エンドユーザには、別個のデバイス群が単一のシームレスなリソースのプールに見える。これらのリソースは、物理的または論理的計算エンジン、サーバおよびデバイス、デバイス・メモリ、記憶デバイス、ネットワーク、ビジネス・アプリケーションおよび他のソフトウェアなどといったものを含み得る。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
典型的なクラウド環境において、顧客は、対応する仮想的「顧客」のインスタンスを有し、それを介して所望の機能を実現することになる。時として、これらのインスタンスは（例えば、破損、攻撃などによって）機能不全になる。既存のソリューション（解決法、技術対処策）では、相互にモニタするため複数のシステム・インスタンスが必要となる。複数のインスタンスが同一の物理ノードに所在する場合、その物理的ノードに障害が生じるとそれら全てが使えなくなる。さらに、多くのクラウド・システムにおいて、仮想化されたビューでは物理的な割り当ては顕在化されていない。加えて、既存のソリューションは、本質的に、コンポーネント間のあるレベルの信頼を前提としているが、パブリック・クラウド環境ではそれを前提にはできない。あり得る悪用には、利用可能なサービスを無許可で使用して、サービス妨害攻撃をマウントする、別のクラウド・ユーザの秘密データへアクセスする、もしくは許可のないコストを消費する、またはこれらを併せ行うなどがある。
【課題を解決するための手段】
【０００４】
上記を鑑み、本発明は、第一態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップと、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動するステップと、機能不全仮想インスタンスを終了させるステップと、を含む。
【０００５】
望ましくは、新規仮想インスタンスは仮想マシンを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル（ＩＰ）アドレスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む。望ましくは、所定の閾値はゼロを含む。本方法には、ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みＩＰアドレス、および永続性ストレージを登録するステップをさらに含めることができる。望ましくは、新規仮想インスタンスは、機能不全仮想インスタンスの再起動を含む。
【０００６】
第二態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムが提供され、本システムは、命令を包含するメモリ媒体と、メモリ媒体に連結されたバスと、バスに連結されたプロセッサと、を含み、該プロセッサは、命令を実行したとき、本システムが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
【０００７】
望ましくは、新規仮想インスタンスは仮想マシンを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル（ＩＰ）アドレスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む。望ましくは、所定の閾値はゼロを含む。本システムには、ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みＩＰアドレス、および永続性ストレージを登録するステップをさらに含めることができる。望ましくは、新規仮想インスタンスは、機能不全仮想インスタンスの再起動を含む。
【０００８】
第三態様において、コンピュータ可読媒体に格納されたコンピュータ・プログラム・コードを含むコンピュータ・プログラムが提供され、該プログラム・コードはコンピュータ・システムにロードされ実行されたとき、該コンピュータ・システムに第一態様による方法の全ステップを遂行させる。
【０００９】
本コンピュータ・プログラムは、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのプログラム製品を包含する、コンピュータ可読媒体中に具現することができ、該コンピュータ可読媒体はプログラム・コードを含み、該プログラム・コードは、コンピュータが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
【００１０】
第四態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法が提供され、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、および機能不全仮想インスタンスを終了させるよう作動する、コンピュータ・インフラストラクチャを提供するステップを含む。
【００１１】
本発明の実施形態は、しかして、仮想インスタンスの再起動を自動的に行うサービスを備え、（例えばパブリック）コンピューティング・クラウドのオペレーション支援システム（ＯＳＳ：Ｏｐｅｒａｔｉｏｎａｌ  Ｓｕｐｐｏｒｔ  Ｓｙｓｔｅｍ）（群）およびビジネス支援システム（ＢＳＳ：Ｂｕｓｉｎｅｓｓ  Ｓｕｐｐｏｒｔ  Ｓｙｓｔｅｍ）（群）を活用するシステムを提供する。具体的には、本発明の実施形態の下で、クラウド・コンピューティング環境内で機能不全仮想インスタンス（例、仮想マシン）が検出され、これに応じ新規仮想インスタンスに対する要求が受信される。要求が受信されると、機能不全仮想インスタンスに関連付けられたユーザの資格が検証されることになる。具体的には、要求のインテグリティおよび要求元のリソース使用に対する認可を確実にするため、一組の認証呼び出しおよび確認が展開される。検証に合格したならば、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマが低減されることになる。カウントダウン・タイマが所定の閾値（例えばゼロ）に達したときに、新規仮想インスタンスが起動され、機能不全仮想インスタンスは終了されることになり、カウントダウン・タイマはインスタンスによってリセット／再始動されることになる。ＢＳＳとの統合によって、サービス利用のモニタリングおよび課金、並びに再起動サービス自体に対する従量制課金のオプションを開くことがさらに可能になる。新規仮想インスタンスの始動は、旧仮想インスタンスの再起動もしくは異なる別の仮想インスタンスの起動またはその両方を含み得る。
【００１２】
本発明の第一の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップと、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動するステップと、機能不全仮想インスタンスを終了させるステップと、を含む。
【００１３】
本発明の第二の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを提供し、本システムは、命令を包含するメモリ媒体と、メモリ媒体に連結されたバスと、バスに連結されたプロセッサと、を含み、該プロセッサは、命令を実行したとき、本システムに、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
【００１４】
本発明の第三の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するプログラム製品を包含するコンピュータ可読媒体を提供し、該コンピュータ可読媒体はプログラム・コードを含み、該プログラム・コードは、コンピュータが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
【００１５】
本発明の第四の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了させるよう作動する、コンピュータ・インフラストラクチャを提供するステップを含む。
【００１６】
以下に本発明の好適な実施形態を、単に例示として、添付の図面を参照しながら以下に説明する。図面は必ずしも一定の縮尺ではない。これらの図面は単に図示したものであって、本発明の具体的なパラメータを表現することを意図していない。これら図面は本発明の典型的な実施形態を示すことを意図されており、従って、本発明の範囲を制限すると見なすべきではない。これらの図において同じ参照番号は同じエレメントを表す。
【図面の簡単な説明】
【００１７】
【図１】本発明のある実施形態による、クラウド・コンピューティング・ノードを示す。
【図２】本発明のある実施形態による、クラウド・コンピューティング環境を示す。
【図３】本発明のある実施形態による、クラウド抽象化モデルの層を示す。
【図４】本発明のある実施形態による、クラウド・コンピューティング環境内の自動仮想インスタンス起動のためのシステムを示す。
【図５】本発明のある実施形態による、方法のフロー図を示す。
【発明を実施するための形態】
【００１８】
便宜上、発明を実施するための形態の章に、
Ｉ．クラウド・コンピューティングの定義
ＩＩ．発明の実施形態の詳細な実装
のセクションを設ける。
【００１９】
Ｉ．クラウド・コンピューティングの定義
以下の定義は、Ｐｅｔｅｒ  ＭｅｌｌおよびＴｉｍ  Ｇｒａｎｃｅ著、「Ｄｒａｆｔ  ＮＩＳＴ  Ｗｏｒｋｉｎｇ  Ｄｅｆｉｎｉｔｉｏｎ  ｏｆ  Ｃｌｏｕｄ  Ｃｏｍｐｕｔｉｎｇ」、２００９年１０月７日、から引用した。
【００２０】
クラウド・コンピューティングは、最小限の管理労力またはサービス・プロバイダとのやり取りで迅速にプロビジョニングおよび利用可能にできる、構成可能なコンピューティング・リソース（例、ネットワーク、サーバ、ストレージ、アプリケーション、およびサービス）の共有プールへの簡便なオンデマンドのネットワーク・アクセスを可能にするモデルである。このクラウド・モデルはその可用性が推進されており、少なくとも５つの特質、少なくとも３つのサービス・モデル、および少なくとも４つの展開モデルから成る。
【００２１】
特徴は以下のとおりである。
【００２２】
オンデマンド・セルフ・サービス：顧客は、必要に応じ、サーバ時間およびネットワーク・ストレージなどのコンピューティング機能を、各サービスのプロバイダとの人的なやり取りを要することなく自動で、一方的にプロビジョニングすることができる。
【００２３】
広域なネットワーク・アクセス：諸機能はネットワークを介し利用可能で、標準的なメカニズムを介してアクセスされる。これにより、機種の異なるシン・クライアントまたはシック・クライアントのプラットフォーム（例、携帯電話、ラップトップ、およびＰＤＡ）による使用が促進される。
【００２４】
リソース共有：プロバイダのコンピューティング・リソースは、マルチテナント・モデルを適用して複数顧客にサービスするためにプールされ、各種の物理的および仮想的リソースが、顧客の要求に応じて動的に割り当ておよび再割り当てされる。顧客は一般に提供されるリソースの正確な場所についての制御や知識を持たないが、抽象化の大まかなレベルでは場所（例、国、州、またはデータセンタなど）を特定できるという点で、場所非依存性の意味合いがある。リソースの例には、ストレージ、処理装置、メモリ、ネットワーク、帯域幅、および仮想マシンが含まれる。
【００２５】
迅速な対応性：諸機能は、迅速且つ弾性的に、場合によっては自動的にプロビジョニングされ、素早くスケール・アウト（増強）され、迅速に利用可能にされ、素早くスケール・イン（削減）される。顧客にとって、プロビジョニングに使えるこれら機能は、しばしば、無制限であり、何時でもいくらでも購入できるように見える。
【００２６】
計測されるサービス：クラウド・システムは、サービスの種類（例、ストレージ、処理装置、帯域幅、および現用ユーザ・アカウント）に応じた抽象化のあるレベルでの計量機能を利用して、自動的にリソース使用を制御し最適化する。リソース利用は、モニタされ、制御され、レポートされて、プロバイダおよび顧客双方に対し利用されたサービスについての透明性を提供する。
【００２７】
サービス・モデルは以下のとおりである。
【００２８】
サービスとしてのクラウド・ソフトウェア（ＳａａＳ：Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）：クラウド・インフラストラクチャで実行されているプロバイダのアプリケーションを使用するため顧客に提供される機能。これらのアプリケーションは、ウェブ・ブラウザ（例、ウェブ・ベースのｅメール）などシン・クライアント・インタフェースを介して、さまざまなクライアント・デバイスからアクセスすることが可能である。顧客は、一部の限られたユーザ固有のアプリケーション構成設定を除き、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個別のアプリケーション機能をも含めて、基本的なクラウド・インフラストラクチャを管理または制御することはない。
【００２９】
サービスとしてのクラウド・プラットフォーム（ＰａａＳ：Ｐｌａｔｆｏｒｍ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）：プロバイダにサポートされたプログラミング言語およびツールを使って生成された、顧客生成または顧客取得のアプリケーションを、クラウド・インフラストラクチャ上に展開するため、この機能が顧客に提供される。顧客は、ネットワーク、サーバ、オペレーティング・システム、または記憶装置を含めて、基本的なクラウド・インフラストラクチャを管理または制御することはないが、展開されたアプリケーション、および、場合によりアプリケーション・ホスティング環境設定に対しては制御を有する。
【００３０】
サービスとしてのクラウド・インフラストラクチャ（ＩａａＳ：Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）：この機能は、顧客が任意のソフトウェアを展開、実行することができるよう、処理装置、ストレージ、ネットワーク、および他の基本的コンピューティング・リソースをプロビジョニングするため顧客に提供され、このソフトウェアにはオペレーティング・システムおよびアプリケーションを含めることができる。顧客は、基本的なクラウド・インフラストラクチャを管理または制御することはないが、オペレーティング・システム、記憶装置、展開されたアプリケーション、および、場合によってネットワーク構築コンポーネント選定の限定された管理（例、ホスト・ファイアウォール）に対しては制御を有する。
【００３１】
展開モデルは以下のとおりである。
【００３２】
プライベート・クラウド：ある組織のためだけに運営されるクラウド・インフラストラクチャである。これは、その組織または第三者が管理することができ、オンプレミスまたはオフプレミスに設置することができる。
【００３３】
コミュニティ・クラウド：クラウド・インフラストラクチャは、いくつかの組織に共有され、共有の関心事項（例、任務、セキュリティ要求事項、政策、およびコンプライアンス留意事項）を有するある特定のコミュニティをサポートする。これは、それらの組織または第三者によって管理することができ、オンプレミスまたはオフプレミスに設置することができる。
【００３４】
パブリック・クラウド：このクラウド・インフラストラクチャは、一般公衆または大きな業界グループが利用可能なようにされており、クラウド・サービスを販売する組織によって所有されている。
【００３５】
ハイブリッド・クラウド：このクラウド・インフラストラクチャは、個別エンティティのままの２つ以上のクラウド（プライベート、コミュニティ、またはパブリック）の合成であるが、データおよびアプリケーションの移植（例えば、クラウド間での負荷バランシングのためのクラウド・バースト）を可能にする標準的なあるいは専用の技術によって結び付けられている。
【００３６】
クラウド・コンピューティング環境は、ステートレス、疎結合、モジュール性、およびセマンティック相互運用性を重視するサービス指向である。
【００３７】
ＩＩ．発明の実施形態の詳細な実装
本発明の実施形態は、仮想インスタンスの起動を自動的に行うサービスを備え、（例えばパブリック）コンピューティング・クラウドのオペレーション支援システム（ＯＳＳ）（群）およびビジネス支援システム（ＢＳＳ）（群）を活用するシステムを提供する。具体的には、本発明の実施形態の下で、クラウド・コンピューティング環境内で機能不全仮想インスタンス（例、仮想マシン）が検出され、これに応じ新規仮想インスタンスに対する要求が受信される。要求が受信されると、機能不全仮想インスタンスに関連付けられたユーザの資格が検証されることになる。具体的には、要求のインテグリティおよび要求元のリソース使用に対する認可を確実にするため、一組の認証呼び出しおよび確認が展開される。検証に合格したならば、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマが低減されることになる。カウントダウン・タイマが所定の閾値（例えばゼロ）に達したときに、新規仮想インスタンスが起動され、機能不全仮想インスタンスは終了されることになり、カウントダウン・タイマはインスタンスによってリセット／再始動されることになる。ＢＳＳとの統合によって、サービス利用のモニタリングおよび課金、並びに再起動サービス自体に対する従量制課金のオプションを開くことがさらに可能になる。新規仮想インスタンスの始動には、旧仮想インスタンスの再起動もしくは異なる別の仮想インスタンスの起動またはその両方を含み得る。典型的な実施形態においては、仮想インスタンスとは、クラウド顧客に関連付けられた仮想マシン（ＶＭ：Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）をいうものと、あらかじめ理解しておく。
【００３８】
図１を参照すると、例示的クラウド・コンピューティング・ノードの概略図が示されている。クラウド・コンピューティング・ノード１０は、適切なクラウド・コンピューティング・ノードの単なる一例であって、本明細書に記載の本発明の使用または機能の範囲に関していかなる制限を示唆することも意図されていない。上記に関係なく、クラウド・コンピューティング・ノード１０は、前述のセクションＩで述べた機能のいずれをも実装もしくは遂行またはその両方を行う能力がある。
【００３９】
クラウド・コンピューティング・ノード１０の中には、他の多数の汎用または特別用途コンピューティング・システム環境または構成とともに作動可能な、コンピュータ・システム／サーバ１２がある。コンピュータ・システム／サーバ１２とともに用いるのに適し得る周知のコンピューティング・システム、環境、もしくは構成またはこれらの組み合わせの例には、以下に限らないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンド・ヘルドまたはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベースのシステム、セット・トップ・ボックス、プログラム可能消費者用電子機器、ネットワークＰＣ、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および上記のシステムまたはデバイスの任意のものを含む分散型クラウド・コンピューティング環境などが含まれる。
【００４０】
コンピュータ・システム／サーバ１２は、プログラム・モジュールなど、コンピュータ・システムに実行される、コンピュータ・システム実行可能命令との一般的コンテキストで説明することができる。一般に、プログラム・モジュールは、特定のタスクを遂行するまたは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含む。例示的コンピュータ・システム／サーバ１２は、通信ネットワークを介して連結された遠隔の処理デバイス群によってタスクが遂行される、分散型クラウド・コンピューティング環境内で実行させることができる。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ記憶デバイスを含め、ローカルおよび遠隔双方のコンピュータ・システムの記憶媒体に配置することができる。
【００４１】
図１では、クラウド・コンピューティング・ノード１０中のコンピュータ・システム／サーバ１２は、汎用コンピューティング・デバイスの形で示されている。コンピュータ・システム／サーバ１２のコンポーネントには、以下に限らないが、一つ以上のプロセッサまたは処理ユニット１６、システム・メモリ２８、およびシステム・メモリ２８とプロセッサ１６との間を含めシステムのさまざまなコンポーネントを連結する、バス１８を含めることができる。
【００４２】
バス１８は、メモリ・バスまたはメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、およびさまざまなバス・アーキテクチャのいずれかを用いるプロセッサまたはローカル・バスを含め、数種類のバス構造の任意の一つ以上を表している。限定でなく例として、かかるアーキテクチャには、業界標準アーキテクチャ（ＩＳＡ：Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ：Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、改良型ＩＳＡ（ＥＩＳＡ：Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ビデオ・  エレクトロニクス・  スタンダーズ  ・アソシエーション（ＶＥＳＡ：Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカル・バス、およびペリフェラル・コンポーネント・インターコネクト（ＰＣＩ：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｓ）バスが含まれる。
【００４３】
コンピュータ・システム／サーバ１２は、一般にさまざまなコンピュータ・システム可読媒体を含む。かかる媒体は、コンピュータ・システム／サーバ１２がアクセス可能な任意の利用可能な媒体とすることができ、これには、揮発性および不揮発性双方の媒体、並びに着脱可能式および固定式の媒体が含まれる。
【００４４】
システム・メモリ２８は、ランダム・アクセス・メモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）３０もしくはキャッシュ・メモリ３２またはその両方など、揮発性メモリの形でのコンピュータ・システム可読媒体を含み得る。コンピュータ・システム／サーバ１２には、他の着脱可能式／固定式、および揮発性／不揮発性のコンピュータ・システム記憶媒体をさらに含めることができる。単なる例示としてであるが、記憶装置システム３４を設け、（図示されていないが通常「ハード・ドライブ」と呼ばれる）固定式の不揮発性磁気媒体に読み取りおよび書き込みを行うことができる。図示されていないが、着脱可能式の不揮発性磁気ディスク（例、「フレキシブル・ディスク」）との読み取りおよび書き込みのための磁気ディスク・ドライブ、およびＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭまたは他の光媒体など、着脱可能式の不揮発性光ディスクとの読み取りおよび書き込みのための光ディスク・ドライブを備えることができる。かかる例では、一つ以上のデータ媒体インタフェースによって、それぞれをバス１８に接続することができる。以下にさらに提示し説明するように、メモリ２８には、本発明の機能を実行するよう構成された（例えば少なくとも一つの）プログラム・モジュールのセットを有する少なくとも一つプログラム製品を含めることができる。
【００４５】
限定でなく例示として、（少なくとも一つの）プログラム・モジュール４２のセットを有するプログラム／ユーティリティ４０、並びに、オペレーティング・システム、一つ以上のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データをメモリ２８に格納することが可能である。オペレーティング・システム、一つ以上のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データまたはそれらの何らかの組み合わせの各々には、ネットワーキング環境の実装を含めることができる。プログラム・モジュール４２は、一般に、本明細書に記載する本発明の機能もしくは方法論またはその両方を実行する。
【００４６】
また、コンピュータ・システム／サーバ１２は、キーボード、ポインティング・デバイス、ディスプレイ２４など一つ以上の外部デバイス１４、ユーザがコンピュータ・システム／サーバ１２と情報のやり取りをすることを可能にする一つ以上のデバイス、もしくはコンピュータ・システム／サーバ１２が一つ以上の他のコンピューティング・デバイスと交信することを可能にする任意のデバイス（例、ネットワーク・カード、モデムなど）またはこれらの組み合わせと通信することができる。かかる通信は、Ｉ／Ｏインタフェース２２を介して行うことができる。さらになお、コンピュータ・システム／サーバ１２は、ネットワーク・アダプタ２０を介し、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、一般広域エリア・ネットワーク（ＷＡＮ：ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、もしくは公衆ネットワーク（例、インターネット）またはこれらの複数など、一つ以上のネットワークと通信することもできる。図示のように、ネットワーク・アダプタ２０は、バス１８を介して、コンピュータ・システム／サーバ１２の他のコンポーネントと交信する。図示されてはいないが、他のハードウェアもしくはソフトウェア・コンポーネントまたはその両方を、コンピュータ・システム／サーバ１２と関連させて使用するのが可能なことを理解すべきである。これらの例には、以下に限らないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、およびデータ保管記憶システムなどが含まれる。
【００４７】
図２を参照すると、例示的なクラウド・コンピューティング環境５０が示されている。図示のように、クラウド・コンピューティング環境５０は、例えば、携帯情報端末（ＰＤＡ：ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ）または携帯電話５４Ａ、デスクトップ・コンピュータ５４Ｂ，ラップトップ・コンピュータ５４Ｃ、もしくは自動車コンピュータ・システム５４Ｎまたはこれらの組み合わせなどのコンピューティング・デバイスが通信する、一つ以上のクラウド・コンピューティング・ノード１０を含む。これにより、クラウド・コンピューティング環境５０から（上記セクションＩで説明したように）インフラストラクチャ、プラットフォーム、もしくはソフトウェア、またはこれらの組み合わせをサービスとして提供することが可能になり、各クライアントが別々にかかるリソースを維持する必要がなくなる。図２に示されたコンピューティング・デバイス５４Ａ〜Ｎの種類は、単に例示を意図したものであり、クラウド・コンピューティング環境５０は、どのような種類のネットワークもしくは（例えば、ウェブ・ブラウザを使った）ネットワーク／アドレス可能接続を介しても、どのような種類のコンピュータ化デバイスとでも通信できることを理解されたい。
【００４８】
図３を参照すると、クラウド・コンピューティング環境５０（図２）によって提供される、機能的抽象化層の一組が示されている。図３に示されたコンポーネント、層、および機能は単に例示を意図したものであり、本発明がこれに限定されないことをあらかじめ理解しておくべきである。図示のように、以下に記載の層および対応する機能が提供される。
【００４９】
ハードウェアおよびソフトウェア層６０は、ハードウェアおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例には、メインフレーム、一例としてＩＢＭ（ＩＢＭ社の登録商標）のｚＳｅｒｉｅｓ（ＩＢＭ社の登録商標）システムと、ＲＩＳＣ  （Ｒｅｄｕｃｅｄ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｍｐｕｔｅｒ（縮小命令セット・コンピューター））アーキテクチャ・ベースのサーバ、一例としてＩＢＭ（ＩＢＭ社の登録商標）のｐＳｅｒｉｅｓ（ＩＢＭ社の登録商標）システムと、ＩＢＭ（ＩＢＭ社の登録商標）のｘＳｅｒｉｅｓ（ＩＢＭ社の登録商標）システムと、ＩＢＭ（ＩＢＭ社の登録商標）のＢｌａｄｅＣｅｎｔｅｒ（ＩＢＭ社の登録商標）システムと、記憶デバイスと、ネットワークと、ネットワーク構成コンポーネントとが含まれる。ソフトウェア・コンポーネントの例には、ネットワーク・アプリケーション・サーバ・ソフトウェア、一例としてＩＢＭ（ＩＢＭ社の登録商標）のＷｅｂＳｐｈｅｒｅ（ＩＢＭ社の登録商標）アプリケーション・サーバ・ソフトウェア、およびデータベース・ソフトウェア、一例としてＩＢＭ（ＩＢＭ社の登録商標）のＤＢ２（ＩＢＭ社の登録商標）データベース・ソフトウェアが含まれる。（ＩＢＭ、ｚＳｅｒｉｅｓ、ｐＳｅｒｉｅｓ、ｘＳｅｒｉｅｓ、ＢｌａｄｅＣｅｎｔｅｒ、ＷｅｂＳｐｈｅｒｅ、およびＤＢ２は、米国、他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ・コーポレーションの登録商標である。）
【００５０】
仮想化層６２は、抽象化層を提供し、この層によって、仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークを含む仮想ネットワーク、仮想アプリケーション、および仮想クライアントなどの例示的な仮想エンティティを提供することができる。
【００５１】
マネジメント層６４は、以下に記載の例示的な諸機能を提供する。リソース・プロビジョニングは、クラウド・コンピューティング環境内で、タスクを遂行するために用いられるコンピューティング・リソースおよび他のリソースの動的な調達を提供する。計量および価格算定は、クラウド・コンピューティング環境内でリソースが利用されるのに応じてコストの追跡、これらリソースの消費に対する請求書または納品明細書の発送を提供する。一つの事例において、これらのリソースには、アプリケーション・ソフトウエアのライセンスを含めることができる。セキュリティは、ユーザおよびタスクに対する身元検証、並びにデータおよび他のリソースに対する保護を提供する。ユーザ・ポータルは、ユーザおよびシステム管理者双方に対し、クラウド・コンピューティング環境へのアクセスを提供する。サービス品質管理は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティングのリソース割り当ておよび管理を提供する。サービス品質保証制度（ＳＬＡ：Ｓｅｒｖｉｃｅ  Ｌｅｖｅｌ  Ａｇｒｅｅｍｅｎｔ）計画および履行は、ＳＬＡによって将来の需要が予期されるクラウド・コンピューティング・リソースの、事前手配および調達を提供する。
【００５２】
作業区分層６６は、クラウド・コンピューティング環境が用いられる対象の機能を提供する。この層によって提供可能な作業区分および機能の例には、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想クラスルーム教育配信、データ解析処理、取引処理、およびインスタンス起動が含まれる。前述したように、図３に関して説明した上記の例の全ては単なる例示であり、本発明はこれらの例に限定されない。
【００５３】
本明細書で説明する本発明の全ての機能は、通常、プログラム／ユーティリティ４０（図１）のプログラム・コード４２のモジュールとして有形に具現可能な、インスタンスの起動によって遂行されることが理解される。
【００５４】
次に図４を参照すると、本発明によるアーキテクチャの図が示されている。図４〜５に示されるコンポーネントの一部が図１〜３中のコンポーネントに対応していることが分かる。例えば、クラウド・ノード２００は、クラウド・ノード１０に対応する。図４〜５では、単に明瞭さと読み易さとを提供するために別の参照番号が付与されている。本発明の実施形態が、クラウド環境５０（図２）に対しオペレーション支援システム（ＯＳＳ）（群）およびビジネス支援システム（ＢＳＳ）（群）を活用していることがさらに理解される。これらのシステムは、一般には以下のように定義される。
【００５５】
オペレーション支援システム：ＯＳＳは、コンピューティング、ネットワーク形成、保存、および他のリソースを取扱い、（とりわけて）在庫管理、プロビジョニング管理、変更管理、およびインシデント管理を含む。ＯＳＳは、仮想化ハイパーバイザを実行する複数の物理サーバ上の、複数の仮想マシン・インスタンスをプロビジョニングすることができる。このプロビジョニングには、その仮想マシン・インスタンスに対する初期ブート・イメージ、および要求されたインスタンスに割り当てる予約済みＩＰアドレスの選定、並びにプロビジョニングされたインスタンスに永続性ストレージデバイスを割り当てることをさらに含めることができる。
【００５６】
ビジネス支援システム：ＢＳＳは、ＯＳＳと一緒に稼働し、エンドユーザのサブスクリプション、オーダー管理、計量収集、および査定、並びに配賦または支払いを取り扱う。ＢＳＳによって遂行される活動の典型的な種類には、（とりわけて）顧客のオーダーの取得、ネットワーク・コンポーネントの設定、請求書の発行、および不具合の管理がある。
【００５７】
いずれにしても、図４に示されるように、認可されたユーザ／顧客２２０は、ウェブ・ユーザ・インタフェース（ＵＩ：ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）１０１を用い、またはＡＰＩ１０２を使い仲介ソフトウェアを通して、クラウド・ノード２００（これは、ハードウェア２０１、ホスト・システム２０２、ハイパーバイザ２０３、および一過性ディスク２０７と併せ示されている）上に仮想マシン・インスタンス２０４を生成する。このインスタンスは、（とりわけて）以下のさらなる特質を有する。すなわち、これは認可されたユーザ２２０が生成し所有するマスタ・イメージ２１３から生成される。これは、プライベートなデータを使った可能性があるイメージを無許可で起動することを回避するためである。インスタンス２０４は、ユーザ２２０が所有する、予約済みインターネット・プロトコル（ＩＰ）アドレス２０８と関連付けられている。随意的に、該インスタンス中に、ファイル・システム２１４として永続性ディスクがマウントされる。このインスタンスは、インスタンス２０４中にブート・ディスク・イメージ２１３がプロビジョニングされると、自動的に起動し動作可能になるように構成されたソフトウェア・スタック２１０のアプリケーションも含む。
【００５８】
自動再起動サービス１１０を呼び出すために２つの選択肢がある。一つは、認可されたユーザ２２０がウェブＵＩ１０１を使った認証の後、もしくはＡＰＩ１０２が、ネットワーク上の任意の再起動初期化サービス２２１から呼び出された自動再起動サービスに登録１１１し、タイマ巻き戻し２２２を初期化する。この場合、攻撃回避チェック１１４は、要求元のユーザ２２０が、仮想マシンＶＭインスタンス２０４を所有するユーザと同じであること、およびこのユーザが予約済みＩＰアドレス２０８を要求したユーザであることを確実にすることになる。
【００５９】
もう一つは、仮想マシン・インスタンス２０４中の再起動初期化２１１に登録１１１の呼び出しを含めることである。この場合、攻撃回避チェック１１４は、発信ＩＰ呼び出し元のアドレスが予約済みＩＰアドレス２０８であること、およびＶＭインスタンス２０４の発信元２２０の認証証書が有効であることを確実にすることになる。
【００６０】
両方の場合において、攻撃回避チェック１１４は、再起動要求が以下の特質を備えたメタデータを含むことを検証している。すなわち、ユーザ２２０が、初期ブート・ディスク・イメージ２１３の持ち主であり、ＶＭインスタンス２０４、予約済みＩＰアドレス２０８および随意的な永続性ディスク２１４の持ち主であること、並びに、再起動要求が現在実行されているのと同じ構成を再起動するためのものであること、つまり、元の生成インスタンス中で使われていたのと同じブート・ディスク・イメージ２１３およびＩＰアドレス２０８および他のメタデータの要求であることの検証である。該チェックは、ＢＳＳ１０３において、ユーザがこのインスタンス／イメージの組み合わせに対する再起動サービスのための資格を有することをさらに検証する。
【００６１】
通常オペレーションの間、ＶＭインスタンス２０４は、定期的間隔で、カウントダウン・タイマ巻き戻し２１２を介してカウントダウン・タイマ１１３をリセット／再始動する。これに代えて、別のモジュール２２２がこのオペレーションを実施することができる。各登録済みインスタンスに対し、自動再起動サービス１１０中のカウントダウン・タイマが一定時間間隔でカウントダウンされる。カウントダウン・タイマ巻き戻し１１３がある時間の期間呼び出されない場合、カウントダウン・タイマはゼロに落ちることになり、このときは以下のアクションが実施される。要求実行１１５が、ＯＳＳ１０４を介し、全般的機能停止状態かどうかをチェックする。要求実行１１５が、ＯＳＳ１０４と相互作用してＶＭインスタンス２０４を終了し、予約済みＩＰアドレス２０８を割り当て解除し、随意的な永続性遠隔ディスク２０５をアンマウントする。要求実行１１５が、ＯＳＳ１０４と相互作用して新規ＶＭインスタンスを起動し、登録されたブート・ディスク・イメージ２１３を展開し、予約済みＩＰアドレス２０８を割り当て、随意的な永続性ファイル・システム２１４をマウントする。これらのアクションに基づいて、このときソフトウエア・アプリケーション・スタック２１０が、再起動の前に利用可能となっていたものと同じＩＰアドレスおよび同じ永続性データを用い、新規ＶＭインスタンスの上で作動可能になる。
【００６２】
自動再起動サービス１１０とＯＳＳ１０４およびＢＳＳ１０３との密接な統合によって、再起動が計量され、認可されたユーザに対し随意に請求される。例えば、再起動サービスの使用に対する時間割または日割りの料金は、登録と登録解除との間に請求することができ、あるいは、実際の再起動など他のイベントによって計量イベントを始動させることができよう。かかる統合によって、ウェブＵＩ１０１を介し、ユーザにステータスおよび再起動メッセージを提示することも可能になる。
【００６３】
強制再起動：ＶＭインスタンスまたは認可されたユーザによって、インスタンスの強制再起動１１２を始動することができる。この場合、同様な攻撃回避チェック１１４が実行され、これはタイマがゼロの場合にも用いられる。
【００６４】
自動サイト再起動：例えば、ＯＳＳおよびＢＳＳを含めた、１００および２００の両方の完全なシステム障害の場合も、再起動の登録１１１は維持される。ＯＳＳおよびＢＳＳが再起動される場合、要求実行１１５は、全ての登録を調べ、登録されたインスタンスの一部または全ての再起動を実施する。
【００６５】
登録解除：認可されたユーザおよびＶＭインスタンスの両方は、いつでも自動再起動の登録を解除をすることができる。この場合、攻撃回避チェックは、インスタンスを危うくする悪意ある要求を回避するために、要求の認可および整合性を再度検証することになる。
【００６６】
再起動初期化２２１：このコンポーネントは、上記イメージの中に所在し、実行中インスタンスのテンプレートである。このコンポーネントは、インスタンスの初期ブートの過程で呼び出され、自動再起動サービス１１０に登録１１１される。このようにして、インスタンスは、ユーザの介入なくして、サービスからの再起動を介し良質のサービスを得ることができる。さらに、追加の設定または管理者の介入を必要としない、高い利用効用性を包含するマスタ・イメージを、ＢＳＳ１０３中の提供カタログに使うことができる。
【００６７】
次いで、図５を参照すると、本発明のある実施形態によるフロー図が示されている。ステップＳ１に示されるように、機能不全仮想インスタンスが検出される。ステップＳ２で、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求が受信される。ステップＳ３で、機能不全仮想インスタンスに関連付けられたユーザの資格が検証される。このステップには、ユーザが、機能不全仮想インスタンス、機能不全仮想インスタンスに関連付けられたブート・イメージ、機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル（ＩＰ）、もしくは機能不全仮想インスタンスに関連付けられた永続性ストレージまたはこれらの複数の持ち主であるかどうかの判定が含まれる。ステップＳ４で、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマの時間低減が行われる。カウントダウン・タイマが所定の閾値に達したとき、ステップＳ５で、新規仮想インスタンスが起動される。ステップＳ６で、機能不全仮想インスタンスは終了される。ステップＳ７で、新規仮想インスタンスが登録される（例えば、当該ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みＩＰ、および永続性ストレージが登録される）。
【００６８】
本明細書において、自動仮想インスタンス起動ソリューションを提示し説明してきたが、本発明はさまざまな別の実施形態をさらに提供することを理解する。例えば、一つの実施形態において、本発明は、コンピュータ・インフラストラクチャが仮想インスタンス起動ソリューションを提供することを可能にするためのコンピュータ・プログラム・コードを含む、コンピュータ可読／可用媒体を提供する。このため、該コンピュータ可読／可用媒体は、本発明のさまざまなプロセスの各々を実行するプログラム・コードを含む。一つ以上のコンピュータ可読媒体（群）の任意の組み合わせを用いることができる。コンピュータ可読媒体は、コンピュータ可読信号媒体、またはコンピュータ可読記憶媒体とすることができる。コンピュータ可読記憶媒体は、例えば、以下に限らないが、電子的、磁気的、光学的、電磁気的、赤外的な、または半導体の、システム、装置、もしくはデバイス、あるいはこれらの任意の適切な組み合わせとすることができる。コンピュータ可読記憶媒体のさらに具体的な例（非包括的リスト）には、一つ以上の配線を有する電気接続、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、読み取り専用メモリ（ＲＯＭ：ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、消去可能プログラム可能読み取り専用メモリ（ＥＰＲＯＭ（ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）またはフラッシュ・メモリ）、光ファイバ、携帯型コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、光記憶デバイス、磁気記憶デバイス、またはこれらの任意の適切な組み合わせが含まれよう。本文書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、またはデバイスによってまたはこれらに関連させて使用するためのプログラムを、包含または格納できる任意の有形媒体とすることができる。
【００６９】
別の実施形態において、本発明は、本発明のプロセスを、サブスクリプション、広告、もしくは料金ベースで実施する方法を提供する。すなわち、ソリューション・インテグレータなどのサービス・プロバイダは、自動仮想インスタンス起動ソリューションの提供を売り出すことができよう。この場合、サービス・プロバイダは、一人以上の顧客に対し、本発明のプロセスを遂行する、コンピュータ・インフラストラクチャ１０２（図４）などのコンピュータ・インフラストラクチャを生成、維持、サポートなどすることができる。サービス・プロバイダは、見返りとして、サブスクリプションもしくは自由契約またはその両方の下で顧客から支払いを受けることができ、もしくはサービス・プロバイダは、広告販売に対する支払いを受けることができ、またはこれらの両方の支払いを受けることができる。
【００７０】
さらに別の実施形態において、本発明は、自動仮想インスタンス起動のためのコンピュータによる実施の方法を提供する。この場合、コンピュータ・インフラストラクチャ１０２（図４）などのコンピュータ・インフラストラクチャを提供することができ、本発明のプロセスを遂行するための一つ以上のシステムを（例えば、生成、購入、使用、修正などして）取得し、コンピュータ・インフラストラクチャに展開することができる。この点から、システムの展開には、コンピュータ可読媒体から、コンピュータ・システム１０４（図４）などのコンピューティング・デバイスにプログラム・コードをインストールするステップと、コンピュータ・インフラストラクチャに一つ以上のコンピューティング・デバイスを加えるステップと、コンピュータ・インフラストラクチャの一つ以上の既存のシステムを、コンピュータ・インフラストラクチャが本発明のプロセスを遂行できるように、統合もしくは修正またはその両方を行うステップと、の一つ以上を含めることができる。
【００７１】
コンピュータ可読信号媒体には、例えばベースバンド中にまたは搬送波の一部として具現されたコンピュータ可読のプログラム・コードを有する、伝播データ信号を含めることができる。かかる伝播信号は、以下に限らないが、電磁気的、光学的、またはこれらの任意の適切な組み合わせを含め、さまざまな形態の任意の形を取ることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではないが、命令実行システム、装置、またはデバイスによってまたはこれらに関連させて使用するためのプログラムを通信、伝播、または伝送が可能な任意のコンピュータ可読媒体であり得る。
【００７２】
本明細書での使用において、用語「プログラム・コード」と「コンピュータ・プログラム・コード」とは同義語であり、情報処理能力を有するコンピューティング・デバイスに、直接に、あるいは（ａ）別の言語、コード、または表記法への変換、および（ｂ）異なる材料形態での再生のいずれかまたは双方の後、特定の機能を遂行させるよう意図された命令のセットの、いかなる言語、コード、または表記法によるいかなる表現をも意味することを理解する。この点において、プログラム・コードは、アプリケーション／ソフトウェア・プログラム、機能のコンポーネント・ソフトウェア／ライブラリ、オペレーティング・システム、特定のコンピューティング・デバイスの基本デバイス・システム／ドライバなどの一つ以上として具現することができる。
【００７３】
本発明の下にプログラム・コードを格納もしくは実行またはその両方を行うのに適したデータ処理システムを備えることができ、これには、システム・バスを介して、直接または間接にメモリ・エレメント（群）と通信可能に連結された少なくとも一つのプロセッサを含めることができる。メモリ・エレメントには、以下に限らないが、プログラム・コードの実際の実行の過程で用いられるローカル・メモリ、大容量記憶装置、実行の過程で大容量記憶装置からコードを読み出さなければならない回数を低減するために少なくとも一部のプログラム・コードの一時的格納を提供する、キャッシュ・メモリを含めることができる。入力／出力もしくは他の外部デバイスまたはその両方（キーボード、ディスプレイ、ポインティング・デバイスなどを含むがこれらに限らない）は、直接にまたは介在デバイス・コントローラを介してシステムに連結することができる。
【００７４】
ネットワーク・アダプタをシステムに連結して、データ処理システムが、介在するプライベートまたはパブリック・ネットワークの任意の組み合わせを介して、他のデータ処理システム、遠隔のプリンタ、記憶デバイスもしくは類似デバイスまたはこれらの組み合わせに連結することを可能にすることもできる。例示的なネットワーク・アダプタには、以下に限らないが、モデム、ケーブル・モデム、およびイーサネット（Ｒ）カードが含まれる。
【図１】
0005476487.tif 000002
【図２】
0005476487.tif 000003
【図３】
0005476487.tif 000004
【図４】
0005476487.tif 000005
【図５】
0005476487.tif 000006