將資源從傳統版遷移至全域外部應用程式負載平衡器

本文說明如何將傳統版應用程式負載平衡器基礎架構資源,遷移至全域外部應用程式負載平衡器基礎架構。

事前準備

請確認設定符合下列必要條件。

設定預設專案

主控台

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

gcloud

gcloud config set project PROJECT_ID

PROJECT_ID 替換為您在本指南中使用的專案。

權限

如要按照本文操作,您必須具備在 Google Cloud 專案中建立 Compute Engine 虛擬機器 (VM) 執行個體、防火牆規則、保留 IP 位址和 Cloud Storage 值區的權限。您必須是專案擁有者或編輯者,或是必須具有下列 Compute Engine 身分與存取權管理角色

工作 必要角色
建立執行個體 Compute 執行個體管理員角色 (roles/compute.instanceAdmin)
新增與移除防火牆規則 Compute 安全管理員角色 (roles/compute.securityAdmin)
建立負載平衡器元件 Compute 網路管理員角色 (roles/compute.networkAdmin)
建立專案 (選用) 專案建立者角色 (roles/resourcemanager.projectCreator)
建立 Cloud Storage 值區 Storage 物件管理員角色 (roles/storage.objectAdmin)

詳情請參閱下列指南:

建立傳統版應用程式負載平衡器資源

本文將建立下列傳統版應用程式負載平衡器資源,然後將這些資源遷移至全域外部應用程式負載平衡器基礎架構。

  • 含有 VM 的代管執行個體群組。
  • Cloud Storage bucket。
  • HTTP 傳統版應用程式負載平衡器,後端為代管執行個體群組和 Cloud Storage 值區。

建立代管執行個體群組

本節說明如何建立代管執行個體群組,其中包含執行 Apache 的 Linux VM。代管執行個體群組會根據您指定的執行個體範本,建立每個代管執行個體。

建立執行個體範本

主控台

  1. 前往 Google Cloud 控制台的「Instance Templates」(執行個體範本) 頁面。

    前往「Instance templates」(執行個體範本) 頁面

  2. 點選「建立執行個體範本」

  3. 在「Name」(名稱) 中輸入 lb-backend-template

  4. 在「Region」(區域) 中選取 REGION

  5. 在「Boot disk」(開機磁碟) 專區中,確認開機磁碟的「Image」(映像檔)已設為 Debian 映像檔,例如「Debian GNU/Linux 12 (bookworm)」。這些操作說明使用僅在 Debian 上可用的指令,例如 apt-get

  6. 點選「進階選項」

  7. 按一下「Networking」(網路),然後在「Network tags」(網路標記) 欄位中輸入 allow-health-check

  8. 按一下「Management」(管理),然後在「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
    
  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. 前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。

    前往「Instance groups」(執行個體群組) 頁面

  2. 點選「建立執行個體群組」

  3. 選取「New managed instance group (stateless)」(新增代管執行個體群組 (無狀態))

  4. 在「Name」(名稱) 中輸入 lb-backend-example

  5. 在「Instance template」(執行個體範本) 中選取執行個體範本 lb-backend-template

  6. 在「Location」(位置) 底下,選取 [Single zone] (單一區域)。

  7. 在「Region」(區域) 中選取 REGION

  8. 在「Zone」(可用區) 中選取 ZONE

  9. 針對「Autoscaling mode」(自動調度資源模式),選取「On: add and remove instances to the group」(開啟:在群組中新增和移除執行個體)

    將「Minimum number of instances」(執行個體數量下限) 和「Maximum number of instances」(執行個體數量上限) 設為 2

  10. 在「Port mapping」(通訊埠對應) 專區中,按一下「Add port」(新增通訊埠)

  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。這是輸入規則,可允許來自 Google Cloud 健康狀態檢查系統130.211.0.0/2235.191.0.0/16的流量。

主控台

  1. 在 Google Cloud 控制台中,前往「Firewall policies」(防火牆政策) 頁面。

    前往「防火牆政策」頁面

  2. 點按「建立防火牆規則」

  3. 在「Name」(名稱) 中輸入 fw-allow-health-check

  4. 在「Network」(網路) 中選取 default

  5. 在「Targets」(目標) 中選取 Specified target tags

  6. 在「Target tags」(目標標記) 欄位中輸入 allow-health-check

  7. 將「Source filter」(來源篩選器) 設為「IPv4 ranges」(IPv4 範圍)

  8. 將「Source IPv4 ranges」(來源 IPv4 範圍) 設為 130.211.0.0/2235.191.0.0/16

  9. 在「Protocols and ports」(通訊協定和通訊埠) 部分,選取「Specified protocols and ports」(指定的通訊協定和通訊埠)

  10. 勾選「TCP」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 bucket,供負載平衡器存取。如為實際工作環境的部署作業,建議您選擇多區域 bucket,系統會自動在多個 Google Cloud 區域複製物件。這有助於提高內容的可用性,並提升應用程式的容錯能力。

