インターネットに接続するアプリケーションの配信のためのネットワーキング: リファレンス アーキテクチャ

Last reviewed 2023-11-13 UTC

このドキュメントは、データセンターのワークロードを Google Cloud に移行する企業向けのネットワーキング アーキテクチャとセキュリティ アーキテクチャについて説明するシリーズの一部です。

このシリーズは、次のドキュメントで構成されています。

Google は、特に重要なインターネットに接続するアプリケーションの保護とスケールを容易にする一連のプロダクトと機能を提供しています。図 1 は、Google Cloud サービスを使用して複数の層を持つウェブ アプリケーションをデプロイするアーキテクチャを示しています。

Google Cloud にデプロイされた一般的な多層ウェブ アプリケーション。

図 1: Google Cloud にデプロイされた一般的な多層ウェブ アプリケーション。

リフト&シフト アーキテクチャ

インターネットに接続するアプリケーションがクラウドに移行する場合、スケールが可能で、オンプレミス環境と同じセキュリティ制御と可視性が必要になります。市販のネットワーク仮想アプライアンスを使用して、これらの制御を提供できます。

アプライアンス ベースの外部ロードバランサを使用してデプロイされたアプリケーション。

図 2. アプライアンス ベースの外部ロードバランサを使用してデプロイされたアプリケーション。

これらの仮想アプライアンスは、オンプレミス環境と整合性のある機能と可視性を提供します。ネットワーク仮想アプライアンスを使用する場合は、自動スケーリングされたマネージド インスタンス グループを使用してソフトウェア アプライアンス イメージをデプロイします。アプライアンスを実行する VM インスタンスの正常性のモニタリングと管理はユーザーの責任で行う必要があります。また、アプライアンスのソフトウェア更新も管理します。

最初のシフトを行った後、セルフマネージド ネットワークの仮想アプライアンスからマネージド サービスに移行することをおすすめします。Google Cloud には、アプリケーションの大規模な配信を可能にするさまざまなマネージド サービスが用意されています。

図 2 は、ウェブ階層アプリケーションのフロントエンドとして構成されたネットワーク仮想アプライアンスを示しています。パートナー エコシステム ソリューションの一覧については、Google Cloud コンソールの Google Cloud Marketplace ページをご覧ください。

ハイブリッド サービスのアーキテクチャ

