従来のアプリケーション ロードバランサからグローバル外部アプリケーション ロードバランサにリソースを移行する

このドキュメントでは、従来のアプリケーション ロードバランサのインフラストラクチャ リソースをグローバル外部アプリケーション ロードバランサのインフラストラクチャに移行する方法について説明します。

始める前に

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

デフォルト プロジェクトを設定する

コンソール

  1. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  2. Make sure that billing is enabled for your Trusted Cloud project.

gcloud

gcloud config set project PROJECT_ID

PROJECT_ID は、このガイドで使用しているプロジェクトに置き換えます。

権限

このドキュメントの手順を行うには、 Trusted Cloud プロジェクトで Compute Engine 仮想マシン(VM)インスタンス、ファイアウォール ルール、予約済み IP アドレス、Cloud Storage バケットを作成する権限が必要です。そのためにはプロジェクトのオーナーまたは編集者であるか、または次の Compute Engine IAM のロールを持っている必要があります。

タスク 必要なロール
インスタンスの作成 Compute インスタンス管理者ロールroles/compute.instanceAdmin
ファイアウォール ルールの追加と削除 Compute セキュリティ管理者のロールroles/compute.securityAdmin
ロードバランサのコンポーネントを作成する Compute ネットワーク管理者ロールroles/compute.networkAdmin
プロジェクトを作成する(省略可) プロジェクト作成者ロールroles/resourcemanager.projectCreator
Cloud Storage バケットを作成する ストレージ オブジェクト管理者ロールroles/storage.objectAdmin

詳細については、次のガイドをご覧ください。

従来のアプリケーション ロードバランサ リソースを作成する

このドキュメントでは、次の従来のアプリケーション ロードバランサ リソースを作成し、グローバル外部アプリケーション ロードバランサ インフラストラクチャに移行します。

  • VM を含むマネージド インスタンス グループ。
  • Cloud Storage バケット。
  • マネージド インスタンス グループと Cloud Storage バケットをバックエンドとして使用する従来の HTTP アプリケーション ロードバランサ。

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

このセクションでは、Apache が実行されている Linux VM でマネージド インスタンス グループを作成する方法について説明します。マネージド インスタンス グループは、指定したインスタンス テンプレートに基づいて各マネージド インスタンスを作成します。

インスタンス テンプレートを作成する

コンソール

  1. Trusted Cloud コンソールで、[インスタンス テンプレート] ページに移動します。

    [インスタンス テンプレート] に移動

  2. [インスタンス テンプレートを作成] をクリックします。

  3. [名前] に「lb-backend-template」と入力します。

  4. [リージョン] で REGION を選択します。

  5. [ブートディスク] セクションで、ブートディスクのイメージDebian GNU/Linux 12(bookworm)などの Debian イメージに設定されていることを確認します。以降の手順では、apt-get などの Debian でのみ使用できるコマンドを使用します。

  6. [詳細オプション] をクリックします。

  7. [ネットワーキング] をクリックし、[ネットワーク タグ] フィールドに「allow-health-check」と入力します。

  8. [管理] をクリックし、次のスクリプトを [起動スクリプト] フィールドに入力します。

    #! /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
    
  9. [作成] をクリックします。

gcloud

gcloud compute instance-templates create コマンドを実行してテンプレートを作成します。

gcloud compute instance-templates create lb-backend-template \
    --region=REGION \
    --network=default \
    --subnet=default \
    --tags=allow-health-check \
    --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'

マネージド インスタンス グループを作成します。

コンソール

  1. Trusted Cloud コンソールで、[インスタンス グループ] ページに移動します。

    [インスタンス グループ] に移動

  2. [インスタンス グループを作成] をクリックします。

  3. [新しいマネージド インスタンス グループ(ステートレス)] を選択します。

  4. [名前] に「lb-backend-example」と入力します。

  5. [インスタンス テンプレート] で、インスタンス テンプレート lb-backend-template を選択します。

  6. [ロケーション] で [シングルゾーン] を選択します。

  7. [リージョン] で REGION を選択します。

  8. [ゾーン] で、[ZONE] を選択します。

  9. [自動スケーリング モード] で [オン: グループに対してインスタンスを追加および削除します] を選択します。

    [インスタンスの最小数] と [インスタンスの最大数] を 2 に設定します。

  10. [ポート マッピング] セクションで、[ポートを追加] をクリックします。

  11. ポート名に「http」と入力します。ポート番号に「80」と入力します。

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

gcloud

gcloud compute instance-groups managed create コマンドを実行して、テンプレートに基づいてマネージド インスタンス グループを作成します。

gcloud compute instance-groups managed create lb-backend-example \
    --template=lb-backend-template \
    --size=2 --zone=ZONE

次のコマンドを実行して、インスタンス グループに名前付きポートを追加します。

gcloud compute instance-groups set-named-ports lb-backend-example \
    --named-ports http:80 \
    --zone ZONE

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

このセクションでは、fw-allow-health-check ファイアウォール ルールを作成し、ターゲットタグ allow-health-check を使用して VM を識別します。これは Trusted Cloud ヘルスチェック システム(130.211.0.0/2235.191.0.0/16)からのトラフィックを許可する上り(内向き)ルールです。

コンソール

  1. Trusted Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. [ファイアウォール ルールを作成] をクリックします。

  3. [名前] に「fw-allow-health-check」と入力します。

  4. [ネットワーク] で [default] を選択します。

  5. [ターゲット] で [指定されたターゲットタグ] を選択します。

  6. [ターゲットタグ] フィールドに「allow-health-check」と入力します。

  7. [ソースフィルタ] を [IPv4 範囲] に設定します。

  8. [送信元 IPv4 範囲] を 130.211.0.0/2235.191.0.0/16 に設定します。

  9. [プロトコルとポート] セクションで、[指定したプロトコルとポート] を選択します。

  10. [TCP] チェックボックスをオンにし、ポート番号に「80」と入力します。

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

gcloud

gcloud compute firewall-rules create コマンドを実行してファイアウォール ルールを作成します。

gcloud compute firewall-rules create fw-allow-health-check \
    --network=default \
    --action=allow \
    --direction=ingress \
    --source-ranges=130.211.0.0/22,35.191.0.0/16 \
    --target-tags=allow-health-check \
    --rules=tcp:80

Cloud Storage バケットを作成する

このセクションでは、ロードバランサがアクセスする Cloud Storage バケットを作成します。本番環境のデプロイでは、複数の Trusted Cloud リージョンにオブジェクトを自動的に複製するマルチリージョン バケットを選択することをおすすめします。これにより、コンテンツの可用性が高まり、アプリケーション全体のフォールト トレラントが向上します。

コンソール

  1. Trusted Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。

    Cloud Storage の [バケット] に移動

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

  3. [バケットに名前を付ける] ボックスに「storage-backend-bucket」と入力し、[続行] をクリックします。

  4. [データの保存場所の選択] をクリックします。

  5. [ロケーション タイプ] を [リージョン] に設定し、REGION を指定します。

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

  7. 省略可: [公開アクセスの防止] ダイアログが表示された場合は、[このバケットに対する公開アクセス禁止を適用する] チェックボックスをオフにして、[確認] をクリックします。

gcloud

gcloud storage buckets create コマンドを実行してバケットを作成します。

gcloud storage buckets create gs://storage-backend-bucket \
    --default-storage-class=standard \
    --location=REGION --uniform-bucket-level-access

Cloud Storage バケットにコンテンツを転送する

ロードバランサの作成後にバケットをテストするには、次のイメージ ファイルを Cloud Storage の公開バケットから独自の Cloud Storage バケットにコピーします。

gcloud

  1. Cloud Shell をアクティブにする」をクリックします。

  2. Cloud Shell で次のコマンドを実行します。

gcloud storage cp gs://gcp-external-http-lb-with-bucket/three-cats.jpg gs://storage-backend-bucket/never-fetch/

Trusted Cloud コンソールで、バケットの詳細ページの [更新] をクリックし、ファイルが正常にコピーされたことを確認します。

Cloud Storage バケットを公開する

Cloud Storage バケットを公開読み取り可能にすると、インターネット上の誰でもオブジェクトの一覧の取得と表示、メタデータ(ACL を除く)の表示を行えるようになります。公開バケットに機密情報を含めないでください。

機密情報が誤って公開される可能性を減らすため、公開オブジェクトと機密データを同じバケットに保存しないでください。

コンソール

バケット内のオブジェクトを表示する権限をすべてのユーザーに付与するには、次の操作を行います。

  1. Trusted Cloud コンソールで Cloud Storage の [バケット] ページに移動します。

    Cloud Storage の [バケット] に移動

  2. storage-backend-bucket 名をクリックし、[権限] タブをクリックします。

  3. [アクセス権を付与] をクリックします。

  4. [新しいプリンシパル] ボックスに「allUsers」と入力します。

  5. [ロールを選択] ボックスで、[Cloud Storage] > [Storage オブジェクト閲覧者] を選択します。

  6. [保存] をクリックします。

  7. [一般公開アクセスを許可] をクリックします。

gcloud

gcloud storage buckets add-iam-policy-binding コマンドを実行して、バケット内のオブジェクトを表示する権限をすべてのユーザーに付与します。

gcloud storage buckets add-iam-policy-binding gs://storage-backend-bucket \
    --member=allUsers \
    --role=roles/storage.objectViewer

外部 IP アドレスを予約する

インスタンスが稼働し始めたので、次にロードバランサにユーザーが接続する際に使用するグローバル静的外部 IP アドレスを設定します。

コンソール

  1. Trusted Cloud コンソールで、[外部 IP アドレス] ページに移動します。

    [外部 IP アドレス] に移動

  2. IPv4 アドレスを予約するには、[外部静的 IP アドレスを予約] をクリックします。

  3. [名前] に「lb-ipv4-1」と入力します。

  4. [ネットワーク サービス階層] に [プレミアム] を設定します。

  5. [IP バージョン] を IPv4 に設定します。

  6. [タイプ] を [グローバル] に設定します。

  7. [予約] をクリックします。

gcloud

外部 IP アドレスを予約するには、次のコマンドを実行します。

gcloud compute addresses create lb-ipv4-1 \
    --ip-version=IPV4 \
    --network-tier=PREMIUM \
    --global
  

予約された IPv4 アドレスをメモするには、次のコマンドを実行します。

gcloud compute addresses describe lb-ipv4-1 \
    --format="get(address)" \
    --global
  

従来のアプリケーション ロードバランサを設定する

このセクションでは、クライアントとロードバランサの間に HTTP(フロントエンド)を使用します。

コンソール

構成を開始する

  1. Trusted Cloud コンソールで、[ロード バランシング] ページに移動します。

    [ロード バランシング] に移動

  2. [ロードバランサを作成] をクリックします。
  3. [ロードバランサの種類] で [アプリケーション ロードバランサ(HTTP / HTTPS)] を選択し、[次へ] をクリックします。
  4. [インターネット接続または内部] で [インターネット接続(外部)] を選択し、[次へ] をクリックします。
  5. [グローバルまたはシングル リージョンのデプロイ] で [グローバル ワークロードに最適] を選択し、[次へ] をクリックします。
  6. [ロードバランサの世代] で [従来のアプリケーション ロードバランサ] を選択し、[次へ] をクリックします。
  7. [構成] をクリックします。

