JP2016536721A - プロバイダ定義インターフェイスを介したクライアント構内リソース制御 - Google Patents

プロバイダ定義インターフェイスを介したクライアント構内リソース制御 Download PDF

Info

Publication number
JP2016536721A
JP2016536721A JP2016544056A JP2016544056A JP2016536721A JP 2016536721 A JP2016536721 A JP 2016536721A JP 2016544056 A JP2016544056 A JP 2016544056A JP 2016544056 A JP2016544056 A JP 2016544056A JP 2016536721 A JP2016536721 A JP 2016536721A
Authority
JP
Japan
Prior art keywords
resource
network
client
provider network
resources
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.)
Granted
Application number
JP2016544056A
Other languages
English (en)
Other versions
JP6224846B2 (ja
Inventor
スティックル,トーマス・チャールズ
ワイズ,テレンス・パトリック
モーゼズ,カール・ジェイ
Original Assignee
アマゾン・テクノロジーズ・インコーポレーテッド
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 アマゾン・テクノロジーズ・インコーポレーテッド filed Critical アマゾン・テクノロジーズ・インコーポレーテッド
Publication of JP2016536721A publication Critical patent/JP2016536721A/ja
Application granted granted Critical
Publication of JP6224846B2 publication Critical patent/JP6224846B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/18Delegation of network management function, e.g. customer network management [CNM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

プロバイダ定義インターフェイスを使用したクライアント構内リソース制御方法及び装置が説明される。クライアントが登録要求を送信することを可能にするプログラム的インターフェイスセットが実行される。登録要求は、プロバイダネットワークのサービスに対応付けられた別のプログラム的インターフェイスセットを介して出される制御動作要求の対象候補として、プロバイダネットワークの外部のデータセンタに配置されたリソースを指示する。登録要求において指示された特定リソースと、プロバイダネットワークのデータセンタ内に配置された管理リソースとの間にネットワーク接続が確立される。別のプログラム的インターフェイスセットを介して受信された特定制御動作要求に応じて、管理リソースからネットワーク接続を介して特定リソースへ制御命令が送信される。【選択図】図1

Description

多数の企業及び他の組織が、同じ場所に配置された(例えばローカルネットワークの一部として)あるいは地理的に異なる複数の場所に配置された(例えば1以上の私設または公衆の中間ネットワークを介して接続された)コンピューティングシステム等により、自身の業務を支援するため多数のコンピューティングシステムを相互接続するコンピュータネットワークを運用している。例えば、単一の組織が自身のために運用する私設データセンタ、及び顧客にコンピューティングリソースを提供する企業体が運用する公衆データセンタ等、相当数の相互接続されたコンピューティングシステムを収容するデータセンタは今ではもう珍しくない。一部の公衆データセンタ運営者は、様々な顧客が所有するハードウェアに対しネットワークアクセス、電力、安全な設置施設を提供し、一方他の公衆データセンタ運営者は、顧客が利用可能なハードウェアリソースも含む完全なサービス施設を提供する。しかしながら、典型的なデータセンタの規模と範囲が拡大しているので、物理コンピューティングリソースの供給、運営、管理作業は一層複雑化している。
コモディティハードウェアの仮想化技術の出現により、大規模なコンピューティングリソースの管理に関連した恩恵が多様なニーズを持つ多数の顧客に与えられ、様々なコンピューティングリソースが複数の顧客により効率的かつ安全に共有可能となっている。例えば、仮想化技術により、単一の物理コンピューティングマシンが、各ユーザにその単一の物理コンピューティングマシンが提供する1以上の仮想マシンを提供することにより、複数のユーザ間で共有可能になり、当該の仮想マシンは、それぞれ、ユーザに、自分は所定のハードウェアコンピューティングリソースの唯一の操作者及び管理者であると錯覚させる、別個の論理コンピューティングシステムとして作動するソフトウェアシミュレーションでありまた同時に様々な仮想マシン間におけるアプリケーション分離と安全性も提供される。さらに、一部の仮想化技術は、複数の異なる物理コンピューティングシステムにわたる複数の仮想プロセッサを有する単一の仮想マシン等、1以上の物理リソースにわたる仮想リソースを提供可能である。
クライアントが必要に応じて仮想リソースを使用することを可能にするネットワーク運営者は、障害の検出及び障害からの復旧、作業量の増加に伴うインフラストラクチャの拡張等の責務といったアプリケーション管理の多数の様相を簡略化する。しかしながら、一部の企業のIT(情報技術)部門は、特に長い年月存在するレガシーアプリケーション、機密データセットを扱いうるアプリケーション、または競合優位性をもたらす特許技術を利用しうるアプリケーションに関して、そのようなクラウドベースのアーキテクチャに委ねることに消極的でいる。完全にクライアント所有の構内におけるアプリケーションの実行から、完全にクラウドプロバイダのデータセンタにおける同一のアプリケーションの実行への突然の移行は、一部の組織にとって大きすぎる飛躍でありうる。クライアント構内アプリケーションからクラウド環境への移行を緩和するのに役立ちうる技術は、クラウド運営者(収入増加)及びクライアント(費用削減)の両者にとって大きな利益をもたらしうる。
少なくともいくつかの実施形態による、プロバイダネットワークの内部及び外部のデータセンタにおけるリソースを管理するために共通の制御インターフェイスセットが使用されうるシステムの実施例を示す。 少なくともいくつかの実施形態による、プロバイダネットワークデータセンタと外部データセンタ間のデータフローパス及び制御フローパスの実施例を示す。 少なくともいくつかの実施形態による、プロバイダネットワークリソースと外部リソースの組合せに基づく多層アプリケーションの例示的構成を示す。 少なくともいくつかの実施形態による、クライアントと、クライアント指定リソースを制御動作の対象候補として登録するように構成された登録マネジャとの間の対話の実施例を示す。 少なくともいくつかの実施形態による、プロバイダ定義制御インターフェイスを介してクライアントデータセンタにおけるリソース制御を実行するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態による、制御動作に、クライアント構内リソースとプロバイダネットワークリソース間の予め設定されたデータ経路を使用するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態による、プロバイダネットワークリソースと外部リソースの組合せを使用するアプリケーションを構成するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態による、プロバイダネットワークの外部にあるデータセンタにおける仮想化リソースを休止させ、プロバイダネットワーク内のリソースを再インスタンス化するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態による、プロバイダネットワークサービスが外部データセンタにおけるリソースを含むリソースプールを管理するように構成されたシステムの実施例を示す。 図10a及び10bはそれぞれ、少なくともいくつかの実施形態による、プロバイダネットワークから外部データセンタへ拡張する制御プレーンを有するプール化リソースサービスに使用可能な制御フローの2つの選択肢を例示する。 少なくともいくつかの実施形態による、プロバイダネットワークの外部にあるデータセンタにおけるリソースプールの種類の実施例を示す。 少なくともいくつかの実施形態による、複数のアベイラビリティコンテナにわたりうるプール構成の実施例を示す。 少なくともいくつかの実施形態による、プロバイダネットワーク内で実施されるサービスを利用して、プロバイダネットワークの外部の位置にあるプール化リソースの管理を支援するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態による、リソースプール内のリソースの起動状態を変更するために行われうる動作態様を例示するフロー図である。 少なくともいくつかの実施形態において使用されうる例示的コンピューティングデバイスを示すブロック図である。
本明細書では、実施形態がいくつかの例示的実施形態及び説明図により説明されるが、実施形態は説明される実施形態または図面に限定されないことを当業者は認識するであろう。図面及びその詳細説明に、実施形態を開示される特定の形態に限定する意図はなく、それとは逆に、添付の請求項で定義される精神と範囲に入る全ての修正、均等物及び代替案を含める意図があることを理解されたい。本明細書で使用される見出しは、本明細書を構成する目的でのみ使用され、説明または請求項の範囲を限定するために用いられることを意図しない。本特許出願を通して使用される用語「〜しうる(英単語の“may”)」は、義務的な意味(すなわち「〜しなければならない」という意味)よりもむしろ許可的な意味(すなわち「〜する可能性がある」という意味)で使用される。同様に英単語“include”、“including”、及び“includes”は、含むがそれに限定されないことを意味する。
プロバイダネットワークの外部の構内に配置されたクライアントリソースの管理を援助するためにプロバイダネットワークにおいて実行されるプログラム的制御インターフェイスを使用する方法及び装置の様々な実施形態が説明される。例えば、クライアントのデータセンタにあるクライアントが所有する仮想化ホストは、クライアントがプロバイダネットワークデータセンタに配置されたリソースを管理するのに使用可能な同一の制御インターフェイスセット(例えばウェブベースのコンソールまたは様々な種類のアプリケーションプログラミングインターフェイス(API))を使用して管理されうる。クライアントが変更を望むのであれば、そのような手法により、最終的にクライアントは非常に容易にアプリケーションをプロバイダネットワークインフラストラクチャに移行可能となりうる。
インターネット及び/または他のネットワークによりアクセス可能な1以上のネットワークアクセス可能サービス(様々な種類のクラウドベースのコンピューティング、ストレージ、またはデータベースのサービス等)を分散クライアントセットに提供するために企業または公的機関等の事業体が構築したネットワークは、本明細書においてプロバイダネットワークと称されうる。本文の残りの部分において、「クライアント」という用語は、所定の通信における通信元または通信先として使用される場合、プロバイダネットワークの少なくとも1つのネットワークアクセス可能サービスをアクセス及び利用可能なエンティティ(組織、複数ユーザ群、または単一ユーザ等)に所有され、管理され、割当てられたコンピューティングデバイス、プロセス、ハードウェアモジュール、またはソフトウェアモジュールのいずれかを指しうる。所定のプロバイダネットワークには、プロバイダにより提供されるインフラストラクチャ及びサービスを実装、設定、及び供給するのに必要な物理及び/または仮想化コンピュータサーバ、1以上のストレージデバイスをそれぞれ有するストレージサーバ、ネットワーク機器等の集合といった、様々なリソースプールを提供する多数のデータセンタ(異なる地域にわたって分散しうる)が含まれうる。その一部が異なるデータセンタまたは異なる地域においてインスタンス化または実行されうる多数の異なるハードウェア及び/またはソフトウェア構成要素は、様々な実施形態において各サービスを実行するために集合的に使用されうる。クライアントは、プロバイダネットワークにおけるリソース及びサービスとの対話を、クライアント所有もしくはクライアント管理の構内すなわちプロバイダネットワークの外部にあるデータセンタに配置されたデバイスから行いうる。クライアント構内または外部データセンタ上のリソースセットは、一括して「クライアントネットワーク」または「クライアント側リソース」と本明細書において称されうる。クライアントネットワーク内の全てのリソースがクライアントに所有される必要はないことに留意されたい。例えば、クライアントがプロバイダネットワークの外部の第3者構内に配置されたリソースをリースしていると、そのようなリースされたリソースもクライアントネットワークの一部とみなされうる。
一般に、プロバイダネットワーク及びそのクライアントの様々な構成要素間を流れるネットワークトラフィックは、データトラフィックと制御トラフィックという2つの大きなカテゴリに分類されうる。データトラフィックには、クライアントデバイスからのHTTP(ハイパーテキスト転送プロトコル)要求に応じてプロバイダネットワーク内の仮想化コンピューティングサーバにおいてインスタンス化されたウェブサイトのウェブページコンテンツの転送等、クライアントアプリケーションに関連したネットワーク転送が含まれうる。制御トラフィックには、コントローラデバイスから仮想化コンピューティングサーバへ送信された設定変更命令等、管理タスクに関連したネットワーク転送が含まれうる。安全、パフォーマンス、その他の理由のため、データトラフィックと制御トラフィックは、少なくともいくつかの実装例において出来る限り互いに論理的に隔離された状態に保たれうる(とはいえ下に記載するように、少なくともいくつかの事例において、ネットワーク経路またはリンクは両種のトラフィック用に共有されうる)。従って、いくつかの実施形態において、所定のプロバイダネットワークの少なくともリソース及びインフラストラクチャ構成要素のサブセットは、データトラフィックフロー及び制御トラフィックフローにそれぞれ使用される「データプレーン」及び「制御プレーン」という2つのカテゴリに分類されうる。各プレーンには、例えば、ルータ、ゲートウェイ、スイッチ等のネットワークデバイス、ネットワークリンク、ストレージデバイス、及び/またはサーバを含むいくつかの異なる種類のリソースが含まれうる。
いくつかの実施形態によると、プロバイダネットワークは私設ネットワークサービスを実施し、クライアントがプロバイダネットワーク内に隔離仮想ネットワーク(IVN)を確立することを可能にしうる。そのようなIVNは、いくつかの実施形態において「仮想私設クラウド」またはVPCと称されうる。IVN内のデバイス用に設定された少なくとも一部のネットワークアドレスは、IVNの外部において公開または提供されえない。ゆえに、クライアントは、実質的に柔軟なIVN内のネットワーク構成設定が可能であり、クライアント所有のデータセンタ内に全てが構築されたネットワークに対してクライアントが行いうる管理制御と同様のレベルのネットワーク関連管理制御をIVNに対して実行可能である。少なくともいくつかの実施形態において、クライアントは、クライアントネットワークとIVN間に私設ゲートウェイを設置可能でありうる、及び/または、仮想私設ネットワーク(VPN)プロトコル等の様々な種類のセキュアネットワークプロトコルを使用して、クライアント構内とクライアントのIVN間の接続を確立可能でありうる。クライアントがIVNを構成している実施形態において、データトラフィックはクライアントネットワークとプロバイダネットワーク内のIVN間をシームレスかつ安全に流れうるため、プロバイダネットワークのデータプレーンは、クライアントネットワークへ、またはクライアント構内へ論理的に拡張しているとみなされうる。
IVNの使用によりデータトラフィックフローが緩和されうるが、少なくともいくつかの事例において、クライアントはなお、プロバイダネットワーク内のリソースを管理するのに使用する制御インターフェイスとは異なる制御インターフェイスセットをクライアント構内のリソースに使用する必要がありうる。例えば、IVN内の仮想化コンピューティングサーバのインスタンス化または停止等のプロバイダネットワークリソースに対する制御動作をクライアントが要求できるように、ウェブベースの管理コンソールが実行されうるが、クライアントデータセンタ内のコンピューティングサーバをインスタンス化及び停止するのには、別のインターフェイスセットがよく使用されうる。2つの異なる制御インターフェイスセットを使用しなければならない場合、クライアント組織のITスタッフに対する相当な研修費が必要となり、かつアプリケーションをプロバイダネットワークへ移動することに関して大きな抵抗を生み出すであろう。従って、少なくともいくつかの実施形態において、プロバイダネットワーク運営者は、プロバイダネットワーク制御プレーンのクライアントネットワークへの拡張態様に関する解決策を提供しうる。これにより、プロバイダ内部及び外部両方のリソースを管理するのに共通の制御インターフェイスセットが使用可能となる。
そのような一実施形態によると、第1プログラム的インターフェイスセットが実行され、クライアントはプロバイダネットワークの1以上のネットワークアクセス可能サービスのリソースに対応付けられた制御動作を要求可能となりうる。さらに、第2プログラム的インターフェイスセットが実行され、クライアントはリソース登録要求を通して、第1プログラム的インターフェイスセットを介して制御可能とするクライアント側リソースを指示可能となりうる。そのような実施形態において、リソース登録要求は、第1プログラム的インターフェイスセットを介して受信される制御動作要求のカテゴリの対象候補として、プロバイダネットワークの外部にあるデータセンタに配置された1以上のリソースを指示しうる。制御動作要求のカテゴリは、プロバイダネットワークにおいて対応される少なくともいくつかのネットワークアクセス可能サービスに関連付けられうる。実装例に応じて、プロバイダネットワーク内に配置されたリソースで許可された制御動作のカテゴリのサブセットのみが、外部データセンタから登録されるリソース上で対応されうる。例えば、特定のハードウェアまたはソフトウェアに依存するいくつかの種類のセキュリティ関連制御動作はプロバイダネットワーク内でのみ対応可能であり、またはいくつかの種類の再構成動作はプロバイダネットワーク内でのみ対応可能でありうる。いくつかの実施形態において、登録マネジャと称されたプロバイダネットワークの構成要素は、リソース登録要求を受信し応答する責務を担いうる。
外部の(例えばクライアント所有の)データセンタに配置された特定リソースを示すリソース登録要求が受信されると、いくつかの実施形態において、例えばリソースにインストールされた1以上の管理ソフトウェアスタック構成要素と通信することで、特定リソースの1以上の能力が検証されうる。例えば、特定リソースが、1以上の仮想化コンピューティングサーバまたはインスタンスがこれから構成される仮想化ホストを備える場合、登録マネジャは、特定リソースにおける仮想化管理ソフトウェアスタックが、プロバイダネットワークホストにおいて制御動作を開始させるために一般に発行する制御動作要求(コンピューティングインスタンスを開始または停止させる要求等)の種類に応答可能であるかを検証しうる。プロバイダネットワークのプログラム的制御インターフェイスとの互換性の検証に加えて、リソースの別の様相も検証されうる(例えばリソースが所望する作業量レベルに対応可能であるか確証するためにパフォーマンス能力が調べられうる、セキュリティ能力が調べられうる等)。いくつかの実施形態において、仮想化管理ソフトウェアスタックの1以上のモジュール(例えばハイパーバイザ構成要素、または管理オペレーティングシステム構成要素)は、リソースがプロバイダネットワークの制御プレーンを介した制御対象として登録可能になる前に、クライアント側リソースにインストールされる必要がありうる。モジュールは、例えば、プロバイダネットワークの制御インターフェイスとの互換性を確証するため、プロバイダネットワークリソースが監視されるのと同様の方法のリソース監視を可能にするため等、様々な理由で要求されうる。いくつかの実施形態において、モジュールのインストールが、例えばプロバイダネットワークリソースから適切なインストールパッケージをダウンロードして登録要求を出す前に当該パッケージをインストールする等、クライアントにより準備ステップとして行われうる。一実装例において、例えばリソース登録要求に応じて、インストール可能ソフトウェアの送信が、プロバイダネットワークリソースからクライアントデータセンタ内の送信先デバイスに対し開始されうる。いくつかの実施形態において、プロバイダネットワーク運営者のパートナーであるハードウェア及び/またはソフトウェアベンダーは、自身のハードウェア/ソフトウェアスタック内に必要モジュールをバンドルし、これによってクライアントが後でモジュールをインストールしなければならないという負担から解放されうる。従って、少なくともいくつかの実施形態において、登録されるためにクライアント側リソースが追加のソフトウェアインストールステップを行う必要はない、すなわち登録候補は、入手した時点で必要なソフトウェアスタック構成要素がプリインストールされた状態でありうる。少なくともいくつかの事例において、例えば登録要求において特定されたクライアント側リソースがパートナーベンダーからのホストまたはデバイスを備える場合、リソース能力検証は要求されえない。いくつかの実施形態において、プロバイダネットワークの制御プレーンインターフェイスを使用して生成された、制御動作を簡易化するようにクライアント側リソースにインストールされたモジュールは、「制御モジュール」または「制御プレーンモジュール」と称されうる。さらに詳しく下で記載するように、いくつかの事例において、データセンタの外部の施設に配置されたリソースのプールまたはグループは、グループを構成する各リソース上の制御モジュールを要することなく、プロバイダネットワークの制御インターフェイスを使用して管理されうる。例えば、互換性のある制御モジュールと共に構成された単一のアプライアンスは、クライアント側リソースのプールを管理するために使用可能でありうる。
少なくともいくつかの実施形態において、クライアント側リソースと、プロバイダネットワークのデータセンタ内に配置された管理リソースとの間に、安全なネットワーク接続が確立されうる。上述の種類の能力検証が行われるいくつかの実施形態において、そのような接続は検証手順の一部として確立され、一方別の実施形態においては、安全なネットワーク接続は能力検証とは無関係に確立されうる(例えば能力検証の前でも後でも)。例えば、クライアント側リソースを管理するためにサービスS1に対応付けられた制御命令が使用される場合、S1のコントローラノードまたはいくつかの他の管理構成要素は、IPSec(インターネットプロトコルセキュリティ)、TLS(トランスポート層セキュリティ)、またはSSL(セキュアソケットレイヤ)等のプロトコルを使用して、クライアント側リソースにおける制御プレーンモジュールへ安全に接続されうる。いくつかの実施形態において、安全な接続のためにプロバイダネットワークにおけるプロキシが使用されうる。例えば、クライアント側リソースと、1以上のプロバイダネットワークサービスのサービス管理ノードとの間のトラフィックは、仲介プロキシを通して流れうる。少なくともいくつかの実施形態において、安全なネットワーク接続のために、プロバイダネットワークとクライアントネットワーク間のデータトラフィックフロー用に既に構成された1以上のネットワークリンク及び/またはデバイスが使用されうる。例えば、クライアントが以前にIVNを構成している場合、IVNデータトラフィックに使用されているネットワークリンクは、制御トラフィック用の仮想私設ネットワーク(VPN)接続にも使用可能である。
いくつかの実施形態において、安全な接続の確立は、実際上プロバイダネットワークの制御プレーンの少なくとも一部をクライアントネットワークへ拡張しうる。その後、クライアントは登録リソースの管理に関連して、プロバイダネットワークのデータセンタ内でインスタンス化された同様のリソースを管理するのに使用可能な同一のインターフェイスセット(例えばコンソールまたはAPI)を使用して制御動作要求を送信可能でありうる。従って、例えばクライアント側リソースにおいて制御プレーンモジュールをインストール/検証させた制御動作要求のカテゴリに属する特定のクライアント送信制御動作要求に応じて、プロバイダネットワーク内のサービスコントローラノードから適切なクライアント側リソースに対して安全なネットワーク接続を介して、制御命令が送信されうる。管理制御の観点から、制御プレーンが記載さされるように拡張された後、登録済クライアント側リソースが、プロバイダネットワーク内に存在するリソースと見分けのつかない様態(または少なくとも非常に類似した様態)で表示されうる。
少なくともいくつかの実施形態において、上述のようにクライアントが自身のリソースをプロバイダネットワーク定義のインターフェイスを介した制御対象として登録した後、アプリケーションをクライアント構内からプロバイダネットワークへ移動させることははるかに容易になりうる。例えば、共通制御インターフェイスを使用して、クライアントは、クライアント側ホストにおける仮想リソース(クライアントアプリケーションの一部を実行しているコンピューティングサーバ等)を休止または一時停止させて、プロバイダネットワーク内の別のホストにおける仮想リソースを再インスタンス化可能でありうる。
さらに、いくつかの実施形態において、クライアントは、クライアント側リソースとプロバイダネットワークリソースの組合せを使用した複合多層アプリケーションを構成するために、プロバイダネットワークにより実施される構成サービスを使用可能でありうる。例えば、クライアントは、ウェブサーバセット、アプリケーションサーバセット、及びデータベースサーバセットを備える多層ウェブアプリケーションの構成を所望しうる。様々な構成要素を特定するスクリプトまたはテンプレートが、プロバイダネットワークにおける構成サービスノードに送信され、そして構成サービスは、層を成す様々なサーバを取込むのに必要な構成命令を送信しうる。上述の制御プレーン拡張手法を使用して、スクリプトに示されたいくつかのサーバ(例えば1以上のデータベース層サーバ)はクライアント側リソースにおいてインスタンス化され、一方で他(例えば1以上のウェブサーバまたはアプリケーションサーバ)はプロバイダネットワークリソースを使用してインスタンス化されうる。
異なる実施形態において、上述と同様の制御プレーン拡張が、プロバイダネットワークにおいて実施される様々な異なるサービスに使用されうる。例えば、そのような手法はクライアントに、仮想化コンピューティングサービス(例えば仮想化コンピューティングサーバすなわち「コンピューティングインスタンス」を起動、休止、再開、停止する)、仮想化ボリュームに対応するブロックレベル仮想化ストレージサービス、ブロックレベルAPIではなくウェブサービスAPIを介して非構造化ストレージオブジェクトを公開するオブジェクトストレージサービス、データベースサービス、バッチ並列処理サービスを含む様々な種類の並列処理サービス等に対する制御命令を送信することを可能にするために使用されうる。いくつかの実施形態において、クライアント側リソースにインストールされた所定の制御モジュールがいくつかの異なるプロバイダネットワークサービスに関連する管理命令に応答可能であり、一方別の実施形態においては、異なるクライアント側モジュールが異なるサービスに必要とされうる。いくつかの実施形態において、同様にサービスごとにそれぞれの安全接続が、プロバイダネットワーク終端上のサービス管理リソースとクライアントデータセンタにインストールされた制御モジュールとの間に確立される必要があり、一方別の実施形態においては、単一の安全接続がいくつかの異なるサービスに使用されうる。一実施形態によれば、制御プレーン拡張が実行された少なくともいくつかのサービスは、仮想化の使用を必要としえない(よってそのようなサービスに登録されたリソースは仮想化ソフトウェアを必要としえない)。いくつかの実施形態において、リソースのプール(例えばロードバランサのプールまたはキャッシュデバイスのプール)の管理に使用されるサービスの制御動作も、さらに詳しく下に記載されるように、同様の手法を使用して実行されうる。
少なくともいくつかの実施形態において、例えば高可用性、高データ耐久性、及び障害に対する高い回復性を支えるために、プロバイダネットワークのリソースは、複数のプロバイダ定義アベイラビリティコンテナ(PDAC)内に配置されうる。そのような実施形態において、PDACは1以上のデータセンタのうち一部または全てを備え、所定のアベイラビリティコンテナ内の様々な種類の障害が他のアベイラビリティコンテナにおける動作に影響を与えるのを防ぐように設計されうる。従って、例えば特定のPDACは、別のPDACの障害プロファイル(例えば様々な種類の故障またはエラーの時間に関する確率分布)と関係する見込みのない障害プロファイルを有するハードウェア、ソフトウェア、及びインフラストラクチャ構成要素のセット(電源、配電ユニット、冷却/加熱機器、ネットワーク機器等)を備えうる。各PDACは、複数のPDACにわたる障害連鎖を防ぐ隔離特性と共に、それ自体、障害率が非常に低くあるように設計されうる。従って障害を自身の境界内にとどめることが可能な多数のPDACの実行は、信頼性と耐久性の高いサービスを支援するのに役立ちうる。例えば一実装例において、同一のデータベーステーブルパーティションのN個のレプリカがN個の異なるPDACにそれぞれ記憶されることで、N−1個のPDACが偶然にも一度に利用不可能な状態になった場合でもパーティションはアクセス可能な状態で残り、完全停止の確立をほぼゼロにまで低減する。少なくともいくつかの実施形態において、地理的に分散されたプロバイダネットワークのリソースは、各地域がいくつかのPDACを有し、かつ各PDACが1以上のデータセンタの一部または全てを備える地域階層に編成されうる。
上述のような制御プレーン拡張へのリソース登録が対応されたいくつかの実施形態において、クライアントは、クライアント定義アベイラビリティコンテナ(CDAC)に登録済リソースのグループを割当可能でありうる。従って、1以上のサービスに対応付けられたプロバイダネットワーク制御プレーンが拡張した2つのデータセンタをクライアントが有する場合、1つのデータセンタ内の登録済リソース集合は第1のCDACの構成リソースとして指定され、一方第2のデータセンタ内の登録済リソース集合は第2のCDACの構成リソースとして指定されうる。少なくともいくつかの実施形態において、クライアントは、プロバイダネットワークがPDACに関して準拠する同一の可用性及び障害抑制要件を、CDACに関して準拠する必要がない可能性がある。そのような実施形態において、クライアントは代わりに、クライアントのデータセンタにおいてクライアントが既に使用している既存の回復性及び障害抑制ポリシーを使用しうる、またはクライアントのCDACに関して新たな要件またはポリシーを定義しうる。サービスの特定リソースを起動または設定する場所を指定する時、いくつかの実施形態において、クライアントは、対象PDACまたは対象CDACのいずれかを指示する、またはサービスによるPDACまたはCDACの選択を許可することが可能でありうる。少なくともいくつかは複数の異なるクライアントエンティティまたは組織に割当てられたリソースを含みうるPDACと対照的に、CDACは、少なくともいくつかの実施形態において、単一のクライアントエンティティまたは組織による使用専用でありうる。別の実施形態においては、複数のクライアントエンティティが、同一のCDACへのアクセスを共有しうる。
少なくとも一実施形態によると、プロバイダネットワーク内で対応される一部のネットワークアクセス可能サービスは、単なる個別のリソースではなくリソースのプールを管理するのに使用されうる。例えば、一実施形態において、1以上のアプリケーションに対応付けられたロードバランサのプールの構成ロードバランサを、作業量に基づいて動的に起動及び停止することが可能な柔軟な負荷分散サービスが実行されうる。同様に、別の実施形態において、インスタンス化キャッシュの数が必要に応じて調整されうる分散キャッシュサービスが実行されうる。一実施形態において、個別のクライアント側リソースに関して前述された登録ベースの制御プレーン拡張技術に加えて、またはその代わりに、追加レベルの制御プレーン拡張に対応することで、クライアント側リソースの特定プールをプロバイダネットワークの制御プレーンインターフェイスを使用して管理することが可能になりうる。さらに詳しく下に記載されるように、少なくともいくつかの実施形態において、クライアント側プールのリソースに、追加の制御モジュールをインストールする等の修正を行う必要はない。代わりに、そのような実施形態において、クライアントデータセンタ内に構成された専用アプライアンスは、例えばVPNまたは前述と同様の他の技術を使用して、プロバイダネットワーク内のプール化リソースサービスの管理ノードに安全に接続可能な制御プレーンモジュールを提供しうる。アプライアンスは、一方の側のサービス管理ノードと、もう一方のクライアント側リソースプール構成リソースとの間の仲介として機能しうる。そのような実施形態において、未修正のクライアント側リソースのプールは、クライアントの観点から、プロバイダネットワークサービスの制御命令を使用して制御可能なように構成されうる。いくつかの実施形態において、下にも記載されるように、少なくともいくつかのクライアント側プール構成リソースには、別のプロバイダネットワークサービス用に実行されるインターフェイスを介して既に制御可能である登録済みリソースが含まれうる。従って、例えば、クライアントデータセンタに配置されたN個のロードバランサのプールは、負荷分散サービスLBSに対応付けられたプログラム的インターフェイスを介して制御されるように構成され、それと同時に、N個のロードバランサの少なくともあるサブセットは、仮想化コンピューティングサービスVCSのプログラム的インターフェイスを使用して制御されるように構成されたコンピューティングインスタンスを使用して実行されうる。
クライアントがリソースのプールを管理するのを手伝うために実施されるネットワークアクセス可能サービスは、本明細書において一括して、プール化リソースサービスと称されうる。様々な実施形態において、プール化リソースサービスの実施例には、負荷分散サービス、分散キャッシュサービス、リソース動員サービス(例えばクライアントのアプリケーションセットに関してスピンアップされるコンピューティングインスタンスの数を必要に応じて自動で調整するサービス)、セキュリティアーティファクト生成サービス(例えば専門ハードウェアまたはソフトウェアセキュリティモジュールの集合を使用して、暗号キー、証明書等をオンデマンドで生成するサービス)、ネットワークアドレス発見サービス(例えばネームサーバノードの集合を使用してアドレス解決クエリに応答するサービス)、及び分散データベースサービス(要求に基づいて起動データベースインスタンスの数を増加または減少させるサービス)が含まれうる。
様々な実施形態において、例えば測定または予想された作業量、クライアント予算枠等の様々な判定基準に基づいたプール構成リソースの起動及び停止は、プール化リソースサービスの中核機能のうちの1つを表しうる。いくつかの実施形態において、そのようなサービスのクライアントは、1以上のプログラム的インターフェイスを介して、プロバイダネットワーク内のプール構成リソースの起動状態の変更につながる要求を含む様々な種類の設定要求を送信可能でありうる。特定の種類の設定要求(プールインスタンス化要求もしくはプール拡張要求、またはより一般的にプール管理要求と称されうる)により、クライアントはまた、特定プール内のリソース起動状態をプール化リソースサービスにより管理させるクライアント側リソース(すなわち、プロバイダネットワークの外部に配置されたリソース)も指示可能でありうる。安全なネットワーク接続(例えばSSL、TLS、またはIPSecを使用)が、プロバイダネットワーク内に配置されたプール化リソースサービスの管理リソースから、クライアント側位置(例えばクライアントのデータセンタ)におけるプール化リソースサービスのためにインスタンス化された制御モジュールまで確立されうる。クライアントにより指示されたリソース起動基準に基づいて、様々なクライアント側リソースがプール化リソースサービスにより起動及び停止されうる。様々な実施形態において、クライアントはまた、起動可能またはプール内含有可能なプール構成リソースの最小及び最大数、プール構成リソースの識別情報(例えばネットワークアドレス)等、リソースプールに関する様々なパラメータを、プログラム的インターフェイスを使用して指示しうる。
いくつかの実装例において、上述のように、拡張制御プレーンを実行しクライアント側リソースプールのリソースを管理するために、クライアント側位置に専用アプライアンスがインスタンス化されうる。アプライアンスにインストールされた制御モジュールは、プロバイダネットワーク内の制御プレーン構成要素と、クライアントネットワーク内のプール化リソースとの間のソフトウェア仲介とみなされうる。様々な実施形態において、クライアント側リソースの起動、休止、停止、または他の設定変更を行うのに、例えば簡易ネットワーク管理プロトコル(SNMP)またはUDP(ユーザデータグラムプロトコル)を含む任意の好適なプロトコルが使用されうる。いくつかの実施形態において、サービス管理構成要素(例えばプロバイダネットワーク内に配置されたサービスコントローラ)とアプライアンス間の通信は、JMX(ジャバ(商標)マネジメントエクステンションアーキテクチャ)等の業界標準に従ってフォーマットされうる。別の実施形態においては、そのような専用アプライアンスは使用されず、代りにプール化リソースサービスと互換性のある制御プレーンモジュールが少なくともいくつかのプール構成リソースにインストールされうる。少なくともいくつかの実施形態において、一部のクライアント側プール構成リソースには1以上のプロバイダネットワークサービスに対応付けられた制御モジュールがインストール済みであり、他のクライアント側プール構成リソースにはインストールされていないハイブリッド手法が対応されうる。いくつかの実装例において、複数のサービス(例えば負荷分散サービスと仮想化コンピューティングサービス、または、データベースサービスとキャッシュサービスとストレージサービス)に対応付けられた制御モジュールは、同一のクライアント側リソースにインストールされうる。いくつかの実施形態において、制御プレーン拡張技術を使用して管理されるリソースのプールは、クライアント側リソースとプロバイダネットワークリソースの両者を含むため、リソースプールはデータセンタの境界またはアベイラビリティコンテナの境界を横断しうる。
例示的システム環境
図1は、少なくともいくつかの実施形態による、プロバイダネットワークの内部及び外部のデータセンタにおけるリソースを管理するために共通の制御インターフェイスセットが使用されうるシステム100の実施例を示す。示されるように、システム100は、プロバイダネットワーク101内及び外部ネットワーク151(例えばクライアント所有、クライアント管理、または第3者のネットワーク)に配置された様々なリソースセットを備える。プロバイダネットワークには、複数のプロバイダ定義アベイラビリティコンテナ(PDAC)102(PDAC102A及び102B等)が含まれうる。各PDACは、1以上のデータセンタの一部または全てを備え、そして各PDACのインフラストラクチャ構成要素(電源、冷却、ネットワーク、及びセキュリティ関連構成要素等)は、1つのPDAC内の障害が他のPDACにおける動作に影響を与える確率がとても低くあるように、設計及び隔離されうる。すなわち、各PDACは、他のPDACの可用性プロファイルとは無関係の独自の可用性プロファイルを有しうる。
描かれた実施形態において、プロバイダネットワークの1以上のネットワークアクセス可能サービスに対応付けられた共通制御プレーンインターフェイス150のセットは、クライアント170によりプロバイダネットワークのリソース宛ての制御動作要求190(例えば様々な種類の設定/管理要求)を送信するのに使用されうる。様々なクライアント170は、プロバイダネットワークのPDAC内の論理及び/または物理リソースのそれぞれのセット(例えばリソースセット110A、110B、110Fまたは110G)への管理アクセスが許可されうる。クライアント用リソースにおいて実施されている特定サービス、及びクライアントの管理許可に応じて、そのようなクライアントはリソース宛ての制御動作要求190のいくつかのカテゴリを、それぞれ共通制御プレーンインターフェイス150を介して発行しうる。プロバイダネットワーク内において、制御動作要求は、命令192A及び192B等の制御命令192に変換されうる。いくつかの実施形態において、1以上のネットワークエンドポイント(例えばウェブアクセス可能コンソール、またはエンドポイントデバイスに対応付けられたネットワークアドレスセット)は、クライアント170から制御動作要求190を受信するため、かつ当該要求に応答するために公開されうる。従って、プロバイダネットワークの制御プレーンは、そのようなエンドポイントと、プロバイダネットワーク101内の管理動作または設定管理専用の他のデバイス(図1に図示せず)と、並びに制御関連ネットワーク転送に使用されるプログラム的インターフェイス及びネットワークパスとを備えうる。
描かれた実施形態において、クライアントは、例えば外部ネットワーク151内に配置された様々なリソースを、共通制御プレーンインターフェイス150を介して受信される制御動作要求の少なくともいくつかのカテゴリの対象候補として登録することで、プロバイダネットワークの制御プレーンの拡張を要求可能でありうる。例えば、クライアント170は、リソースセット154A内の1以上のリソースをプロバイダネットワークのサービスS1に対応付けられたカテゴリC1の制御動作の対象として設定したいことを示すリソース登録要求を、特定のプログラミングインターフェイスを介して登録マネジャ180へ送信しうる。別のリソース登録要求は、リソースセット154Bのリソースを、サービスS2のカテゴリC2の制御動作の対象候補として示しうる。いくつかの実装例において、制御動作(いくつかのサービスに対応付けられている可能性あり)の複数のリソースセット及び複数の要求カテゴリは、単一のリソース登録要求において示されうる。いくつかの実施形態において、所定のサービスS1に関して外部ネットワーク151におけるリソースで対応される制御動作要求のカテゴリは、プロバイダネットワーク101内のリソースで対応される制御動作のカテゴリと完全に重複しない可能性がある。例えば、クライアント側リソースに使用されるハードウェア及び/またはソフトウェアスタックは、プロバイダネットワークリソースでサポートされる全ての種類の設定動作を実行不可能でありうる。別の実施形態において、所定のサービスに関してプロバイダネットワークリソースで対応される全ての種類の作業動作要求は、プロバイダネットワークの外部の登録済リソースにおいても対応されうる。
少なくともいくつかの実施形態において、制御命令が正しく実行されるために、プロバイダネットワークサービスと互換性のある制御モジュールがインストールされる必要がありうる(例えば登録済リソース自体に、または外部ネットワーク151内の他のデバイス/アプライアンス上に)。例えば、仮想化コンピューティングサービスに対応付けられた制御命令の場合、仮想化管理ソフトウェアスタックの1以上のそのような制御モジュール(例えばハイパーバイザ、または管理タスク用に指定されたオペレーティングシステムインスタンス)がインストールされる必要がありうる。さらに、少なくともいくつかの実施形態において、制御モジュールと、プロバイダネットワーク101内に配置された管理リソース(例えばサービスコントローラ)との間に、安全なネットワーク接続が確立される必要がありうる。少なくともいくつかの実装例において、登録が完成したものとみなされるために、制御モジュールの機能と安全なネットワーク接続が検証される必要がありうる。クライアント側リソースが登録マネジャ180により正しく登録された後、クライアントはインターフェイス150を介して登録済リソース宛ての制御動作要求を送信し、対応する内部制御命令192Cがクライアント側登録済リソース宛てに出されうる。図1において登録マネジャ180は単一エンティティとして示されるが、様々な実施形態において、登録マネジャの機能はプロバイダネットワークの複数のハードウェア及び/またはソフトウェア構成要素を使用して実行され、しかも一部の構成要素は他の構成要素とは異なるデータセンタまたはアベイラビリティコンテナに配置されうることに留意されたい。
描かれた実施形態において、プロバイダネットワークの拡張された制御プレーンに特定リソースを登録することに加え、クライアント170はあるクライアント側リソース集合をアベイラビリティコンテナの構成リソースとして指定することも要請しうる。従って、例えば登録済リソースセット154A及び154Bは、クライアント定義アベイラビリティコンテナ(CDAC)152の構成リソースとして指定される。少なくともいくつかの実施形態において、クライアント170は、プロバイダネットワークがPDACに使用する可用性抑制及び障害回復ポリシーとは異なる可用性抑制及び障害回復ポリシーをCDACに対して実施しうる。例えば、クライアントはプロバイダネットワークが対応するのと同じデータ耐久性または耐障害性レベルに対応する義務がない可能性がある。少なくともいくつかの実施形態において、一部の種類の制御動作(仮想化コンピューティングサービスに対応付けられたコンピューティングインスタンスを起動させる要求等)に関して、制御動作の要求者により対象アベイラビリティコンテナ(例えばその内部でコンピューティングインスタンスが起動されるアベイラビリティコンテナ)が選択される必要がありうる。いくつかのそのような実施形態において、PDAC及びCDACは、そのような制御動作に関して同等に取り扱われうる。例えば、クライアントは対象PDAC102または対象CDAC152を所望に応じて特定可能でありうる。いくつかの実施形態において、所定クライアント170は、それぞれが自身の可用性プロファイル及びポリシーを有する複数のCDAC152を構成可能でありうる。
描かれた実施形態において、外部ネットワーク151には登録済リソースセット(154A及び154B等)及び未登録リソースセット(158A及び158B等)の両方が含まれうる。すなわち、プロバイダネットワークにより対応される必要がなく、そのため「クライアント特定」または「非共有」と本明細書において称されうる制御プレーンインターフェイス166が一部のクライアント側リソースに対して使用されうる。外部ネットワーク151内の登録済リソースを管理するために、制御動作要求が共通制御プレーンインターフェイス150を使用して送信され、そして未登録リソースを管理するために、クライアント特定制御動作要求195がクライアント特定または非共有インターフェイス166等の別の制御インターフェイスを介して送信されうる。クライアント特定制御動作要求166は、未登録リソース宛ての制御命令197に変換されうる。図1に示されるハイブリッド手法を使用することにより、クライアント170は、クライアント特定または非共有制御インターフェイスを使用してクライアントリソースのあるサブセットを管理する能力を維持しながら、クライアントリソースの別のサブセットに対して共通のプロバイダ定義制御インターフェイスセットを使用するという利点を得られうる。一部のクライアントは、例えば、機密性の高いアプリケーションに対するプロバイダネットワークの使用への漸進的な移行を試みる準備ができるまで、未登録リソースセット154A及び154Bを機密性の高いアプリケーションに対し使用することを所望しうる。移行は、登録済リソースセットにおいてアプリケーションをまず実行して共通の制御インターフェイス150セットの使用時に遭遇する任意の問題が解消されることを確証し、そして最終的にアプリケーションをプロバイダネットワークへ移動させることを伴いうる。
データ及び制御用共有ネットワークリンク
少なくともいくつかの実施形態において、クライアントデータセンタとプロバイダネットワーク間のデータ転送用に設定されたネットワークパスは、例えば制御トラフィック用に設定された仮想私設ネットワーク(VPN)接続を使用して、制御プレーンネットワーク転送用にも設定可能でありうる。すなわち、単一または複数の同一のネットワークリンクは、プロバイダネットワークとクライアント側データセンタ間のデータフロー及び制御フローの両者に関して共有されうる。図2は、少なくともいくつかの実施形態による、プロバイダネットワークデータセンタと外部データセンタ間のデータフローパス及び制御フローパスの実施例を示す。描かれた実施形態において、隔離仮想ネットワーク(IVN)221は、プロバイダネットワーク101のクライアントC1用リソースのサブセットを使用して構成されている。プロバイダネットワーク101は、一部は他のIVN内に含まれえない他のクライアントのリソース225も含みうる。前述のように、IVNは、プロバイダネットワーク101の他のリソース(他のIVNを含む)から論理的に隔離されうる。クライアントC1はIVN221内で、IPアドレス範囲の選択、サブネットの作成、ルーティングテーブル及びゲートウェイの構成、セキュリティ設定等の様々な種類のネットワーク関連設定動作を、データセンタ240等のクライアント自身の施設内のネットワーク上で可能でありうる同様のレベルの柔軟性を伴って実行可能である。IVN211とクライアントC1のデータセンタ240間のデータフローパス266は確立済みでありうる。データフローパス266には、C1のトラフィック用に設定された仮想私設ゲートウェイ230、並びにクライアントデータセンタ240に対応付けられたルータ232が含まれうる。描かれた実施形態において、データフローパス266には、IVN221と仮想私設ゲートウェイ230間のネットワークリンク231A、仮想私設ゲートウェイ230とルータ232間のリンク234、及びクライアントデータセンタ240内のリンク236A、236B、236Cが含まれうる。
描かれた実施形態において、プロバイダネットワークの制御インターフェイスを使用してクライアントC1により送信される制御動作要求は、様々なサービス制御プレーンノード205により処理されうる。例えば、仮想化コンピューティングサービスに関連した制御動作はノード214により処理され、ストレージサービスに関連した制御動作はノード215により処理され、負荷分散サービスまたは分散キャッシュサービス等のプール化リソースサービスに関連した制御動作はノード213により処理され、スタック構成サービスに関連した制御ノードはノード212により処理されうる。所定のサービスに対応付けられた制御プレーンノードは、本明細書において「サービスコントローラ」または単に「コントローラ」と称されうる。スタック構成サービス及び様々なプール化リソースサービスに関する追加詳細は、下記に提供される。
描かれた実施形態において、前述のクライアント側リソース登録機能を使用して、クライアントC1はデータセンタ240におけるいくつかのリソースを、プロバイダネットワーク101の制御インターフェイスを介した制御対象の候補として登録済みでありうる。示されるように、仮想化コンピューティングホスト252、ストレージアプライアンス256、及びプール化リソースアプライアンス260はそれぞれ、描かれた実施例において、プロバイダネットワーク内で実施される対応サービスに使用されるインターフェイスを介した制御対象として登録済みでありうる。描かれた実施形態において、登録済リソースにはそれぞれ、対応する制御プレーンモジュール(本明細書にて単に制御モジュールとも称されうる)のセットをインストール済でありうる。例えば、登録済仮想化コンピューティングホスト252は制御モジュール254(例えば仮想化管理ソフトウェアスタック内に取込まれたモジュール、または管理目的でホスト上に構成されたオペレーティングシステムインスタンス)を備え、登録済ストレージアプライアンス256は制御モジュール258を備え、そして登録済プール化リソースアプライアンス260は制御モジュール262を備えうる。いくつかの実施形態において、制御モジュールは、クライアントデータセンタにリソースを供給する責任のあるベンダーによりプリインストールされうる。別の実施形態において、モジュールはプロバイダネットワークからインストールされうる。例えばインストールパッケージがプロバイダネットワークからクライアントネットワークへ送信されうる。描かれた実施形態において、プロバイダネットワーク101内に配置された制御プレーンノード205と、クライアントデータセンタ240内の登録済リソースにインストールされた制御プレーンモジュールとの間に、安全な制御フローパス268が確立されうる。クライアント側制御プレーンモジュールとプロバイダネットワーク間の接続を安全にするために、TLS、SSL、またはIPSec等の暗号ベースプロトコルが使用されうる。いくつかの実施形態において、制御フローパスにはIPSecプロキシ等のセキュアプロキシ210が含まれうる。示されるように、データフローパス266に使用される少なくともいくつかのネットワークリンク(例えばリンク234、236A、236B、236C)は、制御フローパス268によっても共有されうる。少なくともいくつかの実施形態において、様々な種類のVPNプロトコル等の様々なネットワーク隔離技術のいずれかを使用して、制御トラフィックはデータトラフィックから隔離された状態に保たれうる。
図2に描かれた実施形態において、クライアントC1が別のリソース(例えば現在未登録のリソース277のうちの1つ)の登録を所望する場合、登録マネジャ180(図示せず)が、当該リソースが適切な制御プレーンモジュールを有しているか検証し、かつクライアント側リソース上の制御プレーンモジュールとプロバイダネットワーク内の好適な制御コントローラとの間に安全な接続を確立する責務を担いうる。描かれた実施形態において、クライアントC1がリソースの登録解除を所望する場合、登録マネジャ180は、安全な接続を終了し(他のサービスに対応付けられた制御トラフィックに共有されている場合を除き)、そして場合によってはリソースにおける制御モジュールがアンインストールされうる。
クライアント側リソースとプロバイダネットワークリソースを組み合わせるアプリケーションスタック
上述の技術を使用してプロバイダネットワークの制御プレーンが1度拡張されると、新たな種類のアプリケーション構成が実行可能となりうる。例えば、アプリケーションホスティングに関して、クライアントデータセンタにおける登録済リソースは、プロバイダネットワーク内に配置されたリソースに非常に類似したやり方で処理されうる。図3は、少なくともいくつかの実施形態による、プロバイダネットワークリソースと外部リソースの組合せに基づく多層アプリケーションの例示的構成を示す。示されるように、クライアント170は、プロバイダネットワークにより実施されるスタック構成サービスの制御ノード212へ、アプリケーションスタック構成スクリプト366を送信しうる。次にスタック構成サービス制御ノード212は、スクリプトに指示されたリソースに対し要求された構成命令388を送信することで、要求された構成を実行しうる。
描かれた実施例において、クライアントC1はデータセンタ240内に配置されたデータベースリソースと、プロバイダネットワーク101内に配置されたアプリケーションサーバリソース及びウェブサーバリソースを組み合わせて、単一の多層アプリケーションを構成することに決定している。従って、例えばデータベース管理システムのインスタンスが生成された2つのデータベースサーバホスト352A及び352Bは、プロバイダネットワークの拡張された制御プレーンに登録されている。データベースサーバホスト352はそれぞれ、例えばデータベースサーバホスト352A上に仮想化管理スタック354A及びデータベースサーバホスト352B上に仮想化管理スタック354Bというように、各自の仮想化管理スタック354を有しうる。描かれた実施形態において、登録済データベースサーバ上の仮想化管理スタックは、プロバイダネットワーク内のホストにインストールされた仮想化管理スタックの全ての構成要素を含みえないため、「縮小」仮想化管理スタックと称されうる。例えば、プロバイダネットワーク内のC1のIVN221において、アプリケーションサーバホスト322Aには完全な仮想化管理スタック314Aがインストール済みであり、そしてウェブサーバホスト312Aには完全な仮想化管理スタック324Aがインストール済みでありうる。いくつかの実施形態において、例えば、完全仮想化管理スタックには、クライアントデータセンタ内では必ずしも有用とは言えない様々なモジュールが含まれうる。例えば、プロバイダネットワークリソースに関して使用ベースの請求額を決定するのに使用され、そのためクライアントネットワークにおいては必要とされない課金関連モジュール、プロバイダネットワーク内でのみ実施される監視サービスと対話する必要のある監視モジュール等がある。一実装例において、クライアント側リソースが登録されたリソース制御動作のカテゴリを実行するのに必要となる最小モジュールセットのみがクライアント側リソースにおいて展開されうるため、クライアント側制御プレーンモジュールに必要なインストール場所及び実行時リソースが削減される。前述のように、少なくともいくつかの実施形態において、ハードウェア及び/またはソフトウェアベンダーは、クライアントデータセンタに配置されたリソース上に必要な制御プレーンモジュールをプリインストールするために、プロバイダネットワーク運営者と協働しうる。
スタック構成サービスノードによりスクリプト366が処理され、かつ対応する構成命令388が正しく完了した後に、多層アプリケーションはユーザからの作業要求にアクセス可能となりうる。アプリケーションに使用されるいくつかのリソースはクライアントデータセンタに配置され、一方他のリソースはプロバイダネットワークに配置されているという事実は、クライアントC1だけでなくユーザの観点からも明らかではない場合がある。描かれた構成におけるアプリケーションがしばらくの間実行された後、いくつかの実施形態において、クライアントC1は、例えばC1のクライアント側位置にあるデータベースインスタンスを休止させてプロバイダネットワークリソースにて再インスタンス化することによって、データベースインスタンスをプロバイダネットワークにも移行しうる。同様の手法が別のクライアント側リソースにも適用され、例えば別のアプリケーションに使用される仮想化コンピューティングインスタンスは、クライアントデータセンタにおける登録済ホストへ移動され、そして最終的にはプロバイダネットワークにおけるホストへ移動されうる。
登録対話
図4は、少なくともいくつかの実施形態による、クライアントと、クライアント指定リソースを制御動作の対象候補として登録するように構成された登録マネジャ180との間の対話の実施例を示す。示されるように、クライアント170は、登録マネジャ180に登録要求411を送信しうる。登録要求には、候補リソースリスト413並びに、候補リソースへの制御パス用に安全な接続を確立するために使用可能な接続性情報も示されうる。接続性情報には、例えば、クライアントが既に確立済みの隔離仮想ネットワーク(そのデータワークパスは制御パスとも共有可能でありうる)の指示、制御パスに使用可能なゲートウェイ、ルータ等の様々なネットワークデバイスの識別、接続に使用する特定プロトコル(例えばSSL対TLS対IPSec)、VPNを制御トラフィック用に構成するべきか否か等の情報が含まれうる。いくつかの実装例において、登録要求は、候補リソースごとに、該当リソースにおいて対応されるべき特定のプロバイダネットワークサービスも示しうる。例えば一部のリソースはコンピューティングインスタンス用の仮想ホストとして、別のリソースはデータベース管理サーバインスタンス用の仮想ホストとして、別のリソースはブロックストレージボリューム用の仮想ホストとして等、指定されうる。
描かれた実施形態において、登録マネジャ180は、登録要求411に応じて、登録候補における制御ソフトウェアモジュールの1以上の能力を検証する責務を担いうる。例えば、候補リソースが、コンピューティングインスタンスがこれから構成される仮想ホストを備える場合、登録マネジャは、当該ホストにインストールされた仮想化管理ソフトウェアスタックが所望する特性(例えば所望のオペレーティングシステムバージョン、所望のパフォーマンス能力等)を有するコンピューティングインスタンスを生成可能か否か判定する必要がありうる。同様に、リソースのうちの1つをSNMP等のプロトコルを使用してクライアント側プール化リソースの起動/停止を実行するように登録する場合(より詳しくは下記に説明)、登録マネジャ180は、そのようなリソースにおける制御モジュールがプロバイダネットワークプール化リソースサービスコントローラからの命令に応じてSNMPメッセージを送信可能であることを確証する必要がありうる。例えば、様々なプロバイダネットワークサービスのために登録済リソースにおいて対応されるべき制御動作のカテゴリに応じて、登録候補における様々な別の能力(例えばパフォーマンス能力、セキュリティ能力等)及び制御モジュールの機能が、異なる実施形態において検証される必要がありうる。
図4に示される実施形態において、登録マネジャ180は、能力検証マネジャ420等の仲介に検証要求415を送信しうる。今度は能力検証マネジャ420が、例えば候補リソースが制御命令に応じて所望する機能を実行可能か否か調べるために、候補リソース455において1以上のテスト462を行いうる。当該テスト462の結果は検証応答422の形で、登録マネジャ180へ提供されうる。検証応答が肯定的である場合、例えば候補リソース455が所望する機能を実行可能であると判明した場合、登録マネジャ180はクライアントに対し、候補リソースは正しく登録されたことを示す登録肯定応答470を送信しうる。いくつかの実施形態において、登録マネジャ180と候補リソース455間に仲介は必要なく、任意の検証関連動作が登録マネジャ180自体で行われうる。いくつかの実施形態において、リソース能力の検証は全く必要なく、登録マネジャ180はさらなる調査や分析を行うことなく、登録要求に指示された候補を登録しうる。
リソースが登録された後、クライアントは、プロバイダネットワークの制御インターフェイスを介して送信された制御動作要求を使用して、登録済リソースを管理しうる。例えば、コンピューティングインスタンスがクライアント側登録済リソースに構成され、ストレージボリュームがクライアント側ストレージデバイスに設定され、クライアント側ロードバランサのプールがアプリケーションに割当てられ作業量の変化に応じて起動または停止されうること等が挙げられる。いくつかの実施形態において、クライアント170はクライアント側リソースの登録を解除しうる(すなわち、プロバイダネットワーク制御インターフェイスを介して以前に登録されたリソースの制御能力を無効にする)。描かれた実施形態において、例えば、登録を解除するリソースのリスト483を特定する登録解除要求481を登録マネジャ180へ送信しうる。これに応じて、登録マネジャ180は特定されたリソースに対して設定された安全接続を閉じ、登録解除確認応答485をクライアントへ返信しうる。いくつかの実装例において、登録解除されたリソースにおいて1以上の制御モジュールがアンインストールされうる。前述のように、少なくともいくつかの実施形態において、登録マネジャ180は、複数のハードウェア及び/またはソフトウェア構成要素を備えうる。
プロバイダネットワークサービス制御プレーンの拡張方法
図5は、少なくともいくつかの実施形態による、プロバイダ定義制御インターフェイスを介してクライアントデータセンタにおけるリソース制御を実行するために行われうる動作態様を例示するフロー図である。要素501に示されるように、プロバイダネットワークは、様々なネットワークアクセス可能サービスが実施されるプロバイダネットワークリソース宛てにクライアントが制御動作要求を送信する(及び制御動作要求に対する応答を受信する)ことを可能にする、API、ウェブベースコンソール、コマンドラインツール、またはグラフィカルユーザインターフェイス等のプログラム的制御インターフェイスセットを実行しうる。
例えばプロバイダネットワークの制御プレーンをクライアントデータセンタへ論理的に拡張することで、プロバイダネットワークの制御インターフェイスを使用して管理する候補リソースをクライアントが指示することを可能にする登録インターフェイスセットも実行されうる(要素504)。クライアントは、リソースセットと、リソースを登録する1以上のサービスに対応付けられた制御動作のカテゴリとを指示するリソース登録要求を、例えば登録マネジャ180に対し登録インターフェイスを介して送信しうる。プロバイダネットワークの外部に配置された所定のリソースRを特定サービスSに登録することを指示するそのような登録要求が受信されうる(すなわち、サービスSに対応付けられ、プロバイダネットワークの制御インターフェイスを介して送信される制御動作要求は、Rに送信される命令をもたらす)(要素507)。仮想化コンピューティングサービスのコンピューティングインスタンスまたは分散データサービスのデータベースインスタンスが起動されうるホスト、ブロックレベルボリュームまたは他の種類のストレージオブジェクトが作成されうるストレージデバイス等、様々な異なる種類のリソースが異なる実施形態において登録候補になりうる。
描かれた実施形態において、登録要求に応じて登録マネジャは、リソースRがサービスSに関連する必要な機能を実行可能か検証しうる(要素510)。いくつかの事例において、例えば登録マネジャにより、または登録マネジャの代理を務める仲介により、機能性を検証するために候補リソースにおいてテストが行われうる。候補リソースが要件を満たすと判明した場合、当該候補リソースは要求通りに登録されうる。続いて、R宛ての制御動作要求が、プロバイダネットワークの制御インターフェイスを介して、例えばプロバイダネットワークの制御エンドポイント宛てのコンソールまたはAPI呼出しを介して受信されると、対応する制御命令がRへ送信されうる(要素514)。いくつかの実装例において、例えば全ての候補リソースが同一の能力を有し、いずれの所定のリソースが対応する機能に関して不明確な点がない場合、リソースRの能力の検証は必要とされえない。
図2の文脈において前述のように、いくつかの実施形態において、ネットワークリンクまたはパスは、データ用及び制御用に共有されうる。図6は、少なくともいくつかの実施形態による、制御動作に、クライアント構内リソースとプロバイダネットワークリソース間の予め設定されたデータ経路を使用するために行われうる動作態様を例示するフロー図である。要素601に示されるように、描かれた実施形態において、(a)クライアント用にプロバイダネットワークリソースを使用して構成された隔離仮想ネットワーク(IVN)と(b)プロバイダネットワークの外部のデータセンタにおけるあるクライアントリソースセットとの間に、専用データ経路が最初に確立されうる。例えば、データ経路は、外部リソース用に構成されたルータと、IVN用に構成されたプロバイダネットワークゲートウェイ(クライアント用に構成された仮想私設ゲートウェイ等)との間の1以上のネットワークリンクを使用して接続を確立することを伴いうる。
データ経路が設定された後のある時点に、クライアントはプロバイダネットワークの制御プレーン機能を外部データセンタへ拡張することを所望しうる。従って、クライアントは、外部データセンタに配置された1以上のリソースを、プロバイダネットワークの制御インターフェイス、エンドポイント、またはプロバイダネットワーク制御プレーンに対応付けられた他のリソースを介した制御対象として登録することを指示する登録要求を送信しうる(要素604)。描かれた実施形態において、プロバイダネットワークの管理または制御ノード(プロバイダネットワークの1以上のネットワークアクセス可能サービスに対応付けられ、かつプロバイダネットワーク内に配置された)と、外部データセンタ内にインストールされた1以上の制御モジュール(例えば登録済リソース自体に、または登録済リソースへネットワーク接続を介してリンクされたデバイス上にインストールされた)との間に、安全制御プレーン仮想接続(VPN接続等)が確立されうる。要素607に示されるように、データ経路に使用されていた少なくとも1つのネットワークリンクは、安全制御プレーン仮想接続に再利用されうる。接続を安全にするために、TLS、SSL、またはIPsec等の任意の適切なセキュアネットワークプロトコルが使用されうる。いくつかの実施形態において、図2に示されるように、プロバイダネットワーク側において、例えばサービスコントローラとゲートウェイ間に、プロキシが使用されうる。
リソースが登録され、かつ安全接続が確立された後、例えばクライアントが出した制御動作要求に応じて、登録済リソースに対する制御命令が、安全接続を使用してデータセンタ内の管理ソースから出されうる(要素610)。少なくともいくつかの実施形態において、データ及び制御目的でのネットワークリンク、経路、または他のネットワークリソースの共有には、図6に示されるように最初にデータ経路を設定することを必要としないことに留意されたい。代わりに、いくつかのそのような実施形態において、まず安全制御プレーン接続が確立され、しかもその後にデータ経路が確立されるという場合もありうる。少なくとも一実施形態において、データ及び制御トラフィック用に共有されるネットワークリンクまたはパスのために、IVNが構成される必要はない。様々な実施形態において、任意の所望する仕組みを使用して、データトラフィックが制御トラフィックから隔離されうる。
前述のように、少なくともいくつかの実施形態において、プロバイダネットワークはアプリケーションスタック構成サービスを実行し、そしてそのようなサービスは、少なくともいくつかの実施形態において、プロバイダネットワークリソース並びにクライアント側リソースの混合を使用するアプリケーションを構成するのに使用されうる。図7は、少なくともいくつかの実施形態による、プロバイダネットワークリソースと外部リソースの組合せを使用するアプリケーションを構成するために行われうる動作態様を例示するフロー図である。要素701に示されるように、スタック構成サービスの制御ノード等のプロバイダネットワークの制御プレーンリソースに対してアプリケーションスタック構成要求をクライアントが送信することを可能にするために、プログラム的インターフェイスセット(API、コマンドラインツール、ウェブベースインターフェイス、またはグラフィカルユーザインターフェイス等)が実行されうる。スタック構成要求には、例えば必要となるコンピューティングリソースの種類と数、構成要素のために設定されるべき物理ストレージリソースの量と種類等、多層アプリケーションの様々な構成要素の構成要件を記載するスクリプトまたはテンプレートが含まれうる。
所定のアプリケーションがプロバイダネットワークデータセンタまたはアベイラビリティコンテナ内の少なくとも1つのリソースと、プロバイダネットワークの外部に配置され(例えばクライアントデータセンタまたはクライアント定義アベイラビリティコンテナに配置され)、かつプロバイダネットワークの制御プレーンを介して制御命令を受信するように登録された少なくとも1つのリソースとを使用することを指示する特定のアプリケーションスタック構成要求が、プログラム的インターフェイスのうちの1つを介して受信されうる(要素704)。そのような要求に応じて、アプリケーションスタック構成サービスは、プロバイダネットワークの内部及び外部の適切なリソースに対し、対応する構成命令セットを送信しうる(要素707)。構成命令が完了した後、少なくともいくつかの実施形態において、アプリケーションの構成要素間の機能及び接続性が検証され(要素710)、そしてアプリケーションが正しく構成されたことをクライアントに知らせるために「アプリケーション構成完了」メッセージ等の表示が提供されうる。1以上の構成命令が失敗した場合、いくつかの実装例において、正しく構成されたアプリケーションスタックの任意の残余分は構成されず、クライアントは適宜通知される。
クライアントが本明細書に説明される制御プレーン拡張を使用して所定のアプリケーションを実行するクライアント側リソースを登録し、かつプロバイダネットワークの制御インターフェイスの使用をある程度体験した後、ある時点でクライアントは、プロバイダネットワークリソースの使用へ移行することを所望しうる。いくつかの事例において、プロバイダネットワークの様々なネットワークアクセス可能サービスにより対応される仮想化リソースをシームレスに一時停止及び再開を行う能力が、そのような移行に使用されうる。図8は、少なくともいくつかの実施形態による、プロバイダネットワークの外部にあるデータセンタにおける仮想化リソースを休止させ、プロバイダネットワーク内のリソースを再インスタンス化するために行われうる動作態様を例示するフロー図である。要素801に示されるように、登録済クライアント側リソースにおいて現在インスタンス化された仮想化リソースインスタンスRI1を休止する(例えば仮想化リソースインスタンスRI1の状態を保存、及び仮想化リソースインスタンスRI1の実行を一時停止する)要求が、プロバイダネットワーク制御プレーンエンドポイント(仮想化コンピューティングサービスに対応付けられた管理コンソール等)を介して受信されうる。その後、RI1の状態情報を保存しRI1の現在の実行を休止するために、例えば登録済リソースにおいて稼働している仮想化管理ソフトウェアスタックのモジュールに対し、1以上の制御命令が安全接続を介して出されうる(要素804)。
プロバイダネットワーク内のホストにおいて休止させたインスタンスRI1を再インスタンス化する要求が、エンドポイントにおいて受信されうる(要素807)。プロバイダネットワークのデータセンタに配置された仮想化ホストが特定され、そして保存された状態情報が仮想化ホストへ送信されうる(要素810)。状態情報を使用して、RI1はプロバイダネットワーク内の仮想化ホストにおいて起動されうる(要素813)。クライアントの観点からは、プロバイダネットワーク内のRI1を使用して現在実行されているアプリケーションは、外部データセンタ内にインスタンス化されたRI1を使用して以前実行されたアプリケーションと、ほとんど、または全く見分けのつかない状態で表示されうる。
プロバイダ定義制御インターフェイスを使用したプール化クライアント側リソースの管理
いくつかの実施形態において、プロバイダネットワークの制御プレーンは、外部データセンタにおけるインフラストラクチャへいくつかの論理的または階層的レベルに拡張されうる。例えば、1つのレベルでは、外部データセンタの個別の登録済リソース(仮想化ホストまたはストレージデバイス等)は、例えば個別のリソースにおける仮想化管理スタック内に含まれるモジュールを使用してプロバイダ定義インターフェイスから制御されうる。別のレベルでは、外部データセンタにおけるリソースのグループまたはプールの階層は、グループ化リソース自体に任意の追加モジュールをインストールすることを必ずしも要することなく、プロバイダネットワークインターフェイスと互換性のある制御モジュールがインストールされた単一のアプライアンスまたはデバイスから制御されうる。例えば、負荷分散サービスがプロバイダネットワークにより対応される一実施形態において、外部データセンタには、外部データセンタ内に配置されたアプライアンスを使用して管理可能であり、かつ安全な接続を介して負荷分散サービスに接続可能な仮想または物理ロードバランサのプールが含まれうる。負荷分散サービスのプログラム的インターフェイスを介して受信されたクライアント要求に応じて、プロバイダネットワーク内に配置されたサービスコントローラから命令が、安全接続を介してアプライアンスへ送信されうる。例えば、アプライアンスは、アプリケーションの作業量が増加すると所定のクライアント側アプリケーションに割当てられたロードバランサをより多く起動させ、作業量が減少するといくつかのロードバランサの停止または再割当てを行う等する。少なくともいくつかの実施形態において、プール化リソース自体をプロバイダネットワークの制御プレーン拡張に適応させる修正が行われる必要がないように、アプライアンスがプール化リソースに出す命令にはSNMP等の業界標準プロトコルが使用されうる。同様のアプライアンスまたはデバイスは、分散キャッシュサービス、分散データベースサービス、ネットワークアドレス発見サービス等の他の種類のプール化リソースサービス用にも設定されうる。いくつかの実施形態において、プロバイダネットワーク内に配置されたサービス管理構成要素(例えばサービスコントローラ)とアプライアンス間の通信は、JMX(ジャバ(商標)マネジメントエクステンションアーキテクチャ)等の業界標準に従ってフォーマットされうる。
図9は、少なくともいくつかの実施形態による、プロバイダネットワークサービス(当事例では負荷分散サービス)が外部データセンタにおけるリソースを含むリソースプールを管理するように構成されたシステムの実施例を示す。プロバイダネットワークデータセンタ990及び外部(例えばクライアント所有の)データセンタ992の2つのデータセンタにおけるエンティティが示される。描かれた実施形態において、プロバイダネットワーク内で、複数の仮想または物理ロードバランサ905(例えばロードバランサ905A、905B、905G)を含むロードバランサプール922Aは、負荷分散サービスのコントローラ902の援助を介して管理される。例えば、負荷分散型インスタンスプール920のコンピューティングインスタンスにおいて実行される特定のアプリケーションに対するクライアント作業量を、負荷分散基準またはポリシーのあるセットに従って分配するように割当てられたプール922Aの一部のロードバランサは、任意の時点で起動状態でありうる。従って、ロードバランサ905A及び905Bは、作業要求925A(クライアント170からデータプレーンインターフェイス919Aを介して受信された要求983Aに対応)を、負荷分散型インスタンスプール920の仮想化ホスト930A及び930Bにおいてインスタンス化されたコンピューティングインスタンス910A、910B、910C、910D間に分配するために起動している。ロードバランサ905G等のプール922Aの他のロードバランサは、休止状態でありうる(例えばアプリケーションに未割当のため)。個々のロードバランサ905を起動状態から休止状態へ、またはその逆に変更する、ロードバランサを異なるアプリケーションへ再割当てを行う、またはロードバランサプール922Aにおけるロードバランサの数を変更する等、ロードバランサプール922Aの様々な態様を管理するために、制御命令984Aがコントローラ902により出されうる。
図9に描かれた実施形態において、負荷分散サービスコントローラ902と、外部データセンタ992に配置されたアプライアンス975にインストールされた制御モジュール977間に、安全ネットワーク接続が確立されている。いくつかの事例において、例えば異なるアプライアンスが異なるサービスに必要とされうるように、アプライアンス975は単一のプロバイダネットワークサービス専用でありうる。少なくとも一実施形態において、クライアントは、あるサービスに対するアプライアンス975として機能するクライアントネットワーク内のホストを指示し、そして、例えばプロバイダネットワークから取得した、またはプロバイダネットワークのサービスコントローラにより送信されたパッケージを使用して、当該ホストに適切な制御モジュール977がインストールされうる。クライアントデータセンタは、あるクライアントアプリケーションセットに宛てられた作業量を分配するように構成可能な複数の仮想または物理クライアントロードバランサ(CLB)906を含む別のロードバランサプール922Bを備える。例えば、クライアント170は、ホスト926A及び926Bにおいてインスタンス化されたクライアント定義リソース(CDR)911A、911B、911R、911Sにより実行される1以上のアプリケーションに対する作業要求983Bを送信しうる。コントローラ902の指示に従ってアプライアンス975が出した命令984Bに応じて起動したロードバランサ906のサブセット(例えば906A及び906B)により、クライアント送信作業要求がCDR911に分配されうる(矢印925Bにより示されるように)。ロードバランサプール922Bには、CLB906Q等の任意の時点で休止または未割当て状態のクライアントロードバランサもいくつか含まれうる。
図9に描かれた実施形態において、クライアント170は、共通制御プレーンインターフェイスセット150を介して、負荷分散サービスに対する様々な種類の制御動作要求987(例えば管理対象とするクライアント側ロードバランサセットの指定要求、管理対象とするプロバイダネットワークロードバランサセットの指定要求)を送信しうる。負荷分散サービスコントローラ902は、クライアント動作要求987に対応する命令を生成しうる。クライアント要求987の特質及び目標に応じて、一部のコントローラ命令はプロバイダネットワーク内を対象とし(例えば命令984A)、一方他の命令は外部データセンタを対象としうる(例えばアプライアンス975にクライアント側ロードバランサプールの構成ロードバランサへ命令984Bを送信させるアプライアンス975宛ての命令981)。外部ネットワーク内で、ロードバランサ自体は、プロバイダネットワーク内のロードバランサが使用するのと同一の技術(または同じ種類のハードウェアまたはソフトウェア)を使用する必要がない可能性があることに留意されたい。従って、例えば所定のクライアントは、ベンダーV1が製造したハードウェアロードバランサ906を使用することを選び、一方プロバイダネットワークの負荷分散サービスでは、ベンダーV2により製造された、またはプロバイダネットワークにカスタムで実装された別の種類のロードバランサ905が使用されうる。プロバイダネットワーク内のロードバランサ905に対し出された命令の種類は、プロバイダネットワーク外のロードバランサ906に対し出された命令の種類とは異なり、例えば別のプロトコルが使用されうる、または別のポリシーセットが使用されうる。
少なくともいくつかの実施形態において、クライアントは、プロバイダネットワーク制御インターフェイスの1つのセットを介して制御対象とする個別のクライアント側リソースを登録し、並びにプロバイダネットワーク制御インターフェイスの別のセットを介して制御対象とするクライアント側リソースのプールも登録しうる。例えば、図9に示される実施形態において、一部または全てのCDR911は、それ自体がプロバイダネットワークの仮想化コンピューティングサービスに対応付けられたインターフェイスを介して制御されるように登録され、一方アプライアンス975及び/またはロードバランサ906は、プロバイダネットワークの負荷分散サービスに対応付けられたインターフェイスを介して制御されるように登録されうる。
異なる実施形態において、リソースの起動状態を(例えば所定のロードバランサ、キャッシュインスタンス、またはデータベースインスタンスが起動しているか休止しているか、起動している場合は、それが割当てられた特定クライアントまたはアプリケーションに対して)管理するために、プロバイダネットワーク内に設定された様々な種類のプール化リソースサービスに対し、それぞれのプログラム的制御インターフェイスセットが実行されうる。クライアントはそのようなインターフェイスを介して、プール化リソースサービスに対する構成要求を送信し、そしてクライアント要求はコントローラ902と同様のサービス管理リソースにより適切な命令に変換されうる。少なくともいくつかの実施形態において、クライアントはプログラム的インターフェイス(複数可)を使用して、特定のプール内のリソース起動状態を対応サービスにより管理する1以上のリソース(プロバイダネットワーク内またはプロバイダネットワーク外の位置のリソース)を指示するプール管理要求を送信しうる。例えば、一実装例において、プール管理要求は、プール識別子(例えば「アプリケーションA負荷分散プール」)、既にプール構成リソースである、またはプール構成リソースとなるクライアント側リソースセット(例えば「:LB3405A.ドメイン名.com(IPアドレスA.B.C.1)」、「:LB3405B.ドメイン名.com(IPアドレスA.B.C.5)」等)、そして任意で、リソース起動/停止基準、最大プールサイズ、最小プールサイズ、または任意の時点で起動させるプールリソースの数に対する最小最大制約といったパラメータを指示しうる。プロバイダネットワーク内に配置されたサービスのコントローラまたは同様の管理リソースから、プロバイダネットワークの外部にあるデータセンタにおけるサービス用にインスタンス化された制御モジュール(モジュール977等)へ安全ネットワーク接続が確立され、要するにサービスに関する制御プレーンが拡張される。
少なくともいくつかの実施形態において、クライアント作業要求983等の1以上の種類の作業要求に応えるために、プール管理要求において指示された少なくとも1つのリソース起動基準に従って、いくつかのリソース(クライアント側リソースまたはプロバイダネットワークリソース)が、制御モジュールを介して起動されうる。特定のサービスに応じて、異なる種類のリソース起動状態変更統御基準がクライアントにより特定されうる。例えば、負荷分散サービスの事例において、ある時間帯Tにおいて既存のロードバランサのCPU使用レベルがX%を越える場合、クライアントは新たなロードバランサの起動を所望し、そしてある時間帯において平均CPU使用レベルがy%を下回る場合、クライアントはロードバランサの停止を所望しうる。同様に、分散キャッシュサービスに関して、アプリケーションのキャッシュミス率が閾値を超える場合、またはキャッシュの補助ストレージデバイスのあるセットにおけるI/O作業量が閾値を超えて増加する場合、追加キャッシュが起動されうる、または既存のキャッシュインスタンスのサイズが増加されうる。他のサービス特定起動状態変更基準は、ネットワークアドレス発見サービス(このサービスのリソースはDNSノードと同様の機能を提供しうる)、自動リソース動員サービス(例えば測定または予想された作業量レベルにより、必要に応じてアプリケーションに対しコンピューティングインスタンスまたはストレージインスタンスを自動で追加するサービス)、分散データベースサービス(特定起動基準に基づいて新たなデータベースインスタンスがスピンアップされうるサービス)、または必要に応じて暗号鍵または証明書等のセキュリティアイテムを生成するように設計されたノードを有するサービス等、様々なプール化リソースサービスに使用されうる。少なくとも一実施形態において、プール構成リソースとして既に設定されたリソースに対する起動状態変更に加えて、または代わって、クライアントは、クライアントネットワークもしくはプロバイダネットワークの他のエンティティもしくはサービスからの追加ホストを要求することで、または既存のプール構成リソースを他のタスクに再割当てすることで特定プールを拡張または縮小する制御動作要求を出しうる。そのような実施形態において、プールサイズに調整を加える際、クライアント側制御モジュールは、最大または最小プールサイズ限度等の予め特定されたプールサイズ制約(もしあれば)に従う必要がありうる。
図10a及び10bはそれぞれ、少なくともいくつかの実施形態による、プロバイダネットワークから外部データセンタへ拡張する制御プレーンを有するプール化リソースサービスに使用可能な制御フローの2つの選択肢を例示する。図10a(及び図9にも)に示されるように、一手法において、プロバイダネットワークデータセンタ990におけるプール化リソースサービスコントローラ1002と、外部データセンタ951に配置された専用アプライアンス975における制御モジュール977との間に、安全接続(例えばSSL、TLS,IPsec、またはその他の好適なプロトコルを使用した安全接続)が確立されうる。図10aに描かれた実施形態において、共通ネットワークリンク1056は、データトラフィック及び制御トラフィック用に共有されうる。プロバイダネットワークリソースプール1018(例えば図2に示されたIVN221と同様のクライアント用に構築された隔離仮想ネットワーク内のリソースプール)とクライアント側リソースプール1028との間に、制御トラフィックが流れるネットワークリンク1056を少なくとも一部のデータトラフィックも流れるデータフローパス1051が確立されうる。例えば、制御トラフィックは、VPNを使用してデータトラフィックから隔離されうる。クライアントデータセンタ992内において、アプライアンス975は、例えばサービスコントローラ1002から命令を受信し、当該命令をクライアント側リソースプールの構成リソースにより理解可能な命令1066へ変換する等、サービスコントローラ1002とクライアント側リソースプール間の仲介として機能しうる。図10aに例示された手法において、追加モジュールがクライアント側リソースプール1028内のリソースにインストールまたは含まれる必要はない。
プロバイダネットワーク制御プレーンを拡張する別の手法が図10bに例示される。ここでは、制御モジュール977A及び977Bがそれぞれプールリソース1011A及び1011Bにインストールまたは構成され、その結果プール化リソースサービスコントローラ1002はアプライアンス975等の仲介を必要としえない。代りに、コントローラ1002は、プールリソースにおけるモジュール977A及び977Bと直接通信しうる。繰返しになるが、描かれた実施形態において、共通ネットワークリンク1056は図10aの事例のようにデータトラフィック及び制御トラフィックの両方に使用されうる。いくつかの実施形態において、所定のクライアントは同一の外部データセンタ内におけるいくつかのプール化リソースサービスそれぞれのプログラム的制御インターフェイスの使用を所望すると、図10aに示された手法が使用される場合、そのようなサービスはそれぞれ、クライアントデータセンタに配置された少なくとも1つの専用アプライアンスを必要としうる。アプライアンス費用を控えるために、いくつかの実施形態において、クライアントは、制御モジュール977をインストール/構成する経費は発生するが専用アプライアンスを必要としない図10bに示される代替的手法を選びうる。いくつかの実施形態において、単一のアプライアンスが、複数のプール化リソースサービスのために共有されうる。少なくとも一実施形態において、いくつかのプール化リソースが制御モジュール977を有し、かつアプライアンスが別のプール化リソースサブセットに使用される、図10a及び10bの両方の態様を組み合わせたハイブリッド手法が使用されうる。
リソースプール実施例
上述のように、少なくともいくつかの実施形態において、プロバイダネットワーク制御インターフェイスを使用して管理されるクライアント側プール内のいくつかのリソース自体は、別のプロバイダネットワーク制御インターフェイスセットを介して制御されるように登録可能でありうる。その結果、そのような実施形態において、クライアント側リソースプールはそれ自体、登録済及び未登録プール構成リソースのいくつかの組合せを備えうる。図11は、少なくともいくつかの実施形態による、プロバイダネットワークの外部にあるデータセンタにおけるリソースプール1028の種類の実施例を示す。示されるように、クライアント側リソースプール1028Aは、サービスS1に対応付けられた制御インターフェイスにそれぞれ登録され、かつS1に対応付けられた各自の制御モジュール1177をそれぞれが備えるリソース1152A及び1152Bを備え、従って、S1のプログラム的制御インターフェイスに従ってフォーマットされた命令を実行可能である。例えば、いくつかの実施形態において、リソース1152A及び1152Bはそれぞれ仮想ホストを備え、S1は仮想化コンピューティングサービスでありえ、そしてモジュール1177A及び1177Bはそれぞれ仮想化管理ソフトウェアスタックの要素を備えうる。プール化リソースサービスS2(負荷分散サービス等)に対応付けられた制御モジュール977は、制御/設定命令1156(起動/停止命令等)を登録済リソース1152A及び1152Bに送信するように構成されうる。
プール1028A等の一部のクライアント側リソースプールは全て登録済リソースで構成される一方、1028B等の他のクライアント側リソースプールは、サービスS1(またはプロバイダネットワークの任意の他のサービス)に対応付けられた制御モジュールを全く有さない1162A及び1162B等の未登録リソースを備えうる。そのような未登録リソースは、プロバイダネットワークサービスのプログラム的制御インターフェイスに従ってフォーマットされた命令を実施不可能でありうる。第3カテゴリのリソースプールは、登録済リソース(S1制御モジュール1177Kを有するリソース1152K等)と未登録リソース(リソース1162M等)の両方を備えうる。いくつかの事例において、所定のプール化リソースは、いくつかのサービスの制御モジュールを備え、これにより各サービスに対応付けられた制御命令を受信するように登録されうる。描かれた実施形態において、プール化リソースサービスS2に対応付けられた制御モジュール977は、登録済プール化リソース及び未登録プール化リソースの両方と同等に効果的に通信するように構成されうる。
図12は、少なくともいくつかの実施形態による、複数のアベイラビリティコンテナにわたりうるプール構成の実施例を示す。示されるように、描かれた実施形態において、プロバイダネットワーク101はプロバイダ定義アベイラビリティコンテナ(PDAC)102A及び102Bを備え、一方クライアントネットワーク151はクライアント定義アベイラビリティコンテナ152A、152Bを備える。アプライアンス975は、クライアント送信制御動作要求に応じて、プール化リソースへ対応する制御命令(リソース起動命令及び停止命令等)を送信するように構成されうる。描かれた実施形態において、いくつかの異なる種類のリソースプールは、アプライアンス975を介して設定及び管理されうる。例えば、プール1202A等のいくつかのプールは、クライアントネットワーク151内に配置されたリソース(CDAC152Aにおけるリソースセット1220A等)、並びにプロバイダネットワーク101内に配置されたリソース(PDAC102Bにおけるリソースセット110F等)を備えうる。1202B等のプールは、複数のPDAC内のリソース(例えばPDAC102A及び102Bにおけるリソースセット110B及び110G)を備えうる。プール1202Cは所定のPDACに限ったリソースセット110Cを備え、プール1202E及び1202FはCDAC152A及び152B内のリソースセット1220C及び1220Mをそれぞれ備えうる。プール1202D等のアプライアンス975を介して制御されるいくつかのリソースプールは、複数のCDACのそれぞれのリソースセット(CDAC152A及び152Bのそれぞれのリソースセット1220B及び1220L等)を備えうる。描かれた実施形態において、アプライアンスに追加された制御モジュールを介して管理されるプール化リソースは、上述のような制御トラフィックの安全接続が確立可能な限りアプライアンス自体の位置とは関係なく、任意の組合せのアベイラビリティコンテナまたはデータセンタに属しうる。
クライアント側プール化リソースの制御方法
図13は、少なくともいくつかの実施形態による、プロバイダネットワーク内で実施されるサービスを利用して、プロバイダネットワークの外部の位置にあるプール化リソースの管理を支援するために行われうる動作態様を例示するフロー図である。要素1301に示されるように、プール化リソースを管理するために(例えばプール内のリソースの起動/停止を管理、及び/またはプールに対しリソースを追加/削除するために)プロバイダネットワークに確立されたネットワークアクセス可能サービスに対し、クライアントが設定要求を送信できるようにするプログラムインターフェイスセットが実行されうる。そのようなサービスの実施例には、例えば、負荷分散サービス、分散キャッシュサービス、分散データベース、ネットワークアドレス発見サービス等が含まれうる。
特定プール内のリソース状態をサービスにより管理するリソースセットを指示するプール管理要求が受信されうる(要素1304)。描かれた実施形態において、少なくとも1つのリソースは、プロバイダネットワークの外部のデータセンタ(例えばクライアント所有データセンタ)に配置されうる。プール管理要求には、例えば追加リソースを起動させる時を判定するために記録するパフォーマンス測定の種類、及び状態変更のトリガーとして機能する測定の特定値等、リソースの起動状態を変更するのに使用される様々基準またはルールも含まれうる。
プロバイダネットワーク内に配置されたサービス制御ノード等のサービスの管理構成要素と、外部データセンタに配置された制御モジュール(例えばサービス専用のアプライアンスにおける、または1以上のプール化リソース上の制御モジュール)との間に、安全ネットワーク接続が確立されうる(要素1307)。接続を安全にするために、SSL、TLS、またはIPsec等の任意の適切なプロトコル(複数可)が使用されうる。いくつかの実施形態において、安全ネットワーク接続は、プロバイダネットワークと外部データセンタの間のデータトラフィックにも使用される1以上のリンク等のネットワークリソースを使用しうる。制御モジュールは、例えばプロバイダネットワーク運営者のパートナーベンダーにより、アプライアンス上または他のデバイス上にプリインストール済でありうる、または必要に応じてプロバイダネットワークからインストールパッケージを転送することによりインストールされうる。プール管理要求により指示された基準に基づいて、適切な設定命令(例えば起動命令)が、管理構成要素から制御モジュール(複数可)を介して、外部データセンタに配置されたプールの選ばれたリソースに対し送信されうる(要素1310)。いくつかの実施形態において、設定命令は、SNMP等の様々な標準ベースのプロトコルのいずれかに従ってフォーマットされうる。
図14は、少なくともいくつかの実施形態による、リソースプール内のリソースの起動状態を変更するために行われうる動作態様を例示するフロー図である。要素1401に示されるように、1以上のPDACにおけるプロバイダネットワークリソース及び/または1以上のCDACにおけるクライアント所有リソースを含むプール内のリソースを起動/停止するのに使用されるメトリックの情報源セットが特定されうる。そのような情報源には、例えば、リソース自体に配置されたパフォーマンスモニタまたはツール、アプリケーション動作及び応答性を遠隔で監視するツール、及び/または様々な種類のログが含まれうる。ある時間帯において、特定されたメトリックが情報源から収集されうる(要素1404)。
例えば1以上のリソースを起動、停止、または再割当てするべきか等、一部または全てのプールリソースの起動状態に対して任意の変更を行うべきか否かに関して、メトリックを使用して判定が行われうる。そのような起動状態変更が行われる場合(要素1407にて判定)、状態変更の対象となる特定のリソースが指定されうる(要素1410)。例えばプロバイダネットワークの外部のデバイスにインストールされた制御モジュールから対象リソースに対して、適切な設定命令が送信されうる(要素1413)。さらに、いくつかの実施形態において、次の時間間隔に監視されるリソースセットが修正されうる。それから次の時間帯の監視が開始され、要素1404以降に対応する動作が繰り返されうる。起動状態変更が必要であるとみなされなかった場合も(同様に要素1407にて判定)、要素1404以降に対応する動作は次の時間間隔において繰り返されうる。
様々な実施形態において、フロー図5、6、7、8、13、14に例示されていない他の動作が、プロバイダネットワークから外部ネットワークへの制御プレーン拡張を支援するために実行されうる、しかも示された動作の一部は実行されない、または異なる順序で、もしくは順次ではなく同時に実行されうることに留意されたい。
活用事例
プロバイダネットワークの外部のクライアント側位置に配置されたリソースを包含するためにプログラム的制御インターフェイスの及ぶ範囲を拡張する上述の技術は、いくつかのシナリオにおいて有益でありうる。例えば、クラウドベースのアプリケーションの人気が高くなっているが、クラウド操作に関する企業ITスタッフの経験不足に少なくとも一部起因して、数多くの企業アプリケーションはクライアント側リソースに制限され続けている。ITスタッフがプロバイダネットワークにより対応される制御インターフェイスを使いながら、自身のデータセンタ内の自身のアプリケーションを実行し続けることを可能にすることは、より完全なクラウドベースのアプリケーションを試してみることに対するスタッフの抵抗を打開するのに役立ちうる。アプリケーションスタック構成自動化サービス等、クライアントの要求に応じてプロバイダネットワーク内に時を経て構築された数々のサービスはまた、クライアント側アプリケーションのアプリケーション管理の複雑さも軽減しうる。リソースの配置位置に関係なくプール化リソースを透過的に管理する能力により、作業量レベルが増大するにつれてアプリケーションを効果的に拡大することが可能となりうる。アプリケーションをプロバイダネットワークリソースに転送する簡易化された技術(例えばクライアント側で稼働しているインスタンスを休止し、プロバイダネットワーク内に当該インスタンスを再インスタンス化すること)は、低いリスクでIT費用の削減もしうる。
例示的コンピュータシステム
少なくともいくつかの実施形態において、登録マネジャ、登録済及び未登録リソース、様々なプロバイダネットワークサービスに対応付けられたコントローラ及びアプライアンス等の管理ノード、及び制御パスとデータパスの他の要素を実行する技術を含む、本明細書で説明される1以上の技術の一部または全てを実施するサーバは、1以上のコンピュータアクセス可能媒体を含む、またはそのような媒体にアクセスするように構成された汎用コンピュータシステムを含みうる。図15は、そのような汎用コンピューティングデバイス3000を示す。例示された実施形態において、コンピューティングデバイス3000は、入出力(I/O)インターフェイス3030を介してシステムメモリ3020に接続された1以上のプロセッサ3010を含む。コンピューティングデバイス3000はさらに、I/Oインターフェイス3030に接続されたネットワークインターフェイス3040を含む。
様々な実施形態において、コンピューティングデバイス3000は、1つのプロセッサ3010を含むユニプロセッサシステム、またはいくつか(例えば2つ、4つ、8つもしくは別の好適な個数)のプロセッサ3010を含むマルチプロセッサシステムでありうる。プロセッサ3010は、命令を実行可能な任意の好適なプロセッサでありうる。例えば、様々な実施形態において、プロセッサ3010は、様々な命令セットアーキテクチャ(ISA)、例えばx86、PowerPC、SPARC、MIPS‐ISA、またはその他の好適なISA等のいずれかを実施する汎用または組込みプロセッサでありうる。マルチプロセッサシステムにおいて、それぞれのプロセッサ3010は一般に、必ずではないが、同一のISAを実施しうる。いくつかの実装例において、従来のプロセッサの代わりに、または従来のプロセッサに加えて、グラフィック処理ユニット(GPU)が使用されうる。
システムメモリ3020は、プロセッサ3010(複数可)がアクセス可能な命令とデータとを記憶するように構成されうる。様々な実施形態において、システムメモリ3020は、静的ランダムアクセスメモリ(SRAM)、同期式動的RAM(SDRAM)、不揮発性/フラッシュメモリ、またはその他の種類のメモリ等、任意の好適なメモリ技術を使用して実行されうる。例示された実施形態において、上述の方法、技術、及びデータ等、1以上の所望する機能を実行するプログラム命令及びデータは、システムメモリ3020内にコード3025及びデータ3026として記憶されることが示される。
一実施形態において、I/Oインターフェイス3030は、プロセッサ3010と、システムメモリ3020と、データオブジェクトパーティションの物理レプリカを記憶するのに使用される様々な種類の永続的及び/または揮発性ストレージデバイス等のネットワークインターフェイス3040もしくは他の周辺インターフェイスを含む任意の周辺デバイスとの間のI/Oトラフィックをデバイス内で調整するように構成されうる。いくつかの実施形態において、I/Oインターフェイス3030は、1つの構成要素(例えばシステムメモリ3020)からのデータ信号を、別の構成要素(例えばプロセッサ3010)が使用するのに好適な形式に変換するために必要な任意のプロトコル、タイミング、または他のデータ変換を行いうる。いくつかの実施形態において、I/Oインターフェイス3030には、例えば周辺構成要素相互接続(PCI)バス規格または汎用シリアルバス(USB)規格の変形等、様々な種類の周辺バスを介して取り付けられるデバイスのサポートが含まれうる。いくつかの実施形態において、I/Oインターフェイス3030の機能は、例えばノースブリッジとサウスブリッジといった2つ以上の別々の構成要素に分割されうる。また、いくつかの実施形態において、システムメモリ3020に対するインターフェイス等、一部または全てのI/Oインターフェイス3030の機能は、プロセッサ3010に直接取込まれうる。
ネットワークインターフェイス3040は、例えば図1から図14において例示されたように、コンピューティングデバイス3000と、他のコンピュータシステムまたはデバイス等、ネットワーク3050(複数可)に接続された他のデバイス3060との間においてデータ交換可能なように構成されうる。様々な実施形態において、ネットワークインターフェイス3040は、例えばイーサネット(登録商標)ネットワークの類の任意の好適な有線または無線汎用データネットワークを介した通信に対応しうる。さらに、ネットワークインターフェイス3040は、アナログ音声ネットワークまたはデジタルファイバ通信ネットワーク等の電気通信/電話ネットワークを介した、またはファイバチャネルSAN等のストレージエリアネットワークを介した、またはその他の好適な種類のネットワーク及び/またはプロトコルを介した、通信に対応しうる。
いくつかの実施形態において、システムメモリ3020は、対応方法及び装置の実施形態を実行するために、図1から図14において前述されたようなプログラム命令及びデータを記憶するように構成されたコンピュータアクセス可能媒体の一実施形態でありうる。しかしながら、別の実施形態において、プログラム命令及び/またはデータは、異なる種類のコンピュータアクセス可能媒体上で受信され、送信され、記憶されうる。一般に、コンピュータアクセス可能媒体には、例えば入I/Oインターフェイス3030を介してコンピューティングデバイス3000に接続されるディスクまたはDVD/CDといった磁気媒体または光学式媒体等の非一時的記憶媒体及びメモリ媒体が含まれうる。非一時的コンピュータアクセス可能記憶媒体には、コンピューティングデバイス3000のいくつかの実施形態にシステムメモリ3020または別の種類のメモリとして含まれうるRAM(例えばSDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM等の任意の揮発性または不揮発性媒体も含まれうる。さらに、コンピュータアクセス可能媒体には、送信媒体すなわち信号が含まれ、そのような信号にはネットワーク及び/または無線リンク等の通信媒体を介して伝達される電気、電磁、またはデジタル信号等があり、当該信号伝達はネットワークインターフェイス3040を介して実行されうる。図15に例示されるような多重コンピューティングデバイスの一部または全ては、様々な実施形態において説明された機能を実行するために使用されうる。例えば、様々な異なるデバイス及びサーバ上で稼働するソフトウェア構成要素は、協働して機能を提供しうる。いくつかの実施形態において、説明された機能の一部は、汎用コンピュータシステムを使用して実行されるのに加えて、または代わって、ストレージデバイス、ネットワークデバイス、または専用コンピュータシステムを使用して実行されうる。本明細書で使用される「コンピューティングデバイス」という用語は、少なくとも全てのこの種類のデバイスに言及し、かつこの種類のデバイスに限定されない。
結論
様々な実施形態はさらに、コンピュータアクセス可能媒体に関する上述の説明に従って実行される命令及び/またはデータの受信、送信、または記憶処理を含みうる。一般に、コンピュータアクセス可能媒体には、磁気媒体または光学式媒体等の記憶媒体もしくはメモリ媒体が含まれうる。例えば、ディスクまたはDVD/CD‐ROMと、RAM(例えばSDRAM、DDR、RDRAM、SRAM等)、ROM等の揮発性または不揮発性媒体と、並びに送信媒体すなわちネットワーク及び/または無線リンク等の通信媒体を介して伝達される電気、電磁、またはデジタル信号等の信号とが含まれうる。
本明細書で例示及び記述された様々な方法は、方法の例示的実施形態を表す。方法は、ソフトウェア、ハードウェア、またはこれらの組合せにおいて実行されうる。方法の順序は変更され、そして様々な要素が追加、並替、結合、省略、修正等されうる。
本開示の恩恵を受ける当業者に明らかであろう様々な修正及び変更を行うことが可能である。本明細書には全てのそのような修正及び変更を包含することを意図しており、従って上述の説明も制限的な意味ではなく例示的な意味としてみなされるものとする。
本開示の実施形態は以下の項を以って説明することができる。
(第1項)
1以上のコンピューティングデバイスを備えるシステムであって、コンピューティングデバイスは、
クライアントがプロバイダネットワークの1以上のネットワークアクセス可能サービスのリソースに対応付けられた制御動作を要求することを可能にする第1プログラム的インターフェイスセットを実行し、
クライアントがリソース登録要求を送信することを可能にする第2プログラム的インターフェイスセットを実行し、リソース登録要求は第1プログラム的インターフェイスセットを介して受信された制御動作要求のカテゴリの対象候補としてプロバイダネットワークの外部のデータセンタに配置された1以上のリソースを指示し、制御動作要求のカテゴリは1以上のネットワークアクセス可能サービスのうち少なくとも特定のネットワークアクセス可能サービスに対応付けられ、
プロバイダネットワークの外部のデータセンタに配置された特定のリソースを指示する特定リソース登録要求を、第2プログラム的インターフェイスセットを介して受信し、
特定リソースにインストールされた管理ソフトウェアスタックの1以上のモジュールの機能性を検証し、
特定リソースにおける1以上のモジュールのうちの特定モジュールと、プロバイダネットワークのデータセンタ内に配置された管理リソースとの間に安全ネットワーク接続を確立し、
第1プログラム的インターフェイスセットを介して受信された制御動作要求のカテゴリの特定制御動作要求に応じて、管理リソースから安全ネットワーク接続を介して特定リソースへ制御命令を送信する
ように構成される、システム。
(第2項)
特定ネットワークアクセス可能サービスは、仮想化コンピューティングサービス、ブロックレベルストレージサービス、クライアント運用のためのウェブサービスインターフェイスを実行するストレージサービス、データベースサービス、バッチ処理並列コンピューティングサービス、または負荷分散サービスのうちの1つを含む、第1項に記載のシステム。
(第3項)
プロバイダネットワークは、インフラストラクチャ構成要素セットと可用性プロファイルをそれぞれが有する第1アベイラビリティコンテナと第2アベイラビリティコンテナを含む複数のアベイラビリティコンテナを備え、特定リソース登録要求は、別のアベイラビリティコンテナとして、プロバイダネットワークの外部のデータセンタにおける特定のリソースを含むリソースの集合を指定する要求を含む、第1項に記載のシステム。
(第4項)
1以上のコンピューティングデバイスはさらに、
特定物理ネットワークリンクを備えるネットワークパスを介して特定リソースへ制御命令を送信し、
特定リソース宛てのデータ転送動作要求に応じて、特定物理ネットワークリンクを備える別のネットワークパスを使用して、特定リソースからデータを転送する
ように構成される、第1項に記載のシステム。
(第5項)
1以上のコンピューティングデバイスはさらに、
プロバイダネットワークと、プロバイダネットワークの外部のデータセンタとの間に、制御命令に関連したトラフィック専用の仮想私設ネットワーク(VPN)を確立する
ように構成される、第4項に記載のシステム。
(第6項)
1以上のコンピューティングデバイスにより、
クライアントがプロバイダネットワークの1以上のネットワークアクセス可能サービスのリソースに対応付けられた制御動作を要求することを可能にする第1プログラム的インターフェイスセットを実行し、
特定のクライアントが登録要求を送信することを可能にする第2プログラム的インターフェイスセットを実行し、登録要求は第1プログラム的インターフェイスセットを介して出される制御動作要求のカテゴリの対象候補としてプロバイダネットワークの外部のデータセンタに配置された1以上のリソースを指示し、制御動作要求のカテゴリは1以上のネットワークアクセス可能サービスのうち特定のネットワークアクセス可能サービスに関し、
プロバイダネットワークの外部のデータセンタに配置された1以上のリソースのうちの特定のリソースを指示する特定登録要求を、第2プログラム的インターフェイスのうちのプログラム的インターフェイスを介して受信し、
特定リソースと、プロバイダネットワークのデータセンタ内に配置された管理リソースとの間にネットワーク接続を確立し、
第1プログラム的インターフェイスセットを介して受信された制御動作要求のカテゴリの特定制御動作要求に応じて、管理リソースからネットワーク接続を介して特定リソースへ制御命令を送信する
ことを含む方法。
(第7項)
特定ネットワークアクセス可能サービスは、仮想化コンピューティングサービス、ブロックレベルストレージサービス、クライアント運用のためのウェブサービスインターフェイスを実行するオブジェクトストレージサービス、データベースサービス、バッチ処理並列コンピューティングサービス、または負荷分散サービスのうちの1つを含む、第6項に記載の方法。
(第8項)
プロバイダネットワークは、インフラストラクチャ構成要素セットと可用性プロファイルをそれぞれが有する第1アベイラビリティコンテナと第2アベイラビリティコンテナを含む複数のアベイラビリティコンテナを備え、特定制御化外部リソースグループ要求は、別のアベイラビリティコンテナとして、プロバイダネットワークの外部のデータセンタにおけるリソースの集合を指定する要求を含む、第6項に記載の方法。
(第9項)
1以上のコンピューティングデバイスにより、
特定物理ネットワークリンクを備えるネットワークパスを介して特定リソースへ制御命令を送信し、
特定リソース宛てのデータ転送動作要求の受信に応じて、特定物理ネットワークリンクを備える別のネットワークパスを使用して、特定リソースからデータを転送する
ことをさらに含む第6項に記載の方法。
(第10項)
1以上のコンピューティングデバイスにより、
プロバイダネットワークと、プロバイダネットワークの外部のデータセンタとの間に、制御命令に関連したトラフィック専用の仮想私設ネットワーク(VPN)を確立する
ことをさらに含む第9項に記載の方法。
(第11項)
1以上のコンピューティングデバイスにより、
特定クライアント用に確立された仮想私設ゲートウェイを使用してネットワーク接続を確立する
ことをさらに含む第6項に記載の方法。
(第12項)
1以上のコンピューティングデバイスにより、
IPSec(インターネットプロトコルセキュリティ)、TLS(トランスポート層セキュリティ)、またはSSL(セキュアソケットレイヤ)のうちの1つを使用してネットワーク接続を安全にする
ことをさらに含む第6項に記載の方法。
(第13項)
1以上のコンピューティングデバイスにより、
プロバイダネットワークの外部のデータセンタにおける送信先デバイスに対し、特定リソースにインストールするべきソフトウェアスタックの1以上のモジュールをインストール可能なバージョンで送信し、
管理リソースから1以上のモジュールのうちの特定モジュールへネットワーク接続を確立する
ことをさらに含む第6項に記載の方法。
(第14項)
1以上のコンピューティングデバイスにより、
特定クライアントから受信した1以上の制御動作要求に応じて、特定リソースにおける特定仮想化コンピューティングインスタンスの実行を休止し、
プロバイダネットワーク内の別のリソースにおいて、休止した仮想化コンピューティングインスタンスを再インスタンス化する
ことをさらに含む第6項に記載の方法。
(第15項)
1以上のコンピューティングデバイスにより、
プロバイダネットワーク内の構成サービスノードにおいて、特定クライアント用に構成する特定アプリケーションの第1構成要素及び第2構成要素の指示を含むアプリケーションスタック構成要求を受信し、第1構成要素はプロバイダネットワーク内に配置された第1リソースを利用し、第2構成要素はプロバイダネットワークの外部のデータセンタに配置された第2リソースを利用し、
アプリケーションスタック構成要求に従って、構成サービスノードから第1リソース及び第2リソースに対しそれぞれ構成命令を出す
ことをさらに含む第6項に記載の方法。
(第16項)
プログラム命令を記憶する非一時的コンピュータアクセス可能記憶媒体であって、プログラム命令が1以上のプロセッサ上で実行されると、
クライアントが登録要求を送信することを可能にする第1プログラム的インターフェイスセットを実行し、登録要求はプロバイダネットワークのネットワークアクセス可能サービスに対応付けられた別のプログラム的インターフェイスセットを介して出される制御動作要求のカテゴリの対象候補としてプロバイダネットワークの外部のデータセンタに配置された1以上のリソースを指示し、
特定登録要求において指示された特定リソースと、プロバイダネットワークのデータセンタ内に配置された管理リソースとの間にネットワーク接続を確立し、
別のプログラム的インターフェイスセットを介して受信された制御動作要求のカテゴリの特定制御動作要求に応じて、管理リソースからネットワーク接続を介して特定リソースへ制御命令を送信する、
非一時的コンピュータアクセス可能記憶媒体。
(第17項)
ネットワークアクセス可能サービスは、仮想化コンピューティングサービス、ブロックレベルストレージサービス、クライアント運用のためのウェブサービスインターフェイスを実行するオブジェクトストレージサービス、データベースサービス、バッチ処理並列コンピューティングサービス、または負荷分散サービスのうちの1つを含む、第16項に記載の非一時的コンピュータアクセス可能記憶媒体。
(第18項)
プロバイダネットワークは、インフラストラクチャ構成要素セットと可用性プロファイルをそれぞれが有する第1アベイラビリティコンテナと第2アベイラビリティコンテナを含む複数のアベイラビリティコンテナを備え、特定登録要求は、別のアベイラビリティコンテナとして、プロバイダネットワークの外部のデータセンタにおけるリソースの集合を指定する要求を含む、第16項に記載の非一時的コンピュータアクセス可能記憶媒体。
(第19項)
1以上のプロセッサ上で命令が実行されると、
プロバイダネットワークと、プロバイダネットワークの外部のデータセンタとの間に、制御命令に関連したトラフィック専用の仮想私設ネットワーク(VPN)を確立する、
第16項に記載の非一時的コンピュータアクセス可能記憶媒体。
(第20項)
特定リソースは、仮想化コンピューティングリソースホスト、ストレージアプライアンス、負荷分散アプライアンスのうち少なくとも1つを備える、
第16項に記載の非一時的コンピュータアクセス可能記憶媒体。

Claims (15)

  1. 1以上のコンピューティングデバイスを備えるシステムであって、前記コンピューティングデバイスは、
    クライアントがプロバイダネットワークの1以上のネットワークアクセス可能サービスのリソースに対応付けられた制御動作を要求することを可能にする第1プログラム的インターフェイスセットを実行し、
    クライアントがリソース登録要求を送信することを可能にする第2プログラム的インターフェイスセットを実行し、前記リソース登録要求は前記第1プログラム的インターフェイスセットを介して受信される制御動作要求のカテゴリの対象候補として前記プロバイダネットワークの外部のデータセンタに配置された1以上のリソースを指示し、制御動作要求の前記カテゴリは前記1以上のネットワークアクセス可能サービスのうち少なくとも特定のネットワークアクセス可能サービスに対応付けられ、
    前記プロバイダネットワークの外部の前記データセンタに配置された特定のリソースを指示する特定リソース登録要求を、前記第2プログラム的インターフェイスセットを介して受信し、
    前記特定リソースにインストールされた管理ソフトウェアスタックの1以上のモジュールの機能性を検証し、
    前記特定リソースにおける前記1以上のモジュールのうちの特定モジュールと、前記プロバイダネットワークのデータセンタ内に配置された管理リソースとの間に安全ネットワーク接続を確立し、
    前記第1プログラム的インターフェイスセットを介して受信された制御動作要求の前記カテゴリの特定制御動作要求に応じて、前記管理リソースから前記安全ネットワーク接続を介して前記特定リソースへ制御命令を送信する
    ように構成される、前記システム。
  2. 前記特定ネットワークアクセス可能サービスは、仮想化コンピューティングサービス、ブロックレベルストレージサービス、クライアント運用のためのウェブサービスインターフェイスを実行するストレージサービス、データベースサービス、バッチ処理並列コンピューティングサービス、または負荷分散サービスのうちの1つを含む、請求項1に記載のシステム。
  3. 前記プロバイダネットワークは、インフラストラクチャ構成要素セットと可用性プロファイルをそれぞれが有する第1アベイラビリティコンテナと第2アベイラビリティコンテナを含む複数のアベイラビリティコンテナを備え、前記特定リソース登録要求は、別のアベイラビリティコンテナとして、前記プロバイダネットワークの外部の前記データセンタにおける前記特定のリソースを含むリソースの集合を指定する要求を含む、請求項1に記載のシステム。
  4. 前記1以上のコンピューティングデバイスはさらに、
    特定物理ネットワークリンクを備えるネットワークパスを介して前記特定リソースへ前記制御命令を送信し、
    前記特定リソース宛てのデータ転送動作要求に応じて、前記特定物理ネットワークリンクを備える別のネットワークパスを使用して、前記特定リソースからデータを転送する
    ように構成される、請求項1に記載のシステム。
  5. 前記1以上のコンピューティングデバイスはさらに、
    前記プロバイダネットワークと、前記プロバイダネットワークの外部の前記データセンタとの間に、制御命令に関連したトラフィック専用の仮想私設ネットワーク(VPN)を確立する
    ように構成される、請求項4に記載のシステム。
  6. 1以上のコンピューティングデバイスにより、
    クライアントがプロバイダネットワークの1以上のネットワークアクセス可能サービスのリソースに対応付けられた制御動作を要求することを可能にする第1プログラム的インターフェイスセットを実行し、
    特定のクライアントが登録要求を送信することを可能にする第2プログラム的インターフェイスセットを実行し、前記登録要求は前記第1プログラム的インターフェイスセットを介して出される制御動作要求のカテゴリの対象候補として前記プロバイダネットワークの外部のデータセンタに配置された1以上のリソースを指示し、制御動作要求の前記カテゴリは前記1以上のネットワークアクセス可能サービスのうち特定のネットワークアクセス可能サービスに関し、
    前記プロバイダネットワークの外部の前記データセンタに配置された前記1以上のリソースのうちの特定のリソースを指示する特定登録要求を、前記第2プログラム的インターフェイスのうちのプログラム的インターフェイスを介して受信し、
    前記特定リソースと、前記プロバイダネットワークのデータセンタ内に配置された管理リソースとの間にネットワーク接続を確立し、
    前記第1プログラム的インターフェイスセットを介して受信された制御動作要求の前記カテゴリの特定制御動作要求に応じて、前記管理リソースから前記ネットワーク接続を介して前記特定リソースへ制御命令を送信する
    ことを含む方法。
  7. 前記特定ネットワークアクセス可能サービスは、仮想化コンピューティングサービス、ブロックレベルストレージサービス、クライアント運用のためのウェブサービスインターフェイスを実行するオブジェクトストレージサービス、データベースサービス、バッチ処理並列コンピューティングサービス、または負荷分散サービスのうちの1つを含む、請求項6に記載の方法。
  8. 前記プロバイダネットワークは、インフラストラクチャ構成要素セットと可用性プロファイルをそれぞれが有する第1アベイラビリティコンテナと第2アベイラビリティコンテナを含む複数のアベイラビリティコンテナを備え、前記特定制御化外部リソースグループ要求は、別のアベイラビリティコンテナとして、前記プロバイダネットワークの外部の前記データセンタにおけるリソースの集合を指定する要求を含む、請求項6に記載の方法。
  9. 前記1以上のコンピューティングデバイスにより、
    特定物理ネットワークリンクを備えるネットワークパスを介して前記特定リソースへ前記制御命令を送信し、
    前記特定リソース宛てのデータ転送動作要求の受信に応じて、前記特定物理ネットワークリンクを備える別のネットワークパスを使用して、前記特定リソースからデータを転送する
    ことをさらに含む請求項6に記載の方法。
  10. 前記1以上のコンピューティングデバイスにより、
    前記プロバイダネットワークと、前記プロバイダネットワークの外部の前記データセンタとの間に、制御命令に関連したトラフィック専用の仮想私設ネットワーク(VPN)を確立する
    ことをさらに含む請求項9に記載の方法。
  11. 前記1以上のコンピューティングデバイスにより、
    前記特定クライアント用に確立された仮想私設ゲートウェイを使用して前記ネットワーク接続を確立する
    ことをさらに含む請求項6に記載の方法。
  12. 前記1以上のコンピューティングデバイスにより、
    IPSec(インターネットプロトコルセキュリティ)、TLS(トランスポート層セキュリティ)、またはSSL(セキュアソケットレイヤ)のうちの1つを使用して前記ネットワーク接続を安全にする
    ことをさらに含む請求項6に記載の方法。
  13. 前記1以上のコンピューティングデバイスにより、
    前記プロバイダネットワークの外部の前記データセンタにおける送信先デバイスに対し、前記特定リソースにインストールするべきソフトウェアスタックの1以上のモジュールをインストール可能なバージョンで送信し、
    前記管理リソースから前記1以上のモジュールのうちの特定モジュールへ前記ネットワーク接続を確立する
    ことをさらに含む請求項6に記載の方法。
  14. 前記1以上のコンピューティングデバイスにより、
    前記特定クライアントから受信した1以上の制御動作要求に応じて、前記特定リソースにおける特定仮想化コンピューティングインスタンスの実行を休止し、
    前記プロバイダネットワーク内の別のリソースにおいて、休止した前記仮想化コンピューティングインスタンスを再インスタンス化する
    ことをさらに含む請求項6に記載の方法。
  15. 前記1以上のコンピューティングデバイスにより、
    前記プロバイダネットワーク内の構成サービスノードにおいて、前記特定クライアント用に構成する特定アプリケーションの第1構成要素及び第2構成要素の指示を含むアプリケーションスタック構成要求を受信し、前記第1構成要素は前記プロバイダネットワーク内に配置された第1リソースを利用し、前記第2構成要素は前記プロバイダネットワークの外部の前記データセンタに配置された第2リソースを利用し、
    前記アプリケーションスタック構成要求に従って、前記構成サービスノードから前記第1リソース及び前記第2リソースに対しそれぞれ構成命令を出す
    ことをさらに含む請求項6に記載の方法。
JP2016544056A 2013-09-23 2014-09-23 プロバイダ定義インターフェイスを介したクライアント構内リソース制御 Active JP6224846B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/034,325 2013-09-23
US14/034,325 US9686121B2 (en) 2013-09-23 2013-09-23 Client-premise resource control via provider-defined interfaces
PCT/US2014/056915 WO2015042559A1 (en) 2013-09-23 2014-09-23 Client-premise resource control via provider-defined interfaces

Publications (2)

Publication Number Publication Date
JP2016536721A true JP2016536721A (ja) 2016-11-24
JP6224846B2 JP6224846B2 (ja) 2017-11-01

Family

ID=52689525

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016544056A Active JP6224846B2 (ja) 2013-09-23 2014-09-23 プロバイダ定義インターフェイスを介したクライアント構内リソース制御

Country Status (6)

Country Link
US (1) US9686121B2 (ja)
EP (1) EP3049927B1 (ja)
JP (1) JP6224846B2 (ja)
CN (1) CN105579965B (ja)
CA (1) CA2924655C (ja)
WO (1) WO2015042559A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022507398A (ja) * 2018-11-20 2022-01-18 アマゾン・テクノロジーズ・インコーポレーテッド プロバイダネットワークサービス拡張
JP2022023769A (ja) * 2020-07-20 2022-02-08 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド サーバリソースを割り当てるための方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
US11469964B2 (en) 2018-11-20 2022-10-11 Amazon Technologies, Inc. Extension resource groups of provider network services
US11563799B2 (en) 2019-09-24 2023-01-24 Amazon Technologies, Inc. Peripheral device enabling virtualized computing service extensions
US11569997B1 (en) 2020-03-09 2023-01-31 Amazon Technologies, Inc. Security mechanisms for data plane extensions of provider network services

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9219647B2 (en) * 2013-03-15 2015-12-22 Eyecam, LLC Modular device and data management system and gateway for a communications network
US10360071B1 (en) * 2014-04-11 2019-07-23 Amazon Technologies, Inc. Computing resource market
US9699251B2 (en) * 2014-05-13 2017-07-04 Nutanix, Inc. Mechanism for providing load balancing to an external node utilizing a clustered environment for storage management
US20170006082A1 (en) * 2014-06-03 2017-01-05 Nimit Shishodia Software Defined Networking (SDN) Orchestration by Abstraction
DE102014108483A1 (de) * 2014-06-17 2015-12-17 Datenlotsen Informationssysteme Gmbh Client-Server-System und Endgerät
US9122562B1 (en) * 2014-06-19 2015-09-01 Amazon Technologies, Inc. Software container recommendation service
US10581755B2 (en) 2015-04-03 2020-03-03 Nicira, Inc. Provisioning network services in a software defined data center
WO2016167762A1 (en) * 2015-04-15 2016-10-20 Hitachi, Ltd. Method and apparatus for volume type change
US10412020B2 (en) 2015-04-30 2019-09-10 Amazon Technologies, Inc. Background processes in update load balancers of an auto scaling group
US10038640B2 (en) 2015-04-30 2018-07-31 Amazon Technologies, Inc. Managing state for updates to load balancers of an auto scaling group
US10341426B2 (en) * 2015-04-30 2019-07-02 Amazon Technologies, Inc. Managing load balancers associated with auto-scaling groups
US9825851B2 (en) 2015-06-27 2017-11-21 Nicira, Inc. Distributing routing information in a multi-datacenter environment
US10067802B2 (en) 2015-07-02 2018-09-04 Red Hat, Inc. Hybrid security batch processing in a cloud environment
CN106375102B (zh) * 2015-07-22 2019-08-27 华为技术有限公司 一种服务注册方法、使用方法及相关装置
US9959146B2 (en) * 2015-10-20 2018-05-01 Intel Corporation Computing resources workload scheduling
TW201717011A (zh) * 2015-11-05 2017-05-16 財團法人資訊工業策進會 實體機器管理裝置及實體機器管理方法
WO2017197572A1 (zh) * 2016-05-17 2017-11-23 华为技术有限公司 应用管理方法及管理单元
CN107506314B (zh) * 2016-06-14 2021-05-28 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和装置
CN107517119B (zh) * 2016-06-17 2021-02-26 阿里巴巴集团控股有限公司 Vpc环境下的虚拟网络检测方法以及装置
US10212031B2 (en) * 2016-06-22 2019-02-19 Amazon Technologies, Inc. Intelligent configuration discovery techniques
US10742498B2 (en) 2016-06-22 2020-08-11 Amazon Technologies, Inc. Application migration system
US10482249B2 (en) * 2016-08-09 2019-11-19 Nicira, Inc. Excluding stressed machines from load balancing of distributed applications
US9756061B1 (en) * 2016-11-18 2017-09-05 Extrahop Networks, Inc. Detecting attacks using passive network monitoring
US10592280B2 (en) * 2016-11-23 2020-03-17 Amazon Technologies, Inc. Resource allocation and scheduling for batch jobs
US20180150234A1 (en) * 2016-11-28 2018-05-31 Hewlett Packard Enterprise Development Lp Cloud volume storage
US10560431B1 (en) 2016-12-05 2020-02-11 Amazon Technologies, Inc. Virtual private gateway for encrypted communication over dedicated physical link
US10798179B2 (en) * 2017-02-01 2020-10-06 Amazon Technologies, Inc. Service endpoint interconnect in a virtual private gateway
US10476673B2 (en) 2017-03-22 2019-11-12 Extrahop Networks, Inc. Managing session secrets for continuous packet capture systems
EP3616367B1 (de) * 2017-06-30 2021-03-31 Siemens Aktiengesellschaft Verfahren zum betrieb eines mehrere kommunikationsgeräte umfassenden kommunikationsnetzes eines industriellen automatisierungssystems und steuerungseinheit
US11249808B2 (en) * 2017-08-22 2022-02-15 Intel Corporation Connecting accelerator resources using a switch
CN111357257B (zh) * 2017-08-31 2022-06-14 格林伊登美国控股有限责任公司 用于对媒体服务器实例进行负载均衡的系统和方法
US9967292B1 (en) 2017-10-25 2018-05-08 Extrahop Networks, Inc. Inline secret sharing
US11231958B2 (en) 2018-01-22 2022-01-25 Siemens Aktiengesellschaft Method and control system for controlling and/or monitoring devices
US10389574B1 (en) 2018-02-07 2019-08-20 Extrahop Networks, Inc. Ranking alerts based on network monitoring
US10038611B1 (en) 2018-02-08 2018-07-31 Extrahop Networks, Inc. Personalization of alerts based on network monitoring
US10270794B1 (en) 2018-02-09 2019-04-23 Extrahop Networks, Inc. Detection of denial of service attacks
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US10594718B1 (en) 2018-08-21 2020-03-17 Extrahop Networks, Inc. Managing incident response operations based on monitored network activity
US11075999B2 (en) * 2018-08-28 2021-07-27 Citrix Systems, Inc. Accessing resources in a remote access or cloud-based network environment
US11126457B2 (en) * 2019-03-08 2021-09-21 Xiamen Wangsu Co., Ltd. Method for batch processing nginx network isolation spaces and nginx server
US11372663B2 (en) 2019-03-28 2022-06-28 Amazon Technologies, Inc. Compute platform recommendations for new workloads in a distributed computing environment
US11068312B2 (en) 2019-03-28 2021-07-20 Amazon Technologies, Inc. Optimizing hardware platform utilization for heterogeneous workloads in a distributed computing environment
US11360795B2 (en) * 2019-03-28 2022-06-14 Amazon Technologies, Inc. Determining configuration parameters to provide recommendations for optimizing workloads
US11385920B2 (en) 2019-03-28 2022-07-12 Amazon Technologies, Inc. Compute platform optimization over the life of a workload in a distributed computing environment
US11128696B2 (en) 2019-03-28 2021-09-21 Amazon Technologies, Inc. Compute platform optimization across heterogeneous hardware in a distributed computing environment
US10965702B2 (en) 2019-05-28 2021-03-30 Extrahop Networks, Inc. Detecting injection attacks using passive network monitoring
US11659058B2 (en) * 2019-06-28 2023-05-23 Amazon Technologies, Inc. Provider network connectivity management for provider network substrate extensions
EP3987397A1 (en) * 2019-06-28 2022-04-27 Amazon Technologies Inc. Provider network connectivity management for provider network substrate extensions
US11431497B1 (en) 2019-06-28 2022-08-30 Amazon Technologies, Inc. Storage expansion devices for provider network substrate extensions
US11374789B2 (en) 2019-06-28 2022-06-28 Amazon Technologies, Inc. Provider network connectivity to provider network substrate extensions
US11411771B1 (en) 2019-06-28 2022-08-09 Amazon Technologies, Inc. Networking in provider network substrate extensions
US11044118B1 (en) 2019-06-28 2021-06-22 Amazon Technologies, Inc. Data caching in provider network substrate extensions
US11165814B2 (en) 2019-07-29 2021-11-02 Extrahop Networks, Inc. Modifying triage information based on network monitoring
US10742530B1 (en) 2019-08-05 2020-08-11 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US11388072B2 (en) 2019-08-05 2022-07-12 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742677B1 (en) 2019-09-04 2020-08-11 Extrahop Networks, Inc. Automatic determination of user roles and asset types based on network monitoring
US11188546B2 (en) * 2019-09-24 2021-11-30 International Business Machines Corporation Pseudo real time communication system
US11620165B2 (en) 2019-10-09 2023-04-04 Bank Of America Corporation System for automated resource transfer processing using a distributed server network
US11709698B2 (en) 2019-11-04 2023-07-25 Vmware, Inc. Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments
US11640315B2 (en) * 2019-11-04 2023-05-02 Vmware, Inc. Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments
US11743325B1 (en) * 2019-11-29 2023-08-29 Amazon Technologies, Inc. Centralized load balancing of resources in cloud edge locations embedded in telecommunications networks
US11159344B1 (en) * 2019-11-29 2021-10-26 Amazon Technologies, Inc. Connectivity of cloud edge locations to communications service provider networks
US11625327B2 (en) * 2019-12-10 2023-04-11 EMC IP Holding Company LLC Cache memory management
US11165823B2 (en) 2019-12-17 2021-11-02 Extrahop Networks, Inc. Automated preemptive polymorphic deception
CN111190734B (zh) * 2019-12-30 2023-08-18 杭州涂鸦信息技术有限公司 一种微服务路由方法和系统及可读存储介质
US11777793B2 (en) 2020-04-06 2023-10-03 Vmware, Inc. Location criteria for security groups
US11088916B1 (en) 2020-04-06 2021-08-10 Vmware, Inc. Parsing logical network definition for different sites
US11375033B1 (en) * 2020-05-06 2022-06-28 Amazon Technologies, Inc. Automated tuning of network intermediary devices
US11561832B2 (en) * 2020-05-18 2023-01-24 Bank Of America Corporation Systems and methods for maintaining pooled time-dependent resources in a multilateral distributed register
US11219034B1 (en) * 2020-08-24 2022-01-04 Amazon Technologies, Inc. Distributed network connectivity monitoring of provider network edge location resources from cellular networks
US11337227B2 (en) 2020-08-24 2022-05-17 Amazon Technologies, Inc. Distributed network connectivity monitoring of provider network edge location resources from cellular networks
US11463466B2 (en) 2020-09-23 2022-10-04 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11310256B2 (en) 2020-09-23 2022-04-19 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
CN115529268B (zh) * 2021-06-24 2024-01-19 瞻博网络公司 处理配置网络设备的指令
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
CN114237704B (zh) * 2021-11-15 2023-06-09 贵州大学 一种spring-cloud-alibaba nacos框架集成istio的方法
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090271472A1 (en) * 2008-04-28 2009-10-29 Scheifler Robert W System and Method for Programmatic Management of Distributed Computing Resources
JP2011186637A (ja) * 2010-03-05 2011-09-22 Ntt Data Corp リソース連携システム及びリソース連携方法
JP2013500518A (ja) * 2009-07-22 2013-01-07 アマゾン テクノロジーズ インコーポレイテッド コンピュータネットワークの動的な移行

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL117133A (en) * 1996-02-14 1999-07-14 Olivr Corp Ltd Method and system for providing on-line virtual reality movies
US5995947A (en) * 1997-09-12 1999-11-30 Imx Mortgage Exchange Interactive mortgage and loan information and real-time trading system
WO2000030346A1 (en) 1998-11-12 2000-05-25 General Instrument Corporation Application programming interface (api) for accessing and managing resources in a digital television receiver
JP2001160828A (ja) * 1999-12-03 2001-06-12 Matsushita Electric Ind Co Ltd セキュリティ・ゲートウェイ装置におけるvpn通信方法
WO2001040903A2 (en) * 1999-12-06 2001-06-07 Warp Solutions, Inc. System and method for enhancing operation of a web server cluster
US7318107B1 (en) * 2000-06-30 2008-01-08 Intel Corporation System and method for automatic stream fail-over
US7272653B2 (en) * 2000-09-28 2007-09-18 International Business Machines Corporation System and method for implementing a clustered load balancer
US7039916B2 (en) * 2001-09-24 2006-05-02 Intel Corporation Data delivery system for adjusting assignment of connection requests to nodes based upon the tracked duration
US7986625B2 (en) * 2002-12-10 2011-07-26 International Business Machines Corporation Resource-aware system, method and program product for managing request traffic based on a management policy
US7373363B2 (en) * 2003-07-03 2008-05-13 Hewlett-Packard Development Company, L.P. Method of managing modification of configuration states of resources in a dynamic data center
US7532642B1 (en) * 2004-03-11 2009-05-12 Sun Microsystems, Inc. Methods and apparatus supporting adaptive bandwidth management
US7584274B2 (en) * 2004-06-15 2009-09-01 International Business Machines Corporation Coordinating use of independent external resources within requesting grid environments
US20060095398A1 (en) * 2004-11-04 2006-05-04 Vasudev Bhaskaran Automatic defocussing of displayed multimedia information on client by monitoring static and dynamic properties of the client
US7502850B2 (en) * 2005-01-06 2009-03-10 International Business Machines Corporation Verifying resource functionality before use by a grid job submitted to a grid environment
US7702947B2 (en) * 2005-11-29 2010-04-20 Bea Systems, Inc. System and method for enabling site failover in an application server environment
US7873074B1 (en) * 2006-06-01 2011-01-18 Avaya Inc. Adaptive selection of bandwidth parameters to meet a service provider pricing model
US8223655B2 (en) * 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for provisioning resources of a packet network based on collected network performance information
US8064391B2 (en) * 2006-08-22 2011-11-22 Embarq Holdings Company, Llc System and method for monitoring and optimizing network performance to a wireless device
GB2443229B (en) * 2006-08-23 2009-10-14 Cramer Systems Ltd Capacity management for data networks
US10845399B2 (en) * 2007-04-03 2020-11-24 Electro Industries/Gaugetech System and method for performing data transfers in an intelligent electronic device
US8250215B2 (en) 2008-08-12 2012-08-21 Sap Ag Method and system for intelligently leveraging cloud computing resources
US20100064033A1 (en) 2008-09-08 2010-03-11 Franco Travostino Integration of an internal cloud infrastructure with existing enterprise services and systems
US8271536B2 (en) 2008-11-14 2012-09-18 Microsoft Corporation Multi-tenancy using suite of authorization manager components
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8306862B2 (en) * 2009-07-31 2012-11-06 Sap Ag Creating purchase orders with mobile devices
US8886788B2 (en) 2009-08-31 2014-11-11 Accenture Global Services Limited Enterprise-level management, control and information aspects of cloud console
US8271653B2 (en) 2009-08-31 2012-09-18 Red Hat, Inc. Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds
US8122282B2 (en) 2010-03-12 2012-02-21 International Business Machines Corporation Starting virtual instances within a cloud computing environment
US8341269B2 (en) 2010-03-19 2012-12-25 International Business Machines Corporation Configuring cloud resources
US8584187B2 (en) * 2010-03-26 2013-11-12 Verizon Patent And Licensing Inc. Bandwidth management
US8972551B1 (en) * 2010-04-27 2015-03-03 Amazon Technologies, Inc. Prioritizing service requests
US8260840B1 (en) * 2010-06-28 2012-09-04 Amazon Technologies, Inc. Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
WO2012011070A1 (en) * 2010-07-21 2012-01-26 Seculert Ltd. Network protection system and method
US8775626B2 (en) 2010-09-17 2014-07-08 Microsoft Corporation Using templates to configure cloud resources
US9235442B2 (en) 2010-10-05 2016-01-12 Accenture Global Services Limited System and method for cloud enterprise services
US8516284B2 (en) * 2010-11-04 2013-08-20 International Business Machines Corporation Saving power by placing inactive computing devices in optimized configuration corresponding to a specific constraint
US10678602B2 (en) 2011-02-09 2020-06-09 Cisco Technology, Inc. Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures
US20120226789A1 (en) 2011-03-03 2012-09-06 Cisco Technology, Inc. Hiearchical Advertisement of Data Center Capabilities and Resources
US8261295B1 (en) 2011-03-16 2012-09-04 Google Inc. High-level language for specifying configurations of cloud-based deployments
US8843633B2 (en) * 2011-03-23 2014-09-23 Bmc Software, Inc. Cloud-based resource identification and allocation
US8583799B2 (en) * 2011-05-09 2013-11-12 Oracle International Corporation Dynamic cost model based resource scheduling in distributed compute farms
US20140006482A1 (en) * 2012-07-02 2014-01-02 Vmware, Inc. Method and system for providing inter-cloud services
US20130074091A1 (en) * 2011-09-20 2013-03-21 Cloudbyte, Inc. Techniques for ensuring resources achieve performance metrics in a multi-tenant storage controller
US8918793B2 (en) * 2011-12-07 2014-12-23 Sap Se Resolving resource contentions
US20130159497A1 (en) * 2011-12-16 2013-06-20 Microsoft Corporation Heuristic-Based Rejection of Computing Resource Requests
US9154589B1 (en) * 2012-06-28 2015-10-06 Amazon Technologies, Inc. Bandwidth-optimized cloud resource placement service
US9032077B1 (en) * 2012-06-28 2015-05-12 Amazon Technologies, Inc. Client-allocatable bandwidth pools
US10057377B2 (en) * 2012-06-29 2018-08-21 Vmware, Inc. Dynamic resolution of servers in a distributed environment
US10025638B2 (en) * 2012-07-02 2018-07-17 Vmware, Inc. Multiple-cloud-computing-facility aggregation
US9792338B2 (en) * 2012-09-07 2017-10-17 Oracle International Corporation Role assignments in a cloud infrastructure
US10104141B2 (en) * 2012-12-31 2018-10-16 DISH Technologies L.L.C. Methods and apparatus for proactive multi-path routing
US10250655B2 (en) * 2012-12-31 2019-04-02 DISH Technologies L.L.C. Scheduling segment data delivery in an adaptive media stream to avoid stalling
US9794107B2 (en) * 2013-02-06 2017-10-17 Alcatel Lucent Method and apparatus for providing migration of cloud components across address domains
US9215226B2 (en) * 2013-07-24 2015-12-15 Adobe Systems Incorporated Dynamically mapping users to groups
US9537787B2 (en) * 2013-08-05 2017-01-03 International Business Machines Corporation Dynamically balancing resource requirements for clients with unpredictable loads
US9444714B2 (en) * 2014-08-07 2016-09-13 Microsoft Technology Licensing, Llc Estimating bandwidth in a network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090271472A1 (en) * 2008-04-28 2009-10-29 Scheifler Robert W System and Method for Programmatic Management of Distributed Computing Resources
JP2013500518A (ja) * 2009-07-22 2013-01-07 アマゾン テクノロジーズ インコーポレイテッド コンピュータネットワークの動的な移行
JP2011186637A (ja) * 2010-03-05 2011-09-22 Ntt Data Corp リソース連携システム及びリソース連携方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022507398A (ja) * 2018-11-20 2022-01-18 アマゾン・テクノロジーズ・インコーポレーテッド プロバイダネットワークサービス拡張
US11469964B2 (en) 2018-11-20 2022-10-11 Amazon Technologies, Inc. Extension resource groups of provider network services
JP7212158B2 (ja) 2018-11-20 2023-01-24 アマゾン・テクノロジーズ・インコーポレーテッド プロバイダネットワークサービス拡張
US11563799B2 (en) 2019-09-24 2023-01-24 Amazon Technologies, Inc. Peripheral device enabling virtualized computing service extensions
US11569997B1 (en) 2020-03-09 2023-01-31 Amazon Technologies, Inc. Security mechanisms for data plane extensions of provider network services
JP2022023769A (ja) * 2020-07-20 2022-02-08 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド サーバリソースを割り当てるための方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
US11601378B2 (en) 2020-07-20 2023-03-07 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for allocating server resource, electronic device and storage medium

Also Published As

Publication number Publication date
WO2015042559A1 (en) 2015-03-26
JP6224846B2 (ja) 2017-11-01
CN105579965A (zh) 2016-05-11
US20150089034A1 (en) 2015-03-26
EP3049927A4 (en) 2017-03-22
CN105579965B (zh) 2019-09-03
EP3049927B1 (en) 2019-02-27
CA2924655A1 (en) 2015-03-26
US9686121B2 (en) 2017-06-20
CA2924655C (en) 2019-03-12
EP3049927A1 (en) 2016-08-03

Similar Documents

Publication Publication Date Title
JP6224846B2 (ja) プロバイダ定義インターフェイスを介したクライアント構内リソース制御
US9485323B1 (en) Managing pooled client-premise resources via provider-defined interfaces
US11838199B1 (en) System and method for deploying, scaling and managing network endpoint groups in cloud computing environments
EP3430512B1 (en) Network virtualization of containers in computing systems
US20210397494A1 (en) Functional tuning for cloud based applications and connected clients
US10684888B1 (en) Self-organizing server migration to service provider systems
US7962587B2 (en) Method and system for enforcing resource constraints for virtual machines across migration
US7941539B2 (en) Method and system for creating a virtual router in a blade chassis to maintain connectivity
US8244924B2 (en) Discovery and configuration of device configurations
KR102361929B1 (ko) 동적 호스트 디바이스 인스턴스 모델 재구성을 이용한 제공자 네트워크에서의 수용량 관리
JP4972670B2 (ja) 仮想計算機システム、そのアクセス制御方法及び通信装置
US9628374B1 (en) Ethernet link aggregation with shared physical ports
US20130036213A1 (en) Virtual private clouds
JP7180907B2 (ja) 接続されたアクセラレータベースの推論サービス
US11159367B2 (en) Apparatuses and methods for zero touch computing node initialization
US11451643B2 (en) Managed traffic processing for applications with multiple constituent services
US10616335B2 (en) Controller-based configuration proxy
CN108351802B (zh) 计算机数据处理系统和用于虚拟机通信的基于通信流量的优化的方法
US10334040B2 (en) Sharing information between appliances over a wan via a distributed P2P protocol
US11886307B2 (en) Site locality support for file services in a stretched cluster environment
CN115827148A (zh) 一种资源管理方法、装置、电子设备及存储介质
US10824476B1 (en) Multi-homed computing instance processes
US11824943B1 (en) Managed connectivity between cloud service edge locations used for latency-sensitive distributed applications
JP7212158B2 (ja) プロバイダネットワークサービス拡張

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170816

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: 20170905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171005

R150 Certificate of patent or registration of utility model

Ref document number: 6224846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250