ハイブリッド クラウドとマルチクラウドのアーキテクチャ パターン

Last reviewed 2023-12-14 UTC

このドキュメントは、一連の 3 つのドキュメントのうち 2 つ目です。一般的なハイブリッド クラウドとマルチクラウドのアーキテクチャ パターンについて説明します。また、これらのパターンが最も適しているシナリオについても説明します。最後に、このようなアーキテクチャを Google Cloud にデプロイする際に使用できるベスト プラクティスについて説明します。

ハイブリッド クラウドとマルチクラウドのアーキテクチャ パターンのドキュメント セットは、次の部分で構成されています。

ハイブリッドやマルチクラウドのアーキテクチャを設定するにあたり、要件および制約条件の元となるアプリケーション ワークロードは、企業ごとにそれぞれ異なります。これらの制約と要件を満たすようにアーキテクチャを設計し、調整する必要がありますが、いくつかの一般的なパターンを想定して、基盤となるアーキテクチャを定義できます。

アーキテクチャ パターンは、テクノロジー ソリューション、アプリケーション、またはサービスの複数の機能コンポーネントを構造化して、特定の要件またはユースケースに対応する再利用可能なソリューションを作成する反復可能な方法です。クラウドベースのテクノロジー ソリューションは、多くの場合、複数の個別の分散型クラウド サービスで構成されています。これらのサービスは、必要な機能を提供するために連携して機能します。このコンテキストでは、各サービスはテクノロジー ソリューションの機能コンポーネントとみなされます。同様に、アプリケーションは複数の機能レイヤ、モジュール、サービスで構成でき、それぞれがアプリケーション アーキテクチャの機能コンポーネントを表すことができます。このようなアーキテクチャは、特定のビジネス ユースケースに対応するように標準化でき、基盤となる再利用可能なパターンとして機能します。

アプリケーションまたはソリューションのアーキテクチャ パターンを一般的な内容で定義するには、以下の項目を特定して定義します。

  • ソリューションまたはアプリケーションのコンポーネント。
  • 各コンポーネントに期待される機能(グラフィカル ユーザー インターフェースを提供するフロントエンド関数や、データアクセスを提供するバックエンド関数など)。
  • コンポーネントが相互に、および外部のシステムやユーザーと通信する方法。最新のアプリケーションでは、これらのコンポーネントは明確に定義されたインターフェースまたは API を介して相互作用します。通信モデルには、非同期、同期、リクエスト / レスポンス、キューベースなど、さまざまなものがあります。

ハイブリッド クラウドとマルチクラウドのアーキテクチャ パターンには、次の 2 つの主要なカテゴリがあります。

  • 分散型アーキテクチャ パターン: これらのパターンは、ワークロードまたはアプリケーション コンポーネントの分散型デプロイに依存します。つまり、パターンに最適なコンピューティング環境でアプリケーション(または対象アプリケーションの特定のコンポーネント)を実行します。これにより、分散コンピューティング環境と相互接続コンピューティング環境のさまざまなプロパティや特性をパターンに対して活用できます。
  • 冗長アーキテクチャ パターン: これらのパターンは、ワークロードの冗長デプロイに基づいています。これらのパターンでは、同じアプリケーションとそのコンポーネントを複数のコンピューティング環境にデプロイします。目標は、アプリケーションのパフォーマンス容量または復元力を高めるか、開発とテストのために既存の環境を複製することです。

選択したアーキテクチャ パターンを実装するときは、適切なデプロイ アーキタイプを使用する必要があります。デプロイ アーキタイプは、ゾーン、リージョン、マルチリージョン、グローバルのいずれかです。この選択は、アプリケーション固有のデプロイ アーキテクチャを構築する基盤となります。各デプロイ アーキタイプは、アプリケーションが動作できる障害発生ドメインの組み合わせを定義します。これらの障害発生ドメインには 1 つ以上の Google Cloud ゾーンまたはリージョンを含めることができます。また、オンプレミス データセンターや他のクラウド プロバイダの障害発生ドメインが含まれるように拡張することもできます。

このシリーズには次のページが含まれます。

作成・変更者

著者: Marwan Al Shawi | パートナー カスタマー エンジニア

その他の寄稿者:

  • Saud Albazei | アプリケーション モダナイゼーション担当カスタマー エンジニア
  • Anna Berenberg | エンジニアリング フェロー
  • Marco Ferrari | クラウド ソリューション アーキテクト
  • Victor Moreno | プロダクト マネージャー、クラウド ネットワーキング
  • Johannes Passing | クラウド ソリューション アーキテクト
  • Mark Schlagenhauf | テクニカル ライター、ネットワーキング
  • Daniel Strebel | アプリケーション モダナイゼーション担当 EMEA ソリューション リード
  • Ammett Williams | デベロッパー リレーションズ エンジニア