主控台

  1. 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。

    前往 Cloud Storage bucket

  2. 點選「建立」

  3. 在「Name your bucket」(為值區命名) 方塊中輸入 storage-backend-bucket,然後按一下「Continue」(繼續)

  4. 按一下「Choose where to store your data」(選取資料的儲存位置)

  5. 將「位置類型」設為「區域」,然後指定 REGION

  6. 點選「建立」

  7. 選用:如果看到「系統會禁止公開存取」對話方塊,請取消勾選「強制禁止公開存取這個 bucket」核取方塊,然後按一下「確認」

gcloud

執行 gcloud storage buckets create 指令來建立 bucket:

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

將內容轉移至 Cloud Storage 值區

建立負載平衡器後,如要測試 bucket,請將下列圖片檔案從公開的 Cloud Storage bucket 複製到自己的 Cloud Storage bucket。

gcloud

  1. 按一下「Activate Cloud Shell」(啟用 Cloud Shell)

  2. 在 Cloud Shell 中執行下列指令:

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

在 Google Cloud 控制台按一下 bucket 詳細資料頁面中的「Refresh」(重新整理),藉此確認檔案已複製成功。

將 Cloud Storage bucket 設為可公開讀取

將 Cloud Storage bucket 設為可公開讀取之後,網際網路中的所有使用者都能列出及查看當中的物件,並檢視物件的中繼資料 (ACL 除外)。請勿在公開 bucket 中存放機密資訊。

為降低機密資訊意外曝光的可能性,請勿在同一個值區中儲存公開物件和機密資料。

主控台

如要向所有使用者授予值區中物件的檢視權限,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Cloud Storage bucket」頁面。

    前往 Cloud Storage bucket

  2. 按一下 storage-backend-bucket 名稱,然後按一下「權限」分頁標籤。

  3. 按一下「授予存取權」

  4. 在「New principals」(新增主體) 方塊中輸入 allUsers

  5. 在「Select a role」(請選擇角色) 方塊中,依序選取「Cloud Storage」>「Storage Object Viewer」(Storage 物件檢視者)

  6. 按一下 [儲存]

  7. 按一下「Allow public access」(允許公開存取)

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. 前往 Google Cloud 控制台的「External IP addresses」(外部 IP 位址) 頁面。

    前往「External IP addresses」(外部 IP 位址)

  2. 如要預留 IPv4 位址,請按一下「Reserve external static IP address」(預留外部靜態 IP 位址)

  3. 在「Name」(名稱) 中輸入 lb-ipv4-1

  4. 將「Network Service Tier」(網路服務級別) 設為「Premium」

  5. 將「IP version」(IP 版本) 設為「IPv4」

  6. 將「Type」(類型) 設為「Global」(通用)

  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. 前往 Google Cloud 控制台的「Load balancing」(負載平衡)頁面。

    前往「Load balancing」(負載平衡) 頁面

  2. 點選「建立負載平衡器」
  3. 在「Type of load balancer」(負載平衡器類型) 部分,選取「Application Load Balancer (HTTP/HTTPS)」(應用程式負載平衡器 (HTTP/HTTPS)),然後點選「Next」(下一步)
  4. 在「公開或內部」部分,選取「公開 (外部)」,然後點選「下一步」
  5. 在「Global or single region deployment」(全域或單一區域部署) 部分,選取「Best for global workloads」(最適合全域工作負載),然後點選「Next」(下一步)
  6. 在「Load balancer generation」(負載平衡器代別) 部分,選取「Classic Application Load Balancer」(傳統應用程式負載平衡器),然後點選「Next」(下一步)
  7. 按一下 [設定]

基本設定

  1. 在「Load balancer name」(負載平衡器名稱) 欄位中輸入 web-map-http
  2. 按一下「前端設定」,設定下列欄位,然後按一下「完成」
    • 「Protocol」(通訊協定)HTTP
    • 「IP version」(IP 版本)IPv4
    • IP 位址lb-ipv4-1
    • Port (通訊埠):443
  3. 按一下「後端設定」
  4. 在「後端服務和後端值區」部分,點選「建立後端服務」,然後執行下列操作:
    1. 設定下列欄位:
      • Name (名稱):web-backend-service
      • 「Protocol」(通訊協定)HTTP
      • 已命名的通訊埠http
    2. 在「Backends > New backend」(後端 > 新後端) 區段中,設定下列欄位,然後按一下「Done」(完成)
      • 執行個體群組lb-backend-example
      • 「Port numbers」(通訊埠編號)80
    3. 在「健康狀態檢查」部分,按一下「建立健康狀態檢查」,指定下列欄位,然後按一下「儲存」
      • Name (名稱):http-basic-check
      • 「Protocol」(通訊協定)HTTP
    4. 在「記錄」部分,勾選「啟用記錄」核取方塊。
    5. 點選「建立」
  5. 按一下 [確定]
  6. 在「後端服務和後端值區」部分,點選「建立後端值區」,設定下列欄位,然後點選「建立」
    • 後端 bucket 名稱cats
    • Cloud Storage 值區storage-backend-bucket
  7. 按一下 [確定]
  8. 按一下「Host and path rules」(主機與路徑規則)
  9. cats 的「Host 2」(主機 2) 欄位中輸入 *,並在「Path 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. 新增後端 bucket。

    gcloud compute backend-buckets create cats \
        --gcs-bucket-name=storage-backend-bucket
    
  5. 建立網址對應,將連入要求轉送至後端服務和後端值區。

    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. 建立目標 HTTP Proxy,將要求轉送至網址對應。

    gcloud compute target-http-proxies create http-lb-proxy \
        --url-map=web-map-http
    
  7. 建立一個全域轉送規則,將收到的項目要求轉送至 Proxy。

    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. 前往 Google Cloud 控制台的「Load balancing」(負載平衡)頁面。

    前往「Load balancing」(負載平衡)

  2. 按一下「web-map-http」。

  3. 在「Frontend」(前端) 區段中,記下負載平衡器的「IP:Port」(IP:通訊埠)

  4. 如要測試後端執行個體,請在網路瀏覽器的網址列中輸入 http://IP_ADDRESS

    瀏覽器會顯示頁面,並於其中列出提供該頁面的執行個體名稱及所屬可用區 (例如 Page served from: lb-backend-example-xxxx)。

  5. 如要測試後端 bucket,請在網路瀏覽器的網址列中輸入 http://IP_ADDRESS/never-fetch/three-cats.jpg

    瀏覽器會顯示圖片。

遷移傳統版應用程式負載平衡器資源

在本節中,您將執行下列步驟,將負載平衡器遷移至全域外部應用程式負載平衡器基礎架構:

  1. 遷移後端服務。您必須先遷移與轉送規則相關聯的所有後端服務,才能繼續遷移轉送規則。
  2. 遷移後端 bucket。如果您使用 Google Cloud 控制台,系統會一併遷移所有後端 bucket 和轉送規則。
  3. 遷移轉送規則。

遷移後端服務

主控台

準備遷移後端服務

  1. 前往 Google Cloud 控制台的「Load balancing」(負載平衡)頁面。

    前往「Load balancing」(負載平衡)

  2. 按一下 [web-map-http]

  3. 按一下「遷移」分頁標籤。

  4. 在「後端服務」部分,針對 web-backend-service,驗證下列欄位,然後按一下「管理遷移作業」

    • 狀態尚未開始
    • 架構活動EXTERNAL:100%,EXTERNAL_MANAGED:0%
  5. 在「管理遷移作業」窗格中,選取「狀態變更」的「準備」

  6. 按一下 [儲存]

請稍候片刻 (至少六分鐘),再繼續操作。「狀態」會變更為「已準備就緒,可以測試」

將一定比例的流量傳送至全域外部應用程式負載平衡器基礎架構

  1. 如要使用 web-backend-service,請按一下「管理遷移作業」
  2. 在「管理遷移」窗格中,選取「狀態變更」的「依百分比測試」
  3. 在「測試百分比」欄位中,輸入 10。也就是說,10% 的要求會傳送至全域外部應用程式負載平衡器基礎架構進行測試,其餘 90% 的要求則會繼續傳送至傳統版應用程式負載平衡器基礎架構。
  4. 按一下 [儲存]

    等待一段時間 (至少六分鐘),直到「狀態」變更為「測試中 (百分比)」,且「移轉率」變更為「10%」

  5. 測試負載平衡器,確保系統會如預期處理要求。

    在網路瀏覽器的網址列中輸入 http://IP_ADDRESS。畫面上應會顯示 Page served from: lb-backend-example-xxxx 訊息。

    您可以檢查負載平衡器的指標,確認要求的整體平衡與您設定的遷移率相符。

  6. 您可以重複執行這些步驟,逐步提高傳送至全域外部應用程式負載平衡器基礎架構的流量百分比,直到確信負載平衡器運作正常為止。

將所有流量傳送至全域外部應用程式負載平衡器基礎架構

  1. 如要使用 web-backend-service,請按一下「管理遷移作業」
  2. 在「管理遷移」窗格中,選取「狀態變更」的「測試所有流量」。也就是說,所有要求都會傳送至全域外部應用程式負載平衡器基礎架構。
  3. 按一下 [儲存]

    「狀態」會變更為「測試所有流量」,「遷移率」會變更為「100%」。請稍候片刻 (至少六分鐘),再繼續下一個步驟。

遷移至 EXTERNAL_MANAGED 負載平衡架構

  1. 如要查看 web-backend-service,請按一下「管理遷移作業」
  2. 在「管理遷移」窗格中,選取「狀態變更」的「遷移」
  3. 按一下 [儲存]

    請稍候一段時間 (至少六分鐘),等待資源遷移完成。「狀態」欄會變更為「已遷移」,「架構活動」則會變更為「EXTERNAL:0% EXTERNAL_MANAGED:100%」

您必須先遷移與轉送規則相關聯的所有後端服務,才能繼續遷移轉送規則。視需要重複上述步驟。

gcloud

  1. 為遷移作業準備後端服務。

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

    稍待片刻 (至少六分鐘)。

  2. 將部分流量 (例如 10%) 傳送至後端服務。

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

    稍待片刻 (至少六分鐘)。

    資源準備就緒後,會將 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. 選用:檢查後端服務的記錄。

  7. 將後端服務的架構變更為 EXTERNAL_MANAGED

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

    請稍候一段時間 (至少六分鐘),等待後端服務完全遷移至全域外部應用程式負載平衡器基礎架構。

  8. 選用:檢查後端服務的記錄。您會看到負載平衡架構為 EXTERNAL_MANAGED

您必須先遷移與轉送規則相關聯的所有後端服務,才能繼續遷移轉送規則。視需要重複上述步驟。

遷移後端 bucket

主控台

您無法使用 Google Cloud 控制台遷移後端 bucket,因為後端 bucket 會與轉送規則一併遷移。如要個別遷移後端 bucket,請使用 Google Cloud CLI。

gcloud

  1. 為遷移作業準備後端 bucket。

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

    稍待片刻 (至少六分鐘)。

  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
    

    稍待片刻 (至少六分鐘)。

    資源準備就緒後,會將 10% 的要求傳送至全域外部應用程式負載平衡器基礎架構,並將 90% 的要求傳送至傳統版應用程式負載平衡器基礎架構。

  3. 存取後端 bucket。

    在網路瀏覽器的網址列中輸入 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. 選用:檢查後端 bucket 的記錄。

  5. 完成測試,並將所有流量傳送至後端 bucket。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \
      --global
    
  6. 選用:檢查後端 bucket 的記錄。

遷移轉送規則

主控台

準備遷移轉送規則

  1. 前往 Google Cloud 控制台的「Load balancing」(負載平衡)頁面。

    前往「Load balancing」(負載平衡)

  2. 按一下 [web-map-http]

  3. 按一下「遷移」分頁標籤。

  4. 在「轉送規則」部分中,針對 web-map-http-forwarding-rule 驗證下列欄位,然後按一下「管理遷移」

    • 狀態尚未開始
    • 架構活動EXTERNAL:100%,EXTERNAL_MANAGED:0%
  5. 在「管理遷移作業」窗格中,選取「狀態變更」的「準備」

  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%」。請稍候片刻 (至少六分鐘),再繼續下一個步驟。

遷移至 EXTERNAL_MANAGED 負載平衡架構

  1. 如要查看 web-map-http-forwarding-rule,請按一下「管理遷移作業」
  2. 在「管理遷移」窗格中,選取「狀態變更」的「遷移」
  3. 按一下 [儲存]

    請稍候一段時間 (至少六分鐘),等待資源遷移完成。「狀態」欄會變更為「已遷移」,「架構活動」則會變更為「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
    

    請稍候一段時間 (至少六分鐘),等待轉送規則完全遷移至全域外部應用程式負載平衡器基礎架構。

  2. 選用:檢查轉送規則的記錄。您會看到負載平衡架構為 EXTERNAL_MANAGED

後續步驟