JP5476487B2 - クラウド・コンピューティング環境内における仮想インスタンスの起動 - Google Patents

クラウド・コンピューティング環境内における仮想インスタンスの起動 Download PDF

Info

Publication number
JP5476487B2
JP5476487B2 JP2012556495A JP2012556495A JP5476487B2 JP 5476487 B2 JP5476487 B2 JP 5476487B2 JP 2012556495 A JP2012556495 A JP 2012556495A JP 2012556495 A JP2012556495 A JP 2012556495A JP 5476487 B2 JP5476487 B2 JP 5476487B2
Authority
JP
Japan
Prior art keywords
virtual instance
malfunctioning
instance
user
cloud computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012556495A
Other languages
English (en)
Other versions
JP2013522709A5 (ja
JP2013522709A (ja
Inventor
ベツラー、ボアス
エトキンズ、ロバート、ジョナサン
マチョ、ホルヘ、ユルゲン
ピエール−ルイス、マーク−アーサー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2013522709A publication Critical patent/JP2013522709A/ja
Publication of JP2013522709A5 publication Critical patent/JP2013522709A5/ja
Application granted granted Critical
Publication of JP5476487B2 publication Critical patent/JP5476487B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Description

本発明は、一般にクラウド・コンピューティングに関する。具体的には、本発明はクラウド・コンピューティング環境において仮想インスタンスを起動することに関する。
クラウド・コンピューティングは、従前のグリッド環境の拡張であり、これにより、複数のグリッドおよび他のコンピューティング・リソースをクラウド層によってさらに抽象化することができ、しかして、エンドユーザには、別個のデバイス群が単一のシームレスなリソースのプールに見える。これらのリソースは、物理的または論理的計算エンジン、サーバおよびデバイス、デバイス・メモリ、記憶デバイス、ネットワーク、ビジネス・アプリケーションおよび他のソフトウェアなどといったものを含み得る。
典型的なクラウド環境において、顧客は、対応する仮想的「顧客」のインスタンスを有し、それを介して所望の機能を実現することになる。時として、これらのインスタンスは(例えば、破損、攻撃などによって)機能不全になる。既存のソリューション(解決法、技術対処策)では、相互にモニタするため複数のシステム・インスタンスが必要となる。複数のインスタンスが同一の物理ノードに所在する場合、その物理的ノードに障害が生じるとそれら全てが使えなくなる。さらに、多くのクラウド・システムにおいて、仮想化されたビューでは物理的な割り当ては顕在化されていない。加えて、既存のソリューションは、本質的に、コンポーネント間のあるレベルの信頼を前提としているが、パブリック・クラウド環境ではそれを前提にはできない。あり得る悪用には、利用可能なサービスを無許可で使用して、サービス妨害攻撃をマウントする、別のクラウド・ユーザの秘密データへアクセスする、もしくは許可のないコストを消費する、またはこれらを併せ行うなどがある。
上記を鑑み、本発明は、第一態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップと、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動するステップと、機能不全仮想インスタンスを終了させるステップと、を含む。
望ましくは、新規仮想インスタンスは仮想マシンを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル(IP)アドレスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む。望ましくは、所定の閾値はゼロを含む。本方法には、ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みIPアドレス、および永続性ストレージを登録するステップをさらに含めることができる。望ましくは、新規仮想インスタンスは、機能不全仮想インスタンスの再起動を含む。
第二態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムが提供され、本システムは、命令を包含するメモリ媒体と、メモリ媒体に連結されたバスと、バスに連結されたプロセッサと、を含み、該プロセッサは、命令を実行したとき、本システムが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
望ましくは、新規仮想インスタンスは仮想マシンを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル(IP)アドレスの持ち主であるかどうかを判定するステップを含む。望ましくは、検証するステップは、ユーザが機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む。望ましくは、所定の閾値はゼロを含む。本システムには、ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みIPアドレス、および永続性ストレージを登録するステップをさらに含めることができる。望ましくは、新規仮想インスタンスは、機能不全仮想インスタンスの再起動を含む。
第三態様において、コンピュータ可読媒体に格納されたコンピュータ・プログラム・コードを含むコンピュータ・プログラムが提供され、該プログラム・コードはコンピュータ・システムにロードされ実行されたとき、該コンピュータ・システムに第一態様による方法の全ステップを遂行させる。
本コンピュータ・プログラムは、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのプログラム製品を包含する、コンピュータ可読媒体中に具現することができ、該コンピュータ可読媒体はプログラム・コードを含み、該プログラム・コードは、コンピュータが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
第四態様において、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法が提供され、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、および機能不全仮想インスタンスを終了させるよう作動する、コンピュータ・インフラストラクチャを提供するステップを含む。
本発明の実施形態は、しかして、仮想インスタンスの再起動を自動的に行うサービスを備え、(例えばパブリック)コンピューティング・クラウドのオペレーション支援システム(OSS:Operational Support System)(群)およびビジネス支援システム(BSS:Business Support System)(群)を活用するシステムを提供する。具体的には、本発明の実施形態の下で、クラウド・コンピューティング環境内で機能不全仮想インスタンス(例、仮想マシン)が検出され、これに応じ新規仮想インスタンスに対する要求が受信される。要求が受信されると、機能不全仮想インスタンスに関連付けられたユーザの資格が検証されることになる。具体的には、要求のインテグリティおよび要求元のリソース使用に対する認可を確実にするため、一組の認証呼び出しおよび確認が展開される。検証に合格したならば、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマが低減されることになる。カウントダウン・タイマが所定の閾値(例えばゼロ)に達したときに、新規仮想インスタンスが起動され、機能不全仮想インスタンスは終了されることになり、カウントダウン・タイマはインスタンスによってリセット/再始動されることになる。BSSとの統合によって、サービス利用のモニタリングおよび課金、並びに再起動サービス自体に対する従量制課金のオプションを開くことがさらに可能になる。新規仮想インスタンスの始動は、旧仮想インスタンスの再起動もしくは異なる別の仮想インスタンスの起動またはその両方を含み得る。
本発明の第一の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップと、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動するステップと、機能不全仮想インスタンスを終了させるステップと、を含む。
本発明の第二の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを提供し、本システムは、命令を包含するメモリ媒体と、メモリ媒体に連結されたバスと、バスに連結されたプロセッサと、を含み、該プロセッサは、命令を実行したとき、本システムに、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
本発明の第三の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するプログラム製品を包含するコンピュータ可読媒体を提供し、該コンピュータ可読媒体はプログラム・コードを含み、該プログラム・コードは、コンピュータが、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了するようにさせる。
本発明の第四の実装は、クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法を提供し、本方法は、クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、カウントダウン・タイマが所定の閾値に達したとき、新規仮想インスタンスを起動し、機能不全仮想インスタンスを終了させるよう作動する、コンピュータ・インフラストラクチャを提供するステップを含む。
以下に本発明の好適な実施形態を、単に例示として、添付の図面を参照しながら以下に説明する。図面は必ずしも一定の縮尺ではない。これらの図面は単に図示したものであって、本発明の具体的なパラメータを表現することを意図していない。これら図面は本発明の典型的な実施形態を示すことを意図されており、従って、本発明の範囲を制限すると見なすべきではない。これらの図において同じ参照番号は同じエレメントを表す。
本発明のある実施形態による、クラウド・コンピューティング・ノードを示す。 本発明のある実施形態による、クラウド・コンピューティング環境を示す。 本発明のある実施形態による、クラウド抽象化モデルの層を示す。 本発明のある実施形態による、クラウド・コンピューティング環境内の自動仮想インスタンス起動のためのシステムを示す。 本発明のある実施形態による、方法のフロー図を示す。
便宜上、発明を実施するための形態の章に、
I.クラウド・コンピューティングの定義
II.発明の実施形態の詳細な実装
のセクションを設ける。
I.クラウド・コンピューティングの定義
以下の定義は、Peter MellおよびTim Grance著、「Draft NIST Working Definition of Cloud Computing」、2009年10月7日、から引用した。
クラウド・コンピューティングは、最小限の管理労力またはサービス・プロバイダとのやり取りで迅速にプロビジョニングおよび利用可能にできる、構成可能なコンピューティング・リソース(例、ネットワーク、サーバ、ストレージ、アプリケーション、およびサービス)の共有プールへの簡便なオンデマンドのネットワーク・アクセスを可能にするモデルである。このクラウド・モデルはその可用性が推進されており、少なくとも5つの特質、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルから成る。
特徴は以下のとおりである。
オンデマンド・セルフ・サービス:顧客は、必要に応じ、サーバ時間およびネットワーク・ストレージなどのコンピューティング機能を、各サービスのプロバイダとの人的なやり取りを要することなく自動で、一方的にプロビジョニングすることができる。
広域なネットワーク・アクセス:諸機能はネットワークを介し利用可能で、標準的なメカニズムを介してアクセスされる。これにより、機種の異なるシン・クライアントまたはシック・クライアントのプラットフォーム(例、携帯電話、ラップトップ、およびPDA)による使用が促進される。
リソース共有:プロバイダのコンピューティング・リソースは、マルチテナント・モデルを適用して複数顧客にサービスするためにプールされ、各種の物理的および仮想的リソースが、顧客の要求に応じて動的に割り当ておよび再割り当てされる。顧客は一般に提供されるリソースの正確な場所についての制御や知識を持たないが、抽象化の大まかなレベルでは場所(例、国、州、またはデータセンタなど)を特定できるという点で、場所非依存性の意味合いがある。リソースの例には、ストレージ、処理装置、メモリ、ネットワーク、帯域幅、および仮想マシンが含まれる。
迅速な対応性:諸機能は、迅速且つ弾性的に、場合によっては自動的にプロビジョニングされ、素早くスケール・アウト(増強)され、迅速に利用可能にされ、素早くスケール・イン(削減)される。顧客にとって、プロビジョニングに使えるこれら機能は、しばしば、無制限であり、何時でもいくらでも購入できるように見える。
計測されるサービス:クラウド・システムは、サービスの種類(例、ストレージ、処理装置、帯域幅、および現用ユーザ・アカウント)に応じた抽象化のあるレベルでの計量機能を利用して、自動的にリソース使用を制御し最適化する。リソース利用は、モニタされ、制御され、レポートされて、プロバイダおよび顧客双方に対し利用されたサービスについての透明性を提供する。
サービス・モデルは以下のとおりである。
サービスとしてのクラウド・ソフトウェア(SaaS:Software as a Service):クラウド・インフラストラクチャで実行されているプロバイダのアプリケーションを使用するため顧客に提供される機能。これらのアプリケーションは、ウェブ・ブラウザ(例、ウェブ・ベースのeメール)などシン・クライアント・インタフェースを介して、さまざまなクライアント・デバイスからアクセスすることが可能である。顧客は、一部の限られたユーザ固有のアプリケーション構成設定を除き、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個別のアプリケーション機能をも含めて、基本的なクラウド・インフラストラクチャを管理または制御することはない。
サービスとしてのクラウド・プラットフォーム(PaaS:Platform as a Service):プロバイダにサポートされたプログラミング言語およびツールを使って生成された、顧客生成または顧客取得のアプリケーションを、クラウド・インフラストラクチャ上に展開するため、この機能が顧客に提供される。顧客は、ネットワーク、サーバ、オペレーティング・システム、または記憶装置を含めて、基本的なクラウド・インフラストラクチャを管理または制御することはないが、展開されたアプリケーション、および、場合によりアプリケーション・ホスティング環境設定に対しては制御を有する。
サービスとしてのクラウド・インフラストラクチャ(IaaS:Infrastructure as a Service):この機能は、顧客が任意のソフトウェアを展開、実行することができるよう、処理装置、ストレージ、ネットワーク、および他の基本的コンピューティング・リソースをプロビジョニングするため顧客に提供され、このソフトウェアにはオペレーティング・システムおよびアプリケーションを含めることができる。顧客は、基本的なクラウド・インフラストラクチャを管理または制御することはないが、オペレーティング・システム、記憶装置、展開されたアプリケーション、および、場合によってネットワーク構築コンポーネント選定の限定された管理(例、ホスト・ファイアウォール)に対しては制御を有する。
展開モデルは以下のとおりである。
プライベート・クラウド:ある組織のためだけに運営されるクラウド・インフラストラクチャである。これは、その組織または第三者が管理することができ、オンプレミスまたはオフプレミスに設置することができる。
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織に共有され、共有の関心事項(例、任務、セキュリティ要求事項、政策、およびコンプライアンス留意事項)を有するある特定のコミュニティをサポートする。これは、それらの組織または第三者によって管理することができ、オンプレミスまたはオフプレミスに設置することができる。
パブリック・クラウド:このクラウド・インフラストラクチャは、一般公衆または大きな業界グループが利用可能なようにされており、クラウド・サービスを販売する組織によって所有されている。
ハイブリッド・クラウド:このクラウド・インフラストラクチャは、個別エンティティのままの2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の合成であるが、データおよびアプリケーションの移植(例えば、クラウド間での負荷バランシングのためのクラウド・バースト)を可能にする標準的なあるいは専用の技術によって結び付けられている。
クラウド・コンピューティング環境は、ステートレス、疎結合、モジュール性、およびセマンティック相互運用性を重視するサービス指向である。
II.発明の実施形態の詳細な実装
本発明の実施形態は、仮想インスタンスの起動を自動的に行うサービスを備え、(例えばパブリック)コンピューティング・クラウドのオペレーション支援システム(OSS)(群)およびビジネス支援システム(BSS)(群)を活用するシステムを提供する。具体的には、本発明の実施形態の下で、クラウド・コンピューティング環境内で機能不全仮想インスタンス(例、仮想マシン)が検出され、これに応じ新規仮想インスタンスに対する要求が受信される。要求が受信されると、機能不全仮想インスタンスに関連付けられたユーザの資格が検証されることになる。具体的には、要求のインテグリティおよび要求元のリソース使用に対する認可を確実にするため、一組の認証呼び出しおよび確認が展開される。検証に合格したならば、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマが低減されることになる。カウントダウン・タイマが所定の閾値(例えばゼロ)に達したときに、新規仮想インスタンスが起動され、機能不全仮想インスタンスは終了されることになり、カウントダウン・タイマはインスタンスによってリセット/再始動されることになる。BSSとの統合によって、サービス利用のモニタリングおよび課金、並びに再起動サービス自体に対する従量制課金のオプションを開くことがさらに可能になる。新規仮想インスタンスの始動には、旧仮想インスタンスの再起動もしくは異なる別の仮想インスタンスの起動またはその両方を含み得る。典型的な実施形態においては、仮想インスタンスとは、クラウド顧客に関連付けられた仮想マシン(VM:Virtual Machine)をいうものと、あらかじめ理解しておく。
図1を参照すると、例示的クラウド・コンピューティング・ノードの概略図が示されている。クラウド・コンピューティング・ノード10は、適切なクラウド・コンピューティング・ノードの単なる一例であって、本明細書に記載の本発明の使用または機能の範囲に関していかなる制限を示唆することも意図されていない。上記に関係なく、クラウド・コンピューティング・ノード10は、前述のセクションIで述べた機能のいずれをも実装もしくは遂行またはその両方を行う能力がある。
クラウド・コンピューティング・ノード10の中には、他の多数の汎用または特別用途コンピューティング・システム環境または構成とともに作動可能な、コンピュータ・システム/サーバ12がある。コンピュータ・システム/サーバ12とともに用いるのに適し得る周知のコンピューティング・システム、環境、もしくは構成またはこれらの組み合わせの例には、以下に限らないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンド・ヘルドまたはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベースのシステム、セット・トップ・ボックス、プログラム可能消費者用電子機器、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および上記のシステムまたはデバイスの任意のものを含む分散型クラウド・コンピューティング環境などが含まれる。
コンピュータ・システム/サーバ12は、プログラム・モジュールなど、コンピュータ・システムに実行される、コンピュータ・システム実行可能命令との一般的コンテキストで説明することができる。一般に、プログラム・モジュールは、特定のタスクを遂行するまたは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含む。例示的コンピュータ・システム/サーバ12は、通信ネットワークを介して連結された遠隔の処理デバイス群によってタスクが遂行される、分散型クラウド・コンピューティング環境内で実行させることができる。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ記憶デバイスを含め、ローカルおよび遠隔双方のコンピュータ・システムの記憶媒体に配置することができる。
図1では、クラウド・コンピューティング・ノード10中のコンピュータ・システム/サーバ12は、汎用コンピューティング・デバイスの形で示されている。コンピュータ・システム/サーバ12のコンポーネントには、以下に限らないが、一つ以上のプロセッサまたは処理ユニット16、システム・メモリ28、およびシステム・メモリ28とプロセッサ16との間を含めシステムのさまざまなコンポーネントを連結する、バス18を含めることができる。
バス18は、メモリ・バスまたはメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、およびさまざまなバス・アーキテクチャのいずれかを用いるプロセッサまたはローカル・バスを含め、数種類のバス構造の任意の一つ以上を表している。限定でなく例として、かかるアーキテクチャには、業界標準アーキテクチャ(ISA:Industry Standard Architecture)バス、マイクロ・チャネル・アーキテクチャ(MCA:Micro Channel Architecture)バス、改良型ISA(EISA:Enhanced ISA)バス、ビデオ・ エレクトロニクス・ スタンダーズ ・アソシエーション(VESA:Video Electronics Standards Association)ローカル・バス、およびペリフェラル・コンポーネント・インターコネクト(PCI:Peripheral Component Interconnects)バスが含まれる。
コンピュータ・システム/サーバ12は、一般にさまざまなコンピュータ・システム可読媒体を含む。かかる媒体は、コンピュータ・システム/サーバ12がアクセス可能な任意の利用可能な媒体とすることができ、これには、揮発性および不揮発性双方の媒体、並びに着脱可能式および固定式の媒体が含まれる。
システム・メモリ28は、ランダム・アクセス・メモリ(RAM:random access memory)30もしくはキャッシュ・メモリ32またはその両方など、揮発性メモリの形でのコンピュータ・システム可読媒体を含み得る。コンピュータ・システム/サーバ12には、他の着脱可能式/固定式、および揮発性/不揮発性のコンピュータ・システム記憶媒体をさらに含めることができる。単なる例示としてであるが、記憶装置システム34を設け、(図示されていないが通常「ハード・ドライブ」と呼ばれる)固定式の不揮発性磁気媒体に読み取りおよび書き込みを行うことができる。図示されていないが、着脱可能式の不揮発性磁気ディスク(例、「フレキシブル・ディスク」)との読み取りおよび書き込みのための磁気ディスク・ドライブ、およびCD−ROM、DVD−ROMまたは他の光媒体など、着脱可能式の不揮発性光ディスクとの読み取りおよび書き込みのための光ディスク・ドライブを備えることができる。かかる例では、一つ以上のデータ媒体インタフェースによって、それぞれをバス18に接続することができる。以下にさらに提示し説明するように、メモリ28には、本発明の機能を実行するよう構成された(例えば少なくとも一つの)プログラム・モジュールのセットを有する少なくとも一つプログラム製品を含めることができる。
限定でなく例示として、(少なくとも一つの)プログラム・モジュール42のセットを有するプログラム/ユーティリティ40、並びに、オペレーティング・システム、一つ以上のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データをメモリ28に格納することが可能である。オペレーティング・システム、一つ以上のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データまたはそれらの何らかの組み合わせの各々には、ネットワーキング環境の実装を含めることができる。プログラム・モジュール42は、一般に、本明細書に記載する本発明の機能もしくは方法論またはその両方を実行する。
また、コンピュータ・システム/サーバ12は、キーボード、ポインティング・デバイス、ディスプレイ24など一つ以上の外部デバイス14、ユーザがコンピュータ・システム/サーバ12と情報のやり取りをすることを可能にする一つ以上のデバイス、もしくはコンピュータ・システム/サーバ12が一つ以上の他のコンピューティング・デバイスと交信することを可能にする任意のデバイス(例、ネットワーク・カード、モデムなど)またはこれらの組み合わせと通信することができる。かかる通信は、I/Oインタフェース22を介して行うことができる。さらになお、コンピュータ・システム/サーバ12は、ネットワーク・アダプタ20を介し、ローカル・エリア・ネットワーク(LAN:local area network)、一般広域エリア・ネットワーク(WAN:wide area network)、もしくは公衆ネットワーク(例、インターネット)またはこれらの複数など、一つ以上のネットワークと通信することもできる。図示のように、ネットワーク・アダプタ20は、バス18を介して、コンピュータ・システム/サーバ12の他のコンポーネントと交信する。図示されてはいないが、他のハードウェアもしくはソフトウェア・コンポーネントまたはその両方を、コンピュータ・システム/サーバ12と関連させて使用するのが可能なことを理解すべきである。これらの例には、以下に限らないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ保管記憶システムなどが含まれる。
図2を参照すると、例示的なクラウド・コンピューティング環境50が示されている。図示のように、クラウド・コンピューティング環境50は、例えば、携帯情報端末(PDA:personal digital assistant)または携帯電話54A、デスクトップ・コンピュータ54B,ラップトップ・コンピュータ54C、もしくは自動車コンピュータ・システム54Nまたはこれらの組み合わせなどのコンピューティング・デバイスが通信する、一つ以上のクラウド・コンピューティング・ノード10を含む。これにより、クラウド・コンピューティング環境50から(上記セクションIで説明したように)インフラストラクチャ、プラットフォーム、もしくはソフトウェア、またはこれらの組み合わせをサービスとして提供することが可能になり、各クライアントが別々にかかるリソースを維持する必要がなくなる。図2に示されたコンピューティング・デバイス54A〜Nの種類は、単に例示を意図したものであり、クラウド・コンピューティング環境50は、どのような種類のネットワークもしくは(例えば、ウェブ・ブラウザを使った)ネットワーク/アドレス可能接続を介しても、どのような種類のコンピュータ化デバイスとでも通信できることを理解されたい。
図3を参照すると、クラウド・コンピューティング環境50(図2)によって提供される、機能的抽象化層の一組が示されている。図3に示されたコンポーネント、層、および機能は単に例示を意図したものであり、本発明がこれに限定されないことをあらかじめ理解しておくべきである。図示のように、以下に記載の層および対応する機能が提供される。
ハードウェアおよびソフトウェア層60は、ハードウェアおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例には、メインフレーム、一例としてIBM(IBM社の登録商標)のzSeries(IBM社の登録商標)システムと、RISC (Reduced Instruction Set Computer(縮小命令セット・コンピューター))アーキテクチャ・ベースのサーバ、一例としてIBM(IBM社の登録商標)のpSeries(IBM社の登録商標)システムと、IBM(IBM社の登録商標)のxSeries(IBM社の登録商標)システムと、IBM(IBM社の登録商標)のBladeCenter(IBM社の登録商標)システムと、記憶デバイスと、ネットワークと、ネットワーク構成コンポーネントとが含まれる。ソフトウェア・コンポーネントの例には、ネットワーク・アプリケーション・サーバ・ソフトウェア、一例としてIBM(IBM社の登録商標)のWebSphere(IBM社の登録商標)アプリケーション・サーバ・ソフトウェア、およびデータベース・ソフトウェア、一例としてIBM(IBM社の登録商標)のDB2(IBM社の登録商標)データベース・ソフトウェアが含まれる。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、米国、他の国、またはその両方におけるインターナショナル・ビジネス・マシーンズ・コーポレーションの登録商標である。)
仮想化層62は、抽象化層を提供し、この層によって、仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークを含む仮想ネットワーク、仮想アプリケーション、および仮想クライアントなどの例示的な仮想エンティティを提供することができる。
マネジメント層64は、以下に記載の例示的な諸機能を提供する。リソース・プロビジョニングは、クラウド・コンピューティング環境内で、タスクを遂行するために用いられるコンピューティング・リソースおよび他のリソースの動的な調達を提供する。計量および価格算定は、クラウド・コンピューティング環境内でリソースが利用されるのに応じてコストの追跡、これらリソースの消費に対する請求書または納品明細書の発送を提供する。一つの事例において、これらのリソースには、アプリケーション・ソフトウエアのライセンスを含めることができる。セキュリティは、ユーザおよびタスクに対する身元検証、並びにデータおよび他のリソースに対する保護を提供する。ユーザ・ポータルは、ユーザおよびシステム管理者双方に対し、クラウド・コンピューティング環境へのアクセスを提供する。サービス品質管理は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティングのリソース割り当ておよび管理を提供する。サービス品質保証制度(SLA:Service Level Agreement)計画および履行は、SLAによって将来の需要が予期されるクラウド・コンピューティング・リソースの、事前手配および調達を提供する。
作業区分層66は、クラウド・コンピューティング環境が用いられる対象の機能を提供する。この層によって提供可能な作業区分および機能の例には、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想クラスルーム教育配信、データ解析処理、取引処理、およびインスタンス起動が含まれる。前述したように、図3に関して説明した上記の例の全ては単なる例示であり、本発明はこれらの例に限定されない。
本明細書で説明する本発明の全ての機能は、通常、プログラム/ユーティリティ40(図1)のプログラム・コード42のモジュールとして有形に具現可能な、インスタンスの起動によって遂行されることが理解される。
次に図4を参照すると、本発明によるアーキテクチャの図が示されている。図4〜5に示されるコンポーネントの一部が図1〜3中のコンポーネントに対応していることが分かる。例えば、クラウド・ノード200は、クラウド・ノード10に対応する。図4〜5では、単に明瞭さと読み易さとを提供するために別の参照番号が付与されている。本発明の実施形態が、クラウド環境50(図2)に対しオペレーション支援システム(OSS)(群)およびビジネス支援システム(BSS)(群)を活用していることがさらに理解される。これらのシステムは、一般には以下のように定義される。
オペレーション支援システム:OSSは、コンピューティング、ネットワーク形成、保存、および他のリソースを取扱い、(とりわけて)在庫管理、プロビジョニング管理、変更管理、およびインシデント管理を含む。OSSは、仮想化ハイパーバイザを実行する複数の物理サーバ上の、複数の仮想マシン・インスタンスをプロビジョニングすることができる。このプロビジョニングには、その仮想マシン・インスタンスに対する初期ブート・イメージ、および要求されたインスタンスに割り当てる予約済みIPアドレスの選定、並びにプロビジョニングされたインスタンスに永続性ストレージデバイスを割り当てることをさらに含めることができる。
ビジネス支援システム:BSSは、OSSと一緒に稼働し、エンドユーザのサブスクリプション、オーダー管理、計量収集、および査定、並びに配賦または支払いを取り扱う。BSSによって遂行される活動の典型的な種類には、(とりわけて)顧客のオーダーの取得、ネットワーク・コンポーネントの設定、請求書の発行、および不具合の管理がある。
いずれにしても、図4に示されるように、認可されたユーザ/顧客220は、ウェブ・ユーザ・インタフェース(UI:user interface)101を用い、またはAPI102を使い仲介ソフトウェアを通して、クラウド・ノード200(これは、ハードウェア201、ホスト・システム202、ハイパーバイザ203、および一過性ディスク207と併せ示されている)上に仮想マシン・インスタンス204を生成する。このインスタンスは、(とりわけて)以下のさらなる特質を有する。すなわち、これは認可されたユーザ220が生成し所有するマスタ・イメージ213から生成される。これは、プライベートなデータを使った可能性があるイメージを無許可で起動することを回避するためである。インスタンス204は、ユーザ220が所有する、予約済みインターネット・プロトコル(IP)アドレス208と関連付けられている。随意的に、該インスタンス中に、ファイル・システム214として永続性ディスクがマウントされる。このインスタンスは、インスタンス204中にブート・ディスク・イメージ213がプロビジョニングされると、自動的に起動し動作可能になるように構成されたソフトウェア・スタック210のアプリケーションも含む。
自動再起動サービス110を呼び出すために2つの選択肢がある。一つは、認可されたユーザ220がウェブUI101を使った認証の後、もしくはAPI102が、ネットワーク上の任意の再起動初期化サービス221から呼び出された自動再起動サービスに登録111し、タイマ巻き戻し222を初期化する。この場合、攻撃回避チェック114は、要求元のユーザ220が、仮想マシンVMインスタンス204を所有するユーザと同じであること、およびこのユーザが予約済みIPアドレス208を要求したユーザであることを確実にすることになる。
もう一つは、仮想マシン・インスタンス204中の再起動初期化211に登録111の呼び出しを含めることである。この場合、攻撃回避チェック114は、発信IP呼び出し元のアドレスが予約済みIPアドレス208であること、およびVMインスタンス204の発信元220の認証証書が有効であることを確実にすることになる。
両方の場合において、攻撃回避チェック114は、再起動要求が以下の特質を備えたメタデータを含むことを検証している。すなわち、ユーザ220が、初期ブート・ディスク・イメージ213の持ち主であり、VMインスタンス204、予約済みIPアドレス208および随意的な永続性ディスク214の持ち主であること、並びに、再起動要求が現在実行されているのと同じ構成を再起動するためのものであること、つまり、元の生成インスタンス中で使われていたのと同じブート・ディスク・イメージ213およびIPアドレス208および他のメタデータの要求であることの検証である。該チェックは、BSS103において、ユーザがこのインスタンス/イメージの組み合わせに対する再起動サービスのための資格を有することをさらに検証する。
通常オペレーションの間、VMインスタンス204は、定期的間隔で、カウントダウン・タイマ巻き戻し212を介してカウントダウン・タイマ113をリセット/再始動する。これに代えて、別のモジュール222がこのオペレーションを実施することができる。各登録済みインスタンスに対し、自動再起動サービス110中のカウントダウン・タイマが一定時間間隔でカウントダウンされる。カウントダウン・タイマ巻き戻し113がある時間の期間呼び出されない場合、カウントダウン・タイマはゼロに落ちることになり、このときは以下のアクションが実施される。要求実行115が、OSS104を介し、全般的機能停止状態かどうかをチェックする。要求実行115が、OSS104と相互作用してVMインスタンス204を終了し、予約済みIPアドレス208を割り当て解除し、随意的な永続性遠隔ディスク205をアンマウントする。要求実行115が、OSS104と相互作用して新規VMインスタンスを起動し、登録されたブート・ディスク・イメージ213を展開し、予約済みIPアドレス208を割り当て、随意的な永続性ファイル・システム214をマウントする。これらのアクションに基づいて、このときソフトウエア・アプリケーション・スタック210が、再起動の前に利用可能となっていたものと同じIPアドレスおよび同じ永続性データを用い、新規VMインスタンスの上で作動可能になる。
自動再起動サービス110とOSS104およびBSS103との密接な統合によって、再起動が計量され、認可されたユーザに対し随意に請求される。例えば、再起動サービスの使用に対する時間割または日割りの料金は、登録と登録解除との間に請求することができ、あるいは、実際の再起動など他のイベントによって計量イベントを始動させることができよう。かかる統合によって、ウェブUI101を介し、ユーザにステータスおよび再起動メッセージを提示することも可能になる。
強制再起動:VMインスタンスまたは認可されたユーザによって、インスタンスの強制再起動112を始動することができる。この場合、同様な攻撃回避チェック114が実行され、これはタイマがゼロの場合にも用いられる。
自動サイト再起動:例えば、OSSおよびBSSを含めた、100および200の両方の完全なシステム障害の場合も、再起動の登録111は維持される。OSSおよびBSSが再起動される場合、要求実行115は、全ての登録を調べ、登録されたインスタンスの一部または全ての再起動を実施する。
登録解除:認可されたユーザおよびVMインスタンスの両方は、いつでも自動再起動の登録を解除をすることができる。この場合、攻撃回避チェックは、インスタンスを危うくする悪意ある要求を回避するために、要求の認可および整合性を再度検証することになる。
再起動初期化221:このコンポーネントは、上記イメージの中に所在し、実行中インスタンスのテンプレートである。このコンポーネントは、インスタンスの初期ブートの過程で呼び出され、自動再起動サービス110に登録111される。このようにして、インスタンスは、ユーザの介入なくして、サービスからの再起動を介し良質のサービスを得ることができる。さらに、追加の設定または管理者の介入を必要としない、高い利用効用性を包含するマスタ・イメージを、BSS103中の提供カタログに使うことができる。
次いで、図5を参照すると、本発明のある実施形態によるフロー図が示されている。ステップS1に示されるように、機能不全仮想インスタンスが検出される。ステップS2で、機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求が受信される。ステップS3で、機能不全仮想インスタンスに関連付けられたユーザの資格が検証される。このステップには、ユーザが、機能不全仮想インスタンス、機能不全仮想インスタンスに関連付けられたブート・イメージ、機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル(IP)、もしくは機能不全仮想インスタンスに関連付けられた永続性ストレージまたはこれらの複数の持ち主であるかどうかの判定が含まれる。ステップS4で、機能不全仮想インスタンスに関連付けられたカウントダウン・タイマの時間低減が行われる。カウントダウン・タイマが所定の閾値に達したとき、ステップS5で、新規仮想インスタンスが起動される。ステップS6で、機能不全仮想インスタンスは終了される。ステップS7で、新規仮想インスタンスが登録される(例えば、当該ユーザに対する新規仮想インスタンスのブート・イメージ、予約済みIP、および永続性ストレージが登録される)。
本明細書において、自動仮想インスタンス起動ソリューションを提示し説明してきたが、本発明はさまざまな別の実施形態をさらに提供することを理解する。例えば、一つの実施形態において、本発明は、コンピュータ・インフラストラクチャが仮想インスタンス起動ソリューションを提供することを可能にするためのコンピュータ・プログラム・コードを含む、コンピュータ可読/可用媒体を提供する。このため、該コンピュータ可読/可用媒体は、本発明のさまざまなプロセスの各々を実行するプログラム・コードを含む。一つ以上のコンピュータ可読媒体(群)の任意の組み合わせを用いることができる。コンピュータ可読媒体は、コンピュータ可読信号媒体、またはコンピュータ可読記憶媒体とすることができる。コンピュータ可読記憶媒体は、例えば、以下に限らないが、電子的、磁気的、光学的、電磁気的、赤外的な、または半導体の、システム、装置、もしくはデバイス、あるいはこれらの任意の適切な組み合わせとすることができる。コンピュータ可読記憶媒体のさらに具体的な例(非包括的リスト)には、一つ以上の配線を有する電気接続、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read−only memory)、消去可能プログラム可能読み取り専用メモリ(EPROM(erasable programmable read−only memory)またはフラッシュ・メモリ)、光ファイバ、携帯型コンパクト・ディスク読み取り専用メモリ(CD−ROM:compact disc read−only memory)、光記憶デバイス、磁気記憶デバイス、またはこれらの任意の適切な組み合わせが含まれよう。本文書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、またはデバイスによってまたはこれらに関連させて使用するためのプログラムを、包含または格納できる任意の有形媒体とすることができる。
別の実施形態において、本発明は、本発明のプロセスを、サブスクリプション、広告、もしくは料金ベースで実施する方法を提供する。すなわち、ソリューション・インテグレータなどのサービス・プロバイダは、自動仮想インスタンス起動ソリューションの提供を売り出すことができよう。この場合、サービス・プロバイダは、一人以上の顧客に対し、本発明のプロセスを遂行する、コンピュータ・インフラストラクチャ102(図4)などのコンピュータ・インフラストラクチャを生成、維持、サポートなどすることができる。サービス・プロバイダは、見返りとして、サブスクリプションもしくは自由契約またはその両方の下で顧客から支払いを受けることができ、もしくはサービス・プロバイダは、広告販売に対する支払いを受けることができ、またはこれらの両方の支払いを受けることができる。
さらに別の実施形態において、本発明は、自動仮想インスタンス起動のためのコンピュータによる実施の方法を提供する。この場合、コンピュータ・インフラストラクチャ102(図4)などのコンピュータ・インフラストラクチャを提供することができ、本発明のプロセスを遂行するための一つ以上のシステムを(例えば、生成、購入、使用、修正などして)取得し、コンピュータ・インフラストラクチャに展開することができる。この点から、システムの展開には、コンピュータ可読媒体から、コンピュータ・システム104(図4)などのコンピューティング・デバイスにプログラム・コードをインストールするステップと、コンピュータ・インフラストラクチャに一つ以上のコンピューティング・デバイスを加えるステップと、コンピュータ・インフラストラクチャの一つ以上の既存のシステムを、コンピュータ・インフラストラクチャが本発明のプロセスを遂行できるように、統合もしくは修正またはその両方を行うステップと、の一つ以上を含めることができる。
コンピュータ可読信号媒体には、例えばベースバンド中にまたは搬送波の一部として具現されたコンピュータ可読のプログラム・コードを有する、伝播データ信号を含めることができる。かかる伝播信号は、以下に限らないが、電磁気的、光学的、またはこれらの任意の適切な組み合わせを含め、さまざまな形態の任意の形を取ることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではないが、命令実行システム、装置、またはデバイスによってまたはこれらに関連させて使用するためのプログラムを通信、伝播、または伝送が可能な任意のコンピュータ可読媒体であり得る。
本明細書での使用において、用語「プログラム・コード」と「コンピュータ・プログラム・コード」とは同義語であり、情報処理能力を有するコンピューティング・デバイスに、直接に、あるいは(a)別の言語、コード、または表記法への変換、および(b)異なる材料形態での再生のいずれかまたは双方の後、特定の機能を遂行させるよう意図された命令のセットの、いかなる言語、コード、または表記法によるいかなる表現をも意味することを理解する。この点において、プログラム・コードは、アプリケーション/ソフトウェア・プログラム、機能のコンポーネント・ソフトウェア/ライブラリ、オペレーティング・システム、特定のコンピューティング・デバイスの基本デバイス・システム/ドライバなどの一つ以上として具現することができる。
本発明の下にプログラム・コードを格納もしくは実行またはその両方を行うのに適したデータ処理システムを備えることができ、これには、システム・バスを介して、直接または間接にメモリ・エレメント(群)と通信可能に連結された少なくとも一つのプロセッサを含めることができる。メモリ・エレメントには、以下に限らないが、プログラム・コードの実際の実行の過程で用いられるローカル・メモリ、大容量記憶装置、実行の過程で大容量記憶装置からコードを読み出さなければならない回数を低減するために少なくとも一部のプログラム・コードの一時的格納を提供する、キャッシュ・メモリを含めることができる。入力/出力もしくは他の外部デバイスまたはその両方(キーボード、ディスプレイ、ポインティング・デバイスなどを含むがこれらに限らない)は、直接にまたは介在デバイス・コントローラを介してシステムに連結することができる。
ネットワーク・アダプタをシステムに連結して、データ処理システムが、介在するプライベートまたはパブリック・ネットワークの任意の組み合わせを介して、他のデータ処理システム、遠隔のプリンタ、記憶デバイスもしくは類似デバイスまたはこれらの組み合わせに連結することを可能にすることもできる。例示的なネットワーク・アダプタには、以下に限らないが、モデム、ケーブル・モデム、およびイーサネット(R)カードが含まれる。

