転送ルールの使用

転送ルールとこれに対応する IP アドレスは、Google Cloud Platform ロードバランサのフロントエンド構成を表します。

転送ルールの概要については、転送ルールのコンセプトをご覧ください。

始める前に

転送ルールを追加する前に、転送ルールの IP アドレスを予約しておきます。これは要件ではありませんが、強くおすすめします。

内部ロードバランサの場合は、静的内部 IP アドレスを予約します。

外部ロードバランサの場合は、静的外部 IP アドレスを予約します。

転送ルールの追加

Console

ロードバランサの転送ルールを作成する

  1. Google Cloud Platform Console の [負荷分散] ページに移動します。
    [負荷分散] ページに移動
  2. [ロードバランサを作成] をクリックします。
  3. ロードバランサのタイプを選択します。トラフィック タイプや、ロードバランサがインターネットに接続しているのかそれとも内部専用かを選択します。
  4. [続行] をクリックします。
  5. [フロントエンドの設定] をクリックします。[新しいフロントエンドの IP とポート] セクションで、次の変更を行います。

    1. 名前: 転送ルール名
    2. サブネットワーク: 予約済み IP アドレスのサブネット
    3. [内部 IP] または [IP アドレス] から、事前予約した IP アドレスを選択します。

      必要に応じて、IP アドレスをこの UI で予約することも、エフェメラル IP アドレスを使用することもできます。

    4. プロトコル、ポート番号、IP バージョンを選択します。

      一部のロードバランサ タイプでのみ、IPv6 がサポートされます。

    5. 続行する前に、[フロントエンドの設定] の隣に青いチェックマークがあることを確認します。ない場合は、この手順を確認します。

  6. [確認と完了] をクリックします。設定を再度確認します。

  7. [作成] をクリックします。

gcloud

バックエンド サービスの転送ルールを作成します。転送ルールを作成するときに、サブネットで予約した IP アドレスを指定します。

gcloud compute forwarding-rules create <var>forwarding rule name \
    --global | --region=region \
    --load-balancing-scheme=scheme \
    --network=network name \
    --subnet=subnet name \
    --address=reserved IP address \
    --ip-protocol=protocol type \
    --ports=port number \
    --backend-service=name of backend service \
    --backend-service-region=region of backend service

api

リージョンのロードバランサの場合、forwardingRules.insert メソッドに対して POST リクエストを作成して、リージョン転送ルールを作成します。

POST https://www.googleapis.com/compute/v1/projects/[project ID]/regions/us-west1/forwardingRules
{
  "name": "[forwarding rule name]",
  "IPAddress": "[reserved IP address]",
  "IPProtocol": "[protocol type]",
  "ports": [
    "[port number]"
  ],
  "loadBalancingScheme": "[scheme]",
  "subnetwork": "https://www.googleapis.com/compute/v1/projects/[project ID]/regions/[region]/subnetworks/[subnet name]",
  "network": "https://www.googleapis.com/compute/v1/projects/[project ID]/global/networks/[network name]",
  "backendService": "https://www.googleapis.com/compute/v1/projects/[project ID]/regions/[region]/backendServices/[backend service name]",
  "networkTier": "PREMIUM | STANDARD"
}
</code></pre>

グローバル ロードバランサの場合、globalForwardingRules.insert メソッドに対して POST リクエストを作成してグローバル転送ルールを作成します。

POST https://www.googleapis.com/compute/v1/projects/[project ID]/global/forwardingRules
{
  "name": "[forwarding rule name]",
  "IPAddress": "[reserved IP address]",
  "IPProtocol": "[protocol type]",
  "ports": [
    "[port number]"
  ],
  "loadBalancingScheme": "[scheme]",
  "subnetwork": "https://www.googleapis.com/compute/v1/projects/[project ID]/regions/[region]/subnetworks/[subnet name]
  "network": "https://www.googleapis.com/compute/v1/projects/[project ID]/global/networks/[network name]",
  "backendService": "https://www.googleapis.com/compute/v1/projects/[project ID]/regions/[region]/backendServices/[backend service name]
  "networkTier": "PREMIUM | STANDARD"
}

転送ルールの削除

新しい転送ルールへの置換を可能にするために、転送ルールの削除が必要になる場合があります。

あるいは、ロードバランサを完全に削除するのではなく、転送ルールを削除してロードバランサを一定期間停止することもできます。たとえば、次のような場合に役立ちます。

  • ロードバランサの料金を一時停止する
  • VM インスタンスに送られてくるリクエストを一時的に停止する

転送ルールが予約 IP アドレスを指している場合(推奨)は、転送ルールを削除してロードバランサを停止できます。これにより、転送ルール宛先へのトラフィックが停止します。

既存の転送ルールを削除します。

gcloud compute forwarding-rules delete forwarding rule name \
    --global | --region=region

ロードバランサを再開するには、転送ルールの追加の説明に従って、転送ルールを再作成し、同じ IP アドレスを維持します。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...