JP2015534696A - クラウド内に地理的分散型のアプリケーションを自動的に配備する方法および装置 - Google Patents

クラウド内に地理的分散型のアプリケーションを自動的に配備する方法および装置 Download PDF

Info

Publication number
JP2015534696A
JP2015534696A JP2015536234A JP2015536234A JP2015534696A JP 2015534696 A JP2015534696 A JP 2015534696A JP 2015536234 A JP2015536234 A JP 2015536234A JP 2015536234 A JP2015536234 A JP 2015536234A JP 2015534696 A JP2015534696 A JP 2015534696A
Authority
JP
Japan
Prior art keywords
segment
constraint
component
cloud
cloud controller
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
JP2015536234A
Other languages
English (en)
Other versions
JP6113849B2 (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 JP2015534696A publication Critical patent/JP2015534696A/ja
Application granted granted Critical
Publication of JP6113849B2 publication Critical patent/JP6113849B2/ja
Expired - Fee Related 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

様々な例示の実施形態は、下記のこと、すなわち、要求するデバイスからアプリケーションの構成要素を確立する要求を受信すること、アプリケーションについて少なくとも1つのセグメントを定義し、この少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義する、アプリケーションに関連するポリシーファイルを識別すること、構成要素の確立について第1のセグメントを選択すること、少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択すること、および、この選択された位置で構成要素を確立すること、のうち1つまたは複数を含む方法および関連するネットワークノードに関する。

Description

本明細書において開示される様々な例示的実施形態は、一般に、クラウドコンピューティングに関する。
今日、クラウドオペレータの多くはいくつかの大規模なデータセンターを用いてクラウドサービスをホストし、比較的集中型のオペレーションを提供する。このようなシステムでは、要求側はクラウドコントローラに1つまたは複数のリソースの使用を要求することができ、そして次に、要求側によって使用するために、クラウドコントローラは要求されたリソースをデータセンターから割り当てることができる。しかしながら、この集中型のオペレーションは、たとえば厳格な遅延または信頼性の要求を有するような様々なタイプのアプリケーションをホストするには十分に適切でない場合がある。
一方、分散型データセンターのアーキテクチャは、地理的に分散され得る、多数のより小規模なデータセンターを設置する。これらのデータセンターは、インターネットまたはキャリアネットワークなどのネットワークを介して、1つまたは複数のクラウドコントローラの制御下にあってよい。このような分散型システムの下では、集中型クラウドが提供し得るよりも、地理的またはネットワーク距離の観点から様々な顧客により近いクラウドアプリケーションを提供することによって、ネットワーク伝搬遅延の影響は減少され得る。
様々な例示的実施形態の概要は、以下に示される。下記の概要においては、簡略化および省略されるものもあるが、これは様々な例示的実施形態のいくつかの態様を強調および紹介することを意図するものであって、本発明の範囲を限定するものではない。当業者が本発明の概念を構想および使用できるようにするのに適した好ましい例示的実施形態は、後節において詳述される。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションの構成要素を確立するクラウドコントローラによって実行される方法に関し、この方法は、要求するデバイスから構成要素を確立する要求を受信すること、アプリケーションについて少なくとも1つのセグメントを定義し、この少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義する、アプリケーションに関連するポリシーファイルを識別すること、構成要素の確立について第1のセグメントを選択すること、少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択すること、および、この選択された位置で構成要素を確立することを含む。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションの構成要素を確立するクラウドコントローラに関し、このクラウドコントローラは、データストレージと、このデータストレージと通信するプロセッサとを含み、このプロセッサは、要求するデバイスから構成要素を確立する要求を受信し、アプリケーションについて少なくとも1つのセグメントを定義し、かつ、この少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義するポリシーファイルであって、データストレージに格納されアプリケーションに関連するポリシーファイルを識別し、構成要素の確立について第1のセグメントを選択し、少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択し、および、この選択された位置で構成要素を確立するように構成される。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションの構成要素を確立するクラウドコントローラによって実行するための命令で符号化される、非一時的な機械可読記憶媒体に関し、この媒体は、要求するデバイスから構成要素を確立する要求を受信する命令と、アプリケーションについて少なくとも1つのセグメントを定義し、この少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義するポリシーファイルであって、アプリケーションに関連するポリシーファイルを識別する命令と、構成要素の確立について第1のセグメントを選択する命令と、少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択する命令と、この選択された位置で構成要素を確立する命令とを含む。
少なくとも1つの制約が、第1のセグメントに属する構成要素について制約を指定する個々のセグメント制約を含む、様々な実施形態が記述される。
少なくとも1つの制約が、第1のセグメントに属する少なくとも2つの構成要素間の制約を指定するセグメント内制約を含む、様々な実施形態が記述される。
少なくとも1つの制約が、第1のセグメントに属する少なくとも1つの構成要素と少なくとも1つのセグメントの第2のセグメントに属する少なくとも1つの構成要素の間の制約を指定するセグメント間制約を含む、様々な実施形態が記述される。
様々な実施形態は、要求するデバイスにラベルと共に構成要素の確立を通知すること、要求するデバイスからラベルを含むスケール要求を受信すること、第1のセグメントをラベルと関連するものとして識別すること、および第1のセグメントに対してスケーリングオペレーションを実行することをさらに含む。
様々な実施形態は、第1のセグメントを識別した後、ポリシーファイルから第1のセグメントについて少なくとも1つの制約を識別すること、および、少なくとも1つの制約に整合する位置であって、スケーリングオペレーションに関する位置を選択することをさらに含み、スケーリングオペレーションを実行することは、この選択された位置でスケーリングオペレーションを実行することを含む。
様々な実施形態は、要求するデバイスからアプリケーションについて追加の構成要素を確立する要求を受信すること、追加の構成要素の確立のために少なくともセグメントの第2のセグメントを選択すること、この第2のセグメント内における追加の構成要素の確立のための位置を選択すること、およびこの選択された位置で追加の構成要素を確立することをさらに含む。
第2のセグメントを選択することが、少なくともセグメントのポリシーファイルの定義および第1のセグメント内における構成要素の確立を反映するシステム状態情報に基づいて、追加の構成要素の確立のために第2のセグメントを選択することを含む、様々な実施形態が記述される。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションを確立するためのクラウドコントローラによって実行される方法に関し、この方法は、ユーザからアプリケーションについて複数の構成要素を定義するレシピファイルを受信すること、ユーザからアプリケーションについて複数のセグメントを定義するポリシーファイルを受信すること、および、複数のセグメントに従ってアプリケーションが分散されるように構成要素が確立される、クラウド内に複数の構成要素を確立することを含む。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションを確立するクラウドコントローラに関し、このクラウドコントローラは、データストレージと、このデータストレージと通信するプロセッサとを含み、このプロセッサは、ユーザからアプリケーションについて複数の構成要素を定義するレシピファイルを受信し、ユーザからアプリケーションについて複数のセグメントを定義するポリシーファイルを受信し、および、クラウド内に、複数のセグメントに従ってアプリケーションが分散されるよう確立される複数の構成要素を確立するように構成される。
本明細書において記述される様々な実施形態は、クラウド内にアプリケーションを確立するクラウドコントローラによって実行するための命令で符号化される、機械可読記憶媒体に関し、この媒体は、ユーザからアプリケーションについて複数の構成要素を定義するレシピファイルを受信するための命令と、ユーザからアプリケーションについて複数のセグメントを定義するポリシーファイルを受信するための命令と、複数のセグメントに従ってアプリケーションが分散されるように構成要素が確立される、クラウド内に複数の構成要素を確立する命令とを含む。
ポリシーファイルが複数のセグメントの第1のセグメントに対して少なくとも1つの制約をさらに定義し、複数のセグメントに従ってアプリケーションが分散されるように複数の構成要素を確立することが、第1のセグメントに第1の構成要素を割り当てること、および少なくとも1つの制約に整合する位置において第1の構成要素を確立することを含む、様々な実施形態が記述される。
少なくとも1つの制約が第1のセグメントに割り当てられた構成要素が確立される地理的地域を指定し、少なくとも1つの制約に整合する位置において第1の構成要素を確立することが、その地理的地域内に構成要素を確立することを含む、様々な実施形態が記述される。
少なくとも1つの制約が第1のセグメントに割り当てられた構成要素間のアフィニティを指定し、少なくとも1つの制約に整合する位置において第1の構成要素を確立することが、第1のセグメントに割り当てられた少なくとも1つの他の構成要素に近くなるように選択された位置で第1の構成要素を確立することを含む、様々な実施形態が記述される。
少なくとも1つの制約が、第1のセグメントと複数のセグメントの第2のセグメント間のアンチアフィニティを指定し、少なくとも1つの制約に整合する位置において第1の構成要素を確立することが、第2のセグメントに割り当てられた少なくとも1つの他の構成要素から遠くなるように選択された位置で第1の構成要素を確立することを含む、様々な実施形態が記述される。
ポリシーファイルが、複数の構成要素の第1の構成要素および複数のセグメントの第1のセグメントに関連する第1の割合と、第1の構成要素および複数のセグメントの第2のセグメントに関連する第2の割合とを指定する、様々な実施形態が記述される。
複数のセグメントに従ってアプリケーションが分散されるように複数の構成要素を確立することが、第1のセグメント内に第1の数の第1の構成要素を確立すること、および、第2のセグメント内に第2の数の第1の構成要素を確立することを含み、第1の数および第2の数が第1の割合および第2の割合に基づいて選択される、様々な実施形態が記述される。
様々な実施形態は、アプリケーションマネジャーにレシピファイルを転送すること、クラウドコントローラでポリシーファイルを格納すること、および、アプリケーションマネジャーから構成要素を確立する要求を受信することをさらに含み、複数の構成要素を確立することは、受信された要求および格納されたポリシーファイルに基づいて構成要素を確立することを含む。
様々な例示的実施形態をより理解するために、添付の図面を参照する。
クラウドリソースを提供する例示のネットワークを示す図である。 例示のセグメント化されたアプリケーションを示す図である。 例示のクラウドコントローラを示す図である。 クラウド内にアプリケーションを確立する例示の方法を示す図である。 クラウド内のアプリケーションをスケールする例示の方法を示す図である。
理解を容易にするため、実質的に同一もしくは類似の構造または実質的に同一もしくは類似の機能を備える要素を示すために、同じ参照番号が用いられている。
記述および図面は、本発明の原理を示す。したがって、当業者であれば、本明細書において明確に記述または図示されないものであっても、本発明の原理を実施し、本発明の範囲に含まれる様々な構成を案出できるであろうことが理解されよう。さらに、本明細書において説明されるすべての例は、主に、本発明の原理および当技術を促進させるために発明者(複数可)によって与えられた概念を読み手が理解するのを助ける教育上の目的のみであることが明確に意図され、また、このように特に説明される例および条件に限定されないものとして解釈される。加えて、本明細書において用いられる「または」という用語は、別段の指示(たとえば、「さもなければ」、または「または別法では」など)が無い限り非排他的な「または」を意味する。また、1つまたは複数の他の実施形態と組み合わされて新たな実施形態を形成する実施形態もあり得るため、本明細書において記述される様々な実施形態は必ずしも相互に排他的である必要はない。
様々な方法は、ユーザが分散型のクラウドアプリケーション用に配備されることになる構成要素を定義することを可能にし得るが、このような方法は、ユーザがどこに構成要素が確立されるかについて指定するか、そうでなければこれに影響を与えることをさらに可能にするものではない。このことから、ユーザは、顧客ベースの知識および他の情報に基づいてボトルネックを減少させるためにクラウドの分散型の特質を利用する権限を与えられることはできない。したがって、クラウドの中でアプリケーションがどのように分散されるかに対する影響力をユーザに与えつつ、分散型のクラウドアプリケーションを自動的に配備することができるシステムの必要性が存在する。
前述によると、本明細書において記述される様々な実施形態は、ユーザが、クラウドアプリケーションが分散される複数の「セグメント」を指定できるようにする。ユーザはまた、これらの各セグメントの構成要素が存在する地理的位置、および各セグメントに属するアプリケーションの構成要素を指定することができる。このように、アプリケーションの一部を形成する各構成要素が地理的にどこに配置されるかに対する影響力がユーザに与えられる。様々な、さらなる特徴および実施の詳細は、図に関連して、以下でより詳細に記述される。
図面を参照すると、同様の番号が同様の構成要素またはステップを意味し、様々な例示的実施形態の広範囲の態様が開示される。
図1は、クラウドリソースを提供する例示のクラウドアーキテクチャ100を示す。このクラウドアーキテクチャ100は、ネットワーク化されたクラウドアーキテクチャを実施することができ、クライアントデバイス110と、ネットワーク115と、クラウドコントローラ120と、データセンター130、140および150と、アプリケーションマネジャー160とを含んでよい。
クライアントデバイス110は、1つまたは複数のクラウドリソースを利用するように構成された任意のデバイスであってよい。様々な実施形態において、クライアントデバイス110は、デスクトップコンピュータ、ラップトップ、タブレット、モバイルデバイス、サーバまたはブレードであってよい。クライアントデバイス110は、ネットワーク115を介して、クラウドコントローラ120などの他のデバイスと通信することができる。クライアントデバイス110は、クラウドコントローラ120に1つまたは複数のクラウドリソースの要求を送信することができる。たとえば、クライアントデバイス110は、1つまたは複数の仮想マシン(VMs)、一群の仮想マシン(VMs)、ストレージデバイスまたはメモリの使用を要求することができる。クラウドリソースのさらなるタイプは明らかになるだろう。クライアントデバイス110は、分散型のクラウドアプリケーションの配備をクラウドコントローラ120に要求するユーザのデバイスを表すことができ、または、クライアントデバイス110は、リソース131、132、133、144、155、166と直接通信することによってこのような分散型のクラウドアプリケーションの1つまたは複数の構成要素の使用を要求するユーザのような顧客を表すことができる。複数の追加のクライアントデバイス(図示せず)がネットワーク115と通信することができ、また、このような追加のクライアントデバイスは追加のユーザおよび顧客に属してよいことは明らかであろう。
ネットワーク115は、例示のクラウドアーキテクチャ100の様々なデバイス間での通信を可能にすることができるデバイスまたは伝送媒体の任意のネットワークであってよい。たとえば、ネットワーク115は、様々な宛先に対するデータパケットを交換およびルーティングするように構成された多数のデバイスを含んでよい。様々な実施形態において、ネットワーク115はインターネット、または1つまたは複数のキャリアネットワークを含んでよい。
クラウドコントローラ120は、ネットワーク化されたクラウドのオペレーションを制御するように構成されたデバイスであってよい。図3に関連してより詳細に後述されるように、クラウドコントローラ120は、ストレージデバイス、メモリ、または1つまたは複数のプロセッサなどの様々なハードウェアを含んでよい。本明細書において用いられる「プロセッサ」という用語は、マイクロプロセッサ、フィールドプログラマブルゲートアレイ(FPGAs)、特定用途向け集積回路(ASICs)、および他の類似の処理デバイスなど様々なデバイスを包含することが理解されよう。様々な実施形態において、クラウドコントローラ120は、たとえば、サーバ、ブレード、パーソナルコンピュータ、ラップトップ、タブレットまたはモバイルデバイスを含んでよい。このようないくつかの実施形態では、クラウドコントローラ120は、たとえば、クラウドデバイス131、132、133によって提供されるハードウェアリソースなどのクラウドリソースを利用する仮想マシンであってよい。クラウドコントローラ120は、データセンター130のようなデータセンター、または他の場所に存在してよい。クラウドコントローラ120は、クラウドリソース割当の管理を含む様々なクラウド管理機能を実行することができる。このため、クラウドコントローラ120は、クライアントデバイス110のようなクライアントデバイスから、クラウドアプリケーションの確立の要求を受信することができる。このような要求を受信すると、クライアントデバイスによって使用するために、クラウドコントローラ120は、クラウドデバイス131、132、133、144、155、156の1つまたは複数から要求されたリソースを割り当てることができる。様々な実施形態において、例示のクラウドアーキテクチャ100は、複数のクラウドコントローラ(図示せず)を含んでよい。複数のクラウドコントローラのオペレーションを調整する様々な技術は明らかであろう。
データセンター130、140、150はそれぞれ、クラウドリソースを提供する1つまたは複数のデバイスを支援する位置であってよい。たとえば、データセンター130はクラウドデバイス131、132、133をホストすることができ、データセンター140はクラウドデバイス144をホストすることができ、データセンター150はクラウドデバイス155、156をホストすることができる。データセンター130、140、150は地理的に分散されてよく、または、クライアントデバイス110から異なるネットワーク距離に位置していてもよい。たとえば、クライアントデバイス110はワシントンD.C.に位置し、データセンター140はシカゴに位置し、データセンター150はパリに位置し、データセンター130は東京に位置していてもよい。この例によれば、クライアントデバイス110はデータセンター140と通信する場合、データセンター130と通信する場合よりも短いネットワーク待ち時間を経験するかもしれない。クラウドアーキテクチャ100は、多数のさらなるデータセンター(図示せず)を含んでよく、また、各データセンターは任意の数のクラウドデバイスを含んでよいことは明らかであろう。
各クラウドデバイス131、132、133、144、155、156は、クライアントデバイスによって使用するためのクラウドリソースを提供するように構成されたデバイスであってよい。様々な実施形態において、各クラウドデバイス131、132、133、144、155、156は、デスクトップコンピュータ、ラップトップ、タブレット、モバイルデバイス、サーバまたはブレードであってよい。このため、クラウドデバイス131、132、133、144、155、156は、たとえば、ストレージデバイス、メモリ、または1つまたは複数のプロセッサなどの様々なハードウェアを含んでよい。クラウドデバイス131、132、133、144、155、156は、クライアントデバイス110のようなクライアントデバイスによって使用するための処理、ストレージ、メモリ、仮想マシン(VMs)、または一群の仮想マシン(VMs)を提供するように構成されてよい。
様々な実施形態において、図1に示される実施形態のように、クラウドコントローラ120はアプリケーションマネジャー160とインターフェースで接続して、要求に応じてクラウドアプリケーションを配備し、その後、スケールすることができる。アプリケーションマネジャー160は、たとえば、デスクトップコンピュータ、ラップトップ、タブレット、モバイルデバイス、サーバまたはブレードであってよく、仮想マシンを含んでもよい。アプリケーションマネジャー160は、クライアント110またはクラウドコントローラ120から「レシピファイル」を受信することができる。本明細書において用いられる「レシピファイル」という用語は、アプリケーションについて配備されることになる構成要素のあらゆる定義を意味することが理解されよう。さらに、「ファイル」という用語は、従来知られているようなファイルだけではなく、このような定義を保持するのに適した任意の他のストレージ構造も意味することが理解されよう。たとえば、レシピファイルは、アプリケーションがフロントエンドウェブサーバごとにデータベースサーバおよびフロントエンドウェブサーバを含むことを指定することができる。レシピファイルによって定義されることになる様々な代替のアプリケーションは明らかであろう。レシピファイルを受信すると、アプリケーションマネジャー160はレシピファイルを解釈し、次いで、クラウドコントローラ120がレシピファイルで定義されたアプリケーションを構成する構成要素を確立するよう要求することができる。その後、アプリケーションマネジャー160は、顧客のトラフィックによって様々な構成要素にかけられる負荷を監視し、クラウドコントローラ120に過負荷である構成要素をスケールアップし、または、十分に利用されていない構成要素をスケールダウンするよう要求することができる。たとえば、アプリケーションマネジャー160はアプリケーションに属するフロントエンドウェブサーバが過負荷であることを判定し、次いで、クラウドコントローラ120に追加のフロントエンドウェブサーバを確立することによってスケールアップするよう要求することができる。たとえば、クラッシュした、または機能しない仮想マシン(VMs)に対処し、続いて、クラッシュした、または機能しない仮想マシン(VM)に予め存在する構成要素を再配備するなどの、アプリケーションマネジャー160に関する様々な他の機能は明らかであろう。
確立またはスケールする要求を受信すると、クラウドコントローラ120は、ユーザから提供された「ポリシーファイル」を用いて、要求されたオペレーションに適した位置を決定することができる。本明細書において用いられる「ポリシーファイル」という用語は、アプリケーションにおける構成要素の配置に対する制約またはセグメント化のあらゆる定義を意味することが理解されよう。たとえば、ポリシーファイルは、フロントエンドサーバの60%は米国内に位置する第1のセグメントに配置されるべきであり、一方、フロントエンドサーバの40%は欧州内に位置する第2のセグメントに配置されるべきであると指定することができる。以下でより詳細に記述されるように、ポリシーファイルはまた、構成要素の配置に対する様々なセグメント内制約およびセグメント間制約を定義することができる。構成要素を確立またはスケールするとき、クラウドコントローラ120は、ポリシーファイルで定義された様々な制約に整合する位置を選択することができる。
図2は、例示のセグメント化されたアプリケーション200を示す。このセグメント化されたアプリケーション200は、たとえば、図1に示すクラウドアーキテクチャ100などのクラウドアーキテクチャで実施され得る。図示の通り、例示のアプリケーションは、5つのウェブサーバ214、216、224、226、228、および5つのデータベースサーバ212、222、232、234、236を含んでよい。図示の通り、様々な構成要素212、214、216、222、224、226、228、232、234、236は直接相互に接続されていなくてもよく、その代わりに、たとえばインターネットなどの媒介デバイスの1つまたは複数のネットワークを介して通信可能であることが理解されよう。さらに、構成要素212、214、216、222、224、226、228、232、234、236は、異なる機能を実行する、クラウドアーキテクチャ内に配備された様々な仮想マシンを表すことができる。様々な構成要素は、ユーザから提供されたポリシーファイルによって指定された通りに、3つのセグメント210、220、230の間で分散され得る。ポリシーファイルは、たとえば拡張マークアップ言語(XML)、スクリプト言語、プロプライエタリなポリシーファイルマークアップ言語、または、セグメントおよび制約を定義するのに有用な任意の他の言語など、様々な形式で定義され得る。このようなポリシーファイルは、たとえば以下の通り読める。
Figure 2015534696
Figure 2015534696
Figure 2015534696
理解される通り、例のポリシーファイルは3つのセグメントを定義する:セグメント1 210、セグメント2 220およびセグメント3 230である。例のポリシーファイルはまた、セグメント210、220、230間のアプリケーションの構成要素の分散を定義する。たとえば、ポリシーファイルは、データベースサーバの20パーセントおよびウェブサーバの40パーセントがセグメント1に割り当てられるべきであると指定する。このため、5つのデータベースサーバと5つのウェブサーバを分散する場合、クラウドコントローラ120は、1つのデータベースサーバ212と、2つのウェブサーバ214および216とをセグメント1に割り当てることができる。セグメントごとに指定される数、パーセンテージまたは他の割合は、常に正確に達成できるものでなくてよく、その場合、クラウドコントローラ120は、単にポリシーファイルで指定された分散を近似する割当分散を選択してよいということが理解されよう。たとえば、6つのウェブサーバが確立されることになる場合、クラウドコントローラ120は、追加のウェブサーバ(図示せず)を、50−50−0で分散するためにセグメント1 210に配置してもよいし、または、33−67−0で分散するためにセグメント2 220に配置してもよい。
3つのセグメント210、220、230を定義するとき、例のポリシーファイルはまた、3つのセグメント210、220、230それぞれに個々のセグメント制約を指定する。具体的には、「<geography>」タグ内では、ポリシーファイルは、各セグメント210、220、230に割り当てられる構成要素が確立されることになる国または他の地理的地域を指定する。たとえば、ポリシーファイルは、セグメント1 210は、欧州内に確立されることになると指定する。このように、クラウドコントローラは、パリに位置するデータセンター150および欧州内に位置する任意の他のデータセンター(図示せず)の中にセグメント1 210に割り当てられた構成要素212、214、216を確立することができる。地理的制約に加えて、個々のセグメント制約が他のタイプの制約を指定し得ることが理解されよう。たとえば、個々のセグメント制約は、構成要素がLinux(登録商標)マシンに配置されることになること、または、選択されたマシンがそこで作動する仮想マシン(VMs)を管理する特定のハイパーバイザを使用することを指定し得る。
ポリシーファイルはまた、個々のセグメント制約に加えて、他の2つのタイプの制約を指定することができる:セグメント内制約およびセグメント間制約である。セグメント内制約は、同一のセグメント内の他の構成要素との関係で構成要素がどこに配置されるかに対する制約であり得、「<segment>」タグ内にある「<affinityRules>」タグの内部で定義され得る。示されている通り、制約は、各構成要素が他のノードに関する制約に拘束される、NODE(ノード)レベル制約の点から定義され得、または、1つのグループ(たとえばウェブサーバ)に属する構成要素が他のグループ(たとえばデータベースサーバ)に属する構成要素に関する制約に拘束される、ZONE(ゾーン)レベル制約の点から定義され得る。例示の制約はまた、制約のタイプが「AFFINITY(アフィニティ)」タイプであるか「ANTI_AFFINITY(アンチアフィニティ)」タイプであるかを指定する。AFFINITY(アフィニティ)タイプの制約の場合、クラウドコントローラ120は、セグメント内の他の構成要素の比較的近くに構成要素を配置しようとする。このような制約は、たとえば相互に通信するデバイス間での遅延を減少させるのに有用である。近さの概念は、地理的距離(たとえばマイル)、ネットワーク距離(たとえばホップ)、支援するデータセンターの共有性、または待ち時間の点から定義されることが理解されよう。反対に、ANTI_AFFINITY(アンチアフィニティ)タイプの制約の場合、クラウドコントローラ120は、セグメント内の他の構成要素から比較的遠くに構成要素を配置しようとする。このような制約は、たとえば、地理的地域においてカバレッジを広げ、または、プライマリ構成要素に影響を与えた電源障害などの事象の範囲外にある可能性がより高い冗長要素を提供するのに有用である。一例として、ポリシーファイルはセグメント1 210についてZONE(ゾーン)レベルのアフィニティ制約を指定する。この制約を守るとき、クラウドコントローラ120は、他の制約を維持しつつ、可能な限りデータベースサーバ212の近くにウェブサーバ214、216を確立しようとする。可能であれば、クラウドコントローラ120は、データベースサーバ212を支援するデータセンターと同一のデータセンター内にウェブサーバ214、216を確立してもよい。
セグメント間制約は、異なるセグメントに割り当てられた構成要素間で実行され得、「<interSegmentConstrains>」タグ内にある「<constraint>」タグの内部で定義され得る。セグメント間制約は、「<segments>」タグ内の制約の影響を受けるセグメントを定義し、「<affinityRules>」タグ内の制約タイプを指定することができる。たとえば、ポリシーファイルは、セグメント1 210とセグメント2 220の間にNODE(ノード)レベルのアンチアフィニティ制約が存在することを指定することができる。アプリケーション200を確立するとき、クラウドコントローラ120は、セグメント2 220に割り当てられた構成要素222、224、226、228をセグメント1 210に割り当てられた構成要素212、214、216から比較的遠くに配置することによって、この制約を守ることができる。場合によっては、個々のセグメント制約が、このようなセグメント間制約を既に引き受けていてもよい。たとえばこの場合、セグメント1 210は欧州内に位置し、セグメント2 220は米国内に位置するというポリシーファイルの指定は、構成要素が互いに十分遠くにあることを、場合により確実にする。様々な実施形態において、クラウドコントローラ120は、たとえば東欧および米国西部に位置するデータセンターに構成要素を確立することによって、構成要素がより遠くに離れることをさらに確実にし得る。
アフィニティ制約およびアンチアフィニティ制約を指定する様々な代替の方法が存在し得ることが理解されよう。たとえば、代替のポリシーファイルは、アフィニティ制約に関して最大の構成要素間距離を、また、アンチアフィニティ制約に関して最小の構成要素間距離を指定してよい。様々な代替の実施は明らかであろう。さらに、アフィニティタイプおよびアンチアフィニティタイプの制約以外の代替の制約が使用されてもよい。たとえば、セグメント内制約またはセグメント間制約は、セグメントの構成要素が特定のクラウド標準またはハイパーバイザを使用することを指定することができる。
図3は、例示のクラウドコントローラ300を示す。この例示のクラウドコントローラ300は、例示のクラウドアーキテクチャ100のクラウドコントローラ120に対応し得る。クラウドコントローラ300は、プロセッサ310、データストレージ320、および入出力(I/O)インターフェース330を含んでよい。
プロセッサ310は、クラウドコントローラ300のオペレーションを制御し、システムバスを介してデータストレージ320および入出力(I/O)インターフェース330と協働することができる。本明細書において用いられる「プロセッサ」という用語は、マイクロプロセッサ、フィールドプログラマブルゲートアレイ(FPGAs)、特定用途向け集積回路(ASICs)、および他の類似の処理デバイスなど様々なデバイスを包含することが理解されよう。
データストレージ320は、クラウド内でリソースを管理するのに有用な様々なプログラムなどのプログラムデータを格納することができる。たとえば、データストレージ320は、たとえば図4および図5に関連して後述されるような1つまたは複数の方法を実行するクラウド管理命令322を格納することができる。このクラウド管理命令322は、1つまたは複数のアプリケーションマネジャーと協働し、様々なデータセンター、ハイパーバイザまたは仮想マシンのオペレーションを調整するのに有用なさらなる命令または方法を含んでよい。
データストレージはまた、以前の割当324の記録を格納することができる。たとえば、クラウドコントローラ300が確立しセグメントに割り当てる各構成要素について、クラウドコントローラは割当324中の記録を格納することができる。このように、関連するポリシーファイルによって指定された割合が守られることを確実にするために新たな構成要素を準備する場合、クラウドコントローラ300は、以前の割当324を参照することができる。様々な代替の実施形態において、クラウドコントローラ300は、以前の割当としてのシステム状態情報を格納することよりもむしろ、様々なデータセンターに問い合わせを行うことによってシステム状態情報を取得することができる。図4および図5に関連してより詳細に後述されるように、さらに、適切なセグメントについて将来スケーリング要求が実行され得るように、クラウドコントローラ324は、各割当324と共に構成要素またはセグメントを識別するラベルを格納することができる。
様々な実施形態において、クラウドコントローラ300はまた、将来の使用のためにユーザから受信したレシピファイル326およびポリシーファイル328を格納することができる。様々な代替の実施形態において、クラウドコントローラ300は、これらのファイル326および328の1つまたは複数を、格納することなく単にアプリケーションマネジャーに渡してもよい。
入出力(I/O)インターフェース330は、プロセッサ310と協働して1つまたは複数の通信チャネルを通じた通信を支援することができる。たとえば、入出力(I/O)インターフェース330は、キーボードおよびモニターなどのユーザインターフェース、および/または、1つまたは複数のイーサネット(登録商標)ポートなどのネットワークインターフェースを含んでよい。
いくつかの実施形態において、プロセッサ310はプロセッサ/CPUコアなどのリソースを含むことができ、入出力(I/O)インターフェース330は任意の適当なネットワークインターフェースを含むことができ、または、データストレージ320はメモリまたはストレージデバイスを含むことができる。さらに、クラウドコントローラ300は任意の適当な物理的ハードウェア構成であってよく、たとえば、1つまたは複数のサーバ、プロセッサ、メモリ、ネットワークインターフェースまたはストレージデバイスなどの構成要素からなるブレードなどである。これらの実施形態のいくつかでは、クラウドコントローラ300は互いに遠く離れたクラウドネットワークリソースを含んでよい。
いくつかの実施形態において、クラウドコントローラ300は1つまたは複数の仮想マシンを含むことができる。これらの実施形態のいくつかでは、仮想マシンは、異なる物理的マシンからの構成要素を含むことができ、または、地理的に分散されていてもよい。たとえば、データストレージ320およびプロセッサ310は、2つの異なる物理的マシンに存在することができる。
いくつかの実施形態において、クラウドコントローラ300は、方法400、500を実行するようにプログラム化された汎用コンピュータであってよい。
プロセッサ実行可能なプログラムがプロセッサ310に実装されると、プログラムコードセグメントはプロセッサと組み合わさって、特定の論理回路に類似して動作する固有のデバイスを提供する。
たとえばプログラムおよび論理がデータストレージに格納され、また、メモリが伝達的にプロセッサに接続される実施形態に関して本明細書において図示および記述されるが、これらの情報は任意の他の適当な方法(たとえば、任意の適当な数のメモリ、ストレージまたはデータベースを使用すること)に格納され得ることを理解されたい。すなわち、任意の適当な構成のデバイスに伝達的に接続される任意の適当な構成のメモリ、ストレージまたはデータベースを使用すること、メモリ(複数可)、ストレージ(複数可)、または、内部データベースまたは外部データベース(複数可)の任意の適当な組合せに情報を格納すること、または、任意の適当な数のアクセス可能な外部メモリ、ストレージまたはデータベースを使用することである。このため、本明細書において用いられるデータストレージという用語は、メモリ(複数可)、ストレージ(複数可)およびデータベース(複数可)のすべての適当な組合せを包含するよう意図されている。
図4は、クラウド内にアプリケーションを確立する例示の方法400を示す。方法400は、たとえば、クラウドコントローラ120またはクラウドコントローラ300などのクラウドコントローラによって実行され得る。
方法400は、ステップ405で開始し、クラウドコントローラ120がユーザからレシピファイルを受信するステップ410に進むことができる。レシピファイルは、ユーザが確立されることを望むクラウドアプリケーションを定義することができる。次にステップ415において、クラウドコントローラ120はユーザからポリシーファイルを受信する。このポリシーファイルは、ステップ410で受信されたレシピファイルで定義された、アプリケーションを確立およびスケールするときに用いられる多数のセグメントおよび構成要素の配置に対する制約を定義することができる。クラウドコントローラ120は、たとえば、ユーザがファイルをアップロードする、ユーザがクラウドコントローラ提供のGUIでファイルを生成する、ユーザがクラウドコントローラ120またはアプリケーションマネジャー160に存在するファイルを選択する、または、ユーザがURLによるなど他の場所に格納されたファイルを識別するなど、複数の方法でファイルを受信し得ることが理解されよう。
次にステップ420において、クラウドコントローラ120は、アプリケーションマネジャー160にレシピファイルを転送することができる。アプリケーションマネジャー160は、次に、要求に応じてどの構成要素が確立されるべきか、または後に、アプリケーションを確立およびスケールすることが終了されるべきかを調整する役割を担うことができる。レシピファイルに基づいて、アプリケーションマネジャー160は1つまたは複数の構成要素を確立する要求を送信することができ、この要求は、ステップ425においてクラウドコントローラ120が受信することができる。アプリケーションマネジャー160は、構成要素について複数の要求を含む単一のメッセージを送信し、または要求ごとに1つのメッセージを送信することができる。
ステップ425において要求を受信した後、クラウドコントローラ120は、ポリシーファイルに基づいて確立されることになる新たな構成要素についてセグメントを選択することができる。様々な実施形態において、クラウドコントローラ120はポリシーファイルを参照して、定義された各セグメント間で要求されたタイプの構成要素の指定された分割を決定することができる。次に、要求されたタイプのいくつの構成要素が各セグメントに割り当てられているかにも基づいて、クラウドコントローラ120は新たな構成要素についてセグメントを選択することができる。たとえば、セグメント1とセグメント2の間で50−50の分割のウェブサーバをポリシーファイルが定義し、かつ、セグメント1で確立されているウェブサーバがただ一つの場合、クラウドコントローラ120は、分割が2つのセグメント間で50−50となるように新たなウェブサーバをセグメント2に割り当てることができる。
次にステップ435において、クラウドコントローラ120は、ポリシーファイルを参照することによって選択されたセグメントについてあらゆる制約を識別することができる。前述の通り、制約は、個々のセグメント制約、セグメント内制約およびセグメント間制約を含んでよい。関連する制約を識別した後、ステップ440において、クラウドコントローラ120は新たな構成要素の配置について識別された制約に整合する位置を選択する。たとえば、セグメントが「米国」の個々のセグメント制約および欧州内の別のセグメントに関するアンチアフィニティのセグメント間制約を有する場合、クラウドコントローラ120は、ニューヨーク市のデータセンターを越えてサンディエゴまたはシアトルに位置するデータセンターに新たな構成要素を配置するよう選択することができる。位置を選択した後、クラウドコントローラ120は、ハイパーバイザまたは他の構成要素に新たな構成要素を確立するよう命令するメッセージを選択されたデータセンターに送信することによって、新たな構成要素を確立することができる。一旦構成要素が確立されると、クラウドコントローラ120は、新たな構成要素に関する情報と共に、アプリケーションマネジャー160に確立の通知を返すことができる。たとえば、アプリケーションマネジャー160が構成要素の負荷または性能を監視し、かつ適切なスケーリングの判断を行うことができるように、クラウドコントローラ120は新たな構成要素の名称または位置を提供することができる。クラウドコントローラ120はまた、クラウドコントローラ120が将来割り当てられるセグメントを識別するのに有用なラベルを提供することができる。ラベルは、セグメントを名付ける別個のラベルであってよく、または、たとえば構成要素の名称などアプリケーションマネジャー160に既に提供された値に組み込まれてもよい。図5に関連してより詳細に後述されるように、アプリケーションマネジャー160は、ラベルを格納し、このラベルをスケーリング要求と共に返送するように構成され得る。
構成要素の確立を通知した後、ステップ455において、クラウドコントローラ120は、確立すべき追加の構成要素がまだ残っているかを判断することができる。たとえば、クラウドコントローラ120は、アプリケーションマネジャー160から既に受信したメッセージが追加の要求を含むか、または、クラウドコントローラ120が追加の要求を伝達する追加のメッセージのために一定期間待つことができるかについて判断することができる。確立すべき追加の構成要素がまだ残っている場合、方法400はループしてステップ425に戻る。そうでなければ、方法400はステップ460に進み停止してよい。
図5は、クラウド内のアプリケーションをスケールする例示の方法500を示す。方法500は、たとえば、クラウドコントローラ120またはクラウドコントローラ300などのクラウドコントローラによって実行され得る。
方法500は、ステップ505で開始し、クラウドコントローラ120がアプリケーションマネジャー160からスケール要求を受信するステップ510に進むことができる。このスケール要求は、1つまたは複数の新たな構成要素を確立する要求、または1つまたは複数の構成要素を終了させる要求を含むことができる。確立または終了させるこの要求は、スケールされるよう要求された1つまたは複数の存在する構成要素を識別することができ、または、スケールされることになる構成要素が初めに確立されたときに、方法400のステップ450においてアプリケーションマネジャー160に送信されたラベルを単に含むことができる。ステップ515において、クラウドコントローラは受信した要求からこのラベルを抽出し、次にステップ520において、このラベルが対応するセグメントを識別する。そうすることによって、クラウドコントローラ120は、スケールされることになる構成要素が初めに割り当てられたセグメントを識別することができる。
関連するセグメントを識別した後、クラウドコントローラ525は、スケールされることになるアプリケーションに対応するポリシーファイルに基づいてセグメントについてあらゆる関連する制約を識別することができる。このステップ525は、方法400のステップ435に類似してよい。次にステップ530において、クラウドコントローラ120は、識別された制約に整合するスケーリングオペレーションに関する位置を選択することができる。スケーリングオペレーションが新たな構成要素の確立を含む場合、クラウドコントローラ120は、制約に整合する確立について位置を選択することができる。このような確立は、ポリシーファイルよって定義された1つまたは複数の構成要素の分散を乱してよいということが理解されよう。たとえば、ポリシーファイルが、2つのセグメントの間でウェブサーバの50−50の分散を定義し、かつ、第1のセグメントが唯一現存するウェブサーバを含む場合、アプリケーションマネジャーは具体的にセグメント1をスケールされることになるセグメントとして識別したため、クラウドコントローラ120は、たとえこのことが50−50により近い分散をもたらさないとしても第1のセグメントに新たなウェブサーバを確立することができる。このような方法で、クラウドコントローラ120は、負荷の増大に直面されている場所で新たな構成要素が確立され、それゆえ、新たに確立された構成要素が増大する負荷の要求に応えることに対してもたらす効果が高まることを確実にすることができる。
スケーリングオペレーションが構成要素の終了を含む場合、ステップ530において、構成要素の除去がセグメント内に残存する構成要素に制約を違反させないように、クラウドコントローラは既に存在する構成要素の位置を選択することができる。たとえば、2つの他のウェブサーバの間に配置されたウェブサーバを除去することが、2つの残存するウェブサーバの間に距離を生じさせて、アフィニティのセグメント内制約を違反する場合、クラウドサーバ120は、代わりに終了されることになる別の構成要素を見つけようとする。スケールアップするのと同様に、クラウドコントローラ120は、ポリシーファイルによって定義された構成要素の分散が維持されないように、アプリケーションをスケールダウンすることができる。たとえば、アプリケーションマネジャー160が米国セグメントのウェブサーバがスケールダウンされることを要求する場合、たとえそうすることがポリシーファイルで指定された50−50の分散を乱すことになるとしても、クラウドコントローラ120は米国セグメント(したがって、米国に配置されそうなセグメント)に割り当てられたウェブサーバを除去しようとする。そうすることによって、クラウドコントローラ120は、過少利用に直面していない地域からリソースが除去されないよう確実にすることができ、そのかわり、すべての確立されたリソースがローカル要求に遅れをとらないようにする必要があり得る。
次にステップ535において、クラウドコントローラ120は、選択された位置でスケーリングオペレーションを実行する。たとえば、クラウドコントローラ120は、新たな構成要素を確立し、または存在する構成要素を終了させることができる。次にステップ540において、クラウドコントローラ120は、アプリケーションマネジャーにスケーリングオペレーションを通知する。スケーリングオペレーションが追加の構成要素を確立することを含む場合、ステップ540はステップ450に類似してよい。このため、クラウドコントローラ120は、将来のスケーリングオペレーションで使用するために、セグメントを識別するラベルをアプリケーションマネジャー160に送信することができる。そして、方法500はステップ545に進み停止してよい。
上記によれば、様々な実施形態は、ユーザが分散型のクラウドアプリケーションの配備を要求し、また、アプリケーションの構成要素がどこに配置されるかに影響を与えることができるようにする。ポリシーファイルを受信し利用するクラウドコントローラ120を備えることによって、ユーザは、分散型のクラウドアプリケーションをセグメントに分割し、定義されたセグメントごとに様々な配置の制約を定義する柔軟性を与えられる。さらに、アプリケーションマネジャーにセグメントを識別するラベルを提供することによって、将来のスケーリングオペレーションはこれらの制約を考慮して実行され得る。前述したことを考慮すると、本明細書において記述される方法およびシステムの様々なさらなる利点は明らかであろう。
上記の記述から、本発明の様々な例示的実施形態がハードウェアまたはファームウェアで実施され得ることは明らかである。さらに、様々な例示的実施形態は、機械可読記憶媒体上に記憶される命令として実施され得、この命令は、少なくとも1つのプロセッサによって読取りおよび実行されて、本明細書において詳細に記述されるオペレーションを実行し得る。機械可読記憶媒体はパーソナルコンピュータ、ラップトップコンピュータ、サーバ、または他のコンピューティングデバイスなどの、機械によって読み取ることができる形式の情報を記憶するための任意の機構を含んでよい。したがって、有形かつ非一時的な機械可読記憶媒体は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリデバイス、および類似の記憶媒体を含んでよい。
本明細書におけるあらゆるブロック図は、本発明の原理を実施する例証となる回路の概念図を表すということが、当業者には理解されよう。同様に、フローチャート、フロー図、状態遷移図、擬似コードなどは、機械可読媒体中に実質的に表現され得、また、コンピュータまたはプロセッサが明確に示されているか否かに関わらず、コンピュータまたはプロセッサによって実質的に実行され得る様々な処理を表すということが理解されよう。
様々な例示的実施形態について、特定の例示的態様を特に参照して詳細に記述してきたが、本発明は他の実施形態が可能であり、また、その詳細は様々な明白な点において修正形態が可能であることを理解されたい。当業者には容易に明らかとなるように、本発明の精神および範囲内で、変形形態および修正形態がもたらされ得る。したがって、上記の開示、記述および図は例証のみを目的とし、決して本発明を限定するものではなく、本発明は特許請求の範囲によってのみ定められる。

Claims (15)

  1. クラウド内にアプリケーションの構成要素を確立するためのクラウドコントローラによって実行される方法であって、
    要求するデバイスから構成要素を確立する要求を受信するステップ(425)と、
    アプリケーションについて少なくとも1つのセグメントを定義し、少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義する、アプリケーションに関連するポリシーファイルを識別するステップと、
    構成要素の確立について第1のセグメントを選択するステップ(430)と、
    少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択するステップ(440)と、
    選択された位置で構成要素を確立するステップ(445)とを含む、方法。
  2. 少なくとも1つの制約が、第1のセグメントに属する構成要素について制約を指定する個々のセグメント制約を含む、請求項1に記載の方法。
  3. 少なくとも1つの制約が、第1のセグメントに属する少なくとも2つの構成要素間の制約を指定するセグメント内制約を含む、請求項1から2のいずれか一項に記載の方法。
  4. 少なくとも1つの制約が、第1のセグメントに属する少なくとも1つの構成要素と少なくとも1つのセグメントの第2のセグメントに属する少なくとも1つの構成要素の間の制約を指定するセグメント間制約を含む、請求項1から3のいずれか一項に記載の方法。
  5. 方法が、
    要求するデバイスにラベルと共に構成要素の確立を通知するステップ(450)と、
    要求するデバイスからラベルを含むスケール要求を受信するステップ(510)と、
    第1のセグメントをラベルに関連するものとして識別するステップ(520)と、
    第1のセグメントに対してスケーリングオペレーションを実行するステップ(535)とをさらに含む、請求項1から4のいずれか一項に記載の方法。
  6. 方法が、第1のセグメントを識別した後、
    ポリシーファイルから第1のセグメントについて少なくとも1つの制約を識別するステップ(525)と、
    少なくとも1つの制約に整合する位置であって、スケーリングオペレーションに関する位置を選択するステップ(530)とをさらに含み、
    スケーリングオペレーションを実行するステップ(535)が、選択された位置でスケーリングオペレーションを実行することを含む、請求項5に記載の方法。
  7. 方法が、
    要求するデバイスからアプリケーションについて追加の構成要素を確立する要求を受信するステップ(425)と、
    追加の構成要素の確立のために少なくとも1つのセグメントの第2のセグメントを選択するステップ(430)と、
    第2のセグメント内における追加の構成要素の確立のための位置を選択するステップ(440)と、
    選択された位置で追加の構成要素を確立するステップ(445)とをさらに含む、請求項1から6のいずれか一項に記載の方法。
  8. 第2のセグメントを選択するステップ(430)が、少なくとも1つのセグメントのポリシーファイルの定義および第1のセグメント内における構成要素の確立を反映するシステム状態情報に基づいて、追加の構成要素の確立のための第2のセグメントを選択することを含む、請求項7に記載の方法。
  9. クラウド内にアプリケーションの構成要素を確立するためのクラウドコントローラであって、
    データストレージ(320)と、
    データストレージと通信するプロセッサ(310)とを含み、プロセッサが、
    要求するデバイスから構成要素を確立する要求を受信し(425)、
    アプリケーションについて少なくとも1つのセグメントを定義し、少なくとも1つのセグメントの第1のセグメントについて少なくとも1つの制約を定義するポリシーファイルであって、データストレージに格納されアプリケーションに関連するポリシーファイルを識別し、
    構成要素の確立について第1のセグメントを選択し(430)、
    少なくとも1つの制約に整合する位置であって、構成要素の確立についての位置を選択し(440)、および、
    選択された位置で構成要素を確立する(445)ように構成される、クラウドコントローラ。
  10. 少なくとも1つの制約が、第1のセグメントに属する個々の構成要素について制約を指定する個々のセグメント制約を含む、請求項9に記載のクラウドコントローラ。
  11. 少なくとも1つの制約が、第1のセグメントに属する少なくとも2つの構成要素間の制約を指定するセグメント内制約を含む、請求項9から10のいずれか一項に記載のクラウドコントローラ。
  12. 少なくとも1つの制約が、第1のセグメントに属する少なくとも1つの構成要素と少なくとも1つのセグメントの第2のセグメントに属する少なくとも1つの構成要素の間の制約を指定するセグメント間制約を含む、請求項9から11のいずれか一項に記載のクラウドコントローラ。
  13. プロセッサ(310)が、
    要求するデバイスにラベルと共に構成要素の確立を通知し(450)、
    要求するデバイスからラベルを含むスケール要求を受信し(510)、
    第1のセグメントをラベルに関連するものとして識別し(520)、および、
    第1のセグメントに対してスケーリングオペレーションを実行する(535)ようにさらに構成される、請求項9から12のいずれか一項に記載のクラウドコントローラ。
  14. プロセッサ(310)が、第1のセグメントを識別した後、
    ポリシーファイルから第1のセグメントについて少なくとも1つの制約を識別し(525)、および、
    少なくとも1つの制約に整合する位置であって、スケーリングオペレーションに関する位置を選択する(530)ようにさらに構成され、
    スケーリングオペレーションを実行するステップ(535)において、プロセッサ(310)が選択された位置でスケーリングオペレーションを実行するように構成される、請求項13に記載のクラウドコントローラ。
  15. プロセッサ(310)が、
    要求するデバイスからアプリケーションについて追加の構成要素を確立する要求を受信し(425)、
    追加の構成要素の確立のために少なくとも1つのセグメントの第2のセグメントを選択し(430)、
    第2のセグメント内における追加の構成要素の確立のための位置を選択し(440)、および、
    選択された位置で追加の構成要素を確立する(445)ようにさらに構成され、
    第2のセグメントを選択するステップ(430)において、プロセッサ(310)が、少なくとも1つのセグメントのポリシーファイルの定義および第1のセグメント内における構成要素の確立を反映するシステム状態情報に基づいて、追加の構成要素の確立のための第2のセグメントを選択するように構成される、請求項9から14のいずれか一項に記載のクラウドコントローラ。
JP2015536234A 2012-10-10 2013-09-30 クラウド内に地理的分散型のアプリケーションを自動的に配備する方法および装置 Expired - Fee Related JP6113849B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/648,628 2012-10-10
US13/648,628 US9712402B2 (en) 2012-10-10 2012-10-10 Method and apparatus for automated deployment of geographically distributed applications within a cloud
PCT/IB2013/002408 WO2014057347A2 (en) 2012-10-10 2013-09-30 Method and apparatus for automated deployment of geographically distributed applications within a cloud

Publications (2)

Publication Number Publication Date
JP2015534696A true JP2015534696A (ja) 2015-12-03
JP6113849B2 JP6113849B2 (ja) 2017-04-12

Family

ID=50433648

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015536234A Expired - Fee Related JP6113849B2 (ja) 2012-10-10 2013-09-30 クラウド内に地理的分散型のアプリケーションを自動的に配備する方法および装置

Country Status (7)

Country Link
US (1) US9712402B2 (ja)
EP (1) EP2907027A2 (ja)
JP (1) JP6113849B2 (ja)
KR (1) KR20150054998A (ja)
CN (1) CN104704470A (ja)
IN (1) IN2015DN02532A (ja)
WO (1) WO2014057347A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018503897A (ja) * 2014-12-29 2018-02-08 株式会社Nttドコモ クラウドシステムにおけるリソース管理
JP2019503535A (ja) * 2016-02-25 2019-02-07 華為技術有限公司Huawei Technologies Co.,Ltd. 自動アプリケーション展開のための方法およびクラウド管理ノード
US11296945B2 (en) 2016-04-08 2022-04-05 Huawei Technologies Co., Ltd. Management method and apparatus

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US8504526B2 (en) 2010-06-04 2013-08-06 Commvault Systems, Inc. Failover systems and methods for performing backup operations
US10425471B2 (en) 2012-10-02 2019-09-24 Razer (Asia-Pacific) Pte. Ltd. Multi-tasker
US9654556B2 (en) 2012-10-02 2017-05-16 Razer (Asia-Pacific) Pte. Ltd. Managing applications on an electronic device
US9268655B2 (en) 2012-10-02 2016-02-23 Nextbit Systems Inc. Interface for resolving synchronization conflicts of application states
US9106721B2 (en) 2012-10-02 2015-08-11 Nextbit Systems Application state synchronization across multiple devices
US9717985B2 (en) 2012-10-02 2017-08-01 Razer (Asia-Pacific) Pte. Ltd. Fragment-based mobile device application streaming utilizing crowd-sourcing
US9112885B2 (en) 2012-10-02 2015-08-18 Nextbit Systems Inc. Interactive multi-tasker
US9747000B2 (en) 2012-10-02 2017-08-29 Razer (Asia-Pacific) Pte. Ltd. Launching applications on an electronic device
US8892693B2 (en) * 2012-10-02 2014-11-18 Nextbit Systems Inc. Enabling fragment-based mobile device application streaming
US9600552B2 (en) 2012-10-02 2017-03-21 Nextbit Systems Inc. Proximity based application state synchronization
US8764555B2 (en) 2012-10-02 2014-07-01 Nextbit Systems Inc. Video game application state synchronization across multiple devices
US8977723B2 (en) * 2012-10-02 2015-03-10 Nextbit Systems Inc. Cloud based application fragmentation
US9210203B2 (en) * 2012-10-02 2015-12-08 Nextbit Systems Inc. Resource based mobile device application streaming
US9776078B2 (en) 2012-10-02 2017-10-03 Razer (Asia-Pacific) Pte. Ltd. Application state backup and restoration across multiple devices
EP2929717A4 (en) * 2012-12-07 2016-07-20 Hewlett Packard Entpr Dev Lp MANAGING NETWORK RESOURCES
US8954611B2 (en) 2013-03-21 2015-02-10 Nextbit Systems Inc. Mechanism for sharing states of applications and devices across different user profiles
US10123189B2 (en) 2013-03-21 2018-11-06 Razer (Asia-Pacific) Pte. Ltd. Electronic device system restoration by tapping mechanism
USD768162S1 (en) 2013-09-30 2016-10-04 Nextbit Systems Inc. Display screen or portion thereof with graphical user interface
US20150113144A1 (en) * 2013-10-21 2015-04-23 Alcatel-Lucent Usa Inc. Virtual resource placement for cloud-based applications and solutions
US9621427B1 (en) * 2013-12-06 2017-04-11 Vmware, Inc. Automatic placement of clients in a distributed computer system satisfying constraints
US9811427B2 (en) 2014-04-02 2017-11-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
US10884775B2 (en) * 2014-06-17 2021-01-05 Nokia Solutions And Networks Oy Methods and apparatus to control a virtual machine
WO2016075671A1 (en) * 2014-11-13 2016-05-19 Telefonaktiebolaget L M Ericsson (Publ) Elasticity for highly availabile applications
US10078619B2 (en) 2014-12-16 2018-09-18 International Business Machines Corporation Dynamic association of application workload tiers to infrastructure elements in a cloud computing environment
CN104615466B (zh) * 2015-02-05 2017-08-25 广州亦云信息技术有限公司 一种云平台部署方法和系统
US20160323379A1 (en) * 2015-04-28 2016-11-03 Microsoft Technology Licensing, Llc Distributed storage of software images in computing systems
EP3121997B3 (en) * 2015-07-20 2024-04-10 Koninklijke KPN N.V. Service provisioning in a communication network
JP6498844B2 (ja) 2015-07-22 2019-04-10 華為技術有限公司Huawei Technologies Co.,Ltd. コンピュータデバイス及びコンピュータデバイスによりデータを読み取る/書き込むための方法
US10437506B2 (en) * 2015-08-17 2019-10-08 Microsoft Technology Licensing Llc Optimal storage and workload placement, and high resiliency, in geo-distributed cluster systems
CN106487834B (zh) * 2015-08-27 2020-09-08 香港中文大学深圳研究院 一种在云平台上部署服务器提供服务的方法
US9398087B1 (en) * 2015-11-29 2016-07-19 International Business Machines Corporation Secure deployment of an application across deployment locations
US10885461B2 (en) 2016-02-29 2021-01-05 Oracle International Corporation Unsupervised method for classifying seasonal patterns
US10699211B2 (en) 2016-02-29 2020-06-30 Oracle International Corporation Supervised method for classifying seasonal patterns
US10331802B2 (en) 2016-02-29 2019-06-25 Oracle International Corporation System for detecting and characterizing seasons
US11113852B2 (en) 2016-02-29 2021-09-07 Oracle International Corporation Systems and methods for trending patterns within time-series data
US10198339B2 (en) 2016-05-16 2019-02-05 Oracle International Corporation Correlation-based analytic for time-series data
US11936623B2 (en) * 2016-05-18 2024-03-19 Zscaler, Inc. Systems and methods for utilizing sub-clouds in a cloud-based system for private application access
US10635563B2 (en) 2016-08-04 2020-04-28 Oracle International Corporation Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems
US11082439B2 (en) 2016-08-04 2021-08-03 Oracle International Corporation Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems
US10417102B2 (en) 2016-09-30 2019-09-17 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including virtual machine distribution logic
US10915830B2 (en) 2017-02-24 2021-02-09 Oracle International Corporation Multiscale method for predictive alerting
US10949436B2 (en) 2017-02-24 2021-03-16 Oracle International Corporation Optimization for scalable analytics using time series models
US10817803B2 (en) 2017-06-02 2020-10-27 Oracle International Corporation Data driven methods and systems for what if analysis
US10621005B2 (en) 2017-08-31 2020-04-14 Oracle International Corporation Systems and methods for providing zero down time and scalability in orchestration cloud services
FR3076025B1 (fr) * 2017-12-27 2020-01-17 Bull Sas Reseau informatique d'infrastructures de ressources de calcul et procede d'affectation de ces ressources a des applications client
CN108363407B (zh) * 2018-01-04 2021-06-01 浙江大学 一种无人船自主航行的协同云控制系统
US10997517B2 (en) 2018-06-05 2021-05-04 Oracle International Corporation Methods and systems for aggregating distribution approximations
US10963346B2 (en) 2018-06-05 2021-03-30 Oracle International Corporation Scalable methods and systems for approximating statistical distributions
US11138090B2 (en) 2018-10-23 2021-10-05 Oracle International Corporation Systems and methods for forecasting time series with variable seasonality
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US10855548B2 (en) 2019-02-15 2020-12-01 Oracle International Corporation Systems and methods for automatically detecting, summarizing, and responding to anomalies
US11533326B2 (en) 2019-05-01 2022-12-20 Oracle International Corporation Systems and methods for multivariate anomaly detection in software monitoring
US11537940B2 (en) 2019-05-13 2022-12-27 Oracle International Corporation Systems and methods for unsupervised anomaly detection using non-parametric tolerance intervals over a sliding window of t-digests
US11887015B2 (en) 2019-09-13 2024-01-30 Oracle International Corporation Automatically-generated labels for time series data and numerical lists to use in analytic and machine learning systems
US11245636B2 (en) 2019-09-20 2022-02-08 International Business Machines Corporation Distributing computing resources based on location
US11429422B2 (en) 2019-10-24 2022-08-30 Dell Products L.P. Software container replication using geographic location affinity in a distributed computing environment
US11157304B2 (en) * 2019-11-01 2021-10-26 Dell Products L.P. System for peering container clusters running on different container orchestration systems
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
US11509715B2 (en) 2020-10-08 2022-11-22 Dell Products L.P. Proactive replication of software containers using geographic location affinity to predicted clusters in a distributed computing environment
US11645175B2 (en) 2021-02-12 2023-05-09 Commvault Systems, Inc. Automatic failover of a storage manager

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110119381A1 (en) * 2009-11-16 2011-05-19 Rene Glover Methods and apparatus to allocate resources associated with a distributive computing network
US20110295999A1 (en) * 2010-05-28 2011-12-01 James Michael Ferris Methods and systems for cloud deployment analysis featuring relative cloud resource importance
JP2012069056A (ja) * 2010-09-27 2012-04-05 Hitachi Systems Ltd クラウドサービス再配置システムと方法およびプログラム
JP2012173869A (ja) * 2011-02-18 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 割当決定装置、割当決定方法、割当システム及び割当決定プログラム

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185619B1 (en) * 1996-12-09 2001-02-06 Genuity Inc. Method and apparatus for balancing the process load on network servers according to network and serve based policies
US6728750B1 (en) * 2000-06-27 2004-04-27 International Business Machines Corporation Distributed application assembly
US7559059B2 (en) * 2001-09-21 2009-07-07 Bea Systems, Inc. Method and apparatus for smart directories for application deployment
US9525566B2 (en) 2003-07-31 2016-12-20 Cloudsoft Corporation Limited Self-managed mediated information flow
US8307112B2 (en) 2003-07-31 2012-11-06 Cloudsoft Corporation Limited Mediated information flow
US20060070067A1 (en) * 2004-06-03 2006-03-30 Dell Products L.P. Method of using scavenger grids in a network of virtualized computers
US8732182B2 (en) * 2004-12-02 2014-05-20 Desktopsites Inc. System and method for launching a resource in a network
US20110016214A1 (en) * 2009-07-15 2011-01-20 Cluster Resources, Inc. System and method of brokering cloud computing resources
US8364638B2 (en) * 2005-09-15 2013-01-29 Ca, Inc. Automated filer technique for use in virtualized appliances and applications
US8572138B2 (en) * 2006-03-30 2013-10-29 Ca, Inc. Distributed computing system having autonomic deployment of virtual machine disk images
WO2007144611A1 (en) * 2006-06-12 2007-12-21 Enigmatec Corporation Self-managed distributed mediation networks
US8095923B2 (en) * 2006-06-29 2012-01-10 Augusta Systems, Inc. System and method for deploying and managing intelligent nodes in a distributed network
CN101014045B (zh) * 2007-02-02 2010-09-01 清华大学 服务承载网中服务管理的分布式方法
US8380880B2 (en) * 2007-02-02 2013-02-19 The Mathworks, Inc. Scalable architecture
US8239844B2 (en) * 2007-02-14 2012-08-07 The Mathworks, Inc. Method of using parallel processing constructs and dynamically allocating program portions
US8589372B2 (en) * 2008-12-16 2013-11-19 Clinton A. Krislov Method and system for automated document registration with cloud computing
US8433749B2 (en) * 2009-04-15 2013-04-30 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
US10127295B2 (en) * 2009-06-05 2018-11-13 Microsoft Technolofy Licensing, Llc Geographic co-location service for cloud computing
US20100319004A1 (en) * 2009-06-16 2010-12-16 Microsoft Corporation Policy Management for the Cloud
WO2011014160A1 (en) * 2009-07-28 2011-02-03 Hewlett-Packard Development Company, L.P. Controlling cloud services
US8306807B2 (en) * 2009-08-17 2012-11-06 N T repid Corporation Structured data translation apparatus, system and method
US8346935B2 (en) * 2010-01-15 2013-01-01 Joyent, Inc. Managing hardware resources by sending messages amongst servers in a data center
WO2011091056A1 (en) * 2010-01-19 2011-07-28 Servicemesh, Inc. System and method for a cloud computing abstraction layer
US11922196B2 (en) * 2010-02-26 2024-03-05 Red Hat, Inc. Cloud-based utilization of software entitlements
US8510590B2 (en) * 2010-03-17 2013-08-13 Vmware, Inc. Method and system for cluster resource management in a virtualized computing environment
US20120011077A1 (en) * 2010-07-12 2012-01-12 Bhagat Bhavesh C Cloud Computing Governance, Cyber Security, Risk, and Compliance Business Rules System and Method
US20120030356A1 (en) * 2010-07-30 2012-02-02 International Business Machines Corporation Maximizing efficiency in a cloud computing environment
US8478845B2 (en) * 2010-08-16 2013-07-02 International Business Machines Corporation End-to-end provisioning of storage clouds
US8554917B2 (en) * 2010-08-20 2013-10-08 International Business Machines Corporation Performance isolation for storage clouds
US8812627B2 (en) * 2010-08-20 2014-08-19 Adobe Systems Incorporated System and method for installation and management of cloud-independent multi-tenant applications
US8607242B2 (en) * 2010-09-02 2013-12-10 International Business Machines Corporation Selecting cloud service providers to perform data processing jobs based on a plan for a cloud pipeline including processing stages
US8800055B2 (en) * 2010-10-20 2014-08-05 International Business Machines Corporation Node controller for an endpoint in a cloud computing environment
US20130205028A1 (en) * 2012-02-07 2013-08-08 Rackspace Us, Inc. Elastic, Massively Parallel Processing Data Warehouse
US8566838B2 (en) * 2011-03-11 2013-10-22 Novell, Inc. Techniques for workload coordination
US9358460B2 (en) * 2011-04-28 2016-06-07 Numecent Holdings, Inc. Adaptive cloud-based application streaming
US20120311575A1 (en) * 2011-06-02 2012-12-06 Fujitsu Limited System and method for enforcing policies for virtual machines
US9063790B2 (en) * 2011-06-13 2015-06-23 Accenture Global Services Limited System and method for performing distributed parallel processing tasks in a spot market
ITMI20111209A1 (it) * 2011-06-30 2012-12-31 Ibm Monitoraggio a livello utente in un ambiente di elaborazione a nuvola
US8909785B2 (en) * 2011-08-08 2014-12-09 International Business Machines Corporation Smart cloud workload balancer
US8612599B2 (en) * 2011-09-07 2013-12-17 Accenture Global Services Limited Cloud service monitoring system
US20140047342A1 (en) * 2012-08-07 2014-02-13 Advanced Micro Devices, Inc. System and method for allocating a cluster of nodes for a cloud computing system based on hardware characteristics

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110119381A1 (en) * 2009-11-16 2011-05-19 Rene Glover Methods and apparatus to allocate resources associated with a distributive computing network
US20110295999A1 (en) * 2010-05-28 2011-12-01 James Michael Ferris Methods and systems for cloud deployment analysis featuring relative cloud resource importance
JP2012069056A (ja) * 2010-09-27 2012-04-05 Hitachi Systems Ltd クラウドサービス再配置システムと方法およびプログラム
JP2012173869A (ja) * 2011-02-18 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 割当決定装置、割当決定方法、割当システム及び割当決定プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018503897A (ja) * 2014-12-29 2018-02-08 株式会社Nttドコモ クラウドシステムにおけるリソース管理
JP2019503535A (ja) * 2016-02-25 2019-02-07 華為技術有限公司Huawei Technologies Co.,Ltd. 自動アプリケーション展開のための方法およびクラウド管理ノード
US10824408B2 (en) 2016-02-25 2020-11-03 Huawei Technologies, Co., Ltd. Method for automatic application deployment and cloud management node
US11296945B2 (en) 2016-04-08 2022-04-05 Huawei Technologies Co., Ltd. Management method and apparatus

Also Published As

Publication number Publication date
EP2907027A2 (en) 2015-08-19
KR20150054998A (ko) 2015-05-20
WO2014057347A2 (en) 2014-04-17
US9712402B2 (en) 2017-07-18
IN2015DN02532A (ja) 2015-09-11
CN104704470A (zh) 2015-06-10
US20140101300A1 (en) 2014-04-10
WO2014057347A3 (en) 2014-07-31
JP6113849B2 (ja) 2017-04-12

Similar Documents

Publication Publication Date Title
JP6113849B2 (ja) クラウド内に地理的分散型のアプリケーションを自動的に配備する方法および装置
US10887380B2 (en) Multi-cluster ingress
US10394477B2 (en) Method and system for memory allocation in a disaggregated memory architecture
US8930731B2 (en) Reducing power consumption in data centers having nodes for hosting virtual machines
US20190319881A1 (en) Traffic management based on past traffic arrival patterns
JP2016525757A (ja) 分散型クラウドにおける作業負荷移動に基づくプロファイルベースのsla保証
US9065832B2 (en) Method and apparatus for automated network connectivity for managed application components within a cloud
CN105052097A (zh) 统一云资源控制器
US11966768B2 (en) Apparatus and method for multi-cloud service platform
CN110166507B (zh) 多资源调度方法和装置
US20230222006A1 (en) Container Orchestration System
US9164800B2 (en) Optimizing latencies in cloud systems by intelligent compute node placement
KR102650892B1 (ko) 지역적으로 분산된 다중 클라우드 환경에서의 컨테이너 오케스트레이션 장치 및 이를 이용한 방법
US11627169B2 (en) Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control
CN114924751A (zh) 一种业务访问请求流量分配的方法和装置
KR20220000592A (ko) 사물인터넷 엣지 컴퓨팅 환경을 위한 컨테이너 기반 동적 자원 분배 방법 및 장치
KR101936942B1 (ko) 분산형 컴퓨팅 가속화 플랫폼 장치 및 분산형 컴퓨팅 가속화 플랫폼 운영 방법
US20200153749A1 (en) Biased selection of dedicated physical connections to provider network
Pawar et al. A review on virtual machine scheduling in cloud computing
CN114979286A (zh) 容器服务的访问控制方法、装置、设备及计算机存储介质
Gao et al. Redundant virtual machine placement in mobile edge computing
Shishira et al. A comprehensive survey on federated cloud computing and its future research directions
WO2022003953A1 (ja) ネットワーク仮想化システム、仮想リソース管理装置、仮想リソース管理方法およびプログラム
JP6339978B2 (ja) リソース割当管理装置およびリソース割当管理方法
KR101563808B1 (ko) 모바일 그리드를 이용한 분산 가상 클라우드 제공 시스템 및 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161031

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170315

R150 Certificate of patent or registration of utility model

Ref document number: 6113849

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

LAPS Cancellation because of no payment of annual fees