arrow_back

VPC ネットワーク ピアリング

ログイン 参加
知識をテストして、コミュニティで共有しましょう
done
700 を超えるハンズオンラボ、スキルバッジ、コースへのアクセス

VPC ネットワーク ピアリング

ラボ 1時間 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
知識をテストして、コミュニティで共有しましょう
done
700 を超えるハンズオンラボ、スキルバッジ、コースへのアクセス

GSP193

Google Cloud セルフペース ラボ

概要

Google Cloud の Virtual Private Cloud(VPC)ネットワーク ピアリングを利用すると、同じプロジェクトまたは同じ組織に所属しているかどうかにかかわらず、2 つの VPC ネットワーク間でプライベート接続を行うことができます。

Google Cloud で SaaS(Software-as-a-Service)エコシステムを構築でき、組織内および組織間の複数の VPC ネットワーク間でサービスを非公開で利用し、プライベート空間で通信できます。

VPC ネットワーク ピアリングは、次のような場合に役立ちます。

  • 組織に複数のネットワーク管理ドメインがある場合
  • 他の組織とピアリングを行う場合

組織内に複数のネットワーク管理ドメインが存在する場合、VPC ネットワーク ピアリングを利用すると、プライベート空間で VPC ネットワーク全体にサービスを提供できます。他の組織にサービスを提供する場合、VPC ネットワーク ピアリングを使用すると、他の組織がプライベート空間でこのようなサービスを利用できるようになります。

組織を超えてサービスを提供できれば、他の企業にサービスを提供することが可能になります。また、合併吸収の結果あるいは独自の要件のために、自社内に複数の組織ノードが存在する場合にも便利です。

VPC ネットワーク ピアリングは、外部 IP アドレスや VPN を使用してネットワークを接続する場合に比べて次の点で優れています。

  • ネットワークのレイテンシ: プライベート ネットワークは、パブリック IP ネットワークよりもレイテンシが小さくなります。
  • ネットワークのセキュリティ: サービス オーナーは、サービスをインターネットに公開して関連するリスクに対処する必要がありません。
  • ネットワーク コスト: ネットワークがピアリングされている場合、内部 IP を使用して通信することで、Google Cloud の下り(外向き)の帯域幅のコストを節約できます。この場合でも、通常のネットワーク料金がすべてのトラフィックに適用されます。

演習内容

  • 2 つのプロジェクトでカスタム ネットワークを作成する
  • VPC ネットワーク ピアリング セッションを設定する

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。

このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。
  • ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
注: すでに個人の Google Cloud アカウントやプロジェクトをお持ちの場合でも、このラボでは使用しないでください。アカウントへの追加料金が発生する可能性があります。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウでリンクを開く] を選択します)。

    ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] パネルでも [ユーザー名] を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] パネルでも [パスワード] を確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスのリストを含むメニューを表示するには、左上のナビゲーション メニューをクリックします。ナビゲーション メニュー アイコン

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

接続した時点で認証が完了しており、プロジェクトに各自の PROJECT_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

  2. 出力は次のようになります。

出力:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = <project_ID>

出力例:

[core] project = qwiklabs-gcp-44776a13dea667a6 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。

タスク 1. 両方のプロジェクトでカスタム ネットワークを作成する

1 つのネットワークにホストされているサービスを、同じ組織ノード内の同一または異なるプロジェクトに属する他の VPC ネットワークからもアクセスできるようにしなければならない場合もあります。

また、組織によってはサードパーティのサービスにアクセスする必要があります。

Google Cloud 全体で重複するプロジェクト名はないため、ピアリングの設定時に組織を指定する必要はありません。Google Cloud は、プロジェクト名に基づいて組織を判断します。

このラボでは 2 つのプロジェクトがプロビジョニングされており、1 番目はプロジェクト A で、2 番目はプロジェクト B です。

  1. 各プロジェクトで、+ アイコンをクリックして新しい Cloud Shell を起動します。

  2. プロジェクト A の Cloud Shell で、プロジェクト A のプロジェクト ID を設定します。

