JP2023547895A - データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術 - Google Patents

データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術 Download PDF

Info

Publication number
JP2023547895A
JP2023547895A JP2023525057A JP2023525057A JP2023547895A JP 2023547895 A JP2023547895 A JP 2023547895A JP 2023525057 A JP2023525057 A JP 2023525057A JP 2023525057 A JP2023525057 A JP 2023525057A JP 2023547895 A JP2023547895 A JP 2023547895A
Authority
JP
Japan
Prior art keywords
data center
electrical
configuration
vcn
logical
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.)
Pending
Application number
JP2023525057A
Other languages
English (en)
Other versions
JPWO2022093713A5 (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 JP2023547895A publication Critical patent/JP2023547895A/ja
Publication of JPWO2022093713A5 publication Critical patent/JPWO2022093713A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/263Arrangements for using multiple switchable power supplies, e.g. battery and AC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2015Redundant power supplies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/02Data centres
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/02Fault tolerance, e.g. for transient fault suppression
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/02Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Power Engineering (AREA)
  • Power Sources (AREA)
  • Hardware Redundancy (AREA)
  • Small-Scale Networks (AREA)
  • Monitoring And Testing Of Transmission In General (AREA)

Abstract

コンピュータシステムは、データセンタのレイアウトを受信してもよく、データセンタのレイアウトは、複数のサーバラック、配電部、および無停電電源の物理的位置を識別する。コンピュータシステムは、データセンタのための障害ドメイン構成を受信してもよく、障害ドメイン構成は、1つ以上のインスタンスが単一の可用性障害ドメイン内の独立した物理ハードウェアデバイス上に記憶されるように、1つ以上のインスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別する。コンピュータシステムは、複数の障害ドメインを複数の電気的ゾーンに割り当てることによってデータセンタの構成を決定してもよく、各電気的ゾーンは、1つ以上の配電部が故障した場合に複数の論理障害ドメインにわたる冗長な電力供給を提供する。コンピュータシステムは、ディスプレイ上にデータセンタのための構成を表示してもよい。

Description

関連出願の参照
本出願は、2020年9月25日に提出された「Techniques For Improving Ranging Between Electronic Devices」と題される米国特許仮出願第63/083,754号の利益を主張する、2021年3月24日に提出された「TECHNIQUES FOR GENERATING A CONFIGURATION FOR ELECTRICALLY ISOLATING FAULT DOMAINS IN A DATA CENTER」と題される米国特許仮出願第17/211,670号に対する優先権を主張し、その全体が、あらゆる目的のために、参照により本明細書に組み込まれる。
背景
データセンタは、障害ドメインによって編成され得る。障害ドメインは、可用性ドメイン内におけるハードウェアおよびインフラストラクチャのグループ化である。障害ドメインは、顧客計算インスタンスおよびストレージインスタンスを分散させて、インスタンスが単一の可用性ドメイン内で同じ物理ハードウェア上にないようにすることによって、アンチアフィニティを提供する。ある障害ドメインに影響を及ぼすハードウェア障害またはハードウェア保守イベントは、他の障害ドメインにおけるインスタンスに影響を及ぼさない。しかしながら、これらの障害ドメインは、必ずしも互いに電気的に絶縁されているとは限らない。したがって、1つ以上の電源における電気的障害は、障害ドメイン冗長性または障害ドメイン上のインスタンスの性能の損失をもたらし得る。
概要
いくつかの実現例では、ある技術は、データセンタのレイアウトを受信することを含む。データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を特定し得る。本技術は、データセンタのための論理障害ドメイン構成を受信することを含み得る。論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し得る。計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され得る。本技術は、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによって、データセンタ構成を決定することを含み得る。複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供し得る。この技術は、データセンタ構成をデバイスに送信して表示することを含み得る。
いくつかの実現例では、命令のセットを記憶する非一時的コンピュータ可読媒体は、コンピュータシステムの1つ以上のプロセッサによって実行されるとコンピュータシステムに動作を実行させる1つ以上の命令を含む。動作は、データセンタのレイアウトを受信することを含み得る。データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を特定し得る。動作は、データセンタのための論理障害ドメイン構成を受信することを含み得る。論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し得る。計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され得る。動作は、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによって、データセンタ構成を決定することを含み得る。複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供し得る。動作は、データセンタ構成をデバイスに送信して表示することを含み得る。
いくつかの実現例では、コンピュータシステムは、1つ以上のメモリと、1つ以上のメモリに通信可能に結合され、動作を実行するように構成される1つ以上のプロセッサとを含む。動作は、データセンタのレイアウトを受信することを含み得る。データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を特定し得る。動作は、データセンタのための論理障害ドメイン構成を受信することを含み得る。論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別することを含み得る。計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され得る。動作は、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによって、データセンタ構成を決定することを含み得る。複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供する。動作は、データセンタ構成をデバイスに送信して表示することを含み得る。
これらおよび他の実施形態を以下に詳細に説明する。例えば、他の実施形態は、本明細書で説明される方法に関連付けられるシステム、デバイス、およびコンピュータ可読媒体を対象とする。
本開示の実施形態の性質および利点のより良い理解は、以下の詳細な説明および添付の図面を参照することによって得られ得る。
いくつかの実施形態による第1の例示的なデータセンタを示す図である。 本開示の実施形態による第2の例示的なデータセンタを示す図である。 本開示の実施形態による、上記で説明される電気的絶縁技術を採用しない、例示的データセンタを示す。 図3に示すデータセンタ構成の効果を示す表である。 上述の電気的絶縁技術を用いるデータセンタのフェイルオーバ行列を示す第1の表を示す。 上述の電気的絶縁技術を用いるデータセンタのフェイルオーバ行列を示す第2の表である。 データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術に関連する例示的なプロセスのフローチャートである。 少なくとも1つの実施形態によるデータセンタのブロック図である。 少なくとも1つの実施形態による、サービスシステムとしてクラウドインフラストラクチャを実現するための1つのパターンを示すブロック図である。 少なくとも1つの実施形態による、サービスシステムとしてクラウドインフラストラクチャを実現するための別のパターンを示すブロック図である。 少なくとも1つの実施形態による、サービスシステムとしてクラウドインフラストラクチャを実現するための別のパターンを示すブロック図である。 少なくとも1つの実施形態による、サービスシステムとしてクラウドインフラストラクチャを実現するための別のパターンを示すブロック図である。 少なくとも1つの実施形態による、例示的なコンピュータシステムを示すブロック図である。
図面の詳細な説明
以下の説明では、説明の目的のために、特定の詳細が、特定の実施形態の完全な理解を促すために記載される。しかしながら、様々な実施形態がこれらの具体的な詳細なしに実施されてもよいことは明らかであろう。図面および説明は、限定的であることを意図しない。
特定の実施形態は、データセンタ内で様々な障害ドメインを電気的に絶縁するための構成を決定するための技術を開示する。データセンタは、論理障害ドメインの一部としていくつかのサーバにわたって計算インスタンスおよび/またはストレージインスタンスを分散させることによって冗長性および復元力を提供し得る。かくして、特定のサーバまたはサーバラックの故障は、計算インスタンスおよび/またはストレージインスタンスを動作不能または利用不可能にしない。例えば、ウェブサービスが障害ドメインにわたっていくつかのサーバ上でホストされる場合、任意の1つのサーバの障害は、ウェブサービスを利用不可能にしない。
本開示は、様々な障害ドメイン内のデバイスへの電力源および配電部を考慮することによって障害ドメイン概念を改善する。例えば、ある障害ドメイン内の複数のサーバが同じ電源によって電力供給される場合、その電源または配電部の故障は、障害ドメイン概念が提供する冗長性を破壊し得る。
データセンタのレイアウトを受信することを含む技術が開示される。データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を特定し得る。本技術は、データセンタのための論理障害ドメイン構成を受信することを含み得る。論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し得る。計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され得る。本技術は、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによって、データセンタ構成を決定することを含み得る。複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供し得る。この技術は、データセンタ構成をデバイスに送信して表示することを含み得る。
このように、本明細書で説明される技術を使用するデータセンタ構成は、1つ以上の電源または給電の故障の場合でも、論理障害ドメインによって提供される冗長性および復元力を保つ。
本出願の目的では、「障害ドメイン」は、単一の障害点を共有するハードウェア構成要素(コンピュータ、スイッチ、およびその他)のセットである。計算プールは、障害ドメインに論理的に分割され得る。いくつかの例では、各可用性ドメインは、2つ以上の障害ドメインを含む。障害ドメインは、アンチアフィニティを提供し、インスタンスが単一の可用性ドメイン内で同じ物理ハードウェア上にないように、開発者がインスタンスを分散することを可能にする。ある障害ドメインに影響を及ぼすハードウェア障害またはハードウェア保守イベントは、他の障害ドメインにおけるインスタンスに影響を及ぼさない。
本出願の目的では、「インスタンス」は、顧客エンクレーブ(公に入手可能)またはサービスエンクレーブのいずれかで動作しているホスト型サーバである。インスタンスが、それが動作するハードウェアに直接アクセスする場合、それは、ベアメタルインスタンスと見なされ得る。計算インスタンスまたはストレージインスタンスの間にハイパーバイザがある場合、それは仮想インスタンスと見なされ得る。
本出願の目的では、データセンタにおける「電気的ゾーン」(EZ)は、電気的インフラストラクチャを通して個々のラックに供給される無停電電源(UPS)の固有の組み合わせとして定義される。EZは、データセンタの設計時に確立することができ、構築後には柔軟性はない。データセンタは、EZがわずか1つでもよい。UPS構成および電力分配に応じて、1つの場所が、多くの障害ドメインを有してもよい。表1は、無停電電源の数が電気的ゾーンの数にどのように帰着するかを示す。
Figure 2023547895000002
電気的ゾーン間にマッピングされた障害ドメインは、電気的イベント中のサービス信頼性を高める。電気的ゾーンは、それらの復元力が、計画された保守および設備故障中に、異なる程度だけ、低減されることになる。いくつかのイベントは、UPSの復元力を除去し、ラックに商用電力のみを供給する。他のイベントは、電気的インフラストラクチャの異なるレベルで電力を遮断する。いくつかの遮断は、必要なメンテナンスサイクル中に発生する。電力復元力はラックを降ろすのに2つの障害を要するように設計されることに留意することが重要である。
「ブラスト半径」の例は、以下の表にある。これは、インフラストラクチャ設計に応じて場所によって異なる。
表2は、様々な機器機能停止の影響を示す。
Figure 2023547895000003
図1は、本開示のいくつかの実施形態による第1の例示的なデータセンタ100を示す。データセンタは、1つ以上の変電所102、104から電力を受け取ることができる。変電所102、104は、発電源(例えば、原子力発電所、従来の発電所(例えば、石炭、油、および天然ガス)、水力発電所、風力タービン発電システム、太陽光発電システム、地熱発電システム)から電力を受け取ることができ、発電源は、高周波電力線を介して変電所(例えば、変電所102、104)に電力を伝送する。変電所102、104は、発電、送電、および配電システムの一部である。変電所102、104は、電圧を高から低に、または逆に変換でき、またはいくつかの他の重要な機能のいずれかを実行できる。発電所と消費者との間で、電力は、異なる電圧レベルでいくつかの変電所を通って流れてもよい。変電所102、104は、高い送電電圧とより低い配電電圧との間で、または2つの異なる送電電圧の相互接続において、電圧レベルを変更するための変圧器を含み得る。
データセンタは、商用電力系統からの電力の損失の場合に変電所に電力を供給する1つ以上のバックアップ電源106(例えば、発電機)を有してもよい。
変電所102、104またはバックアップ電源106からの電力は、スイッチ108に送られ得る。スイッチ108は、無瞬断切換システム(STS)を含み得る。STSは、増大した供給可用性を提供するインテリジェントスイッチであり、主電源が故障するかまたは利用可能でない場合に、負荷を代替電源に自動的に転送する。スイッチ108は、自動切換スイッチ(ATS)を含むこともできる。ATSは、その主電源で発生した障害または事故を感知すると、商用電力が回復されるまで、電力供給を主電源からバックアップ発電機に自動的に切り換える装置である。
スイッチから、電力は、様々な電力供給装置(例えば、無停電電源(UPS)装置)110、112、114、116に経路付けられる。UPS110,112,114,116は、入力電源または主電源が故障したときに負荷に非常用電力を供給する電気機器である。UPS110、112、114、116は、バッテリ、スーパーキャパシタ、またはフライホイールに蓄えられたエネルギーを供給することによって、入力電力中断からのほぼ瞬時の保護を提供するという点で、予備発電機または待機発電機とは異なる。ほとんどの無停電電源のオンバッテリランタイムは、比較的短い(ほんの数分であり得る)が、待機電源を始動するかまたは保護された機器を適切に遮断するのに充分であり得る。
UPSは、典型的には、予期しない電力中断が、負傷者、死者、深刻な業務中断、またはデータ損失を引き起こし得る場合に、コンピュータ、データセンタ、電気通信機器、または他の電気機器などのハードウェアを保護するために、使用される。UPSユニットのサイズは、ビデオモニタなしで単一のコンピュータを保護するように設計されたユニット(約200ボルトアンペア定格)から、データセンタまたは建物全体に電力供給する大型ユニットにまで及ぶ。
UPS110、112、114、116は、1つ以上の電力分配ユニット(PDU)118,120,122,124,126,および128に電力を供給する。PDUは、特にデータセンタ内に位置するコンピュータおよびネットワーク接続機器のラックに電力を分配するように設計された複数の出力を備えた装置である。データセンタは、電力保護および管理ソリューションにおける課題に直面する。これは、効率、稼働時間、および成長を改善するために、多くのデータセンタがPDU監視に依存する理由である。データセンタ用途の場合、電力要件は、典型的には、22キロボルトアンペア(kVA)またはそれ以上の大きさの電力入力を伴う家庭またはオフィススタイルの電力タップよりもはるかに大きい。大部分の大型データセンタは、3相電力入力および1相電力出力を有するPDUを利用する。PDUには2つの主なカテゴリ、すなわち基本PDUおよびインテリジェント(ネットワーク接続された)PDUまたはiPDUがある。基本PDUは、単に、入力から複数のコンセントに電力を分配する手段を提供する。インテリジェントPDUは、通常、電力計量情報、電源コンセントのオン/オフ制御、および/またはアラームの遠隔管理のためにPDUを可能にするインテリジェンスモジュールを有する。いくつかの高度なPDUは、ユーザが温度、湿度、気流などの外部センサを管理することを可能にする。
PDU118,120,122,124,126,および128は、ラックPDUに電力を転送し得る。ラックPDUは、電力をデータサーバなどの個々の電子モジュールに転送する。サーバの役割は、データを共有すること、ならびにリソースを共有し、作業を分散することである。サーバコンピュータは、それ自身のコンピュータプログラムも提供し得る。
電気的ラックの各々は、冗長電源を受け取る。たとえば、UPS 110,112,114,および116の各々は、変電所102、104から、またはバックアップ電源106から電力を受け取り得る。PDUの各々は、複数のUPSから電力を受け取り得る。例えば、PDU1 118は、UPS A110およびUPS Bから電力を受け取り得る。ラックの各々は、複数のPDUから電力を受け取り得る。例えば、ラック1 139は、PDU1 118およびPDU6 128から電力を受け取る。この冗長性は、どのような単一故障点脆弱性も伴わずに、サーバデバイスへの電力を可能にする。
電気的ラックの各々は、複数の障害ドメインに分割され得る。例えば、ラック1 130およびラック4 136は、障害ドメイン1上にある。ラック2 132およびラック5 138は障害ドメイン2上にあり、ラック3 134およびラック6 140は障害ドメイン3上にある。このようにして、顧客インスタンス(例えば、ウェブサービス)は、3つの障害ドメインにわたって伝搬され得る。したがって、1つの障害ドメイン内の1つ以上のラックに関する問題は、他の障害ドメイン上のサービスに影響を与えないことになる。
図2は、本開示の実施形態による改善されたデータセンタ200を示す。データセンタ100の同じ構成要素の多くを有する一方、改善されたデータセンタ200は、電気的ゾーン240,242,および244を導入する。
図2に示すように、データセンタ200は、2つの電力レッグ252、254を有する。電力レッグ252、254は、データセンタ100を参照して上述したように、変電所202と、バックアップ電源204と、UPS210、212とを含み得る。変電所202およびバックアップ電源は、スイッチ208に給電し得る。スイッチ208は、無瞬断切換スイッチ(STS)または自動切換スイッチ(ATS)とし得る。無瞬断切換スイッチは、シリコン制御された整流器(SCR)などの電力半導体を使用して、負荷を2つのソース間で転送する。機械的可動部品がないので、転送は、おそらく電力周波数の4分の1サイクル内で迅速に完了され得る。無瞬断切換スイッチは、信頼できる独立した電力源が利用可能であり、少数の電力周波数サイクル中断時間からであっても、または主電源におけるどのようなサージもしくはサグからであっても、負荷を保護する必要がある場合に、使用され得る。自動切換スイッチ(ATS)は、バックアップ発電機が配置される場合に設置されることが多く、したがって、発電機は、商用電源が故障した場合に、一時的な電力を供給し得る。
図2は、2つの電力レッグ250を示す。電力レッグ250は、3つのPDU 218,220,および222に電力を供給する。PDU 218,220,および222の各々は、電気的ゾーンによって複数のラックに電力を供給する。例えば、電気的ゾーン1 240は、ラック1 230およびラック2 232を含み、それらは両方とも障害ドメイン1内にある。電気的ゾーン1 240は、PDU1 218およびPDU2 220の両方から電力を受け取る。
電気的ゾーン2 242は、ラック2 234およびラック4 236を含み、両方とも、障害ドメイン2内にある。電気的ゾーン2 242は、PDU1 218およびPDU3 222の両方から電力を受け取る。
電気的ゾーン3 244は、ラック5 237およびラック6 238を含み、これらは両方とも障害ドメイン3にある。電気的ゾーン3 244は、PDU1 218およびPDU3 238の両方から電力を受け取る。
図2に示される構成は、障害隔離および電気的絶縁の両方を可能にする。例えば、顧客は、3つの障害ドメイン(例えば、障害ドメイン1、障害ドメイン2、および障害ドメイン3)にわたってインスタンスを記憶し得る。PDU218,220,および222のうちのいずれか1つの損失は、依然として、電気的絶縁により、障害ドメイン冗長性を提供するであろう。例えば、インスタンスがラック1 230(障害ドメイン1)、ラック3(障害ドメイン2)、およびラック5(障害ドメイン3)に記憶される場合。PDU218が故障した場合、ラック1 230はPDU2 220から電力を受け取り、ラック3はPDU3 222から電力を受け取り、ラック5はPDU2 220およびPDU3 222から電力を受け取る。したがって、単一のPDU障害の場合、障害ドメイン冗長性が保存される。
図3は、上述の電気的絶縁技術を採用しない例示的なデータセンタ300を示す。例えば、UPS A310、UPS B312、UPS C314、UPS D316の各々は、図3に示すように、PDU1 318、PDU2 320、PDU3 322、PDU4 324、PDU5 326、およびPDU6 328に冗長電力を供給する。次に、PDU1 318、PDU2 320、PDU3 322、PDU4 324、PDU5 326、およびPDU6 328は、ラック1 330、ラック2 332、ラック3 334、ラック4 336、ラック5 338、およびラック6 340に電力を供給する。図3に示すデータセンタ300の構成では、電気的絶縁の概念は採用されない。PDU1 318は、ライン342を介してラック1 330に一次電力を供給し、ライン346を介してラック2 332に二次電力を供給する。PDU2 320は、ライン348を介してラック2 332に一次電力を供給し、ライン344を介してラック1 330に二次電力を供給する。PDU3 322は、ライン350を介してラック3 334に一次電力を供給し、ライン354を介してラック4 336に二次電力を供給する。PDU4 324は、ライン356を介してラック4 336に一次電力を供給し、ライン352を介してラック3 334に二次電力を供給する。PDU5 326は、ライン358を介してラック5 338に一次電力を供給し、ライン362を介してラック6 340に二次電力を供給する。PDU6は、ライン364を介してラック6 340に一次電力を供給し、ライン366を介してラック5 338に二次電力を供給する。そのようにして、すべてのラックは複製電源を有する。
図4は、図3に示すデータセンタ構成300の効果を示す表である。UPS A310およびUPS B312の故障などの二重の電気的障害がある場合、結果ラック1 330およびラック2 332はオフラインである。これらのラックは障害ドメイン1について冗長性を与えるので、UPS A310およびUPS B312の両方が故障した場合、障害ドメイン1に記憶されるインスタンスは、UPS AおよびUPS Bの故障とともに喪失されるであろう。ラック3 334も、電源において冗長性を失うことになる。
図5は、上述の電気的絶縁技術を採用するデータセンタのフェイルオーバ行列を示す第1の表を示す。データセンタは、UPS A、UPS B、UPS C、およびUPS Dを含む。電気的ゾーン1はUPS AおよびUPS Bから電力を受け取る。電気的ゾーン2はUPS AおよびUPS Cから電力を受け取る。電気的ゾーン3はUPS AおよびUPS Dから電力を受け取る。電気的ゾーン4はUPS BおよびUPS Cから電力を受け取る。電気的ゾーン5はUPS BおよびUPS Dから電力を受け取る。電気的ゾーン1はUPS CおよびUPS Dから電力を受け取る。障害ドメイン1、障害ドメイン2、および障害ドメイン3は、電気的ゾーン1、電気的ゾーン2、および電気的ゾーン3の間で拡散される。シナリオ1は、すべてのUPSがオンラインである正常状態を示す。その結果、故障の影響はなく、すべてのシステムが正常に動作する。
図5はまた、割り当てられたブロックボリュームを示す。ブロックボリュームは、ファイルストレージよりも拡張的なタイプのデータストレージである。ブロックボリュームは、インターネットスモールコンピュータシステムインターフェース(iSCSI)イーサネット(登録商標)プロトコルを使用して、オンプレミスストレージエリアネットワーク(SAN)と同様の特徴および性能を提供し、データライフサイクルのセキュリティおよび耐久性のために設計される。ブロックボリュームは、ある範囲の仮想マシンおよびベアメタルインスタンスと協働するように設計された信頼性の高い高性能ブロックストレージを顧客に提供する。組み込み冗長性により、ブロックボリュームは、持続的であり、仮想マシンの寿命を超えて耐久性があり、計算インスタンス当たり1ピコバイトにスケーリングし得る。ブロックボリュームは、高度な低レイテンシの不揮発性メモリエクスプレス(NVMe)ソリッドステートドライブ(SSD)および非ブロッキングネットワーク接続性をあらゆるホストに使用し、それは、Oracle計算サービスに秒単位高入力/出力動作(IOPS)を提供する。
シナリオ2では、UPS ANがオフラインである、単一のUPS電気障害がある。オフラインは、システム障害であり得るか、またはUPSが保守のために意図的にオフラインにされる場合であることに留意されたい。シナリオ2の障害の影響は、3つのゾーン(例えば、具体的には、電気的ゾーン1、電気的ゾーン2、および電気的ゾーン3)における電力冗長性の損失である。しかしながら、電気的ゾーン1、電気的ゾーン2、および電気的ゾーン3の各々は、代替源から電力を受け取り得る。例えば、電気的ゾーン1はUPS Bから電力を受け取る。電気的ゾーン2はUPS Cから電力を受け取り、電気的ゾーン3はUPS Dから電力を受け取る。電気的ゾーン4~6は影響を受けない。したがって、インスタンスのいずれも影響を受けないことになる。
図6は、上述の電気的絶縁技術を用いるデータセンタのフェイルオーバ行列を示す第2の表である。シナリオ3では、UPS AおよびUPS Bがオフラインであるため、二重の電気的障害がある。図6に示すように、UPS AおよびUPS Bの両方がオフラインであるため、電気的ゾーン1はオフラインである。しかしながら、障害ドメイン1内で電気的ゾーン1によってサポートされるサーバ内に記憶されるインスタンスは、電気的ゾーン4にわたって複製される。UPS BはオフラインであるがUPS Cはオンラインであるため、電気的ゾーン4は電力冗長性を失う。シナリオ3では、障害の影響は、電気的ゾーン1がオフラインであることであり、;障害ドメイン1およびブロックボリューム1の部分的な損失がある。シナリオ3では、1つの障害ドメインおよびブロックボリュームのみがサービスを失うことになる。
シナリオ4では、UPS BおよびUPS Dがオフラインであるため、二重の電気的障害がある。図6に図示されるように、UPS BおよびUPS Dは両方ともオフラインであるため、電気的ゾーン5はオフラインである。しかしながら、障害ドメイン1内で電気的ゾーン5によってサポートされるサーバに記憶されるインスタンスは、電気的ゾーン2にわたって複製される。電気的ゾーン1、3、4、および6は、UPS Bがオフラインであり、UPS Dがオンラインであるため、電力冗長性を失う。シナリオ3では、障害の影響は、電気的ゾーン5がオフラインであることであり;障害ドメイン2およびブロックボリューム1の部分的な損失がある。シナリオ4では、1つの障害ドメインおよびブロックボリュームのみがサービスを失うことになる。
シナリオ5では、UPS CおよびUPS Dがオフラインであるため、二重の電気的障害がある。図6に図示されるように、UPS CおよびUPS Dは両方ともオフラインであるため、電気的ゾーン6はオフラインである。しかしながら、障害ドメイン3内で電気的ゾーン6によってサポートされるサーバに記憶されたインスタンスは、電気的ゾーン3にわたって複製される。電気的ゾーン2、3、4、および5は、UPS CおよびUPS Dがオフラインであるため、電力冗長性を失う。シナリオ3では、障害の影響は、電気的ゾーン6がオフラインであることであり;障害ドメイン3およびブロックボリューム2の部分的な損失がある。シナリオ5では、1つの障害ドメインおよびブロックボリュームのみがサービスを失うことになる。
図7は、データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術に関連する例示的なプロセス700のフローチャートである。いくつかの実現例では、図7の1つ以上のプロセスブロックは、コンピュータシステム(例えば、図13に示されるコンピュータシステム1300)によって実行されてもよい。いくつかの実現例では、図7の1つ以上のプロセスブロックは、コンピュータシステムとは別個の、もしくはコンピュータシステムを含む、別のデバイスまたはデバイスのグループによって実行されてもよい。追加または代替として、図7の1つ以上のプロセスブロックは、処理ユニット1304、メモリ1310、ストレージサブシステム1318、入出力サブシステム1308、バス1302、および/または通信サブシステム1324など、コンピュータシステム1300の1つ以上の構成要素によって実行されてもよい。
図7に示されるように、プロセス700は、データセンタのレイアウトを受信することを含んでもよい。データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を識別し得る(ブロック710)。例えば、コンピュータシステムは、上述のように、データセンタのレイアウトを受信してもよく、データセンタのレイアウトは、複数のサーバラック、複数の配電部、および複数の電源の物理的位置を識別する。
図7にさらに示すように、プロセス700は、データセンタのための論理障害ドメイン構成を受信することを含んでもよく、論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し、計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行される(ブロック720)。たとえば、コンピュータシステムは、上で説明されたように、データセンタのための論理障害ドメイン構成を受信してもよく、論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し、計算インスタンスは、論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行される。
図7にさらに示されるように、プロセス700は、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによって、データセンタ構成を決定することを含んでもよく、複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供する(ブロック730)。例えば、コンピュータシステムは、上述のように、複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによってデータセンタ構成を決定してもよく、複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、複数の論理障害ドメインにわたって冗長な電力供給を提供する。
電気的ゾーンの値は数値であり;冗長数の「電気的ゾーン」の組み合わせは、場所によって異なることになる。数学的には、組み合わせの数は、以下の式によって表すことができ、
C(n,r)=n!(n-r)!r!
ここで、nは電力レッグの数であり、rはラック毎に必要とされる分岐回路の数である。
4つの別々のUPS出力フィーダ回路(包括的にA、B、C、Dとラベル付けされる)を伴うデータセンタの場合、これは、2つの分岐回路を必要とするラックについて「電気的ゾーン」の6つの一意の組み合わせを表す。以下の表3の以下の行列を使用して、障害ドメインを決定し、割り当てることができる:
Figure 2023547895000004
注:各可用性ドメイン(AD)内の電気的ゾーンの総数は、場所によって変動することになる。ADは、3つのタイプのデータセンタ、すなわち、AD、ポイントオブプレゼンス(POP)、およびインライン増幅器(ILA)、のうちの1つである。ADは物理的に互いに隔離され、リソース(例えば、電力、冷却など)を共有しないので、ADは相関された障害モードを有さない。領域は、1つ以上のADから構成される。領域内では、すべてのメンバADは、低レイテンシ高帯域幅ネットワークで相互接続される。
総数は、UPSシステムの数および構成に依存することになる。これは、階層評価の関数ではなく、UPSの量およびサイズに、より関連する。例えば、高度に分散されたデータセンタは、1つのスイートに対して6つ以上のUPSシステムを有してもよい。これは、以下の表4に示されるように、単一のデータセンタにおいて15個までの固有の電気的ゾーンを提示するであろう。
Figure 2023547895000005
加えて、サービスチームは、自身のプロビジョニングプロセスを調整して、ストアキーパ位置データを照会して、電気的ゾーン(およびそれぞれの計算障害ドメイン)を決定し得る。これらのインスタンスラベル値は、ストアキーパから継承されることになる。インスタンスおよび障害ドメインが関連付けられると、表5に示されるように、プロビジョニングに対するさらなる修正は予期されない。
Figure 2023547895000006
開示される技術は、データウェアハウスに公開される容量メトリックを利用する。各選択された入来プラットフォームタイプについて、開示される技術は、データウェアハウスに問い合わせて、どの障害ドメイン容量プールが最も少ない利用可能なインスタンスを有するかを判断する。次いで、開示される技術は、必要とされるところに容量がプロビジョニングされるように、ラック位置割り当てを行う。
障害ドメインラベルがホストプロビジョニングシステム(HOPS)再プロビジョニング中に失われる場合、再プロビジョニングまたは再プーリングを必要とするインスタンスは、再ラベル付けされる必要があることになる。
より多くの複雑性の層が、同じ建物シェル内の複数のデータセンタルームのOracle Cloud Infrastructureの現在のフットプリントと共に導入される。これは、複数の部屋が重要なインフラストラクチャの構成要素を共有してもよい状況を導入する。この理由から、開示される技術は、所与の電気的ゾーンが部屋に固有であるかまたは建物内で共有されるかを判断できなければならない。各ストアキーパ位置エントリは、以下のオブジェクトも含むことになる:
Figure 2023547895000007
図7にさらに示されるように、プロセス700は、データセンタ構成を表示するためにデバイスに送信すること(ブロック740)を含んでもよい。例えば、コンピュータシステムは、上述のように、データセンタ構成を表示するためにデバイスに送信してもよい。
プロセス700は、以下で説明されるおよび/または本明細書の他の箇所で説明される1つ以上の他のプロセスに関連して説明される任意の単一の実現例または実現例の任意の組合せなど、追加の実現例を含んでもよい。
第1の実現例では、データセンタ構成は、データセンタのための電力供給を電力分配群の、等しい、別個のセットに分割することによって決定される。
第2の実現例では、単独で、または第1の実現例と組み合わせて、データセンタ構成は、電力分配群の各セットが、データセンタ内において論理障害ドメインのためのラックから上流に商用電線路までN個の非共有電気経路を有し、Nはデータセンタ冗長性プロパティに適合する構成を含み得る。
第3の実現例では、単独で、または第1および第2の実現例のうちの1つ以上と組み合わせて、データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を及ぼすことなく、1つの電気的ゾーンにおける物理的施設保守の実施を可能にする。
第4の実現例では、単独で、または第1から第3の実現例のうちの1つ以上と組み合わせて、データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を及ぼすことなく、1つの電気的ゾーンにおける電力設備障害を可能にする。
第5の実現例では、単独で、または第1から第4の実現例のうちの1つ以上と組み合わせて、論理障害ドメイン内の物理ハードウェアは、独立した冗長な電力供給を有する。
第6の実現例では、単独で、または第1から第5の実現例のうちの1つ以上と組み合わせて、電気的ゾーンは、データセンタ内におけるラック位置のグループ化を含み、その上流の電気的分配は、2つの能動的給電部の一意の組合せによって供給される。
図7は、プロセス700の例示的なブロックを示すが、いくつかの実現例では、プロセス700は、追加のブロック、より少ないブロック、異なるブロック、または図7に示すものとは異なるように配置されたブロックを含んでもよい。加えて、または代替として、プロセス700のブロックのうちの2つ以上は、並行して実行されてもよい。
図8は、少なくとも1つの実施形態によるデータセンタのブロック図である。図10および図11は、VM1066(1)、(2)および(n)、11662(1)、(2)および(n)を伴う、信頼できるアプリサブネット1062、1162を示す。図8は、障害ドメイン804および電気的ゾーン806の文脈におけるVM802を示す。
図8は、3つの可用性ドメイン808-1、808-2、および808-3を示す。クラウドインフラストラクチャは、領域および可用性ドメインにおいてホストされ得る。領域は、局地的な地域あり、可用性ドメインは、領域内に位置する1つ以上のデータセンタである。可用性ドメインは、互いに隔離され、フォールトトレラントであり、同時に故障する可能性が非常に低い。
各可用性ドメイン808は、コンパートメントA810、コンパートメントB812、およびコンパートメントC814を含み得る、1つ以上のコンパートメントを含み得る。コンパートメントA810は、複数のベアメタル(BM)タイプ1マシン816を含み得る。様々なコンパートメントの数および構成を含むデータセンタ800の数ならびに構成は、例示のみを目的としており、限定するものではない。ベアメタルマシン816は、顧客が、高性能で、レイテンシに敏感な、特化された、従来の作業負荷を、専用のサーバハードウェア上で、-それらがオンプレミスであろうように-、直接実行することを可能にする。ベアメタルマシン816は、非仮想化された環境で実行する必要がある作業負荷にとって理想的である。ベアメタルマシン816は、安全な仮想クラウドネットワーク(VCN)内で管理されることができ、顧客は、デフォルトでセキュリティ、隔離、および管理機能を得る。ネットワーク接続は、任意の隣接するクラウドインフラストラクチャサービスにアクセスするように容易に拡張される。ベアメタルマシン816は、顧客に、隔離、可視性、および専用のサーバでの制御を提供する。ベアメタルマシン816は、高いコア数、大量のメモリ、および高い帯域幅を必要とするアプリケーションをサポートすることができ、128個のコア(業界で最大)、2TBのRAM、および1PBのブロックストレージまでスケーリングする。
コンパートメントBは、複数の仮想マシン818を含み得る。仮想マシン(VM)818は、コンピュータシステムのエミュレーションである。仮想マシン818は、コンピュータアーキテクチャに基づき得、物理コンピュータの機能を提供し得る。仮想マシン818の実現例は、特化されたハードウェア、ソフトウェア、または組合せを含んでもよい。
コンパートメントCは、上記で図10のコンテナ1071(1)~(N)について説明したように、1つ以上のコンテナを含み得る。コンテナ820は、上述のようにデータを記憶し得る。
図8は、BMマシン816、VM818、およびコンテナ820の各々が、障害ドメイン802によって、および様々な電気的ゾーン806において、どのように編成され得るかを示す。このようにして、データセンタ800は、障害ドメイン802および電気的ゾーン806の両方にわたって冗長性を提供する。
上述のように、サービスとしてのインフラストラクチャ(IaaS)は、1つの特定のタイプのクラウドコンピューティングである。IaaSは、パブリックネットワーク(たとえば、インターネット)を介して、仮想化されたコンピューティングリソースを提供するよう構成され得る。IaaSモデルでは、クラウドコンピューティングプロバイダは、インフラストラクチャ構成要素(例えば、サーバ、ストレージデバイス、ネットワークノード(例えば、ハードウェア)、展開ソフトウェア、プラットフォーム仮想化(例えば、ハイパーバイザ層)など)をホストし得る。場合によっては、IaaSプロバイダはまた、それらのインフラストラクチャ構成要素に付随するよう、様々なサービス(例えば、課金、監視、ロギング、セキュリティ、負荷分散およびクラスタリングなど)を供給してもよい。したがって、これらのサービスはポリシー駆動型であってもよいので、IaaSユーザは、アプリケーションの可用性および性能を維持するために負荷分散を駆動するためにポリシーを実現することが可能であってもよい。
いくつかの事例では、IaaS顧客は、インターネット等のワイドエリアネットワーク(WAN)を通してリソースおよびサービスにアクセスしてもよく、クラウドプロバイダのサービスを使用して、アプリケーションスタックの残りの要素をインストールしてもよい。たとえば、ユーザは、IaaSプラットフォームにログインして、仮想マシン(VM)を作成し、各VMにオペレーティングシステム(OS)をインストールし、データベースなどのミドルウェアを展開し、ワークロードおよびバックアップのためにストレージバケットを作成し、さらには企業ソフトウェアをそのVMにインストールし得る。次いで、顧客は、プロバイダのサービスを使用して、ネットワークトラフィックの均衡化、アプリケーション問題のトラブルシューティング、パフォーマンスの監視、災害復旧の管理などを含む様々な機能を実行し得る。
ほとんどの場合、クラウドコンピューティングモデルは、クラウドプロバイダの参加を必要とすることになる。クラウドプロバイダは、IaaSの提供(例えば、申し出、レンタル、販売)に特化した第三者サービスであってもよいが、その必要はない。エンティティも、プライベートクラウドを展開することを選択し、インフラストラクチャサービスの独自のプロバイダになるかもしれない。
いくつかの例では、IaaS展開は、新たなアプリケーションまたはアプリケーションの新たなバージョンを準備されたアプリケーションサーバなどに置くプロセスである。それはまた、サーバを準備する(例えば、ライブラリ、デーモンなどをインストールする)プロセスも、含んでもよい。これは、多くの場合、クラウドプロバイダによって、ハイパーバイザ層(例えば、サーバ、ストレージ、ネットワークハードウェア、および仮想化)の下で管理される。したがって、顧客は、(たとえば、(たとえば、オンデマンドで起動されてもよい)セルフサービス仮想マシン上での)ハンドリング(OS)、ミドルウェア、および/またはアプリケーション展開などを担ってもよい。
いくつかの例では、IaaSプロビジョニングは、使用のためにコンピュータまたは仮想ホストを取得すること、および必要とされるライブラリまたはサービスをそれらにインストールすることさえも指してもよい。ほとんどの場合、展開はプロビジョニングを含まず、プロビジョニングは最初に実行される必要があってもよい。
場合によっては、IaaSプロビジョニングには2つの異なる問題がある。第1に、何かが動作する前にインフラストラクチャの初期セットをプロビジョニングするという最初の課題がある。第2に、あらゆるものがプロビジョニングされると、既存のインフラストラクチャを発展させる(例えば、新たなサービスの追加、サービスの変更、サービスの削除など)という課題がある。場合によっては、これらの2つの課題は、インフラストラクチャの構成が宣言的に定義されることを可能にすることによって対処されてもよい。言い換えれば、インフラストラクチャ(例えば、どのような構成要素が必要とされるか、およびそれらがどのように対話するか)は、1つ以上の構成ファイルによって定義され得る。したがって、インフラストラクチャの全体的なトポロジー(例えば、どのようなリソースがどのリソースに依存するか、およびそれらが各々どのように協働するか)は、宣言的に記述され得る。いくつかの例では、トポロジーが定義されると、構成ファイルに記述される異なる構成要素を作成および/または管理するワークフローを生成し得る。
いくつかの例では、インフラストラクチャは、多くの相互接続された要素を有してもよい。たとえば、コアネットワークとしても知られている1つ以上の仮想プライベートクラウド(VPC)(例えば、構成可能および/または共有されるコンピューティングリソースの、潜在的にオンデマンドのプール)があり得る。いくつかの例では、ネットワークのセキュリティがどのようにセットアップされるかを定義するためにプロビジョニングされる1つ以上のセキュリティグループルール、および1つ以上の仮想マシン(VM)も、あり得る。ロードバランサ、データベースなどの他のインフラストラクチャ要素もプロビジョニングされてもよい。ますます多くのインフラストラクチャ要素が所望および/または追加されるにつれて、インフラストラクチャは漸進的に進化し得る。
いくつかの例では、様々な仮想コンピューティング環境にわたるインフラストラクチャコードの展開を可能にするために、連続展開技法が採用されてもよい。加えて、説明される技法は、これらの環境内でインフラストラクチャ管理を可能にし得る。いくつかの例では、サービスチームが、1つ以上の、ただし多くの場合、多くの、異なる生産環境(例えば、時として世界全体に及ぶ、種々の異なる地理的場所にわたる)に展開されることが望まれるコードを書き込み得る。しかしながら、いくつかの例では、コードが展開されるインフラストラクチャは、最初にセットアップされなければならない。いくつかの事例では、プロビジョニングは、手動で行われ得、プロビジョニングツールを利用してリソースをプロビジョニングしてもよく、および/または、インフラストラクチャがプロビジョニングされると、展開ツールを利用してコードを展開してもよい。
図9は、少なくとも1つの実施形態による、IaaSアーキテクチャの例示的なパターンを示すブロック図900である。サービスオペレータ902は、仮想クラウドネットワーク(VCN)906およびセキュアホストサブネット908を含み得るセキュアホストテナンシ904に通信可能に結合され得る。いくつかの例では、サービスオペレータ902は、1つ以上のクライアントコンピューティングデバイスを用いていてもよく、それらは、ポータブルハンドヘルドデバイス(たとえば、iPhone(登録商標)、セルラー電話、iPad(登録商標)、コンピューティングタブレット、携帯情報端末(PDA))またはウェアラブルデバイス(たとえばGoogle Glass(登録商標)頭部装着型ディスプレイ)であってもよく、Microsoft Windows Mobile(登録商標)などのソフトウェア、および/もしくは、iOS、Windows Phone、 Android、BlackBerry 8、Palm OSなどのさまざまなモバイルオペレーティングシステムを実行し、インターネット、電子メール、ショートメッセージサービス(SMS)、Blackberry(登録商標)、または他のイネーブルにされた通信プロトコルである。代替的に、クライアントコンピューティングデバイスは、例として、様々なバージョンのMicrosoft Windows(登録商標)、Apple Macintosh(登録商標)、および/もしくはLinux(登録商標)オペレーティングシステムを実行するパーソナルコンピュータならびに/またはラップトップコンピュータを含む汎用パーソナルコンピュータとし得る。クライアントコンピューティングデバイスは、例えばGoogle(登録商標) Chrome OSなどの様々GNU/Linux(登録商標)オペレーティングシステムを含むがこれに限定されない、様々な市販のUNIX(登録商標)またはUNIXのようなオペレーティングシステムのいずれかを実行するワークステーションコンピュータとし得る。代替として、または加えて、クライアントコンピューティングデバイスは、VCN906および/またはインターネットにアクセスし得るネットワークを介して通信することが可能な、シンクライアントコンピュータ、インターネット対応ゲームシステム(例えば、Kinect(登録商標)ジェスチャ入力装置を有するかまたは有さないMicrosoft Xboxゲームコンソール)、および/またはパーソナルメッセージングデバイス等の任意の他の電子デバイスであってもよい。
VCN906はローカルピアリングゲートウェイ(LPG)910を含み得、それは、SSH VCN912に含まれるLPG910を介してセキュアシェル(SSH)VCN912に通信可能に結合され得る。SSH VCN912は、SSHサブネット914を含み得、SSH VCN912は、制御プレーンVCN916に含まれるLPG910を介して制御プレーンVCN916に通信可能に結合され得る。また、SSH VCN912は、LPG910を介してデータプレーンVCN918に通信可能に結合され得る。制御プレーンVCN916およびデータプレーンVCN918は、IaaSプロバイダによって所有および/または運用され得るサービステナンシ919に含まれ得る。
制御プレーンVCN916は、周辺ネットワーク(例えば、企業イントラネットと外部ネットワークとの間の企業ネットワークの部分)として機能する制御プレーンデミリタライズドゾーン(DMZ)層920を含み得る。DMZベースのサーバは、制限された責任を有し、セキュリティ侵害が含まれるように保つのを助けてもよい。さらに、DMZ層920は、1つ以上のロードバランサ(LB)サブネット922と、アプリサブネット926を含み得る制御プレーンアプリ層924と、データベース(DB)サブネット930(例えば、フロントエンドDBサブネットおよび/またはバックエンドDBサブネット)を含み得る制御プレーンデータ層928とを含み得る。制御プレーンDMZ層920に含まれるLBサブネット922は、制御プレーンアプリ層924に含まれるアプリサブネット926と、制御プレーンVCN916に含まれ得るインターネットゲートウェイ934とに通信可能に結合され得、アプリサブネット926は、制御プレーンデータ層928に含まれるDBサブネット930と、サービスゲートウェイ936と、ネットワークアドレス変換(NAT)ゲートウェイ938とに通信可能に結合され得る。制御プレーンVCN916は、サービスゲートウェイ936およびNATゲートウェイ938を含み得る。
制御プレーンVCN916は、アプリサブネット926を含み得るデータプレーンミラーアプリ層940を含み得る。データプレーンミラーアプリ層940に含まれるアプリサブネット926は、計算インスタンス944を実行し得る仮想ネットワークインターフェイスコントローラ(VNIC)942を含み得る。計算インスタンス944は、データプレーンミラーアプリ層940のアプリサブネット926を、データプレーンアプリ層946に含まれ得るアプリサブネット926に、通信可能に結合し得る。
データプレーンVCN918は、データプレーンアプリ層946と、データプレーンDMZ層948と、データプレーンデータ層950とを含み得る。データプレーンDMZ層948は、データプレーンアプリ層946のアプリサブネット926およびデータプレーンVCN918のインターネットゲートウェイ934に通信可能に結合され得るLBサブネット922を含み得る。アプリサブネット926は、データプレーンVCN918のサービスゲートウェイ936およびデータプレーンVCN918のNATゲートウェイ938に通信可能に結合され得る。データプレーンデータ層950も、データプレーンアプリ層946のアプリサブネット926に通信可能に結合され得るDBサブネット930を含み得る。
制御プレーンVCN916およびデータプレーンVCN918のインターネットゲートウェイ934は、パブリックインターネット954に通信可能に結合され得るメタデータ管理サービス952に通信可能に結合され得る。パブリックインターネット954は、制御プレーンVCN916およびデータプレーンVCN918のNATゲートウェイ938に通信可能に結合され得る。制御プレーンVCN916およびデータプレーンVCN918のサービスゲートウェイ936は、クラウドサービス956に通信可能に結合され得る。
いくつかの例では、制御プレーンVCN916またはデータプランVCN918のサービスゲートウェイ936は、パブリックインターネット954を通過することなくクラウドサービス956にアプリケーションプログラミングインターフェイス(API)呼び出しを行い得る。サービスゲートウェイ936からのクラウドサービス956へのAPI呼び出しは、一方向であり得、サービスゲートウェイ936は、クラウドサービス956にAPI呼び出しを行い得、クラウドサービス956は、要求されたデータをサービスゲートウェイ936に送信し得る。しかし、クラウドサービス956は、サービスゲートウェイ936へのAPI呼び出しを開始しなくてもよい。
いくつかの例では、セキュアホストテナンシ904は、サービステナンシ919に直接接続することができ、サービステナンシは、そうでなければ隔離されてもよい。セキュアホストサブネット908は、他の態様では隔離されたシステムを介して双方向通信を可能にしてもよいLPG910を通じてSSHサブネット914と通信し得る。セキュアホストサブネット908をSSHサブネット914に接続することは、セキュアホストサブネット908にサービステナンシ919内の他のエンティティへのアクセスを与えてもよい。
制御プレーンVCN916は、サービステナンシ919のユーザが所望のリソースをセットアップまたは別様にプロビジョニングすることを可能にしてもよい。制御プレーンVCN916内でプロビジョニングされる所望のリソースは、データプレーンVCN918内で展開または別様に使用されてもよい。いくつかの例では、制御プレーンVCN916は、データプレーンVCN918から隔離され得、制御プレーンVCN916のデータプレーンミラーアプリ層940は、データプレーンミラーアプリ層940およびデータプレーンアプリ層946に含まれ得るVNIC942を介して、データプレーンVCN918のデータプレーンアプリ層946と通信し得る。
いくつかの例では、システムのユーザまたは顧客は、メタデータ管理サービス952に要求を通信し得るパブリックインターネット954を介して、要求、例えば、作成、読出、更新、または削除(CRUD)動作を行い得る。メタデータ管理サービス952は、インターネットゲートウェイ934を介して制御プレーンVCN916に要求を通信し得る。この要求は、制御プレーンDMZ層920に含まれるLBサブネット922によって受信され得る。LBサブネット922は、要求が有効であると判断してもよく、この判断に応答して、LBサブネット922は、制御プレーンアプリ層924に含まれるアプリサブネット926に要求を送信し得る。要求が検証され、パブリックインターネット954への呼び出しを必要とする場合、パブリックインターネット954への呼び出しは、パブリックインターネット954への呼び出しを行い得るNATゲートウェイ938に送信されてもよい。要求によって記憶されることが望まれ得るメモリは、DBサブネット930に記憶され得る。
いくつかの例では、データプレーンミラーアプリ層940は、制御プレーンVCN916とデータプレーンVCN918との間の直接通信を容易にし得る。たとえば、構成の変更、更新、または他の適切な修正が、データプレーンVCN918に含まれるリソースに適用されることが望まれる場合がある。VNIC942を介して、制御プレーンVCN916は、データプレーンVCN918に含まれるリソースと直接通信し得、それによって、構成に対する変更、更新、または他の好適な修正を実行し得る。
いくつかの実施形態では、制御プレーンVCN916およびデータプレーンVCN918は、サービステナンシ919に含まれ得る。この場合、システムのユーザまたは顧客は、制御プレーンVCN916またはデータプレーンVCN918のいずれかを所有または操作しなくてもよい。代わりに、IaaSプロバイダは、制御プレーンVCN916およびデータプレーンVCN918を所有または動作させてもよく、それらの両方はサービステナンシ919に含まれてもよい。この実施形態は、ユーザまたは顧客が他のユーザまたは他の顧客のリソースと対話することを防止し得るネットワークの隔離を可能にし得る。また、この実施形態は、システムのユーザまたは顧客が、記憶のために、所望のレベルのセキュリティを有さない場合があるパブリックインターネット954に依存する必要なく、データベースをプライベートに記憶することを可能にしてもよい。
他の実施形態では、制御プレーンVCN916に含まれるLBサブネット922は、サービスゲートウェイ936から信号を受信するよう構成され得る。この実施形態では、制御プレーンVCN916およびデータプレーンVCN918は、パブリックインターネット954を呼び出すことなく、IaaSプロバイダの顧客によって呼び出されるように構成されてもよい。IaaSプロバイダの顧客は、顧客が使用するデータベースがIaaSプロバイダによって制御されてもよく、パブリックインターネット954から隔離されてもよいサービステナンシ919上に記憶されてもよいため、この実施形態を所望し得る。
図10は、少なくとも1つの実施形態による、IaaSアーキテクチャの別の例示的なパターンを示すブロック図1000である。サービスオペレータ1002(例えば、図9のサービスオペレータ902)は、仮想クラウドネットワーク(VCN)1006(例えば、図9のVCN906)およびセキュアホストサブネット1008(たとえば、図9のセキュアホストサブネット908)を含み得るセキュアホストテナンシ1004(例えば、図9のセキュアホストテナンシ904)に通信可能に結合され得る。VCN1006は、SSH VCN1012に含まれるLPG910を介してセキュアシェル(SSH)VCN1012(例えば、図9のSSH VCN912)に通信可能に結合され得るローカルピアリングゲートウェイ(LPG)1010(例えば、図9のLPG910)を含み得る。SSH VCN1012は、SSHサブネット1014(たとえば、図9のSSHサブネット914)を含み得、SSH VCN1012は、制御プレーンVCN1016に含まれるLPG1010を介して制御プレーンVCN1016(例えば、図9の制御プレーンVCN916)に通信可能に結合され得る。制御プレーンVCN1016は、サービステナンシ1019(例えば、図9のサービステナンシ919)に含まれ得、データプレーンVCN1018(例えば、図9のデータプレーンVCN918)は、システムのユーザまたは顧客によって所有または運用されてもよい顧客テナンシ1021に含まれ得る。
制御プレーンVCN1016は、LBサブネット1022(たとえば、図9のLBサブネット922)を含み得る制御プレーンDMZ層1020(例えば、図9の制御プレーンDMZ層920)と、アプリサブネット1026(例えば、図9のアプリサブネット926)を含み得る制御プレーンアプリ層1024(例えば、図9の制御プレーンアプリ層924)と、(たとえば、図9のDBサブネット930に類似した)データベース(DB)サブネット1030を含み得る制御プレーンデータ層1028(例えば、図9の制御プレーンデータ層928)とを含み得る。制御プレーンDMZ層1020に含まれるLBサブネット1022は、制御プレーンアプリ層1024に含まれるアプリサブネット1026と、制御プレーンVCN1016に含まれ得るインターネットゲートウェイ1034(例えば、図9のインターネットゲートウェイ934)とに通信可能に結合され得、アプリサブネット1026は、制御プレーンデータ層1028に含まれるDBサブネット1030と、サービスゲートウェイ1036(例えば、図9のサービスゲートウェイ)と、ネットワークアドレス変換(NAT)ゲートウェイ1038(例えば、図9のNATゲートウェイ938)とに通信可能に結合され得る。制御プレーンVCN1016は、サービスゲートウェイ1036およびNATゲートウェイ1038を含み得る。
制御プレーンVCN1016は、アプリサブネット1026を含み得るデータプレーンミラーアプリ層1040(例えば、図9のデータプレーンミラーアプリ層940)を含み得る。データプレーンミラーアプリ層1040に含まれるアプリサブネット1026は、計算インスタンス1044(例えば、図9の計算インスタンス944と同様)を実行し得る仮想ネットワークインターフェイスコントローラ(VNIC)1042(例えば、942のVNIC)を含み得る。計算インスタンス1044は、データプレーンミラーアプリ層1040に含まれるVNIC1042とデータプレーンアプリ層1046に含まれるVNIC1042とを介して、データプレーンミラーアプリ層1040のアプリサブネット1026と、データプレーンアプリ層1046(例えば、図9のデータプレーンアプリ層946)に含まれ得るアプリサブネット1026との間の通信を容易にし得る。
制御プレーンVCN1016に含まれるインターネットゲートウェイ1034は、パブリックインターネット1054(例えば、図9のパブリックインターネット954)に通信可能に結合され得るメタデータ管理サービス1052(例えば、図9のメタデータ管理サービス952)に通信可能に結合され得る。パブリックインターネット1054は、制御プレーンVCN1016に含まれるNATゲートウェイ1038に通信可能に結合され得る。制御プレーンVCN1016に含まれるサービスゲートウェイ1036は、クラウドサービス1056(例えば、図9のクラウドサービス956)に通信可能に結合され得る。
いくつかの例では、データプレーンVCN1018は、顧客テナンシ1021に含まれ得る。この場合、IaaSプロバイダは、顧客ごとに制御プレーンVCN1016を提供してもよく、IaaSプロバイダは、顧客ごとに、サービステナンシ1019に含まれる固有の計算インスタンス1044をセットアップしてもよい。各計算インスタンス1044は、サービステナンシ1019に含まれる制御プレーンVCN1016と顧客テナンシ1021に含まれるデータプレーンVCN1018との間の通信を可能にしてもよい。計算インスタンス1044は、サービステナンシ1019に含まれる制御プレーンVCN1016においてプロビジョニングされるリソースが、顧客テナンシ1021に含まれるデータプレーンVCN1018において展開されるかまたは別様に使用されることを可能にしてもよい。
他の例では、IaaSプロバイダの顧客は、顧客テナンシ1021に在住するデータベースを有してもよい。この例では、制御プレーンVCN1016は、アプリサブネット1026を含み得るデータプレーンミラーアプリ層1040を含み得る。データプレーンミラーアプリケーション層1040は、データプレーンVCN1018内に存在し得るが、データプレーンミラーアプリケーション層1040は、データプレーンVCN1018内に在住しなくてもよい。すなわち、データプレーンミラーアプリケーション層1040は、顧客テナンシ1021へのアクセスを有してもよいが、データプレーンミラーアプリケーション層1040は、データプレーンVCN1018内に存在しなくてもよく、またはIaaSプロバイダの顧客によって所有もしくは運用されなくてもよい。データプレーンミラーアプリケーション層1040は、データプレーンVCN1018への呼び出しを行うように構成されてもよいが、制御プレーンVCN1016に含まれる任意のエンティティへの呼び出しを行うように構成されなくてもよい。顧客は、制御プレーンVCN1016内にプロビジョニングされるデータプレーンVCN1018内のリソースを展開または別様に使用することを所望してもよく、データプレーンミラーアプリケーション層1040は、顧客のリソースの所望の展開または他の使用を容易にし得る。
いくつかの実施形態では、IaaSプロバイダの顧客は、フィルタをデータプレーンVCN1018に適用し得る。この実施形態では、顧客は、データプレーンVCN1018が何にアクセスできるかを判断し得、顧客は、データプレーンVCN1018からパブリックインターネット1054へのアクセスを制限してもよい。IaaSプロバイダは、データプレーンVCN1018の任意の外部ネットワークもしくはデータベースへのアクセスをフィルタ処理するかまたは別様に制御することができなくてもよい。顧客テナンシ1021に含まれるデータプレーンVCN1018上に顧客によってフィルタおよび制御を適用することは、データプレーンVCN1018を他の顧客およびパブリックインターネット1054から隔離するのを助けることができる。
いくつかの実施形態では、クラウドサービス1056は、パブリックインターネット1054上、制御プレーンVCN1016上、またはデータプレーンVCN1018上に存在しない場合があるサービスにアクセスするために、サービスゲートウェイ1036によって呼び出され得る。クラウドサービス1056と制御プレーンVCN1016またはデータプレーンVCN1018との間の接続は、ライブまたは連続的でなくてもよい。クラウドサービス1056は、IaaSプロバイダによって所有または運営される異なるネットワーク上に存在してもよい。クラウドサービス1056は、サービスゲートウェイ1036から呼び出しを受信するよう構成されてもよく、パブリックインターネット1054から呼び出しを受信しないように構成されてもよい。いくつかのクラウドサービス1056は、他のクラウドサービス1056から隔離されてもよく、制御プレーンVCN1016は、制御プレーンVCN1016と同じ領域にない場合があるクラウドサービス1056から隔離されてもよい。たとえば、制御プレーンVCN1016は「領域1」に位置してもよく、クラウドサービス「展開8」は領域1および「領域2」に位置してもよい。展開8への呼び出しが、領域1に位置する制御プレーンVCN1016に含まれるサービスゲートウェイ1036によって行われる場合、その呼び出しは、領域1内の展開8に伝送されてもよい。この例では、制御プレーンVCN1016、または領域1の展開8は、領域2の展開8に通信可能に結合されなくてもよく、またはそうでなければ通信していなくてもよい。
図11は、少なくとも1つの実施形態による、IaaSアーキテクチャの別の例示的なパターンを示すブロック図1100である。サービスオペレータ1102(例えば、図9のサービスオペレータ902)は、仮想クラウドネットワーク(VCN)1106(例えば、図9のVCN906)およびセキュアホストサブネット1108(たとえば、図9のセキュアホストサブネット908)を含み得るセキュアホストテナンシ1104(例えば、図9のセキュアホストテナンシ904)に通信可能に結合され得る。VCN1106は、LPG1110(例えば、図9のLPG910)を含み得、それは、SSH VCN1112(例えば、図9のSSH VCN912)に含まれるLPG1110を介してSSH VCN1112に通信可能に結合され得る。SSH VCN1112は、SSHサブネット1114(たとえば、図9のSSHサブネット914)を含み得、SSH VCN1112は、制御プレーンVCN1116(例えば、図9の制御プレーンVCN916)に含まれるLPG1110を介して制御プレーンVCN1116に通信可能に結合され得、データプレーンVCN1118(例えば、図9のデータプレーン918)に含まれるLPG1110を介してデータプレーンVCN1118通信可能に結合され得る。制御プレーンVCN1116およびデータプレーンVCN1118は、サービステナンシ1119(例えば、図9のサービステナンシ919)に含まれ得る。
制御プレーンVCN1116は、ロードバランサ(LB)サブネット1122(たとえば、図9のLBサブネット922)を含み得る制御プレーンDMZ層1120(例えば、図9の制御プレーンDMZ層920)と、(たとえば、図9のアプリサブネット926に類似している)アプリサブネット1126を含み得る制御プレーンアプリ層1124(例えば、図9の制御プレーンアプリ層924)と、DBサブネット1130を含み得る制御プレーンデータ層1128(例えば、図9の制御プレーンデータ層928)とを含み得る。制御プレーンDMZ層1120に含まれるLBサブネット1122は、制御プレーンアプリ層1124に含まれるアプリサブネット1126と、制御プレーンVCN1116に含まれ得るインターネットゲートウェイ1134(例えば、図9のインターネットゲートウェイ934)とに通信可能に結合され得、アプリサブネット1126は、制御プレーンデータ層1128に含まれるDBサブネット1130に、ならびにサービスゲートウェイ1136(例えば、図9のサービスゲートウェイ)およびネットワークアドレス変換(NAT)ゲートウェイ1138(例えば、図9のNATゲートウェイ938)に通信可能に結合され得る。制御プレーンVCN1116は、サービスゲートウェイ1136およびNATゲートウェイ1138を含み得る。
データプレーンVCN1118は、データプレーンアプリ層1146(例えば、図9のデータプレーンアプリ層946)、データプレーンDMZ層1148(例えば、図9のデータプレーンDMZ層948)、およびデータプレーンデータ層1150(例えば、図9のデータプレーンデータ層950)を含み得る。データプレーンDMZ層1148は、データプレーンアプリ層1146の信頼できるアプリサブネット1160および信頼できないアプリサブネット1162と、データプレーンVCN1118に含まれるインターネットゲートウェイ1134とに通信可能に結合され得るLBサブネット1122を含み得る。信頼できるアプリサブネット1160は、データプレーンVCN1118に含まれるサービスゲートウェイ1136と、データプレーンVCN1118に含まれるNATゲートウェイ1138と、データプレーンデータ層1150に含まれるDBサブネット1130とに通信可能に結合され得る。信頼できないアプリサブネット1162は、データプレーンVCN1118に含まれるサービスゲートウェイ1136と、データプレーンデータ層1150に含まれるDBサブネット1130とに通信可能に結合され得る。データプレーンデータ層1150は、データプレーンVCN1118に含まれるサービスゲートウェイ1136に通信可能に結合され得るDBサブネット1130を含み得る。
信頼できないアプリサブネット1162は、テナント仮想マシン(VM)1166(1)~(N)に通信可能に結合され得る1つ以上のプライマリVNIC1164(1)~(N)を含み得る。各テナントVM1166(1)~(N)は、それぞれの顧客テナンシ1170(1)~(N)に含まれ得るそれぞれのコンテナエグレスVCN1168(1)~(N)に含まれ得るそれぞれのアプリサブネット1167(1)~(N)に通信可能に結合され得る。それぞれのセカンダリVNIC1172(1)~(N)は、データプレーンVCN1118に含まれる信頼できないアプリサブネット1162とコンテナエグレスVCN1168(1)~(N)に含まれるアプリサブネットとの間の通信を容易にし得る。各コンテナエグレスVCN1168(1)~(N)は、パブリックインターネット1154(例えば、図9のパブリックインターネット954)に通信可能に結合され得るNATゲートウェイ1138を含み得る。
制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるインターネットゲートウェイ1134は、パブリックインターネット1154に通信可能に結合され得るメタデータ管理サービス1152(例えば、図9のメタデータ管理システム952)に通信可能に結合され得る。パブリックインターネット1154は、制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるNATゲートウェイ1138に通信可能に結合され得る。制御プレーンVCN1116に含まれ、データプレーンVCN1118に含まれるサービスゲートウェイ1136は、クラウドサービス1156に通信可能に結合され得る。
いくつかの実施形態では、データプレーンVCN1118は、顧客テナンシ1170と統合され得る。この統合は、コードを実行するときにサポートを必要とする場合がある場合などのいくつかの場合において、IaaSプロバイダの顧客にとって有用または望ましくあり得る。顧客は、破壊的である場合があるか、他の顧客リソースと通信する場合があるか、またはそうでなければ望ましくない影響を引き起こす場合がある、実行すべきコードを与える場合がある。これに応答して、IaaSプロバイダは、顧客によってIaaSプロバイダに与えられたコードを実行するかどうかを判断してもよい。
いくつかの例では、IaaSプロバイダの顧客は、IaaSプロバイダへの一時的なネットワークアクセスを許可し、ある機能がデータプレーン層アプリ1146にアタッチされるよう要求する場合がある。機能を実行するためのコードは、VM1166(1)~(N)において実行されてもよく、データプレーンVCN1118上の他のどこかで動作するように構成されなくてもよい。各VM1166(1)~(N)は、1つの顧客テナンシ1170に接続されてもよい。VM1166(1)~(N)に含まれるそれぞれのコンテナ1171(1)~(N)は、コードを実行するよう構成されてもよい。この場合、二重隔離があり得(例えば、コンテナ1171(1)~(N)は、コードを実行し、コンテナ1171(1)~(N)は、信頼できないアプリサブネット1162に含まれる少なくともVM1166(1)~(N)に含まれてもよい)、これは、正しくないかまたはそうでなければ望ましくないコードが、IaaSプロバイダのネットワークを損傷すること、または異なる顧客のネットワークを損傷することを防ぐのを助けてもよい。コンテナ1171(1)~(N)は、顧客テナンシ1170に通信可能に結合されてもよく、顧客テナンシ1170との間でデータを送信または受信するよう構成されてもよい。コンテナ1171(1)~(N)は、データプレーンVCN1118内の任意の他のエンティティとの間でデータを送信または受信するよう構成されなくてもよい。コードの実行が完了すると、IaaSプロバイダは、コンテナ1171(1)~(N)をキルするかまたは別様に廃棄してもよい。
いくつかの実施形態では、信頼できるアプリサブネット1160は、IaaSプロバイダによって所有または操作されてもよいコードを実行してもよい。この実施形態では、信頼できるアプリサブネット1160は、DBサブネット1130に通信可能に結合されてもよく、DBサブネット1130内でCRUD動作を実行するよう構成されてもよい。信頼できないアプリサブネット1162は、DBサブネット1130に通信可能に結合されてもよいが、この実施形態では、信頼できないアプリサブネットは、DBサブネット1130内で読出動作を実行するよう構成されてもよい。各顧客のVM1166(1)~(N)に含まれ得、その顧客からのコードを実行してもよいコンテナ1171(1)~(N)は、DBサブネット1130と通信可能に結合されなくてもよい。
他の実施形態では、制御プレーンVCN1116およびデータプレーンVCN1118は、直接通信可能に結合されなくてもよい。この実施形態では、制御プレーンVCN1116とデータプレーンVCN1118との間に直接通信がなくてもよい。しかしながら、通信は、少なくとも1つの方法を通して間接的に起こり得る。制御プレーンVCN1116とデータプレーンVCN1118との間の通信を容易にし得るLPG1110が、IaaSプロバイダによって確立されてもよい。別の例では、制御プレーンVCN1116またはデータプレーンVCN1118は、サービスゲートウェイ1136を介してクラウドサービス1156に呼び出しを行い得る。例えば、制御プレーンVCN1116からのクラウドサービス1156への呼び出しは、データプレーンVCN1118と通信し得るサービスの要求を含み得る。
図12は、少なくとも1つの実施形態による、IaaSアーキテクチャの別の例示的なパターンを示すブロック図1200である。サービスオペレータ1202(例えば、図9のサービスオペレータ902)は、仮想クラウドネットワーク(VCN)1206(例えば、図9のVCN906)およびセキュアホストサブネット1208(たとえば、図9のセキュアホストサブネット908)を含み得るセキュアホストテナンシ1204(例えば、図9のセキュアホストテナンシ904)に通信可能に結合され得る。VCN1206は、LPG1210(例えば、図9のLPG910)を含み得、それは、SSH VCN1212(例えば、図9のSSH VCN912)に含まれるLPG1210を介してSSH VCN1212に通信可能に結合され得る。SSH VCN1212は、SSHサブネット1214(たとえば、図9のSSHサブネット914)を含み得、SSH VCN1212は、制御プレーンVCN1216(例えば、図9の制御プレーンVCN916)に含まれるLPG1210を介して制御プレーンVCN1216に通信可能に結合され得、データプレーンVCN1218(例えば、図9のデータプレーン918)に含まれるLPG1210を介してデータプレーンVCN1218に通信可能に結合され得る。制御プレーンVCN1216およびデータプレーンVCN1218は、サービステナンシ1219(例えば、図9のサービステナンシ919)に含まれ得る。
制御プレーンVCN1216は、LBサブネット1222(たとえば、図9のLBサブネット922)を含み得る制御プレーンDMZ層1220(例えば、図9の制御プレーンDMZ層920)と、アプリサブネット1226(例えば、図9のアプリサブネット926)を含み得る制御プレーンアプリ層1224(例えば、図9の制御プレーンアプリ層924)と、DBサブネット1230(例えば、図11のDBサブネット1130)を含み得る制御プレーンデータ層1228(例えば、図9の制御プレーンデータ層928)とを含み得る。制御プレーンDMZ層1220に含まれるLBサブネット1222は、制御プレーンアプリ層1224に含まれるアプリサブネット1226と、制御プレーンVCN1216に含まれ得るインターネットゲートウェイ1234(例えば、図9のインターネットゲートウェイ934)とに通信可能に結合され得、アプリサブネット1226は、制御プレーンデータ層1228に含まれるDBサブネット1230と、サービスゲートウェイ1236(例えば、図9のサービスゲートウェイ)およびネットワークアドレス変換(NAT)ゲートウェイ1238(例えば、図9のNATゲートウェイ938)とに通信可能に結合され得る。制御プレーンVCN1216は、サービスゲートウェイ1236およびNATゲートウェイ1238を含み得る。
データプレーンVCN1218は、データプレーンアプリ層1246(例えば、図9のデータプレーンアプリ層946)、データプレーンDMZ層1248(例えば、図9のデータプレーンDMZ層948)、およびデータプレーンデータ層1250(例えば、図9のデータプレーンデータ層950)を含み得る。データプレーンDMZ層1248は、データプレーンアプリ層1246の信頼できるアプリサブネット1260(例えば、図11の信頼できるアプリサブネット1160)および信頼できないアプリサブネット1262(例えば、図11の信頼できないアプリサブネット1162)と、データプレーンVCN1218に含まれるインターネットゲートウェイ1234とに通信可能に結合され得るLBサブネット1222を含み得る。信頼できるアプリサブネット1260は、データプレーンVCN1218に含まれるサービスゲートウェイ1236と、データプレーンVCN1218に含まれるNATゲートウェイ1238と、データプレーンデータ層1250に含まれるDBサブネット1230とに通信可能に結合され得る。信頼できないアプリサブネット1262は、データプレーンVCN1218に含まれるサービスゲートウェイ1236と、データプレーンデータ層1250に含まれるDBサブネット1230とに通信可能に結合され得る。データプレーンデータ層1250は、データプレーンVCN1218に含まれるサービスゲートウェイ1236に通信可能に結合され得るDBサブネット1230を含み得る。
信頼できないアプリサブネット1262は、信頼できないアプリサブネット1262内に常駐するテナント仮想マシン(VM)1266(1)~(N)に通信可能に結合され得るプライマリVNIC1264(1)~(N)を含み得る。各テナントVM1266(1)~(N)は、それぞれのコンテナ1267(1)~(N)においてコードを実行し得、コンテナエグレスVCN1268に含まれ得るデータプレーンアプリ層1246に含まれ得るアプリサブネット1226に通信可能に結合され得る。それぞれのセカンダリVNIC1272(1)~(N)は、データプレーンVCN1218に含まれる信頼できないアプリサブネット1262とコンテナエグレスVCN1268に含まれるアプリサブネットとの間の通信を容易にし得る。コンテナエグレスVCNは、パブリックインターネット1254(例えば、図9のパブリックインターネット954)に通信可能に結合され得るNATゲートウェイ1238を含み得る。
制御プレーンVCN1216に含まれ、データプレーンVCN1218に含まれるインターネットゲートウェイ1234は、パブリックインターネット1254に通信可能に結合され得るメタデータ管理サービス1252(例えば、図9のメタデータ管理システム952)に通信可能に結合され得る。パブリックインターネット1254は、制御プレーンVCN1216に含まれ、データプレーンVCN1218に含まれるNATゲートウェイ1238に通信可能に結合され得る。制御プレーンVCN1216に含まれ、データプレーンVCN1218に含まれるサービスゲートウェイ1236は、クラウドサービス1256に通信可能に結合され得る。
いくつかの例では、図12のブロック図1200のアーキテクチャによって示されるパターンは、図11のブロック図1100のアーキテクチャによって示されるパターンの例外と見なされてもよく、IaaSプロバイダが顧客と直接通信することができない場合(たとえば切断された領域)、それは、IaaSプロバイダの顧客にとって望ましい場合がある。各顧客についてVM1266(1)~(N)に含まれるそれぞれのコンテナ1267(1)~(N)は、顧客によってリアルタイムでアクセスされ得る。コンテナ1267(1)~(N)は、コンテナエグレスVCN1268に含まれ得るデータプレーンアプリ層1246のアプリサブネット1226に含まれるそれぞれのセカンダリVNIC1272(1)~(N)への呼び出しを行うように構成されてもよい。セカンダリVNIC1272(1)~(N)はNATゲートウェイ1238に呼び出しを送信し得、NATゲートウェイ1238はパブリックインターネット1254に呼び出しを送信してもよい。この例では、顧客によってリアルタイムでアクセスされ得るコンテナ1267(1)~(N)は、制御プレーンVCN1216から隔離され得、データプレーンVCN1218に含まれる他のエンティティから隔離され得る。コンテナ1267(1)~(N)はまた、他の顧客からのリソースからも隔離されてもよい。
他の例では、顧客は、コンテナ1267(1)~(N)を使用してクラウドサービス1256を呼び出し得る。この例では、顧客は、コンテナ1267(1)~(N)内において、クラウドサービス1256にサービスを要求するコードを実行してもよい。コンテナ1267(1)~(N)はこの要求をセカンダリVNIC1272(1)~(N)に送信し得、セカンダリVNIC1272(1)~(N)はその要求をNATゲートウェイに送信し、NATゲートウェイはその要求をパブリックインターネット1254に送信し得る。パブリックインターネット1254は、インターネットゲートウェイ1234を介して、制御プレーンVCN1216に含まれるLBサブネット1222に要求を送信し得る。要求が有効であると判定することに応答して、LBサブネットはその要求をアプリサブネット1226に送信し得、アプリサブネット1226はその要求をサービスゲートウェイ1236を介してクラウドサービス1256に送信し得る。
図示されるIaaSアーキテクチャ900、1000、1100、1200は、図示される以外の構成要素を有してもよいことを諒解されたい。さらに、図示される実施形態は、本開示の実施形態を組み込んでもよいクラウドインフラストラクチャシステムのいくつかの例にすぎない。いくつかの他の実施形態では、IaaSシステムは、図示されるよりも多いまたは少ない構成要素を有してもよく、2つ以上の構成要素を組み合わせてもよく、または構成要素の異なる構成または配置を有してもよい。
ある実施形態では、本明細書に説明されるIaaSシステムは、セルフサービスであり、サブスクリプションベースであり、弾性的にスケーラブルであり、信頼性があり、高い可用性があり、セキュアな態様で顧客に配信される、アプリケーション、ミドルウェア、およびデータベースサービス提供の一式を含んでもよい。そのようなIaaSシステムの例は、本譲受人によって提供されるOracle Cloud Infrastructure(OCI)である。
図13は、様々な実施形態が実現されてもよい例示的なコンピュータシステム1300を示す。コンピュータシステム1300は、上記で説明されるコンピュータシステムのうちのいずれかを実現するために使用されてもよい。図に示されるように、コンピュータシステム1300は、バスサブシステム1302を介していくつかの周辺サブシステムと通信する処理ユニット1304を含む。これらの周辺サブシステムは、処理加速ユニット1306、入力/出力(I/O)サブシステム1308、ストレージサブシステム1318、および通信サブシステム1324を含んでもよい。ストレージサブシステム1318は、有形のコンピュータ可読記憶媒体1322およびシステムメモリ1310を含む。
バスサブシステム1302は、コンピュータシステム1300のさまざまなコンポーネントおよびサブシステムに、意図されるように互いに通信させるための機構を提供する。バスサブシステム1302は、単一のバスとして概略的に示されるが、バスサブシステムの代替実施形態は、複数のバスを利用してもよい。バスサブシステム1302は、さまざまなバスアーキテクチャのうちのいずれかを用いるメモリバスまたはメモリコントローラ、周辺バスおよびローカルバスを含むいくつかのタイプのバス構造のうちのいずれかであってもよい。たとえば、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション(VESA)ローカルバス、および米国電気電子学会(IEEE)P1386.1規格に従って製造される中二階バスとして実現され得る周辺コンポーネントインターコネクト(PCI)バスを含んでもよい。
処理ユニット1304は、1つ以上の集積回路(例えば、従来のマイクロプロセッサまたはマイクロコントローラ)として実現することができ、コンピュータシステム1300の動作を制御する。1つ以上のプロセッサが処理ユニット1304に含まれてもよい。これらのプロセッサは、シングルコアプロセッサまたはマルチコアプロセッサを含んでもよい。特定の実施形態では、処理ユニット1304は、シングルコアプロセッサもしくはマルチコアプロセッサが各処理ユニットに含まれる1つ以上の独立した処理ユニット1332および/または1334として実現されてもよい。他の実施形態では、処理ユニット1304はまた、2つのデュアルコアプロセッサを単一のチップに統合することによって形成されるクワッドコア処理ユニットとして実現されてもよい。
様々な実施形態では、処理ユニット1304は、プログラムコードに応答して様々なプログラムを実行することができ、複数の同時に実行されるプログラムまたはプロセスを維持することができる。任意の所与の時間に、実行されるべきプログラムコードの一部またはすべてが、処理ユニット1304、および/またはストレージサブシステム1318に常駐することができる。好適なプログラミングを通して、処理ユニット1304は、上記で説明される種々の機能性を提供することができる。コンピュータシステム1300は、デジタル信号プロセッサ(DSP)、特殊目的プロセッサなどを含み得る処理加速ユニット1306をさらに含んでもよい。
I/Oサブシステム1308は、ユーザインターフェイス入力デバイスおよびユーザインターフェイス出力デバイスを含んでもよい。ユーザインターフェイス入力デバイスは、キーボード、マウスまたはトラックボールなどのポインティングデバイス、ディスプレイに組み込まれたタッチパッドまたはタッチスクリーン、スクロールホイール、クリックホイール、ダイヤル、ボタン、スイッチ、キーパッド、音声コマンド認識システムを伴う音声入力デバイス、マイクロフォン、および他のタイプの入力デバイスを含んでもよい。ユーザインターフェイス入力デバイスは、例えば、ユーザが、ジェスチャおよび発話コマンドを使用して、ナチュラルユーザインターフェイスを通して、Microsoft Xbox(登録商標)360ゲームコントローラ等の入力デバイスを制御し、それと相互作用することを可能にする、Microsoft Kinect(登録商標)モーションセンサ等のモーション感知および/またはジェスチャ認識デバイスを含んでもよい。ユーザインターフェイス入力デバイスは、ユーザから目の動き(たとえば、写真を撮っている間および/またはメニュー選択を行なっている間の「まばたき」)を検出し、アイジェスチャを入力デバイス(たとえばGoogle Glass(登録商標))への入力として変換するGoogle Glass(登録商標)瞬き検出器などのアイジェスチャ認識デバイスも含んでもよい。加えて、ユーザインターフェイス入力デバイスは、ユーザが音声コマンドを介して音声認識システム(たとえばSiri(登録商標)ナビゲータ)と対話することを可能にする音声認識感知デバイスを含んでもよい。
ユーザインターフェイス入力デバイスは、三次元(3D)マウス、ジョイスティックまたはポインティングスティック、ゲームパッドおよびグラフィックタブレット、ならびにスピーカ、デジタルカメラ、デジタルカムコーダ、ポータブルメディアプレーヤ、ウェブカム、画像スキャナ、指紋スキャナ、バーコードリーダ3Dスキャナ、3Dプリンタ、レーザレンジファインダ、および視線追跡デバイスなどの聴覚/視覚デバイスも含んでもよいが、それらに限定されるものではない。加えて、ユーザインターフェイス入力デバイスは、例えば、コンピュータ断層撮影、磁気共鳴撮像、ポジトロン断層撮影、医療用超音波検査装置等の医療用撮像入力デバイスを含んでもよい。ユーザインターフェイス入力デバイスはまた、例えば、MIDIキーボード、デジタル楽器等の音声入力デバイスを含んでもよい。
ユーザインターフェイス出力デバイスは、ディスプレイサブシステム、インジケータライト、または音声出力デバイス等の非視覚的ディスプレイを含んでもよい。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)またはプラズマディスプレイを使用するものなどのフラットパネルデバイス、投影デバイス、タッチスクリーンなどであってもよい。一般に、「出力デバイス」という語の使用は、コンピュータシステム1300からユーザまたは他のコンピュータに情報を出力するためのすべての考えられ得るタイプのデバイスおよび機構を含むよう意図される。たとえば、ユーザインターフェイス出力デバイスは、モニタ、プリンタ、スピーカ、ヘッドフォン、自動車ナビゲーションシステム、プロッタ、音声出力デバイスおよびモデムなどの、テキスト、グラフィックスならびに音声/映像情報を視覚的に伝えるさまざまな表示デバイスを含んでもよいが、それらに限定されるものではない。
コンピュータシステム1300は、現在のところシステムメモリ1310内に位置しているものとして示されているソフトウェア要素を含むストレージサブシステム1318を備えてもよい。システムメモリ1310は、処理ユニット1304上でロード可能および実行可能なプログラム命令、ならびにこれらのプログラムの実行中に生成されるデータを記憶してもよい。
コンピュータシステム1300の構成およびタイプに応じて、システムメモリ1310は、揮発性(ランダムアクセスメモリ(RAM)など)および/または不揮発性(読み出し専用メモリ(ROM)、フラッシュメモリなど)であってもよい。RAMは、典型的には、処理ユニット1304に即座にアクセス可能である、ならびに/もしくは処理ユニット1304によって現在操作および実行されている、データならびに/またはプログラムモジュールを含む。いくつかの実現例では、システムメモリ1310は、スタティックランダムアクセスメモリ(SRAM)またはダイナミックランダムアクセスメモリ(DRAM)など、複数の異なるタイプのメモリを含んでもよい。いくつかの実現例では、起動中などにコンピュータシステム1300内の要素間で情報を転送するのに役立つ基本的なルーチンを含むベーシックインプット/アウトプットシステム(BIOS)が、典型的には、ROMに記憶されてもよい。限定ではなく例として、システムメモリ1310はまた、クライアントアプリケーション、ウェブブラウザ、中間層アプリケーション、リレーショナルデータベース管理システム(RDBMS)などを含んでもよいアプリケーションプログラム1312、プログラムデータ1314、およびオペレーティングシステム1316も示す。例として、オペレーティングシステム1316は、様々なバージョンのMicrosoft Windows(登録商標)、Apple Macintosh(登録商標)、および/もしくはLinux(登録商標)オペレーティングシステム、様々な市販のUNIX(登録商標)もしくはUNIX様オペレーティングシステム(様々なGNU/Linux(登録商標)オペレーティングシステム、Google Chrome(登録商標)OSなどを含むが、これらに限定されない)、ならびに/またはiOS, Windows(登録商標)Phone, Android(登録商標)OS、BlackBerry(登録商標)12OS、およびPalm(登録商標)OSオペレーティングシステムなどのモバイルオペレーティングシステムを含んでもよい。
記憶サブシステム1318はまた、いくつかの実施形態の機能性を提供する基本的なプログラミングおよびデータ構造を記憶するための有形のコンピュータ可読記憶媒体も提供してもよい。プロセッサによって実行されると上述の機能を提供するソフトウェア(プログラム、コードモジュール、命令)が、ストレージサブシステム1318に格納されてもよい。これらのソフトウェアモジュールまたは命令は、処理ユニット1304によって実行されてもよい。ストレージサブシステム1318はまた、本開示に従って使用されるデータを記憶するためのリポジトリを提供してもよい。
ストレージサブシステム1318はまた、コンピュータ可読記憶媒体1322にさらに接続され得るコンピュータ可読記憶媒体リーダ1320を含み得る。システムメモリ1310とともに、およびオプションとして、システムメモリ1310と組み合わせて、コンピュータ可読記憶媒体1322は、コンピュータ可読情報を、一時的および/またはより恒久的に収容、記憶、伝送、および検索するために、遠隔の、ローカルな、固定された、および/またはリムーバブルなストレージデバイスに記憶媒体を加えたものを包括的に表してもよい。
コードまたはコードの一部を含むコンピュータ可読記憶媒体1322はまた、限定はしないが、情報の記憶および/または伝送のための任意の方法または技術で実現される揮発性および不揮発性の、リムーバブルおよび非リムーバブル媒体などの、記憶媒体ならびに通信媒体を含む、当該技術において公知であるかまたは用いられる任意の適切な媒体を含むことができる。これは、RAM、ROM、電子的に消去可能プログラマブルROM(EEPROM)、フラッシュメモリもしくは他のメモリ技術、コンパクトディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、または他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または他の有形のコンピュータ可読媒体等の有形のコンピュータ可読記憶媒体を含んでもよい。これはまた、データ信号、データ伝送、または所望の情報を伝送するために使用することができ、コンピュータシステム1300によってアクセスすることができる、任意の他の媒体等の非有形のコンピュータ可読媒体を含むことができる。
例として、コンピュータ可読記憶媒体1322は、非リムーバブル不揮発性磁気媒体に対して読み書きするハードディスクドライブ、リムーバブル不揮発性磁気ディスクに対して読み書きする磁気ディスクドライブ、CD ROM、DVDおよびBlu-Ray(登録商標)ディスクなどの、リムーバブル不揮発性光ディスクに対して読み書きする光ディスクドライブ、または他の光学媒体を含んでもよい。コンピュータ可読記憶媒体1322は、Zip(登録商標)ドライブ、フラッシュメモリカード、ユニバーサルシリアルバス(USB)フラッシュドライブ、セキュアデジタル(SD)カード、DVDディスク、デジタルビデオテープなどを含んでもよいが、これらに限定されない。コンピュータ可読記憶媒体1322はまた、フラッシュメモリベースのSSD、エンタープライズフラッシュドライブ、ソリッドステートROMなどの不揮発性メモリに基づくソリッドステートドライブ(SSD)、ソリッドステートRAM、ダイナミックRAM、スタティックRAMなどの揮発性メモリに基づくSSD、ダイナミックランダムアクセスメモリ(DRAM)ベースのSSD、磁気抵抗RAM(MRAM)SSD、およびDRAMとフラッシュメモリベースのSSDとの組み合わせを使用するハイブリッドSSDも含んでもよい。ディスクドライブおよびそれらに関連付けられるコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの不揮発性記憶をコンピュータシステム1300に提供してもよい。
通信サブシステム1324は、他のコンピュータシステムおよびネットワークに対するインターフェイスを提供する。通信サブシステム1324は、他のシステムとコンピュータシステム1300との間のデータの送受のためのインターフェイスとして働く。例えば、通信サブシステム1324は、コンピュータシステム1300がインターネットを介して1つ以上のデバイスに接続することを可能にしてもよい。いくつかの実施形態では、通信サブシステム1324は、(たとえば、セルラー電話技術、3G、4GもしくはEDGE(グローバル進化のための高速データレート)などの先進データネットワーク技術、WiFi(IEEE802.11ファミリー規格、もしくは他のモバイル通信技術、またはそれらのいずれかの組み合わせを用いて)無線音声および/もしくはデータネットワークにアクセスするための無線周波数(RF)送受信機コンポーネント、グローバルポジショニングシステム(GPS)受信機コンポーネント、ならびに/または他のコンポーネントを含んでもよい。いくつかの実施形態では、通信サブシステム1324は、無線インターフェイスに加えて、またはその代わりに、有線ネットワーク接続性(例えば、イーサネット(登録商標))を提供することができる。
いくつかの実施形態では、通信サブシステム1324はまた、コンピュータシステム1300を使用してもよい1人以上のユーザの代わりに、構造化されたおよび/または構造化されていないデータフィード1326、イベントストリーム1328、イベント更新1330等の形式で入力通信を受信してもよい。
例として、通信サブシステム1324は、Twitter(登録商標)フィード、Facebook(登録商標)更新、Rich Site Summary(RSS)フィードなどのウェブフィード、および/もしくは1つ以上の第三者情報源からのリアルタイム更新などの、ソーシャルネットワークならびに/または他の通信サービスのユーザからリアルタイムでデータフィード1326を受信するよう構成されてもよい。
加えて、通信サブシステム1324はまた、連続データストリームの形式でデータを受信するよう構成されてもよく、これは、明示的な終端を伴わない、本質的に連続的または無限であってもよい、リアルタイムイベントのイベントストリーム1328および/またはイベント更新1330を含んでもよい。連続データを生成するアプリケーションの例としては、たとえば、センサデータアプリケーション、金融株式相場表示板、ネットワーク性能測定ツール(たとえば、ネットワーク監視およびトラフィック管理アプリケーション)、クリックストリーム解析ツール、自動車交通監視などが含まれてもよい。
通信サブシステム1324はまた、構造化されたおよび/または構造化されていないデータフィード1326、イベントストリーム1328、イベント更新1330などを、コンピュータシステム1300に結合される1つ以上のストリーミングデータソースコンピュータと通信してもよい1つ以上のデータベースに出力するよう構成されてもよい。
コンピュータシステム1300は、ハンドヘルドポータブルデバイス(例えば、iPhone(登録商標)携帯電話、iPad(登録商標)コンピューティングタブレット、PDA)、ウェアラブルデバイス(例えば、Google Glass(登録商標)ヘッドマウントディスプレイ)、PC、ワークステーション、メインフレーム、キオスク、サーバラック、または任意の他のデータ処理システムを含む、種々のタイプの1つとすることができる。
常に変化するコンピュータおよびネットワークの性質のため、図に示されるコンピュータシステム1300の記載は、単に具体的な例として意図される。図に描写されるシステムより多いまたは少ないコンポーネントを有する、多くの他の構成が可能である。たとえば、カスタマイズされたハードウェアも使用されるかもしれず、および/または、特定の要素が、ハードウェア、ファームウェア、ソフトウェア(アプレットを含む)、または組み合わせで実現されるかもしれない。さらに、ネットワーク入力/出力デバイス等の他のコンピューティングデバイスへの接続が採用されてもよい。本明細書に提供される開示および教示に基づいて、当業者は、種々の実施形態を実現するために、他の態様および/または方法を理解するであろう。
特定の実施形態について説明してきたが、様々な修正、変更、代替構成、および均等物も本開示の範囲内に包含される。実施形態は、ある特定のデータ処理環境内での動作に限定されず、複数のデータ処理環境内で自由に動作することができる。加えて、実施形態は、特定の一連のトランザクションおよびステップを使用して説明されているが、本開示の範囲は、説明された一連のトランザクションおよびステップに限定されないことが、当業者に明白となるはずである。上述した実施形態のさまざまな特徴および局面は、個別にまたはともに用いられてもよい。
さらに、実施形態は、ハードウェアおよびソフトウェアの特定の組み合わせを使用して説明されたが、ハードウェアおよびソフトウェアの他の組み合わせも本開示の範囲内であることを認識されたい。実施形態は、ハードウェアのみで、またはソフトウェアのみで、またはそれらの組合せを使用して実現されてもよい。本明細書に記載されたさまざまなプロセスは、同じプロセッサまたは任意の組み合わせの異なるプロセッサ上で実現され得る。したがって、構成要素またはモジュールが特定の動作を実行するように構成されるとして記載されている場合、そのような構成は、たとえば、動作を実行する電子回路を設計すること、プログラミング可能な電子回路(マイクロプロセッサなど)をプログラミングして動作を実行すること、またはそれらの任意の組み合わせによって達成され得る。プロセスは、プロセス間通信のための従来の技術を含むがこれに限定されないさまざまな技術を用いて通信することができ、異なる対のプロセスが異なる技術を用いてもよく、同じ対のプロセスが異なる時間に異なる技術を用いてもよい。
したがって、明細書および図面は、限定的な意味ではなく例示的な意味で見なされるべきである。しかしながら、特許請求の範囲に記載された、より広範な精神および範囲から逸脱することなく、追加、削減、削除、ならびに他の修正および変更がなされ得ることは明らかであろう。したがって、特定の開示の実施形態を説明してきたが、これらは限定を意図するものではない。さまざまな修正および均等物が、特許請求の範囲内にある。
開示された実施形態を説明する文脈における(特に特許請求の範囲の文脈における)文言「ある(a)」および「ある(an)」および「その(the)」ならびに同様の指示対象の使用は、本明細書において別段の指示がない限り、または文脈によって明らかに矛盾しない限り、単数形および複数形の両方を包含すると解釈されるべきである。文言「備える(comprising)」、「有する(having)」、「含む(including)」、および「含有する(containing)」は、特に断らない限り、非限定的な文言(すなわち、「~を含むがそれに限定されない」を意味する)として解釈されるべきである。「接続される」という文言は、何かが介在する場合であっても、部分的または全体的に内部に含まれる、取り付けられる、または共に合わせられるものとして解釈されるべきである。本明細書における値の範囲の記載は、本明細書において別段の指示がない限り、単に、その範囲内に入る各別個の値を個々に言及する簡潔な方法としての役割を果たすことを意図しており、各別個の値は、あたかもそれが本明細書において個々に記載されているかのように本明細書に組み込まれる。本明細書に記載されるすべての方法は、本明細書に別段の指示がない限り、または文脈によって明らかに矛盾しない限り、任意の好適な順序で実施され得る。本明細書で提供される任意のおよびすべての例、または例示的な言葉(例えば、「など」)の使用は、単に、実施形態をよりよく説明することを意図するものであり、別段の請求がない限り、本開示の範囲を限定するものではない。本明細書におけるいかなる文言も、任意の請求されていない要素を本開示の実施に不可欠であることを示すものとして解釈されるべきではない。
句「X、Y、またはZの少なくとも1つ」などの離接的文言は、特に別段の記載がない限り、項目、用語などがX、Y、もしくはZ、またはそれらの任意の組合せ(例えば、X、Y、および/またはZ)のいずれかであってもよいことを提示するために一般に使用される文脈内で理解されることが意図される。したがって、そのような離接的文言は、概して、ある実施形態が、Xの少なくとも1つ、Yの少なくとも1つ、またはZの少なくとも1つが各々存在することを必要とすることを包含するよう意図せず、および包含するべきではない。
本開示を実施するために公知の最良の形態を含む、本開示の好ましい実施形態が本明細書に記載されている。これらの好ましい実施形態の変形例は、前述の説明を読めば当業者には明らかになるであろう。当業者は、適宜、そのような変形例を採用することができるはずであり、本開示は、本明細書に具体的に説明されるものとは別様に実践されてもよい。したがって、本開示は、適用可能な法によって許可されるように、特許請求の範囲に記載される主題のすべての修正物および均等物を含む。さらに、そのすべての可能な変形物における上記の要素の任意の組み合わせは、本明細書において別段の指示がない限り、本開示によって包含される。
本明細書に引用される刊行物、特許出願、および特許を含むすべての引用文献は、あたかも各引用文献が個々にかつ具体的に引用により援用されるよう示され、その全体がここに記載されるのと同程度に、ここに引用により援用される。
上記の明細書では、本開示の局面についてその具体的な実施形態を参照して説明しているが、本開示はそれに限定されるものではないということを当業者は認識するであろう。上記の開示のさまざまな特徴および局面は、個々にまたは一緒に用いられてもよい。さらに、実施形態は、本明細書の、より広い精神および範囲から逸脱することなく、本明細書に説明されるものを超えて、任意の数の環境および用途において利用され得る。したがって、明細書および図面は、限定的ではなく例示的であると見なされるべきである。

Claims (20)

  1. 方法であって、
    データセンタのレイアウトを受信することと、
    前記データセンタのための論理障害ドメイン構成を受信することとを含み、前記論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し、前記計算インスタンスは、前記論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され、前記方法はさらに、
    前記複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによってデータセンタ構成を決定することを含み、前記複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、前記複数の論理障害ドメインにわたって冗長な電力供給を提供し、前記方法はさらに、
    前記データセンタ構成を表示のためにデバイスに送信することを含む、方法。
  2. 前記データセンタ構成は、前記データセンタのための電力供給を電力分配群の、等しい、別個のセットに分割することによって決定される、請求項1に記載の方法。
  3. 前記データセンタ構成は、前記電力分配群の各セットが、前記データセンタ内において論理障害ドメインのためのラックから上流に商用電線路までN個の非共有電気経路を有し、Nはデータセンタ冗長性プロパティに適合する構成を含む、請求項2に記載の方法。
  4. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を及ぼすことなく、1つの電気的ゾーンにおける物理的施設保守の実行を可能にする、請求項1に記載の方法。
  5. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を与えることなく、1つの電気的ゾーンにおける電力設備障害を可能にする、請求項1に記載の方法。
  6. 論理障害ドメイン内の物理ハードウェアは、独立した冗長な電力供給を有する、請求項1に記載の方法。
  7. 電気的ゾーンは、前記データセンタ内におけるラック位置のグループ化を含み、その上流の電気的分配は、2つの能動的給電部の一意の組合せによって供給される、請求項1に記載の方法。
  8. 命令のセットを記憶する非一時的なコンピュータ可読媒体であって、前記命令のセットは、
    1つ以上の命令を含み、前記1つ以上の命令は、コンピュータシステムの1つ以上のプロセッサによって実行されると、前記コンピュータシステムに、
    データセンタのレイアウトを受信させ、
    前記データセンタのための論理障害ドメイン構成を受信させ、前記論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し、前記計算インスタンスは、前記論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され、前記1つ以上の命令は、さらに、前記コンピュータシステムの前記1つ以上のプロセッサによって実行されると、前記コンピュータシステムに、
    前記複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによってデータセンタ構成を決定させ、前記複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、前記複数の論理障害ドメインにわたって冗長な電力供給を提供し、前記1つ以上の命令は、さらに、前記コンピュータシステムの前記1つ以上のプロセッサによって実行されると、前記コンピュータシステムに、
    前記データセンタ構成を表示のためにデバイスに送信させる、非一時的なコンピュータ可読媒体。
  9. 前記データセンタ構成は、前記データセンタのための電力供給を電力分配群の、等しい、別個のセットに分割することによって決定される、請求項8に記載の非一時的なコンピュータ可読媒体。
  10. 前記データセンタ構成は、前記電力分配群の各セットが、前記データセンタ内において論理障害ドメインのためのラックから上流に商用電線路までN個の非共有電気経路を有し、Nはデータセンタ冗長性プロパティに適合する構成をさらに含む、請求項9に記載の非一時的なコンピュータ可読媒体。
  11. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を及ぼすことなく、1つの電気的ゾーンにおける物理的施設保守の実行を可能にする、請求項8に記載の非一時的なコンピュータ可読媒体。
  12. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を与えることなく、1つの電気的ゾーンにおける電力設備障害を可能にする、請求項8に記載の非一時的なコンピュータ可読媒体。
  13. 論理障害ドメイン内の物理ハードウェアは、独立した冗長な電力供給を有する、請求項8に記載の非一時的なコンピュータ可読媒体。
  14. 電気的ゾーンは、前記データセンタ内におけるラック位置のグループ化を含み、その上流の電気的分配は、2つの能動的給電部の一意の組合せによって供給される、請求項8に記載の非一時的なコンピュータ可読媒体。
  15. コンピュータシステムであって、
    1つ以上のメモリと、
    1つ以上のメモリに通信可能に結合される1つ以上のプロセッサとを備え、前記1つ以上のプロセッサは、
    データセンタのレイアウトを受信するよう構成され、
    前記データセンタのための論理障害ドメイン構成を受信するよう構成され、前記論理障害ドメイン構成は、1つ以上の計算インスタンスを分散させるための複数の論理障害ドメインの仮想位置を識別し、前記計算インスタンスは、前記論理障害ドメイン構成に少なくとも部分的に基づいて、単一の論理障害ドメイン内の独立した物理ハードウェアデバイス上で実行され、前記1つ以上のプロセッサはさらに、
    前記複数の論理障害ドメインのうちの少なくともいくつかを複数の電気的ゾーンのうちの少なくともいくつかに割り当てることによってデータセンタ構成を決定するよう構成され、前記複数の電気的ゾーンの各電気的ゾーンは、停電の発生に少なくとも部分的に基づいて、前記複数の論理障害ドメインにわたって冗長な電力供給を提供し、前記1つ以上のプロセッサはさらに、
    前記データセンタ構成を表示のためにデバイスに送信するよう構成される、コンピュータシステム。
  16. 前記データセンタ構成は、前記データセンタのための電力供給を電力分配群の、等しい、別個のセットに分割することによって決定される、請求項15に記載のコンピュータシステム。
  17. 前記データセンタ構成は、前記電力分配群の各セットが、前記データセンタ内において論理障害ドメインのためのラックから上流に商用電線路までN個の非共有電気経路を有し、Nはデータセンタ冗長性プロパティに適合する構成をさらに含む、請求項16に記載のコンピュータシステム。
  18. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を及ぼすことなく、1つの電気的ゾーンにおける物理的施設保守の実行を可能にする、請求項15に記載のコンピュータシステム。
  19. 前記データセンタ構成は、論理障害ドメイン冗長性を維持しながら、他の電気的ゾーンに影響を与えることなく、1つの電気的ゾーンにおける電力設備障害を可能にする、請求項15に記載のコンピュータシステム。
  20. 電気的ゾーンは、前記データセンタ内におけるラック位置のグループ化を含み、その上流の電気的分配は、2つの能動的給電部の一意の組合せによって供給される、請求項15に記載のコンピュータシステム。
JP2023525057A 2020-10-26 2021-10-25 データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術 Pending JP2023547895A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063105826P 2020-10-26 2020-10-26
US63/105,826 2020-10-26
US17/211,670 2021-03-24
US17/211,670 US20220129601A1 (en) 2020-10-26 2021-03-24 Techniques for generating a configuration for electrically isolating fault domains in a data center
PCT/US2021/056498 WO2022093713A1 (en) 2020-10-26 2021-10-25 Techniques for generating a configuration for electrically isolating fault domains in a data center

Publications (2)

Publication Number Publication Date
JP2023547895A true JP2023547895A (ja) 2023-11-14
JPWO2022093713A5 JPWO2022093713A5 (ja) 2024-05-22

Family

ID=81258528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023525057A Pending JP2023547895A (ja) 2020-10-26 2021-10-25 データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術

Country Status (7)

Country Link
US (1) US20220129601A1 (ja)
EP (1) EP4232933A1 (ja)
JP (1) JP2023547895A (ja)
KR (1) KR20230091168A (ja)
CN (1) CN116615719A (ja)
AU (1) AU2021370631A1 (ja)
WO (1) WO2022093713A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11726537B2 (en) * 2021-06-22 2023-08-15 Dell Products L.P. Dynamic load balancing across power supply units
WO2024054239A1 (en) * 2022-09-06 2024-03-14 Oracle International Corporation Burst datacenter capacity for hyperscale workloads

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10089163B2 (en) * 2015-06-17 2018-10-02 Vmware, Inc. Automatic discovery and prioritization of fault domains
US20190068466A1 (en) * 2017-08-30 2019-02-28 Intel Corporation Technologies for auto-discovery of fault domains
JP6949801B2 (ja) * 2018-10-17 2021-10-13 株式会社日立製作所 ストレージシステム及びストレージシステムにおけるデータ配置方法
US11063470B2 (en) * 2018-10-17 2021-07-13 Edward Michael John Ansett Adaptable redundant power

Also Published As

Publication number Publication date
EP4232933A1 (en) 2023-08-30
CN116615719A (zh) 2023-08-18
AU2021370631A1 (en) 2023-06-08
WO2022093713A1 (en) 2022-05-05
US20220129601A1 (en) 2022-04-28
KR20230091168A (ko) 2023-06-22

Similar Documents

Publication Publication Date Title
EP3191959B1 (en) Scalable data storage pools
US10558535B2 (en) Cluster file system support for extended network service addresses
US8930542B2 (en) Dynamically building a set of compute nodes to host the user's workload
JP2023548373A (ja) 非同期領域間ブロックボリューム複製
US10019329B2 (en) In-line backup power source incorporating communication capability
CN109040212A (zh) 设备接入服务器集群方法、系统、设备及存储介质
US20140223012A1 (en) Cluster-aware resource provisioning in a networked computing environment
JP2023547895A (ja) データセンタ内で障害ドメインを電気的に絶縁するための構成を生成するための技術
CN103124299A (zh) 一种异构环境下的分布式块级别存储系统
US11658972B2 (en) Isolated cell architecture for cloud computing platform
US10168759B2 (en) Hierarchical prioritized charging for battery backup units on computing data centers
US20220138220A1 (en) Dedicated replication channels for replicating records between regions
US10860078B2 (en) Managing power request during cluster operations
US9043648B2 (en) Intelligently responding to hardware failures so as to optimize system performance
US9143410B1 (en) Techniques for monitoring guest domains configured with alternate I/O domains
US11847506B1 (en) Burst datacenter capacity for hyperscale workloads
WO2024054239A1 (en) Burst datacenter capacity for hyperscale workloads
US20240103469A1 (en) Datacenter level power management with reactive power capping
US20240143459A1 (en) Replicating resources between regional data centers
US20210096959A1 (en) Loss free long distance active-active sites configuration
WO2024064426A1 (en) Datacenter level power management with reactive power capping

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240510

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240510