AWS プロフェッショナルのための Google Cloud: ネットワーキング

更新日: 2019 年 4 月 9 日

Amazon と Google がそれぞれのクラウド環境で提供しているネットワーキング サービスを比べてみましょう。ネットワーキング サービスにより、仮想マシン、オンプレミス サーバー、その他のクラウド サービス間を接続できます。

サービスモデルの比較

アマゾン ウェブ サービス

アマゾン ウェブ サービスの最初のサービスである Amazon EC2-Classic は 2013 年後半から非推奨となりましたので、このドキュメントでは説明しません。

現在のモデルは Amazon VPC です。このサービスモデルはリージョン VPC のさまざまなネットワーキング機能をサポートします。たとえば、

  • プライベート アドレス空間の作成とサブネット化のサポート
  • ネットワーク アクセス制御リスト(NACL)
  • 受信および送信ファイアウォール ルール
  • ルーティング
  • VPN

Google Cloud

Google Cloud では、すべてのサービスを網羅したグローバル機能としてネットワーキングを扱っています。Google Cloud のネットワーキングは Google の Andromeda アーキテクチャが基本となっており、ソフトウェアを使用してさまざまなレベルのネットワーキング エレメントを作成できます。このソフトウェア定義ネットワーキングにより、Google Cloud のサービスを通じて、Compute Engine の仮想マシンに対するファイアウォール、Cloud Bigtable のデータベース ノード間の高速接続、BigQuery での迅速なクエリなど、細かなニーズに的確にマッチしたネットワーキング機能を導入できます。

Google Cloud プロジェクト内で仮想マシン インスタンスを作成すると、Compute Engine によりデフォルトの内部ネットワークにこのインスタンスが自動的に接続されます。必要に応じて、追加のネットワークを作成することもできます。Amazon VPC と同じように、それぞれのネットワークが限定公開で、ファイアウォール ルール、ルーティング、VPN、プライベート アドレス空間、サブネット化に対応しています。

ロードバランサ、ファイアウォール ルール、ルーティング テーブルなど、Google Cloud 内のネットワーキング エンティティのほとんどがグローバル スコープを持っています。さらに重要なのは、ネットワーク自体もグローバル スコープを持っているということです。このため、複数のプライベート ネットワークを接続し、それらの空間を個別に管理しなくても、グローバルで単一の IP プライベート空間を作ることができます。単一のグローバル ネットワークという特性により、Compute Engine のインスタンスは、ネットワーク内で IP アドレスと名前の両方でアドレス指定できます。

Google Cloud には、スタンダード ティアとプレミアム ティアという 2 つの Network Service Tiers があります。

  • デフォルトのプレミアム ティアは、Google のグローバル ネットワークを使用し、ハイ パフォーマンスでトラフィックを配信します。

  • スタンダード階層は、他のパブリック クラウドと同等のネットワーク パフォーマンスを提供する低コストのオプションです。

機能の比較

IP アドレス

Google Cloud と Amazon VPC の IP アドレスには次のような類似点があります。

  • すべてのインスタンスに内部 IP が割り当てられます。

  • 外部 IP をリクエストできます。デフォルトでは、外部 IP は一時的なものであり、インスタンスの存続期間に関連付けられています。

  • インスタンスに関連付けする永続的な IP アドレスをリクエストできます。この IP アドレスは利用者が解放するまで利用者のものであり、必要に応じてインスタンスから切り離すことができます。

次の表に、IP タイプの用語の違いを示します。

IP タイプ AWS Google Cloud
永続的な IP Elastic IP 静的 IP
一時的な IP パブリック IP エフェメラル IP
内部 IP プライベート IP 内部 IP

負荷分散

ロードバランサは、受信ネットワーク トラフィックを複数のインスタンスに分散します。ロードバランサを適切に構成することで、アプリケーションの耐障害性と可用性を向上させることができます。

AWS と Google Cloud の負荷分散サービス

AWS と Google Cloud はともに、次のような複数の負荷分散サービスを提供しています。AWS の負荷分散サービスは総称して Elastic Load Balancing と呼ばれ、Google Cloud の負荷分散サービスは Cloud Load Balancing と呼ばれています。

  • 外部レイヤ 4 負荷分散
  • 外部レイヤ 7 負荷分散
  • 内部負荷分散

AWS の負荷分散サービスは内部と外部の両方で使用できます。Google Cloud サービスは、外部アクセスと内部アクセスに分かれています。Google Cloud の内部オプションは内部負荷分散です。

AWS と Google Cloud の負荷分散の比較

次の表は、外部レイヤ 4 負荷分散オプションの AWS Network Load Balancer と Google Cloud Network Load Balancing の比較を示しています。

機能 AWS Google Cloud
ネットワーク負荷分散
サポートされているプロトコル TCP、TLS TCP、UDP
複数のポート
ポート範囲 ×
静的 IP アドレスのサポート 〇 - サブネットごとに 1 つ 〇 - ロードバランサごとに 1 つ
DNS フェイルオーバー 不要。GCP フェイルオーバーは単一のエニーキャスト IP を使用します。
送信元 IP アドレスの保持
デプロイの範囲 リージョン リージョン
Direct Server Return(DSR) ×
ターゲット VM インスタンス、ECS コンテナ、IP アドレス VM インスタンス

次の表に、外部レイヤ 7 負荷分散ロオプションの比較を示します。AWS では、Application Load Balancer でレイヤ 7 負荷分散を実装しています。Google Cloud では、HTTP(S) 負荷分散、TCP、SSL プロキシで実装しています。

機能 AWS Google Cloud
サポートされているプロトコル HTTP、HTTPS HTTP、HTTPS、SSL / TLS、TCP
SSL オフロード
送信元 IP アドレスの保持 × ×
複数のポート
ポート範囲 × ×
デプロイの範囲 リージョン グローバル
WebSockets のサポート
パス / ホストベースのルーティング
IPv6 サポート
HTTP/2 サポート
QUIC サポート ×
ターゲット VM インスタンス、ECS コンテナ、IP アドレス VM インスタンス、
Google Kubernetes Engine コンテナ、
IP アドレス

次の表に、内部負荷分散オプションの比較を示します。AWS の負荷分散サービスは内部と外部の両方で使用できます。Google Cloud は内部接続に内部負荷分散を使用します。

機能 AWS Google Cloud
サポートされているプロトコル HTTP, HTTPS,
TCP
TCP、UDP
送信元 IP アドレスの保持
複数のポート
ポート範囲 × ×
デプロイの範囲 リージョン リージョン
パス / ホストベースのルーティング ×
ターゲット VM インスタンス、ECS コンテナ、IP アドレス VM インスタンス

AWS の負荷分散

AWS の Elastic Load Balancing(ELB)サービスは、次の機能を提供します。

  • 所定のリージョンの 1 つまたは複数の可用性ゾーン内でトラフィックをインスタンスに振り分けることができます。

  • それぞれのターゲット インスタンスでヘルスチェックを定期的に実施し、インスタンスに異常がある場合は、トラフィックをリダイレクトします。

  • オプションで AWS の Auto Scaling サービスと統合することで、Auto Scaling でインスタンスがスケールアップまたはスケールダウンされるときに、自動的にインスタンスを追加または削除できます。

Elastic Load Balancer を作成すると、AWS ではトラフィックの送信先として CNAME が提供されます。AWS の Route 53 サービスを使用している場合は、Elastic Load Balancer をルートドメインとして使用できます。それ以外の場合は、Elastic Load Balancer に CNAME を使用する必要があります。

AWS では、コンテンツベースのルーティングと SSL オフロード用に Application Load Balancer が提供され、高スループット、低レイテンシのレイヤ 4 接続用に Network Load Balancer が提供されています。機能の詳細な比較については、AWS comparison page for Elastic Load Balancing をご覧ください。

Google Cloud Load Balancing

ELB と同様、Compute Engine のロードバランサでは、1 つまたは複数のゾーンでバックエンド インスタンスにトラフィックが振り分けられます。ただし、ELB とは異なり、外部の Compute Engine のロードバランサをプロビジョニングすると、グローバルにアクセス可能な単一の IP アドレスが割り当てられます。この IP アドレスは、ロードバランサの存続期間中に使用できるため、DNS の A レコード、ホワイトリストまたはアプリケーションの構成に使用できます。Compute Engine は、次の 3 種類のロードバランサを提供します。

  • 外部レイヤ 4 負荷分散。ネットワーク負荷分散は、Google の Maglev テクノロジーを使用し、リージョンで UDP トラフィックと TCP トラフィックの負荷分散を行います。トラフィックは複数のポートまたはポート範囲に分散され、ロードバランサはトラフィックのリターンパス上に配置されません。

  • 外部レイヤ 7 負荷分散。HTTP(S) 負荷分散、TCP プロキシ、SSL プロキシが複数のプロトコルを使用して、グローバルとリージョンでトラフィックを分散します。トラフィックは、使用可能な容量に基づいて最も近いバックエンドに自動的に転送されます。

  • 内部負荷分散。これは、Andromeda ネットワーク仮想化スタック上に構築されたリージョン負荷分散サービスで、TCP トラフィックと UDP トラフィックに対応しています。ソフトウェア定義の負荷分散を提供し、クライアント インスタンスからバックエンド インスタンスにトラフィックを直接配信します。

費用

AWS と Google Cloud の負荷分散サービスでは、料金モデルがわずかに異なります。

AWS では、次のものに対して料金が発生します。

  • ロードバランサの実行時間。
  • 1 時間あたりに使用されるロードバランサ容量(LCU)の数。

AWS の料金と LCU 単位の計算方法については、AWS のドキュメントをご覧ください。

Google の課金対象は次のとおりです。

  • ロードバランサを介して処理された上り(内向き)データ。
  • 負荷分散サービスを参照する転送ルールの量。

インスタンスの移行

インスタンスを実行するホストマシンは、メンテナンスや交換のため、データセンターからの切り離しが必要になる場合があります。

  • AWS: ユーザーは影響を受けるインスタンスをホストマシンから手動で移行する必要があります。これは、インスタンスを再起動する方法か、インスタンスのスナップショットを使ってインスタンスを作り直す方法のいずれかによって実行できます。

  • Google Cloud: ライブ マイグレーションが自動的に行われ、影響を受けるインスタンスが透過的に移行されます。

VPC 間の接続

AWS と Google Cloud のどちらも、VPC 間のネットワーク接続が可能です。

  • AWS は VPC ピアリング共有 VPC を提供します。

    • VPC ピアリングにより、AWS アカウント内または AWS アカウント / リージョン間で VPC 接続が可能になります。

    • 共有 VPC により、複数の AWS アカウントが集中管理の VPC を使用できます。サブネットは AWS アカウントと共有できます。サブネット内のセキュリティ グループはサブネットのオーナーによって制御されます。サブネットと他の VPC リソース間のネットワーク ACL は集中管理されます。

  • Google Cloud は、VPC ネットワーク ピアリング共有 VPC を提供します。

    • VPC ネットワーク ピアリングにより、同じ組織内または異なる組織の Google Cloud プロジェクト間の接続が可能になります。ファイアウォール ルールとルーティングは各プロジェクトで個別に制御されます。

    • 共有 VPC により、組織内のプライベート接続が可能になります。このサービスは複数のプロジェクトで共有される VPC を提供するため、集中管理と制御の利点があります。サブネットは、1 人または複数の個人やチームで共有できます。すべてのファイアウォール ルールとルートはホスト プロジェクトで集中管理されます。

料金

これらのサービスの利用に対する固定料金はありません。

AWS の場合、リソースが同じリージョンまたはゾーンにある場合でも、ピア VPC 間の下りに対して料金が発生します。

他のネットワークとのプライベート接続

AWS と Google Cloud は、オンプレミス環境などの外部ネットワークとのプライベート接続を可能にする複数のサービスを提供しています。

AWS と Google Cloud サービスの比較を次の表に示します。

機能 AWS Google Cloud
仮想プライベート ネットワーク VPC-VPN Cloud VPN
VPC とのプライベート接続 Direct Connect Dedicated Interconnect
Partner Interconnect
他のクラウド サービスとの高速接続 Direct Connect ダイレクト ピアリング
キャリア ピアリング
CDN 接続 なし CDN Interconnect

仮想プライベート ネットワーク

AWS と Google Cloud は、外部ネットワークから内部の Amazon EC2 または Compute Engine ネットワークへのトンネルを構築し、そのトンネル経由でプライベート接続を確立できるようにする仮想プライベート ネットワーク(VPN)サービスを提供しています。

  • Google Cloud: Cloud Router により、Compute Engine ネットワークと Google 以外のネットワークの間で BGP ルートを動的に更新できます。

  • AWS: Amazon VPC は同様のルーティング サービスを提供します。

VPC とのプライベート接続

場合によっては、特定のワークロードで必要な速度が VPN で提供されないことがあります。また、専用の容量が必要になることもあります。プライベート接続サービスにより、専用の容量レベルが保証されたネットワーク回線をリースし、RFC 1918 アドレスを使用して VPC に直接接続できます。

  • AWS の Direct Connect では、パートナーの通信事業施設から AWS へのプライベート専用回線を構築できます。この施設に 1 Gbps または 10 Gbps で直接接続することも、AWS パートナーと連携して 50 Mbit/秒で自社施設に接続することもできます。リモート リージョンには Direct Connect Gateway 経由でアクセスできます。

  • Google Cloud の Dedicated Interconnect では、パートナー施設から GCP VPC 環境への直接の物理接続を構築できます。回線は 10 Gbps 単位で増やすことができます。Partner Interconnect を使用すると、パートナー サービスを使用して 50 Mbit/秒で接続できます。Cloud Router を使用すると、リージョンでアクセスするのか、VPC にグローバルにアクセスするのかを選択できます。

他のクラウド サービスとの高速接続