Claims (15)

  1. クラウド・コンピューティング環境内で仮想インスタンスを起動する方法であって、コンピュータ・システムが、
    前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出するステップと、
    前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信するステップと、
    前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証するステップであって、前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定するステップを含む、前記検証するステップと、
    前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減するステップと、
    前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動するステップと、
    前記機能不全仮想インスタンスを終了させるステップと
    実行することを含む、前記方法。
  2. 前記新規仮想インスタンスが仮想マシンを含む、請求項1に記載の方法。
  3. 前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定するステップを含む、請求項1または2に記載の方法。
  4. 前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル(IP)アドレスの持ち主であるかどうかを判定するステップを含む、請求項1〜3のいずれか一項に記載の方法。
  5. 前記検証するステップは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するステップを含む、請求項1〜4のいずれか一項に記載の方法。
  6. 前記所定の閾値はゼロを含む、請求項1〜5のいずれか一項に記載の方法。
  7. 前記コンピュータ・システムが、
    前記ユーザに対する前記新規仮想インスタンスのブート・イメージ、予約済みIPアドレス、および永続性ストレージを登録するステップ
    実行することをさらに含む、請求項1〜6のいずれか一項に記載の方法。
  8. 前記新規仮想インスタンスは、前記機能不全仮想インスタンスの再起動を含む、請求項1〜7のいずれか一項に記載の方法。
  9. クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムであって、
    命令を包含するメモリ媒体と、
    前記メモリ媒体に連結されたバスと、
    前記バスに連結されたプロセッサと
    を含み、
    前記プロセッサは、前記命令を実行したとき、前記システムが、
    前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、
    前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、
    前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、ここで、前記検証することは前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定することを含み、
    前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、
    前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動し、
    前記機能不全仮想インスタンスを終了する、
    ことを実行する、前記システム。
  10. 前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられたブート・イメージの持ち主であるかどうかを判定することを含む、請求項9に記載のシステム。
  11. 前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた予約済みインターネット・プロトコル(IP)アドレスの持ち主であるかどうかを判定することを含む、請求項9または10に記載のシステム。
  12. 前記検証することは、前記ユーザが前記機能不全仮想インスタンスに関連付けられた永続性ストレージの持ち主であるかどうかを判定するように更にされている、請求項9〜11のいずれか一項に記載のシステム。
  13. 前記システムは、前記ユーザに対する前記新規仮想インスタンスのブート・イメージ、予約済みIPアドレス、および永続性ストレージを登録することをさらに実行する、請求項9〜12のいずれか一項に記載のシステム。
  14. クラウド・コンピューティング環境内で仮想インスタンスを起動するコンピュータ・プログラムであって、コンピュータ・システムに、請求項1〜8のいずれか一項に記載の方法の各ステップを遂行させる、前記コンピュータ・プログラム。
  15. クラウド・コンピューティング環境内で仮想インスタンスを起動するためのシステムを展開する方法であって、コンピュータ・システムが、
    前記クラウド・コンピューティング環境内の機能不全仮想インスタンスを検出し、
    前記機能不全仮想インスタンスに応じ新規仮想インスタンスに対する要求を受信し、
    前記要求を受信することに応じて、前記機能不全仮想インスタンスに関連付けられたユーザの資格を検証し、ここで、前記ユーザが前記機能不全仮想インスタンスの持ち主であるかどうかを判定することを含み、
    前記検証に合格することに応じて、前記機能不全仮想インスタンスに関連付けられたカウントダウン・タイマを低減し、
    前記カウントダウン・タイマが所定の閾値に達したとき、前記新規仮想インスタンスを起動し、
    前記機能不全仮想インスタンスを終了させる
    ように作動する、コンピュータ・インフラストラクチャを提供するステップを実行することを含む、前記方法。
