menu
arrow_back

高可用性かつ高帯域幅の NAT ゲートウェイの構築

—/100

Checkpoints

arrow_forward

Create the VPC Network with subnet

Create a Bastion Host and Isolated Test VM

Allow SSH and enable all internal traffic within the VPC through firewall rules.

Reserve and store three static IP addresses.

Create the NAT Instance Templates

Create the health check with necessary firewall rule.

Create an instance group for each NAT gateway

Add default routes to your instances

高可用性かつ高帯域幅の NAT ゲートウェイの構築

1時間 30分 クレジット: 7

GSP115

Google Cloud セルフペース ラボ

このラボでは、より復元力に優れた高帯域幅のデプロイ環境を確保するために、等価コスト マルチパス(ECMP)ルーティングと自動修復を有効にした複数の NAT(ネットワーク アドレス変換)ゲートウェイをセットアップする方法について説明します。

Google Cloud Platform(GCP)では、仮想マシン(VM)に RFC 1918 のプライベート IP アドレスを使用します。これらの VM がパブリック インターネット上のリソースにアクセスする必要がある場合は、ネットワーク アドレス変換(NAT)が必要になります。シンプルなシナリオには、単一 NAT ゲートウェイ アーキテクチャで十分に対応できます。ただし、スループットや可用性を高めるためには、それよりも復元力に優れたアーキテクチャが必要になります。

目標

  • NAT ゲートウェイで使用する 3 つのパブリック IP を予約する

  • Compute Engine インスタンスを作成して、予約済み IP を関連付ける

  • 自動障害復旧を有効にするためのヘルスチェックとインスタンス グループを作成する

  • ゲスト VM から NAT ゲートウェイへのトラフィックを分散するルーティング ルールを作成する

  • IP 割り当てがないインスタンスにタグを付ける

  • サンプル Debian 構成を確認する

ゲートウェイの構成

複数のルートの優先度が同じ場合、GCP は ECMP ルーティングを使用してトラフィックを分散します。このラボでは、ECMP からトラフィックの一部を受信する複数の NAT ゲートウェイを作成します。これらの NAT ゲートウェイは、パブリック IP アドレスを使用して外部ホストにトラフィックを転送します。

以下の図に、この構成を示します。

d50b6a4b16066da5.png

復元力を強化するために、各ゲートウェイをそれぞれ別個のマネージド インスタンス グループ(単一のインスタンスを含む)に配置します。また、障害発生時にゲートウェイが自動的に再起動するよう、単純なヘルスチェックを付加します。ゲートウェイはそれぞれ別個のインスタンス グループに配置されます。したがって、ゲートウェイにはインスタンス テンプレートに関連付けられた静的な外部 IP が割り当てられます。このラボでは、3 つの n1-standard-2 NAT ゲートウェイをプロビジョニングしますが、任意の数またはサイズのゲートウェイを使用できます。たとえば、n1-standard-2 インスタンスのネットワーク トラフィックは 4 Gbps に制限されますが、それより多くのネットワーク トラフィックが必要な場合は n1-standard-8s を選択できます。

設定と要件

Qwiklabs の設定

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

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

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

前提条件

このラボを完了するには、次のものが必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)。
  • ラボを完了するために必要な時間。

注: すでに個人の GCP アカウントやプロジェクトをお持ちの場合でも、そのアカウントやプロジェクトはラボでは使用しないでください。

ラボを開始して Console にログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側のパネルには、このラボで使用する必要がある一時的な認証情報が表示されます。

    Google Console を開く

  2. ユーザー名をコピーし、[Google Console を開く] をクリックします。 ラボでリソースが起動し、別のタブで [アカウントの選択] ページが表示されます。

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

  3. [アカウントの選択] ページで [別のアカウントを使用] をクリックします。

    アカウントを選択

  4. [ログイン] ページが開きます。[接続の詳細] パネルでコピーしたユーザー名を貼り付けます。パスワードもコピーして貼り付けます。

    重要: 認証情報は [接続の詳細] パネルに表示されたものを使用してください。ご自身の Qwiklabs 認証情報は使用しないでください。請求が発生する事態を避けるため、GCP アカウントをお持ちの場合でもそのアカウントはラボで使用しないでください。

  5. 以降のページでは次の点にご注意ください。

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

しばらくすると、このタブで GCP Console が開きます。

Google Cloud Shell

Google Cloud Shell の有効化

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

  1. GCP Console の右上のツールバーにある [Cloud Shell をアクティブにする] ボタンをクリックします。

    Cloud Shell アイコン

  2. [続行] をクリックします。

    cloudshell_continue

環境のプロビジョニングと接続には少し時間がかかります。接続すると、すでに認証されており、プロジェクトは PROJECT_ID に設定されています。例えば:

Cloud Shell 端末

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

次のコマンドを使用すると、有効なアカウント名を一覧表示できます。

gcloud auth list

出力:

Credentialed accounts:
- <myaccount>@<mydomain>.com (active)
	

出力例:

Credentialed accounts:
- google1623327_student@qwiklabs.net
	

次のコマンドを使用すると、プロジェクト ID を一覧表示できます。

gcloud config list project
	

出力:

[core]
project = <project_ID>
	

出力例:

[core]
project = qwiklabs-gcp-44776a13dea667a6
	

Qwiklabs に参加してこのラボの残りの部分や他のラボを確認しましょう。

  • Google Cloud Console への一時的なアクセス権を取得します。
  • 初心者レベルから上級者レベルまで 200 を超えるラボが用意されています。
  • ご自分のペースで学習できるように詳細に分割されています。
参加してこのラボを開始