基本構成

  1. [ロードバランサ名] フィールドに「web-map-http」と入力します。
  2. [フロントエンドの構成] をクリックして次のフィールドを構成し、[完了] をクリックします。
    • プロトコル: HTTP.
    • IP バージョン: IPv4
    • IP アドレス: lb-ipv4-1
    • ポート: 443
  3. [バックエンドの構成] をクリックします。
  4. [バックエンド サービスとバックエンド バケット] で [バックエンド サービスを作成] をクリックし、次の操作を行います。
    1. 次のフィールドを構成します。
      • 名前: web-backend-service
      • プロトコル: HTTP
      • 名前付きポート: http
    2. [バックエンド > [新しいバックエンド] セクションで、次のフィールドを構成し、[完了] をクリックします。
      • インスタンス グループ: lb-backend-example
      • ポート番号: 80
    3. [ヘルスチェック] で [ヘルスチェックを作成] をクリックし、次のフィールドを指定して [保存] をクリックします。
      • 名前: http-basic-check
      • プロトコル: HTTP
    4. [ロギング] セクションで、[ロギングを有効にする] チェックボックスをオンにします。
    5. [作成] をクリックします。
  5. [OK] をクリックします。
  6. [バックエンド サービスとバックエンド バケット] で [バックエンド バケットを作成] をクリックし、次のフィールドを構成して、[作成] をクリックします。
    • バックエンド バケット名: cats
    • Cloud Storage バケット: storage-backend-bucket
  7. [OK] をクリックします。
  8. [ホストとパスのルール] をクリックします。
  9. cats で、[ホスト 2] フィールドに「*」、[パス 2] フィールドに「/never-fetch/*」と入力します。
  10. [確認と完了] をクリックします。
  11. ロードバランサの構成を確認します。
  12. [作成] をクリックします。

gcloud

  1. ヘルスチェックを作成します。

    gcloud compute health-checks create http http-basic-check \
        --port 80
    
  2. バックエンド サービスを作成します。

    gcloud compute backend-services create web-backend-service \
        --load-balancing-scheme=EXTERNAL \
        --protocol=HTTP \
        --port-name=http \
        --health-checks=http-basic-check \
        --enable-logging \
        --logging-sample-rate=1.0 \
        --enable-cdn \
        --global
    
  3. インスタンス グループをバックエンドとしてバックエンド サービスに追加します。

    gcloud compute backend-services add-backend web-backend-service \
        --instance-group=lb-backend-example \
        --instance-group-zone=ZONE \
        --global
    
  4. バックエンド バケットを追加します。

    gcloud compute backend-buckets create cats \
        --gcs-bucket-name=storage-backend-bucket
    
  5. 受信リクエストをバックエンド サービスとバックエンド バケットに転送する URL マップを作成します。

    gcloud compute url-maps create web-map-http \
        --default-service web-backend-service
    
    gcloud compute url-maps add-path-matcher web-map-http \
        --path-matcher-name=cats-path-matcher \
        --default-backend-bucket=cats \
        --new-hosts="*" \
        --backend-bucket-path-rules="/never-fetch/*=cats"
    
  6. URL マップにリクエストをルーティングするターゲット HTTP プロキシを作成します。

    gcloud compute target-http-proxies create http-lb-proxy \
        --url-map=web-map-http
    
  7. 受信リクエストをプロキシにルーティングするグローバル転送ルールを作成します。

    gcloud compute forwarding-rules create web-map-http-forwarding-rule \
        --load-balancing-scheme=EXTERNAL \
        --address=lb-ipv4-1 \
        --global \
        --target-http-proxy=http-lb-proxy \
        --ports=80
    

インスタンスに送信されるトラフィックをテストする

ロード バランシング サービスが稼働中になったので、転送ルールへトラフィックを送信できます。また、各インスタンスに分散されるトラフィックを監視できます。

コンソール

  1. Trusted Cloud コンソールで、[ロード バランシング] ページに移動します。

    [ロード バランシング] に移動

  2. [web-map-http] をクリックします。

  3. [フロントエンド] セクションで、ロードバランサの IP:ポート をメモします。

  4. バックエンド インスタンスをテストするには、ウェブブラウザのアドレスバーに「http://IP_ADDRESS」と入力します。

    ページを提供したインスタンスの名前とそのゾーン(Page served from: lb-backend-example-xxxx など)を示すコンテンツを含むページがブラウザで表示されます。

  5. バックエンド バケットをテストするには、ウェブブラウザのアドレスバーに「http://IP_ADDRESS/never-fetch/three-cats.jpg」と入力します。

    ブラウザで画像がレンダリングされます。

従来のアプリケーション ロードバランサのリソースを移行する

このセクションでは、次の操作を行って、ロードバランサをグローバル外部アプリケーション ロードバランサ インフラストラクチャに移行します。

  1. バックエンド サービスを移行します。転送ルールの移行に進む前に、転送ルールに関連付けられているすべてのバックエンド サービスを移行する必要があります。
  2. バックエンド バケットを移行します。 Trusted Cloud コンソールを使用している場合は、転送ルールと一緒にバックエンド バケットを移行します。
  3. 転送ルールを移行します。

バックエンド サービスを移行する

コンソール

移行用にバックエンド サービスを準備する

  1. Trusted Cloud コンソールで、[ロード バランシング] ページに移動します。

    [ロード バランシング] に移動

  2. [web-map-http] をクリックします。

  3. [移行] タブをクリックします。

  4. [バックエンド サービス] セクションの web-backend-service で次のフィールドを確認し、[移行を管理] をクリックします。

    • ステータス: 未開始
    • スキームのアクティビティ: EXTERNAL: 100% EXTERNAL_MANAGED: 0%
  5. [移行を管理] ペインの [ステータスの変更] で [準備] を選択します。

  6. [保存] をクリックします。

6 分以上待ってから、次の手順に進みます。[ステータス] が [テスト準備完了] に変わります。

トラフィックの一部をグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信する

  1. web-backend-service で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [割合を指定してテスト] を選択します。
  3. [テストの割合] に「10」と入力します。これにより、リクエストの 10% がテストとしてグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信され、残りの 90% のリクエストは引き続き従来のアプリケーション ロードバランサ インフラストラクチャに送信されます。
  4. [保存] をクリックします。

    [ステータス] が [テスト中(%)] に変わり、[移行率] が [10%] になるまで、6 分以上待ちます。

  5. ロードバランサをテストして、リクエストが想定どおりに処理されていることを確認します。

    ウェブブラウザのアドレスバーに「http://IP_ADDRESS」と入力します。Page served from: lb-backend-example-xxxx というメッセージが表示されます。

    ロードバランサの指標から、リクエストの全体的なバランスが構成した移行率と一致していることを確認できます。

  6. ロードバランサが想定どおりに動作していることを確認できるまでこの手順を繰り返し、グローバル外部アプリケーション ロードバランサ インフラストラクチャに送信するトラフィックの割合を徐々に増やしていきます。

すべてのトラフィックをグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信する

  1. web-backend-service で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [すべてのトラフィックをテスト] を選択します。これにより、すべてのリクエストがグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信されます。
  3. [保存] をクリックします。

    [ステータス] が [すべてのトラフィックをテスト中] に変わり、[移行率] が [100%] になります。6 分以上待ってから、次の手順に進みます。

EXTERNAL_MANAGED ロード バランシング スキームに移行する

  1. web-backend-service で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [移行] を選択します。
  3. [保存] をクリックします。

    リソースの移行が完了するまで 6 分以上待ちます。[ステータス] 列が [移行済み] に変わり、[スキームのアクティビティ] が [EXTERNAL: 0% EXTERNAL_MANAGED: 100%] になります。

転送ルールに関連付けられているすべてのバックエンド サービスを移行するまでは、転送ルールの移行には進めません。必要に応じて、この手順を繰り返してください。

gcloud

  1. 移行用にバックエンド サービスを準備します。

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=PREPARE \
      --global
    

    6 分以上待ちます。

  2. 一部(たとえば 10%)のトラフィックをバックエンド サービスに送信します。

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-migration-testing-percentage=10 \
      --global
    

    6 分以上待ちます。

    リソースの準備が完了すると、リクエストの 10% がグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信され、90% のリクエストが従来のアプリケーション ロードバランサ インフラストラクチャに送信されます。

  3. ロードバランサにアクセスする

    ウェブブラウザのアドレスバーに「http://IP_ADDRESS」と入力します。Page served from: lb-backend-example-xxxx メッセージが表示された場合は、次のコマンドを実行して割合を増やします。

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-migration-testing-percentage=50 \
      --global
    

    ロードバランサの指標から、リクエストの全体的なバランスが構成した移行率と一致していることを確認できます。

    100% に達するまでこのプロセスを繰り返します。

  4. 省略可: バックエンド サービスのログを確認します。

  5. テストを完了し、すべてのトラフィックをバックエンド サービスに送信します。

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_ALL_TRAFFIC \
      --global
    

    6 分以上待ってから、次の手順に進みます。

  6. 省略可: バックエンド サービスのログを確認します。

  7. バックエンド サービスのスキームを EXTERNAL_MANAGED に変更します。

    gcloud compute backend-services update web-backend-service \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --global
    

    バックエンド サービスがグローバル外部アプリケーション ロードバランサ インフラストラクチャに完全に移行されるまで、6 分以上待ちます。

  8. 省略可: バックエンド サービスのログを確認します。ロード バランシング スキームが EXTERNAL_MANAGED となっていることを確認します。

転送ルールに関連付けられているすべてのバックエンド サービスを移行するまでは、転送ルールの移行には進めません。必要に応じて、この手順を繰り返してください。

バックエンド バケットを移行する

コンソール

バックエンド バケットは転送ルールと一緒に移行されるため、 Trusted Cloud コンソールを使用して移行できません。バックエンド バケットを個別に移行するには、Google Cloud CLI を使用します。

gcloud

  1. 移行用にバックエンド バケットを準備します。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=PREPARE \
      --global
    

    6 分以上待ちます。

  2. 一部(たとえば 10%)のトラフィックをバックエンド バケットに送信します。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-backend-bucket-migration-testing-percentage=10 \
      --global
    

    6 分以上待ちます。

    リソースの準備が完了すると、リクエストの 10% がグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信され、90% のリクエストが従来のアプリケーション ロードバランサ インフラストラクチャに送信されます。

  3. バックエンド バケットにアクセスします。

    ウェブブラウザのアドレスバーに「http://IP_ADDRESS/never-fetch/three-cats.jpg」と入力します。猫の画像が表示された場合は、次のコマンドを実行して割合を増やします。100% に達するまでこのプロセスを繰り返します。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-backend-bucket-migration-testing-percentage=50 \
      --global
    
  4. 省略可: バックエンド バケットのログを確認します。

  5. テストを完了し、すべてのトラフィックをバックエンド バケットに送信します。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \
      --global
    
  6. 省略可: バックエンド バケットのログを確認します。

転送ルールを移行する

コンソール

移行用に転送ルールを準備する

  1. Trusted Cloud コンソールで、[ロード バランシング] ページに移動します。

    [ロード バランシング] に移動

  2. [web-map-http] をクリックします。

  3. [移行] タブをクリックします。

  4. [転送ルール] セクションの web-map-http-forwarding-rule で次のフィールドを確認し、[移行を管理] をクリックします。

    • ステータス: 未開始
    • スキームのアクティビティ: EXTERNAL: 100% EXTERNAL_MANAGED: 0%
  5. [移行を管理] ペインの [ステータスの変更] で [準備] を選択します。

  6. [保存] をクリックします。

6 分以上待ってから、次の手順に進みます。[ステータス] が [テスト準備完了] に変わります。

トラフィックの一部をグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信する

  1. web-map-http-forwarding-rule で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [割合を指定してテスト] を選択します。
  3. [テストの割合] に「10」と入力します。これにより、リクエストの 10% がテストとしてグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信され、残りの 90% のリクエストは引き続き従来のアプリケーション ロードバランサ インフラストラクチャに送信されます。
  4. [保存] をクリックします。

    [ステータス] が [テスト中(%)] に変わり、[移行率] が [10%] になるまで、しばらく待ちます。

  5. ロードバランサをテストして、リクエストが想定どおりに処理されていることを確認します。

    ウェブブラウザのアドレスバーに「http://IP_ADDRESS」と入力します。Page served from: lb-backend-example-xxxx というメッセージが表示されます。

    ロードバランサの指標から、リクエストの全体的なバランスが構成した移行率と一致していることを確認できます。

  6. ロードバランサが想定どおりに動作していることを確認できるまでこの手順を繰り返し、グローバル外部アプリケーション ロードバランサ インフラストラクチャに送信するトラフィックの割合を徐々に増やしていきます。

すべてのトラフィックをグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信する

  1. web-map-http-forwarding-rule で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [すべてのトラフィックをテスト] を選択します。これにより、すべてのリクエストがグローバル外部アプリケーション ロードバランサ インフラストラクチャに送信されます。
  3. [保存] をクリックします。

    [ステータス] が [すべてのトラフィックをテスト中] に変わり、[移行率] が [100%] になります。6 分以上待ってから、次の手順に進みます。

EXTERNAL_MANAGED ロード バランシング スキームに移行する

  1. web-map-http-forwarding-rule で [移行を管理] をクリックします。
  2. [移行を管理] ペインの [ステータスの変更] で [移行] を選択します。
  3. [保存] をクリックします。

    リソースの移行が完了するまで 6 分以上待ちます。[ステータス] 列が [移行済み] に変わり、[スキームのアクティビティ] が [EXTERNAL: 0% EXTERNAL_MANAGED: 100%] になります。

gcloud

  1. 転送ルールのスキームを EXTERNAL_MANAGED に変更します。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --global
    

    転送ルールがグローバル外部アプリケーション ロードバランサ インフラストラクチャに完全に移行されるまで、6 分以上待ちます。

  2. 省略可: 転送ルールのログを確認します。ロード バランシング スキームが EXTERNAL_MANAGED となっていることを確認します。

次のステップ