Google Cloud には、インターネットに接続するアプリケーションを大規模に管理するための次のアプローチが用意されています。

  • 高可用性と低レイテンシを実現する Google のエニーキャスト DNS ネームサーバーのグローバル ネットワークを使用して、ドメイン名に対するリクエストを IP アドレスに変換します。
  • Google の外部アプリケーション ロードバランサのグローバル フリートを使用して、Google Cloud 内、オンプレミス、または別のパブリック クラウドでホストされているアプリケーションにトラフィックをルーティングします。これらのロードバランサはトラフィックに合わせて自動的にスケールされ、各リクエストが正常なバックエンドに送信されます。ハイブリッド接続ネットワーク エンドポイント グループを設定すると、外部アプリケーション ロードバランサのネットワーク機能のメリットを、Google Cloud の外部にある既存のインフラストラクチャで実行されているサービスで利用できます。オンプレミス ネットワークまたは他のパブリック クラウド ネットワークは、VPN トンネルまたは Cloud Interconnect 経由で Google Cloud ネットワークにプライベート接続されます。
  • Cloud CDN などのネットワーク エッジ サービスを使用してコンテンツを配信し、Google Cloud Armor を使用してコンテンツを保護します。また、Identity-Aware Proxy(IAP)を使用して、サービスへのアクセスを制御します。

    図 3 は、外部アプリケーション ロードバランサを使用するハイブリッド接続を示しています。

    外部アプリケーション ロードバランサとネットワーク エッジ サービスを使用したハイブリッド接続構成。

    図 3. 外部アプリケーション ロードバランサとネットワーク エッジ サービスを使用したハイブリッド接続構成。

    図 4 は、ハイブリッド接続のネットワーク エンドポイント グループを使用した別の接続オプションを示しています。

    ハイブリッド接続ネットワークのエンドポイント グループを使用した外部アプリケーション ロードバランサの構成。

    図 4. ハイブリッド接続ネットワークのエンドポイント グループを使用した外部アプリケーション ロードバランサの構成。

  • HTTP Uniform Resource Identifier(URI)などの属性に基づいてリクエストをルーティングするには、アプリケーション ロードバランサ(HTTP/HTTPS)を使用します。TLS オフロード、TCP プロキシ、複数のリージョンのバックエンドへの外部ロード バランシングのサポートを実装するには、プロキシ ネットワーク ロードバランサを使用します。クライアント ソース IP アドレスを保持し、プロキシのオーバーヘッドを回避して、UDP、ESP、ICMP などの追加のプロトコルをサポートするには、パススルー ネットワーク ロードバランサを使用します。

  • Google Cloud Armor でサービスを保護します。このプロダクトは、グローバル外部アプリケーション ロードバランサを通じてアクセスするすべてのサービスで利用できるエッジ DDoS 防御と WAF セキュリティ プロダクトです。

  • Google マネージド SSL 証明書を使用します。他の Google Cloud プロダクトですでに使用している証明書と秘密鍵を再利用できます。そのため、個別の証明書を管理する必要がなくなります。

  • アプリケーションでキャッシュを有効にして、Cloud CDN の分散アプリケーション配信フットプリントを活用します。

  • 図 5 に示すように、ネットワーク仮想アプライアンスを使用して、North-South(インターネットとの間)と East-West(オンプレミス ネットワークまたは VPC ネットワークとの間)の両方のトラフィックを検査してフィルタリングします。

    内部ロードバランサと VPC ネットワーク ピアリングを使用してトラフィックを検査する高可用性ネットワーク仮想アプライアンスの構成。

    図 5. 内部パススルー ネットワーク ロードバランサと VPC ネットワーク ピアリングを使用してトラフィックを検査する高可用性ネットワーク仮想アプライアンスの構成。

  • 図 6 に示すように、Cloud IDS を使用して North-South トラフィックの脅威を検出します。

    すべてのインターネット トラフィックと内部トラフィックをミラーリングして検査するための Cloud IDS 構成。

    図 6. すべてのインターネット トラフィックと内部トラフィックをミラーリングして検査するための Cloud IDS 構成。

ゼロトラスト分散型アーキテクチャ

ゼロトラスト分散アーキテクチャを拡張して、インターネットからのアプリケーション配信を含めることができます。このモデルでは、Google の外部アプリケーション ロードバランサが、独自のクラスタに Cloud Service Mesh メッシュを持つ GKE クラスタ間でグローバルなロード バランシングを行います。このシナリオでは、複合 Ingress モデルを採用します。第 1 層のロードバランサがクラスタを選択し、次に Cloud Service Mesh が管理する Ingress ゲートウェイが、クラスタ固有のロード バランシングと Ingress のセキュリティを提供します。このマルチクラスタ Ingress の例として、エンタープライズ アプリケーションのブループリントで説明されている Cymbal Bank リファレンス アーキテクチャが挙げられます。Cloud Service Mesh の Edge Ingress の詳細については、エッジからメッシュへ: GKE Ingress を介したサービス メッシュ アプリケーションの公開をご覧ください。

図 7 は、外部アプリケーション ロードバランサが、インターネットからサービス メッシュIngress ゲートウェイ経由でトラフィックを転送する構成を示しています。ゲートウェイはサービス メッシュ専用のプロキシです。

ゼロトラスト マイクロサービス環境でのアプリケーション配信。

図 7. ゼロトラスト マイクロサービス環境でのアプリケーション配信。

次のステップ