ラボの設定手順と要件
アカウントと進行状況を保護します。このラボを実行するには、常にシークレット ブラウジング ウィンドウとラボの認証情報を使用してください。

Terraform を使用してネットワーク ピアリングを作成する

ラボ 1時間 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
このコンテンツはまだモバイル デバイス向けに最適化されていません。
快適にご利用いただくには、メールで送信されたリンクを使用して、デスクトップ パソコンでアクセスしてください。

概要

このラボでは、2 つのネットワークをピアリングします。ピアリングを行うと、2 つのネットワーク内のマシンが内部 IP アドレスを使用して通信できるようになります。これにより、外部 IP アドレスのないプライベート ネットワークにデータベースをデプロイすることが可能になります。これらのデータベースには、ピアリングされたネットワークからのみアクセスできます。

目標

このラボでは、次のタスクの実行方法について学びます。

  • 2 つのネットワークをピアリングする。
  • 外部 IP を持たない VM をデプロイする。

設定と要件

このタスクでは、ラボの初期化手順を行います。

各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。

  1. シークレット ウィンドウを使用して Google Skills にログインします。

  2. ラボのアクセス時間(例: 1:15:00)に注意し、時間内に完了できるようにしてください。 一時停止機能はありません。必要な場合はやり直せますが、最初からになります。

  3. 準備ができたら、[ラボを開始] をクリックします。

  4. ラボの認証情報(ユーザー名パスワード)をメモしておきます。この情報は、Google Cloud コンソールにログインする際に使用します。

  5. [Google コンソールを開く] をクリックします。

  6. [別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。 他の認証情報を使用すると、エラーや料金が発生します。

  7. 利用規約に同意し、再設定用のリソースページをスキップします。

タスク 1. 2 つのネットワークをピアリングする

  1. 新しいウェブブラウザ ウィンドウを開き、Google Cloud コンソール(console.cloud.google.com)に移動します。プロジェクト セレクタを使用して、名前が「qwiklabs-gcp」で始まる最初のプロジェクトを選択します。

  2. ナビゲーション メニューナビゲーション メニュー アイコン)で、[Cloud の概要] をクリックします。

  3. [プロジェクト情報] セクションで、プロジェクト ID を見つけてコピーし、テキスト ファイルに貼り付けます。書き留めておきます。

[プロジェクト情報] セクションでハイライト表示されているプロジェクト ID

  1. コンソールの右上にある「Cloud Shell をアクティブにする」(Cloud Shell をアクティブにするアイコン)をクリックします。Cloud Shell ターミナルがウィンドウの下部のペインに表示されます。プロンプトが表示されたら、[続行] をクリックします。

  2. 次のコマンドを入力して、前のラボの完成版を含む GitHub リポジトリのクローンを作成します。

git clone https://github.com/GoogleCloudPlatform/training-data-analyst
  1. 次のフォルダに移動します。
cd ~/training-data-analyst/courses/db-migration/terraform-create-peering/
  1. ls と入力すると、このフォルダに 2 つのネットワークと 2 台のテストサーバーを作成するための Terraform ファイルがあることがわかります。

  2. [エディタを開く] をクリックし、[新しいウィンドウで開く] をクリックします。

  3. training-data-analyst/courses/db-migration/terraform-create-peering/ フォルダに移動し、terraform.tfvars ファイルを開きます。

  4. terraform.tfvars ファイルの値を以下のように変更します。

    項目
    project_id
    gcp_region_1
    gcp_zone_1
  5. Cloud コンソールで次のコマンドを入力して Terraform を初期化し、リソースを作成します。

terraform init terraform plan terraform apply -auto-approve
  1. [Cloud Shell の承認] ダイアログ ボックスが表示されたら、[承認] をクリックします。

  2. Terraform プロセスが完了したら、ナビゲーション メニューナビゲーション メニュー アイコン)で [Compute Engine] をクリックします。

これで、パブリック ネットワークに 1 台、プライベート ネットワークに 1 台の計 2 台のマシンができました。

  1. プライベート マシンの内部 IP アドレス(10.2.2.2 を想定)をクリップボードにコピーし、public-test-server- で始まる名前のマシンに SSH 接続します。

  2. プライベート マシンに対して ping を行います(この時点では機能しません)。