gcloud config set project {{{project_0.project_id | Project 1}}}
  1. プロジェクト B の Cloud Shell で、プロジェクト B のプロジェクト ID を設定します。
gcloud config set project {{{project_1.project_id | Project 2}}}

プロジェクト A:

  1. 最初の Cloud Shell に戻り、次のコマンドを実行してカスタム ネットワークを作成します。
gcloud compute networks create network-a --subnet-mode custom
  1. 次のコマンドを実行して、この VPC 内にサブネットを作成し、リージョンと IP 範囲を指定します。
gcloud compute networks subnets create network-a-subnet --network network-a \ --range 10.0.0.0/16 --region {{{ project_0.default_region }}}
  1. VM インスタンスを作成します。
gcloud compute instances create vm-a --zone {{{ project_0.default_zone }}} --network network-a --subnet network-a-subnet --machine-type e2-small
  1. 次のコマンドを実行して SSH と icmp を有効にします。これは、接続テスト中に VM と通信するための Secure Shell が必要になるためです。
gcloud compute firewall-rules create network-a-fw --network network-a --allow tcp:22,icmp

次に、同じ方法でプロジェクト B を設定します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 プロジェクト A でカスタム ネットワークを作成する

プロジェクト B:

  1. 2 つ目の Cloud Shell に切り替えて、カスタム ネットワークを作成します。
gcloud compute networks create network-b --subnet-mode custom
  1. 次のコマンドを実行して、この VPC 内にサブネットを作成し、リージョンと IP 範囲を指定します。
gcloud compute networks subnets create network-b-subnet --network network-b \ --range 10.8.0.0/16 --region {{{ project_1.default_region }}}
  1. VM インスタンスを作成します。
gcloud compute instances create vm-b --zone {{{ project_1.default_zone }}} --network network-b --subnet network-b-subnet --machine-type e2-small
  1. 次のコマンドを実行して SSH と icmp を有効にします。これは、接続テスト中に VM と通信するための Secure Shell が必要になるためです。
gcloud compute firewall-rules create network-b-fw --network network-b --allow tcp:22,icmp

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 プロジェクト B でカスタム ネットワークを作成する

タスク 2. VPC ネットワーク ピアリング セッションを設定する

たとえば、組織がプロジェクト A の network-A とプロジェクト B の network-B の間で VPC ネットワーク ピアリングを確立する必要があるとします。この場合は、network-A と network-B の管理者がそれぞれのネットワークでピアリングを設定する必要があります。

network-A を network-B とピアリングする:

peer-AB のネットワーク図

設定を適用する前に、コンソールで正しいプロジェクトを選択します。そのためには、画面上部のプロジェクト ID の横にある下矢印をクリックしてから、該当するプロジェクトの ID を選択します。

プロジェクト選択のダイアログ ボックス

プロジェクト A

Cloud コンソールの左側のメニューで、[ネットワーキング] から [VPC ネットワーク] > [VPC ネットワーク ピアリング] をクリックして [VPC ネットワーク ピアリング] に移動します。次に以下を実行します。

  1. [接続を作成] をクリックします。
  2. [続行] をクリックします。
  3. 接続のこちら側では [名前] に「peer-ab」と入力します。
  4. [VPC ネットワーク] で、ピアリングするネットワーク(network-a)を選択します。
  5. [ピアリングした VPC ネットワーク] で [別のプロジェクト] を選択します。
  6. [プロジェクト ID] は、2 番目のプロジェクトの ID で置き換えます。
{{{ project_1.project_id }}}
  1. [VPC ネットワークの名前](network-b)を入力します。
  2. [作成] をクリックします。