AWS と Google Cloud のどちらも、VPC 外のクラウド サービスに高速接続でアクセスできます。

Google Cloud は、次のサービスを提供しています。

  • ダイレクト ピアリング。パブリック IP アドレスを使用して VPC の外部にあるクラウド サービスに接続できます。このサービスを使用すると、Google の接続拠点のプライベート ネットワーク回線に接続して、G Suite を含むすべての Google サービスに直接アクセスできます。

  • キャリア ピアリング。ダイレクト ピアリングと同じ機能を提供しますが、接続はパートナー経由になります。

  • 限定公開の Google アクセス(オンプレミス ホスト用)。Dedicated Interconnect または Partner Interconnect を使用して、サービスにプライベート接続できます。

AWS は、個別の仮想インターフェースを介してすべての AWS サービスにアクセスできる Direct Connect を提供しています。

コンテンツ配信ネットワーク(CDN)接続

CDN 接続を使用すると、クラウド内のリソースから CDN プロバイダへの下りトラフィックに対して割引価格が適用されます。

  • Google Cloud の CDN Interconnect では、複数の CDN プロバイダへの下り(外向き)トラフィックに対して割引価格が適用されます。

  • Amazon の場合、独自の CDN サービスである Amazon CloudFront に対してのみ下り料金に割引価格が適用されます。

接続サービスの費用

AWS と Google Cloud ではどちらも、VPN サービスについては時間単位で課金されます。

Google Cloud と AWS では、直接プライベート接続サービスに対してポートごとに月額料金が請求されます。AWS では Direct Connect、Google Cloud では Dedicated Interconnect と Partner Interconnect が対象になります。Google Cloud と AWS はどちらも、これらのサービスによる下り帯域幅に対して割引価格が設定されています。パートナー接続には別途費用がかかります。この費用はパートナーから請求されます。

Google Cloud では、次のサービスに対する料金は発生しません。

  • ダイレクト ピアリングとキャリア ピアリング。Google Cloud はこれらのサービスに対して課金しませんが、キャリア ピアリングにはパートナーの使用料金が適用されます。

  • CDN Interconnect。Google Cloud はこのサービスに対して課金しませんが、パートナー CDN には独自の料金が設定され、パートナーから直接請求されます。Google Cloud では、CDN Interconnect を使用した場合に CDN パートナーへのインターネット下りトラフィックに対して割引価格が適用されます。

ネットワーク テレメトリー

AWS は、VPC フローログでネットワーク テレメトリー データを提供します。このサービスを使用すると、異なるアドレスやインターフェース間のトラフィック フローの量に関する情報を収集できます。Google Cloud でも VPC フローログと同等の機能を使用できますが、データは JSON 形式で提供されます。このデータには、外部エンティティの位置情報や TCP ラウンド トリップ時間などの注釈が含まれます。

費用

Google Cloud と AWS はどちらも、生成されたデータ量に基づいて課金されます。

DNS

DNS サービスは、人が読める形式のドメイン名を IP アドレスに変換し、サーバー間の相互接続を可能にします。Amazon Route 53(AWS)や Cloud DNS (Google Cloud)などのマネージド DNS サービスでは、スケーラブルなマネージド DNS サービスをクラウドで提供しています。

Cloud DNS と Amazon Route 53 には次のような類似点があります。

  • ほぼすべての DNS レコードタイプをサポート
  • エニーキャスト ベースのサービス提供
  • ドメイン名の登録機能

Amazon Route 53 は、位置情報ベースのルーティングとレイテンシ ベースのルーティングという、Cloud DNS がサポートしていない、2 種類のルーティングをサポートしています。位置情報ベースのルーティングにより、世界の特定の地理的地域へのコンテンツ配信を制限できます。レイテンシ ベースのルーティングにより、DNS サービスが測定したレイテンシに基づいて、トラフィックを送信できます。

次の表に、Amazon Route 53 と Cloud DNS の機能の比較を示します。

機能 Amazon Route 53 Cloud DNS
ゾーン ホストゾーン マネージド ゾーン
ほとんどの DNS レコードタイプをサポート
エニーキャスト ベースのサービス提供
レイテンシ ベースのルーティング ×
位置情報ベースのルーティング ×
DNS サービスの DNSSEC ×
限定公開ゾーンとスプリット ホライズン

費用

Amazon Route 53 と Cloud DNS はどちらも、月ごとにホストされているゾーン数と月ごとのクエリ数に基づいて課金されます。Route 53 では、位置情報ベースのルーティングとレイテンシ ベースのルーティングによるクエリは、料金が高くなっています。

次のステップ

AWS プロフェッショナルのための Google Cloud に関するその他の記事もご覧ください。