ping 10.2.2.2 注: 2 つの GCP ネットワークが内部 IP アドレスを介して通信できるようにするには、それらをピアリングする必要があります。その作業をこれから行います。
  1. ナビゲーション メニューナビゲーション メニュー アイコン)で、[VPC ネットワーク] > [VPC ネットワーク ピアリング] の順にクリックします。
    この時点ではピアリングされたネットワークが存在しないことを確認します。コンソールでピアリングを設定することもできますが、Terraform を使用する方がより自動化と再現性の高い手法になります。

  2. Cloud Shell に戻り、~/training-data-analyst/courses/db-migration/terraform-create-peering/ フォルダにいることを確認し、vpc-peering.tf というファイルを作成します。

cd ~/training-data-analyst/courses/db-migration/terraform-create-peering/ touch vpc-peering.tf
  1. [エディタを開く] をクリックし、作成したファイルを見つけて、次のコードを追加します。
resource "google_compute_network_peering" "public-private" { name = "peering1" network = google_compute_network.public-vpc.self_link peer_network = google_compute_network.private-vpc.self_link } resource "google_compute_network_peering" "private-public" { name = "peering2" network = google_compute_network.private-vpc.self_link peer_network = google_compute_network.public-vpc.self_link } 注: ピアリング リクエストは両方のネットワークから行う必要があります。そのため、ネットワーク ピアリングにはパブリック ネットワークからプライベート ネットワークへのピアリングとその逆方向のピアリングの 2 つがあります。
  1. ピアリングを作成するには、Cloud Shell ターミナルに戻り、次のコマンドを入力します。
terraform apply -auto-approve
  1. コマンドが完了したら、コンソールに戻ります。VPC ネットワーク ピアリング ページから一旦移動した後に再度ページに戻り、ビューを更新します。ピアリングが作成され、状態がアクティブになっています。

  2. 公開テストサーバーの SSH ウィンドウに戻ると、ping コマンドが動作しています。Ctrl+C キーを押してコマンドを停止し、「exit」と入力して SSH セッションを閉じます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 2 つのネットワークをピアリングする

タスク 2. 外部 IP を持たない VM をデプロイする

ネットワークがピアリングされると、プライベート ネットワーク内のマシンはパブリック IP アドレスを必要としなくなります。

  1. Cloud Shell でコードエディタに切り替え、private-test-server-linux.tf ファイルを開きます。

  2. network_interface セクションで、access_config { }19 行目)と書かれた行をコメントアウトします。

注: Terraform のコメントには「#」の文字を使用します。これにより、外部 IP アドレスのない VM が作成されます。

外部 IP アドレスはもう存在しないため、その値を出力することはできません。

  1. VM の外部 IP アドレスを出力するコードを見つけて、文字列 NONE に変更します。29 行目にあるはずです。以下の例をご覧ください。
output "private-test-server-linux-external-ip" { value = "NONE" }
  1. Cloud Shell ターミナルに戻り、変更を適用します。
terraform apply -auto-approve

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 外部 IP のない VM をデプロイする

  1. Terraform コマンドが完了したら、コンソールで Compute Engine サービスに移動します。プライベート VM の外部 IP アドレスがなくなりました。パブリック VM に SSH で接続し、内部 IP アドレス経由でプライベート サーバーに ping できることを確認します。

  2. Cloud Shell ターミナルに戻り、すべてを削除します。

terraform destroy -auto-approve

これで完了です。2 つのネットワークをピアリングしました。ピアリングを行うと、2 つのネットワーク内のマシンが内部 IP アドレスを使用して通信できるようになります。これにより、外部 IP アドレスのないプライベート ネットワークにデータベースをデプロイすることが可能になります。これらのデータベースには、ピアリングされたネットワークからのみアクセスできます。

ラボを終了する

ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Skills から削除され、アカウントの情報も消去されます。

ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。

星の数は、それぞれ次の評価を表します。

  • 星 1 つ = 非常に不満
  • 星 2 つ = 不満
  • 星 3 つ = どちらともいえない
  • 星 4 つ = 満足
  • 星 5 つ = 非常に満足

フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。

フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。

Copyright 2026 Google LLC All rights reserved. Google および Google のロゴは、Google LLC の商標です。その他すべての社名および製品名は、それぞれ該当する企業の商標である可能性があります。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

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

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

ありがとうございます。

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

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。