この段階ではプロジェクト B の network-b に一致する構成がないため、ピアリング状態は無効のままです。ステータス メッセージに「Waiting for peer network to connect」と表示されます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 network-a を network-b とピアリングする

network-b を network-a とピアリングする

peer-BA のネットワーク図

注: コンソールで 2 番目のプロジェクトに切り替えます。

プロジェクト B

  1. [接続を作成] をクリックします。
  2. [続行] をクリックします。
  3. 接続のこちら側では [名前] に「peer-ba」と入力します。
  4. [VPC ネットワーク] で、ピアリングするネットワーク(network-b)を選択します。
  5. 同じプロジェクト内でピアリングする場合を除き、[ピアリングした VPC ネットワーク] で [別のプロジェクト] を選択します。
  6. 最初のプロジェクトの [プロジェクト ID] を指定します。
{{{ project_0.project_id }}}
  1. [VPC ネットワークの名前](network-a)を指定します。
  2. [作成] をクリックします。

VPC ネットワーク ピアリングのプロパティ リストに peer-ba が表示されます。

VPC ネットワーク ピアリングが有効になり、ルートが交換されます。 ピアリングが有効な状態になるとすぐに以下のトラフィック フローが設定されます。

  • ピアリングされたネットワークの VM インスタンス間: フルメッシュ接続
  • 一方のネットワークの VM インスタンスから、ピアリングされたネットワークの内部ロード バランシング エンドポイント

アクティブな peer-AB と peer-BA のネットワーク図

VPC ネットワーク ピア間で、ピアリングされたネットワークの CIDR プレフィックスへのルートが公開されます。これらのルートは、有効なピアリング用に生成される暗黙的なルートです。対応するルートリソースはありません。次のコマンドを実行すると、プロジェクト A のすべての VPC ネットワークのルートが一覧表示されます。

gcloud compute routes list --project {{{ project_0.project_id }}}

出力例:

NAME NETWORK DEST_RANGE NEXT_HOP PRIORITY default-route-2a865a00fa31d5df network-a 0.0.0.0/0 default-internet-gateway 1000 default-route-8af4732e693eae27 network-a 10.0.0.0/16 1000 peering-route-4732ee69e3ecab41 network-a 10.8.0.0/16 peer-ab 1000

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 network-b を network-a とピアリングする

タスク 3. 接続をテストする

このタスクでは、接続テストを行います。

プロジェクト A

  1. VM インスタンス コンソールに移動するために、ナビゲーション メニュー > [Compute Engine] > [VM インスタンス] の順にクリックします。

  2. vm-a内部 IP をコピーします。

プロジェクト B

  1. ナビゲーション メニューから [Compute Engine] > [VM インスタンス] の順にクリックします。

vm-b インスタンスに SSH 接続します。

  1. vm-b の SSH シェルで、<INTERNAL_IP_OF_VM_A> を vm-a のインスタンスの内部 IP に置き換えて次のコマンドを実行します。
ping -c 5 <INTERNAL_IP_OF_VM_A>

出力例:

PING 10.8.0.2 (10.8.0.2) 56(84) bytes of data. 64 bytes from 10.8.0.2: icmp_seq=1 ttl=64 time=1.07 ms 64 bytes from 10.8.0.2: icmp_seq=2 ttl=64 time=0.364 ms 64 bytes from 10.8.0.2: icmp_seq=3 ttl=64 time=0.205 ms 64 bytes from 10.8.0.2: icmp_seq=4 ttl=64 time=0.216 ms 64 bytes from 10.8.0.2: icmp_seq=5 ttl=64 time=0.164 ms --- 10.8.0.2 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4065ms rtt min/avg/max/mdev = 0.164/0.404/1.072/0.340 ms

お疲れさまでした

Google Cloud のプロジェクト間で VPC ピアリングを設定する方法について学習しました。

次のステップと詳細情報

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2024 年 4 月 15 日

ラボの最終テスト日: 2023 年 9 月 25 日

Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします