VM インスタンス グループのバックエンドを使用してグローバル外部パススルー ネットワーク ロードバランサを設定する

このドキュメントでは、複数のリージョンにデプロイされた VM インスタンス グループのバックエンド間でトラフィックを分散するグローバル外部パススルー ネットワーク ロードバランサを作成する方法について説明します。

始める前に

設定が次の前提条件を満たしていることを確認します。

Google Cloud CLI をインストールする

このガイドの手順では、Google Cloud CLI を使用してグローバル外部パススルー ネットワーク ロードバランサを構成します。インストールするには、gcloud CLI をインストールするをご覧ください。

必要なロール

プロジェクト作成者にはオーナーロールroles/owner)が付与されます。デフォルトでは、オーナーロール(roles/owner)または編集者ロール(roles/editor)には、このドキュメントの手順に沿って操作するために必要な権限が含まれています。

プロジェクト作成者でない場合は、プロジェクトで必要な権限を適切なプリンシパルに付与する必要があります。プリンシパルは、Google アカウント(エンドユーザーの場合)やサービス アカウントになることもあります。

VM インスタンス グループ バックエンドを使用してグローバル外部パススルー ネットワーク ロードバランサを構成するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

Cloud Load Balancing のロールと権限の詳細については、ロールと権限をご覧ください。転送ルールの条件付き付与で IAM ポリシーを定義する方法については、転送ルールの IAM 条件をご覧ください。

設定の概要

次の図は、us-west1 リージョンと europe-west2 リージョンにデプロイされた VM インスタンス グループのバックエンドがあるグローバル外部パススルー ネットワーク ロードバランサを示しています。

この例では、2 つのグローバル外部 IP アドレス(それぞれのアベイラビリティ グループから 1 つずつ)を使用して、単一の転送ルールを構成します。グローバル外部パススルー ネットワーク ロードバランサの仕組みについては、概要ガイドのアーキテクチャ セクションをご覧ください。

グローバル外部パススルー ネットワーク ロードバランサは、`us-west1` リージョンと `europe-west2` リージョンにデプロイされた VM インスタンス グループのバックエンドにトラフィックを送信します。
グローバル外部パススルー ネットワーク ロードバランサを使用して VM インスタンス グループ バックエンドにトラフィックを分散する(クリックして拡大)

ネットワークとサブネットを設定する

この例では、2 つの異なるリージョンにサブネットを持つ lb-network という名前のカスタムモード VPC ネットワークを使用します。

次の表に、ロードバランサのトラフィック タイプ、バックエンド VM ネットワーク インターフェース、VPC サブネット スタック タイプの互換性を示します。グローバル外部パススルー ネットワーク ロードバランサのアーキテクチャ ガイドに記載されている、バックエンド VM のネットワーク インターフェースと VPC サブネットの互換性要件を理解しておきます。

ロードバランサのトラフィック タイプ バックエンド VM ネットワーク インターフェースのスタックタイプ VPC サブネットのスタックタイプ
IPv4 トラフィックのみ IPV4_ONLY IPV4_ONLY または IPV4_IPV6
IPV4_IPV6 IPV4_IPV6
IPv6 トラフィックのみ IPV6_ONLY IPV6_ONLY または IPV4_IPV6
IPV4_IPV6 IPV4_IPV6
IPv4 トラフィックと IPv6 トラフィック IPV4_IPV6 IPV4_IPV6

この例で使用されているバックエンドは、次のリージョンとサブネットにあります。サブネットに構成する IPv4 アドレス範囲は選択できますが、 Google Cloud は /64 IPv6 アドレス範囲をサブネット全体に自動的に割り当てます。

  • リージョン: us-west1

    • サブネット: lb-subnet-us(プライマリ IPv4 アドレス範囲は 10.1.2.0/24)。
  • リージョン: europe-west2

    • サブネット: lb-subnet-eu(プライマリ IPv4 アドレス範囲は 10.1.3.0/24)。

gcloud

  1. VPC ネットワークを作成します。この例では、VPC ネットワークの名前は lb-network です。

    gcloud compute networks create lb-network \
        --subnet-mode=custom
    
  2. VPC ネットワーク(lb-network)内に、2 つのリージョンにサブネットを作成します。

    us-west1 リージョンのバックエンド用に lb-subnet-us という名前のサブネットを作成します

    IPv4 専用のサブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-us \
        --stack-type=IPV4_ONLY \
        --network=lb-network \
        --range=10.1.2.0/24 \
        --region=us-west1
    

    デュアル スタック サブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-us \
        --stack-type=IPV4_IPV6 \
        --ipv6-access-type=EXTERNAL \
        --network=lb-network \
        --range=10.1.2.0/24 \
        --region=us-west1
    

    IPv6 専用サブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-us \
        --stack-type=IPV6_ONLY \
        --ipv6-access-type=EXTERNAL \
        --network=lb-network \
        --region=us-west1
    

    europe-west2 リージョンのバックエンド用に lb-subnet-eu という名前のサブネットを作成します

    IPv4 専用のサブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-eu \
        --stack-type=IPV4_ONLY \
        --network=lb-network \
        --range=10.1.3.0/24 \
        --region=europe-west2
    

    デュアル スタック サブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-eu \
        --stack-type=IPV4_IPV6 \
        --ipv6-access-type=EXTERNAL \
        --network=lb-network \
        --range=10.1.3.0/24 \
        --region=europe-west2
    

    IPv6 専用サブネットを作成するには、次のコマンドを使用します。

    gcloud compute networks subnets create lb-subnet-eu \
        --stack-type=IPV6_ONLY \
        --ipv6-access-type=EXTERNAL \
        --network=lb-network \
        --range=10.1.3.0/24 \
        --region=europe-west2
    

ファイアウォール ルールを構成する

本番環境を安全に構成するには、次の 2 つのファイアウォール ルールを個別に作成する必要があります。

  • ヘルスチェック ファイアウォール ルール。次の範囲からの上り(内向き)トラフィックを許可するように構成されています。

  • ユーザー トラフィック ファイアウォール ルール。上り(内向き)トラフィックを許可するように構成されています。

    • ロードバランサにアクセスする必要がある特定のクライアント ソース IP 範囲。
    • 転送ルールで構成されている IP プロトコルとポート

次の点にご注意ください。

  • アプリケーションが制限なしですべてのインターネット ユーザーにサービスを提供している場合は、IPv4 トラフィックに 0.0.0.0/0、IPv6 トラフィックに ::/0 のソース IP 範囲を構成します。

  • ロード バランシングの IP プロトコルとポートをプローブするようにヘルスチェックを構成した場合は、ヘルスチェックとユーザー トラフィックのファイアウォール ルールを統合して、単一のファイアウォール ルールを構成できます。

gcloud

  • すべての送信元範囲からの TCP トラフィックがポート 80 でバックエンド VM インスタンスに到達することを許可するファイアウォール ルールを作成します。このポートとプロトコルは、ロード バランシングとヘルスチェックの両方に使用されます。

    • すべての IPv4 トラフィックを許可するには、次のコマンドを実行します。
      gcloud compute firewall-rules create firewall-allow-traffic-ipv4 \
          --network=lb-network \
          --target-tags=allow-traffic \
          --allow=tcp:80 \
          --source-ranges=0.0.0.0/0
    
    • すべての IPv6 トラフィックを許可するには、次のコマンドを実行します。
      gcloud compute firewall-rules create firewall-allow-traffic-ipv6 \
          --network=lb-network \
          --target-tags=allow-traffic \
          --allow=tcp:80 \
          --source-ranges=::/0
    

バックエンド VM インスタンスを作成する

このロード バランシングのシナリオでは、us-west1-a ゾーンと europe-west2-a ゾーンに 2 つの Compute Engine ゾーン マネージド インスタンス グループを作成します。マネージド インスタンス グループは、ロードバランサのバックエンド サーバーをホストする VM インスタンスで構成されます。わかりやすく説明するために、バックエンド サーバーはそれぞれのホスト名をコンテンツとして提供します。

インスタンス グループは、バックエンド VM の作成に使用されるインスタンス テンプレートを参照します。

次の表に、ロードバランサのトラフィック タイプ、バックエンド VM ネットワーク インターフェース、VPC サブネット スタック タイプの互換性を示します。グローバル外部パススルー ネットワーク ロードバランサのアーキテクチャ ガイドに記載されている、バックエンド VM のネットワーク インターフェースと VPC サブネットの互換性要件を理解しておきます。

ロードバランサのトラフィック タイプ バックエンド VM ネットワーク インターフェースのスタックタイプ VPC サブネットのスタックタイプ
IPv4 トラフィックのみ IPV4_ONLY IPV4_ONLY または IPV4_IPV6
IPV4_IPV6 IPV4_IPV6
IPv6 トラフィックのみ IPV6_ONLY IPV6_ONLY または IPV4_IPV6
IPV4_IPV6 IPV4_IPV6
IPv4 トラフィックと IPv6 トラフィック IPV4_IPV6 IPV4_IPV6

インスタンス テンプレートの作成

この例では、us-west1 リージョンと europe-west2 リージョンにリージョン インスタンス テンプレートを作成します。

gcloud

  1. us-west1 リージョンにインスタンス テンプレートを作成します

    IPv4 専用ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-us \
        --region=us-west1 \
        --network=lb-network \
        --subnet=lb-subnet-us \
        --stack-type=IPV4_ONLY \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    

    デュアルスタック ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-us \
        --region=us-west1 \
        --network=lb-network \
        --subnet=lb-subnet-us \
        --ipv6-network-tier=PREMIUM \
        --stack-type=IPV4_IPV6 \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    

    IPv6 専用ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-us \
        --region=us-west1 \
        --network=lb-network \
        --subnet=lb-subnet-us \
        --ipv6-network-tier=PREMIUM \
        --stack-type=IPV6_ONLY \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    
  2. europe-west2 リージョンにインスタンス テンプレートを作成します

    IPv4 専用ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-eu \
        --region=europe-west2 \
        --network=lb-network \
        --subnet=lb-subnet-eu \
        --stack-type=IPV4_ONLY \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    

    デュアルスタック ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-eu \
        --region=europe-west2 \
        --network=lb-network \
        --subnet=lb-subnet-eu \
        --ipv6-network-tier=PREMIUM \
        --stack-type=IPV4_IPV6 \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    

    IPv6 専用ネットワーク インターフェースを持つバックエンド VM を作成するには、次のコマンドを使用します。

    gcloud compute instance-templates create ig-template-eu \
        --region=europe-west2 \
        --network=lb-network \
        --subnet=lb-subnet-eu \
        --ipv6-network-tier=PREMIUM \
        --stack-type=IPV6_ONLY \
        --tags=allow-traffic \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://metadata.google.internal/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        systemctl restart apache2'
    

ゾーン マネージド インスタンス グループを作成する

この例では、2 つのゾーン マネージド インスタンス グループ(1 つは us-west1-a ゾーン、もう 1 つは europe-west2-a ゾーン)を作成します。

gcloud

  1. us-west1-a ゾーンにマネージド インスタンス グループを作成します。

    gcloud compute instance-groups managed create mig-us \
      --template=ig-template-us \
      --size=2 \
      --zone=us-west1-a
    
  2. europe-west2-a ゾーンにマネージド インスタンス グループを作成します。

    gcloud compute instance-groups managed create mig-eu \
      --template=ig-template-eu \
      --size=2 \
      --zone=europe-west2-a
    

グローバル外部 IP アドレスを予約する

グローバル外部パススルー ネットワーク ロードバランサには、2 つのグローバル外部 IP アドレス(各アベイラビリティ グループから 1 つずつ)が必要です。これらの 2 つの IP アドレスは、ロードバランサの転送ルールに関連付けられます。

グローバル外部パススルー ネットワーク ロードバランサの場合、転送ルールの IP アドレスは VPC サブネットから完全に切り離されます。IP アドレスは、Google 所有のグローバル外部 IP アドレス プールまたは BYOIP グローバル外部 IPv4 パブリック委任プレフィックスに属し、VPC サブネットに関連付けられていません。

IPv6 転送ルールを構成すると、転送ルール IP アドレスは /96 プレフィックスとして割り当てられます。

gcloud

IPv4 トラフィックの場合:

  1. 可用性グループ 0 で lb-ipv4-ag0 という最初のグローバル外部 IP アドレスを予約します。

    gcloud beta compute addresses create lb-ipv4-ag0 \
        --global \
        --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 \
        --ip-version=IPV4
    
  2. 可用性グループ 1 で 2 番目のグローバル外部 IP アドレス lb-ipv4-ag1 を予約します。

    gcloud beta compute addresses create lb-ipv4-ag1 \
        --global \
        --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1 \
        --ip-version=IPV4
    

IPv6 トラフィックの場合:

  1. 可用性グループ 0 で lb-ipv6-ag0 という最初のグローバル外部 IP アドレスを予約します。

    gcloud beta compute addresses create lb-ipv6-ag0 \
        --global \
        --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 \
        --ip-version=IPV6
    
  2. 可用性グループ 1 で 2 番目のグローバル外部 IP アドレス lb-ipv6-ag1 を予約します。

    gcloud beta compute addresses create lb-ipv6-ag1 \
        --global \
        --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1 \
        --ip-version=IPV6
    

ロードバランサを構成する

グローバル外部パススルー ネットワーク ロードバランサを設定するには、ヘルスチェック、バックエンド サービス、転送ルールを作成します。

gcloud

  1. TCP:80 プローブを生成するように構成された TCP ヘルスチェックを作成します。

    gcloud compute health-checks create tcp hc-tcp-80 \
      --global \
      --port=80
    
  2. EXTERNAL_PASSTHROUGH ロード バランシング方式でグローバル バックエンド サービスを作成します。

    gcloud beta compute backend-services create lb-backend-service \
      --load-balancing-scheme=EXTERNAL_PASSTHROUGH \
      --health-checks=hc-tcp-80 \
      --global
    
  3. インスタンス グループをバックエンドとしてバックエンド サービスに追加します。

    us-west1-a リージョンのインスタンス グループをバックエンド サービスに追加します。

    gcloud beta compute backend-services add-backend lb-backend-service \
        --instance-group=mig-us \
        --instance-group-zone=us-west1-a \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.7 \
        --global
    

    europe-west2-a リージョンのインスタンス グループをバックエンド サービスに追加します。

    gcloud beta compute backend-services add-backend lb-backend-service \
        --instance-group=mig-eu \
        --instance-group-zone=europe-west2-a \
        --balancing-mode=UTILIZATION \
        --max-utilization=0.7 \
        --global
    
  4. TCP:80 トラフィックを処理するグローバル転送ルールを作成します。IPv4 トラフィックと IPv6 トラフィックの両方を処理するには、2 つの転送ルールを作成する必要があります。

    転送ルールの IP バージョンがバックエンド VM ネットワーク インターフェースのスタックタイプと一致していることを確認します。

    転送ルールは、各可用性グループの IP アドレスを参照します。

    IPv4 トラフィックの場合:

    gcloud beta compute forwarding-rules create lb-forwarding-rule-ipv4 \
      --load-balancing-scheme=EXTERNAL_PASSTHROUGH \
      --ip-protocol=TCP \
      --ports=80 \
      --backend-service=lb-backend-service \
      --global \
      --ip-addresses=lb-ipv4-ag0,lb-ipv4-ag1
    

    IPv6 トラフィックの場合:

    gcloud beta compute forwarding-rules create lb-forwarding-rule-ipv6 \
      --load-balancing-scheme=EXTERNAL_PASSTHROUGH \
      --ip-protocol=TCP \
      --ports=80 \
      --backend-service=lb-backend-service \
      --global \
      --ip-addresses=lb-ipv6-ag0,lb-ipv6-ag1
    

ロードバランサをテストする

  1. 転送ルールにアタッチされている予約済み IP アドレスを取得します。

      gcloud beta compute forwarding-rules describe lb-forwarding-rule-ipv4 \
          --global
    

    これにより、可用性グループごとに 1 つずつ、2 つの IP アドレスが返されます。これらの IP アドレスは IP_ADDRESS_AVAILABILITY_GROUP_0IP_ADDRESS_AVAILABILITY_GROUP_1 と呼ばれます。

  2. いずれかの IP アドレスにトラフィックを送信します。

      curl http://IP_ADDRESS_AVAILABILITY_GROUP_0
    
      curl http://IP_ADDRESS_AVAILABILITY_GROUP_1
    

ロケーションとバックエンドの健全性に応じて、異なるリージョンのバックエンド VM からのレスポンスが表示されます。

ロードバランサの IP アドレスについてローカル ルーティング テーブルを確認する

バックエンド VM のローカル ルーティング テーブルには、グローバル外部パススルー ネットワーク ロードバランサの IP アドレスが含まれています。

バックエンド VM のローカルルートを確認するには、SSH を使用してバックエンド VM に接続し、次のコマンドを実行します。

  ip route list table local

出力は次のとおりです。

local 10.1.2.5 dev ens4 proto kernel scope host src 10.1.2.5
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
local 136.124.69.214 dev ens4 proto 66 scope host
local 136.124.83.205 dev ens4 proto 66 scope host

上記の例では、136.124.69.214136.124.83.205 はロードバランサの転送ルールに割り当てられた IP アドレスです。VM のローカル ルーティング テーブルの local 136.124.69.214 dev ens4 proto 66 scope hostlocal 136.124.83.205 dev ens4 proto 66 scope host の行エントリにより、ロードバランサの IP アドレス宛てのパケットがバックエンドで受け入れられます。このエントリの追加は、 Google Cloud ゲスト環境が行います。

バックエンド VM のローカル ルーティング テーブル エントリは、ローカルホスト配信用のパケットを受け入れます。ネットワーク スタックは、このパケットをリッスン アプリケーションに配信します。その後、アプリケーションからのレスポンス パケットがクライアントに直接送信されます。

ロードバランサの IP アドレスは、実際には VM のネットワーク インターフェースで構成されていません。これを確認するには、次のコマンドを実行します。

  ip addr list

出力は次のとおりです。IP アドレス(136.124.69.214136.124.83.205)はローカル ルーティング テーブルに表示されますが、ネットワーク インターフェースには構成されていません。

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: ens4:  mtu 1460 qdisc fq_codel state UP group default qlen 1000
    link/ether 42:01:0a:01:02:0d brd ff:ff:ff:ff:ff:ff
    altname enp0s4
    inet 10.1.2.13/32 metric 100 scope global dynamic ens4
       valid_lft 84283sec preferred_lft 84283sec
    inet6 fe80::4001:aff:fe01:20d/64 scope link
       valid_lft forever preferred_lft forever

子転送ルールを表示する

グローバル外部パススルー ネットワーク ロードバランサの転送ルールが作成されると、Google Cloud は高可用性を確保するために、可用性グループごとに 1 つずつ、2 つの読み取り専用の子転送ルールを生成します。

転送ルールの子転送ルールを表示するには、次のコマンドを実行します。

  gcloud beta compute forwarding-rules list

このコマンドは、プロジェクト内のすべての転送ルールを一覧表示します。読み取り専用の子転送ルールには、親転送ルール名の末尾に -ag0-ag1 が付加されます。

モニタリング指標は、作成した親グローバル転送ルールを使用してクエリまたはフィルタリングできません。代わりに、転送ルールを使用してクエリとフィルタリングを行います。これは、可用性グループの各子転送ルールが、ロードバランスされたトラフィックとヘルスチェックを実装するためです。

追加の構成オプション

このセクションでは、グローバル外部パススルー ネットワーク ロードバランサをさらにカスタマイズする方法について、構成の例を紹介します。これらのタスクは省略可能です。これらは任意の順序で実行できます。

セッション アフィニティを構成する

デフォルトでは、ロードバランサのバックエンド サービスは、セッション アフィニティ値が NONE に設定されて作成されます。このセクションでは、バックエンド サービスを更新してロードバランサのセッション アフィニティの設定を変更する方法について説明します。

gcloud

次の gcloud beta compute backend-services update コマンドを使用して、バックエンド サービスのセッション アフィニティを更新します。

gcloud beta compute backend-services update BACKEND_SERVICE \
    --global \
    --session-affinity=SESSION_AFFINITY_OPTION

次のように置き換えます。

  • BACKEND_SERVICE: 更新するバックエンド サービス
  • SESSION_AFFINITY_OPTION: 設定するセッション アフィニティ オプション

接続の永続性の動作を変更する

デフォルトでは、ロードバランサの接続永続性は DEFAULT_FOR_PROTOCOL に設定されています。このセクションでは、ロードバランサの接続の永続性の動作を変更する方法について説明します。

gcloud

次の gcloud beta compute backend-services update コマンドを使用して、接続の永続性の動作を更新します。

gcloud beta compute backend-services update BACKEND_SERVICE \
    --global \
    --connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR

次のように置き換えます。

  • BACKEND_SERVICE: 更新するバックエンド サービス
  • CONNECTION_PERSISTENCE_BEHAVIOR: バックエンドが異常な場合の接続の永続性の動作。

次のステップ