JP2012556495A 2010-03-12 2011-03-08 クラウド・コンピューティング環境内における仮想インスタンスの起動 Active JP5476487B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/722,809 US8122282B2 (en) 2010-03-12 2010-03-12 Starting virtual instances within a cloud computing environment
US12/722,809 2010-03-12
PCT/EP2011/053489 WO2011110571A1 (en) 2010-03-12 2011-03-08 Starting virtual instances within a cloud computing environment

Publications (3)

Publication Number Publication Date
JP2013522709A JP2013522709A (ja) 2013-06-13
JP2013522709A5 JP2013522709A5 (ja) 2013-10-10
JP5476487B2 true JP5476487B2 (ja) 2014-04-23

Family

ID=44244620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012556495A Active JP5476487B2 (ja) 2010-03-12 2011-03-08 クラウド・コンピューティング環境内における仮想インスタンスの起動

Country Status (6)

Country Link
US (1) US8122282B2 (ja)
JP (1) JP5476487B2 (ja)
CN (1) CN102792277B (ja)
DE (1) DE112011100166T5 (ja)
GB (1) GB2491235B (ja)
WO (1) WO2011110571A1 (ja)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005061394A1 (de) * 2005-12-22 2007-06-28 Robert Bosch Gmbh Fehlertolerantes Prozessorsystem
WO2011159842A2 (en) 2010-06-15 2011-12-22 Nimbula, Inc. Virtual computing infrastructure
US10715457B2 (en) 2010-06-15 2020-07-14 Oracle International Corporation Coordination of processes in cloud computing environments
US8402127B2 (en) * 2010-06-28 2013-03-19 Bmc Software, Inc. System and method for offering virtual private clouds within a public cloud environment
TWI476586B (zh) * 2011-07-13 2015-03-11 Inst Information Industry 以雲端技術為基礎之測試系統、方法以及其電腦可讀取記錄媒體
US8972578B2 (en) 2011-12-16 2015-03-03 Microsoft Corporation Master data management system for monitoring cloud computing
WO2013093209A1 (en) 2011-12-21 2013-06-27 Ssh Communications Security Oyj Automated access, key, certificate, and credential management
US10003458B2 (en) 2011-12-21 2018-06-19 Ssh Communications Security Corp. User key management for the secure shell (SSH)
JP6460798B2 (ja) 2012-02-10 2019-01-30 オラクル・インターナショナル・コーポレイション クラウドコンピューティングサービスフレームワーク
US8838799B2 (en) 2012-02-13 2014-09-16 International Business Machines Corporation Command management in a networked computing environment
US9210098B2 (en) 2012-02-13 2015-12-08 International Business Machines Corporation Enhanced command selection in a networked computing environment
US9026864B2 (en) * 2012-02-29 2015-05-05 Red Hat, Inc. Offloading health-checking policy
US8949930B1 (en) 2012-03-19 2015-02-03 Amazon Technologies, Inc. Template representation of security resources
US10089152B1 (en) 2012-03-19 2018-10-02 Amazon Technologies, Inc. Using scripts to bootstrap applications with metadata from a template
US8825817B1 (en) 2012-03-19 2014-09-02 Amazon Technologies, Inc. Using a template to update a stack of resources
KR101623297B1 (ko) * 2012-04-13 2016-05-20 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 목적지 클라우드 시스템 요건들의 결정
US8924969B2 (en) * 2012-06-07 2014-12-30 Microsoft Corporation Virtual machine image write leasing
US8972941B2 (en) 2012-07-18 2015-03-03 International Business Machines Corporation Integrated development environment-based workload testing in a networked computing environment
US9274917B2 (en) * 2012-07-30 2016-03-01 Hewlett Packard Enterprise Development Lp Provisioning resources in a federated cloud environment
US8438654B1 (en) 2012-09-14 2013-05-07 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
US9058219B2 (en) * 2012-11-02 2015-06-16 Amazon Technologies, Inc. Custom resources in a resource stack
CN103838639B (zh) * 2012-11-23 2018-04-27 华为技术有限公司 一种恢复虚拟磁盘元数据的方法、装置及系统
US9002997B2 (en) 2013-01-22 2015-04-07 Amazon Technologies, Inc. Instance host configuration
US9021558B2 (en) 2013-01-22 2015-04-28 Sap Se User authentication based on network context
US8966025B2 (en) 2013-01-22 2015-02-24 Amazon Technologies, Inc. Instance configuration on remote platforms
US9104455B2 (en) 2013-02-19 2015-08-11 International Business Machines Corporation Virtual machine-to-image affinity on a physical server
US9634886B2 (en) * 2013-03-14 2017-04-25 Alcatel Lucent Method and apparatus for providing tenant redundancy
US9582386B2 (en) * 2013-03-15 2017-02-28 Cloudendure, Ltd. System and method for maintaining a copy of a cloud-based computing environment and restoration thereof
US10191823B2 (en) 2014-03-11 2019-01-29 Cloudendure Ltd. System and method for restoring original machines from replicated machines in a secondary computing environment
US9619545B2 (en) 2013-06-28 2017-04-11 Oracle International Corporation Naïve, client-side sharding with online addition of shards
CN103458055A (zh) * 2013-09-22 2013-12-18 广州中国科学院软件应用技术研究所 一种云计算平台
US9485323B1 (en) 2013-09-23 2016-11-01 Amazon Technologies, Inc. Managing pooled client-premise resources via provider-defined interfaces
US9686121B2 (en) 2013-09-23 2017-06-20 Amazon Technologies, Inc. Client-premise resource control via provider-defined interfaces
US9450853B2 (en) * 2013-10-16 2016-09-20 International Business Machines Corporation Secure cloud management agent
US9270703B1 (en) 2013-10-22 2016-02-23 Amazon Technologies, Inc. Enhanced control-plane security for network-accessible services
US10333789B1 (en) 2013-12-18 2019-06-25 Amazon Technologies, Inc. Client-directed placement of remotely-configured service instances
US9292711B1 (en) * 2014-01-07 2016-03-22 Amazon Technologies, Inc. Hardware secret usage limits
US9374368B1 (en) 2014-01-07 2016-06-21 Amazon Technologies, Inc. Distributed passcode verification system
DE102014201954A1 (de) 2014-02-04 2015-08-06 Volkswagen Aktiengesellschaft Verfahren zur Datenübertragung, Kommunikationsnetzwerk und Fahrzeug
US10884774B2 (en) * 2014-06-16 2021-01-05 Hewlett Packard Enterprise Development Lp Virtual node deployments of cluster-based applications modified to exchange reference to file systems
US9525672B2 (en) * 2014-12-19 2016-12-20 Amazon Technologies, Inc. Multi-faceted compute instance identity
US10756968B2 (en) 2015-01-26 2020-08-25 Rapid7, Inc. Network resource management devices methods and systems
CN105991735A (zh) * 2015-02-25 2016-10-05 台湾艾特维股份有限公司 通路商私有云的管理系统与管理方法
US10911371B1 (en) 2015-03-16 2021-02-02 Amazon Technologies, Inc. Policy-based allocation of provider network resources
US9558031B2 (en) 2015-04-29 2017-01-31 Bank Of America Corporation Updating and redistributing process templates with configurable activity parameters
US9772873B2 (en) 2015-04-29 2017-09-26 Bank Of America Corporation Generating process templates with configurable activity parameters by merging existing templates
US10042660B2 (en) * 2015-09-30 2018-08-07 Amazon Technologies, Inc. Management of periodic requests for compute capacity
US10397365B2 (en) 2015-11-06 2019-08-27 International Business Machines Corporation Method to reduce reactivation time of cloud based services
CN105591815A (zh) * 2015-12-10 2016-05-18 北京匡恩网络科技有限责任公司 一种适用于云测试平台的电源中继设备的网络控制方法
US10613888B1 (en) 2015-12-15 2020-04-07 Amazon Technologies, Inc. Custom placement policies for virtual machines
US10512053B2 (en) * 2016-05-10 2019-12-17 Servicenow, Inc. System and method for selectively hibernating and restarting a node of an application instance
EP3529723A1 (de) 2016-10-20 2019-08-28 Volkswagen Aktiengesellschaft Vorrichtungen, verfahren und computerprogramme für ein fahrzeug und eine zentralstelle
US10372371B2 (en) * 2017-09-14 2019-08-06 International Business Machines Corporation Dynamic data relocation using cloud based ranks
CN107426115A (zh) * 2017-09-21 2017-12-01 广州数源畅联科技有限公司 一种多控制端共享弹性带宽的开启与关闭系统及其方法
US10474825B1 (en) * 2017-09-27 2019-11-12 Amazon Technologies, Inc. Configurable compute instance secure resets
US10884864B2 (en) 2018-11-29 2021-01-05 International Business Machines Corporation Autonomous self-healing stateless microservice nodes
CN110650118B (zh) * 2019-08-07 2021-11-30 江汉大学 基于应用切换的自适应安全防御的方法、装置及电子设备
US11422927B1 (en) 2021-06-04 2022-08-23 Bank Of America Corporation Application resiliency via context aware scriptless auditing equilibrium
US11599432B2 (en) 2021-06-10 2023-03-07 Kyndryl, Inc. Distributed application orchestration management in a heterogeneous distributed computing environment
CN113727332B (zh) * 2021-08-12 2022-09-02 中国联合网络通信集团有限公司 一种恢复上网的方法及装置

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4751635A (en) 1986-04-16 1988-06-14 Bell Communications Research, Inc. Distributed management support system for software managers
US5951686A (en) 1997-03-31 1999-09-14 International Business Machines Corporation Method and system for reboot recovery
US6952766B2 (en) 2001-03-15 2005-10-04 International Business Machines Corporation Automated node restart in clustered computer system
US7000100B2 (en) 2001-05-31 2006-02-14 Hewlett-Packard Development Company, L.P. Application-level software watchdog timer
US20030028680A1 (en) 2001-06-26 2003-02-06 Frank Jin Application manager for a content delivery system
US7149889B2 (en) 2002-12-12 2006-12-12 Scientific-Atlanta, Inc. Proactive reboot
US7562254B2 (en) 2003-07-01 2009-07-14 International Business Machines Corporation Checkpointing and restarting long running web services
KR100678974B1 (ko) 2004-06-25 2007-02-07 삼성전자주식회사 보안성과 사용자의 편의성을 고려한 컴퓨터 시스템의재부팅 방법 및 장치
JP4414305B2 (ja) 2004-08-19 2010-02-10 富士通株式会社 中継装置および中継装置の再起動方法並びに中継装置用ソフトウェアプログラム
US20060126706A1 (en) 2004-12-10 2006-06-15 Kevin Brand Auto-reboot modem
US8924524B2 (en) * 2009-07-27 2014-12-30 Vmware, Inc. Automated network configuration of virtual machines in a virtual lab data environment
US7533178B2 (en) 2006-10-31 2009-05-12 Cisco Technology, Inc. Resuming a computing session when rebooting a computing device
JP2008123303A (ja) * 2006-11-13 2008-05-29 Toshiba Corp 情報処理装置、情報処理方法、およびプログラム
JP4923990B2 (ja) * 2006-12-04 2012-04-25 株式会社日立製作所 フェイルオーバ方法、およびその計算機システム。
US7774589B2 (en) 2007-03-30 2010-08-10 International Business Machines Corporation System, method and program for selectivity rebooting computers and other components of a distributed computer system
US7797587B2 (en) * 2007-06-06 2010-09-14 Dell Products L.P. System and method of recovering from failures in a virtual machine
JP2009080704A (ja) * 2007-09-26 2009-04-16 Toshiba Corp 仮想計算機システム及び同システムにおけるサービス引き継ぎ制御方法
JP5011073B2 (ja) * 2007-11-22 2012-08-29 株式会社日立製作所 サーバ切り替え方法、およびサーバシステム
US8924306B2 (en) 2008-02-20 2014-12-30 International Business Machines Corporation Remote computer rebooting tool
JP2009265778A (ja) * 2008-04-22 2009-11-12 Dino Co Ltd 仮想化サーバ
JP4651127B2 (ja) * 2008-05-21 2011-03-16 株式会社日立情報システムズ 仮想マシンコンピュータシステム及び仮想マシンコンピュータシステムのフェールセーフ方法
US7886183B2 (en) * 2008-08-07 2011-02-08 Symantec Operating Corporation Providing fault tolerant storage system to a cluster
US20100088698A1 (en) * 2008-10-03 2010-04-08 Ravishankar Krishnamurthy Techniques for managing communication sessions
WO2010099513A2 (en) * 2009-02-27 2010-09-02 Coach Wei Adaptive network with automatic scaling
US7975165B2 (en) * 2009-06-25 2011-07-05 Vmware, Inc. Management of information technology risk using virtual infrastructures
US8234518B2 (en) * 2009-07-21 2012-07-31 Vmware, Inc. Method for voting with secret shares in a distributed system
US8516137B2 (en) * 2009-11-16 2013-08-20 Microsoft Corporation Managing virtual hard drives as blobs

Also Published As

Publication number Publication date
GB201208126D0 (en) 2012-06-20
DE112011100166T5 (de) 2012-10-31
GB2491235A (en) 2012-11-28
CN102792277B (zh) 2015-09-30
US8122282B2 (en) 2012-02-21
WO2011110571A1 (en) 2011-09-15
CN102792277A (zh) 2012-11-21
US20110225467A1 (en) 2011-09-15
GB2491235B (en) 2017-07-19
JP2013522709A (ja) 2013-06-13

Similar Documents

Publication Publication Date Title
JP5476487B2 (ja) クラウド・コンピューティング環境内における仮想インスタンスの起動
JP6564050B2 (ja) 仮想マシンインスタンスの中でのコマンドの実行
US8527633B2 (en) Techniques for addressing geographical location issues in computing environments
US9674029B2 (en) Migrating virtual asset
US9807153B2 (en) Managing user state of cloud desktops
US9866547B2 (en) Controlling a discovery component, within a virtual environment, that sends authenticated data to a discovery engine outside the virtual environment
JP2018517189A5 (ja)
US20130019016A1 (en) Pre-provisioning virtual machines in a networked computing environment
US20110219434A1 (en) Providing security services within a cloud computing environment
US9710292B2 (en) Allowing management of a virtual machine by multiple cloud providers
US10021111B2 (en) Location based authentication of users to a virtual machine in a computer system
JP7418093B2 (ja) 初期プログラムロード機構を用いたセキュア・ゲストの起動
US20180115602A1 (en) Dynamic healthchecking load balancing gateway
US20140172491A1 (en) On-demand cloud service management
US10412192B2 (en) Jointly managing a cloud and non-cloud environment
US20190068648A1 (en) Security compliance framework usage
US9843605B1 (en) Security compliance framework deployment
US11900078B2 (en) Tuning a container orchestrator
AU2020426828B2 (en) Reserving one or more security modules for secure guest
US20170054617A1 (en) Managing a shared pool of configurable computing resources which uses a set of dynamically-assigned resources
US10277521B2 (en) Authorizing an action request in a networked computing environment
US20230229515A1 (en) Propagating job contexts to a job execution environment
Mvelase et al. The building blocks to the architecture of a cloud platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130805

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130805

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20130805

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20130805

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130806

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20130902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131125

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140121

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140207

R150 Certificate of patent or registration of utility model

Ref document number: 5476487

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250