將已遷移的資源還原至傳統版應用程式負載平衡器

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

請按照以下順序,在變更負載平衡配置方案後的 90 天內,回復遷移的資源:

  1. 回溯轉送規則。
  2. 回復後端值區。
  3. 還原轉送規則所附加的所有後端服務。

如要將後端服務回溯至 EXTERNAL 負載平衡機制,您必須先回溯轉送規則。

事前準備

在還原已遷移的資源前,請確認您已將傳統版應用程式負載平衡器資源遷移至全域外部應用程式負載平衡器基礎架構,並將負載平衡架構變更為 EXTERNAL_MANAGED。請注意,只有在過去 90 天內從 EXTERNAL 配置轉移至 EXTERNAL_MANAGED 配置的資源,才能回溯。

您也必須先移除資源上設定的所有進階流量管理功能,再開始回溯程序。

權限

如要按照本文件的說明操作,您必須具備管理負載平衡器元件的權限。請確認您具備Compute 網路管理員角色 (roles/compute.networkAdmin)。

如需詳細資訊,請參閱以下頁面:

還原轉送規則

主控台

如要回溯轉送規則,請使用 gcloud CLI。

gcloud

  1. 將轉送規則的負載平衡配置從 EXTERNAL_MANAGED 變更為 EXTERNAL

    如果轉送規則已連結後端 bucket,請略過這個步驟,並回復後端 bucket

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

    等待一段時間 (至少六分鐘)。

  2. 選用:檢查轉送規則的記錄。您會看到負載平衡配置已變更為 EXTERNAL

復原後端 Bucket

主控台

如要回溯後端值區,請使用 gcloud CLI。

gcloud

  1. 將後端值區的配置變更為 EXTERNAL,並將遷移狀態變更為 TEST_ALL_TRAFFIC

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --load-balancing-scheme=EXTERNAL \
      --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \
      --global
    

    等待一段時間 (至少六分鐘)。

  2. 如要將部分傳統應用程式負載平衡器網路流量傳送至後端值區,請將後端值區的遷移狀態變更為 TEST_BY_PERCENTAGE,並設定百分比。

    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
    

    等待一段時間 (至少六分鐘)。

    您可以查看負載平衡器的評量指標,確認要求的整體平衡情況是否符合您設定的回溯率。

  3. 將後端值區的遷移狀態變更為 PREPARE

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

    等待一段時間 (至少六分鐘)。

  4. 將後端值區的遷移狀態變更為遷移前的狀態。

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --clear-external-managed-migration-state \
      --global
    

    等待一段時間 (至少六分鐘)。

復原後端服務

主控台

將流量傳送至傳統版應用程式負載平衡器基礎架構

  1. 在「後端服務」部分,針對 web-backend-service,確認下列事項,然後按一下「還原」
    • 狀態已遷移
    • 遷移率100%
    • 架構活動EXTERNAL:0%,EXTERNAL_MANAGED:100%
  2. 在「管理遷移作業」窗格中,針對「狀態變更」,選取「測試所有流量」。也就是說,所有要求仍會傳送至全球外部應用程式負載平衡器基礎架構。
  3. 按一下「儲存」。 等待一段時間 (至少六分鐘),讓資源完成遷移。「狀態」欄會變更為「測試所有流量」,而「架構活動」欄會變更為「EXTERNAL:0% EXTERNAL_MANAGED:100%」

  4. 再次按一下「管理遷移作業」

  5. 在「管理遷移作業」窗格中,針對「狀態變更」選取「依百分比測試」

  6. 在「Testing percentage」(測試百分比) 欄位中輸入 90也就是說,90% 的要求會繼續傳送至全域外部應用程式負載平衡器基礎架構,而剩下的 10% 要求會傳送至傳統版應用程式負載平衡器基礎架構進行測試。

  7. 按一下 [儲存]

    等待一段時間 (至少六分鐘),讓資源準備就緒。「狀態」欄會變更為「測試百分比」、「遷移率」會變更為 90%,而「架構活動」會變更為「EXTERNAL: 10% EXTERNAL_MANAGED: 90%」

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

  8. 測試負載平衡器,確保要求能如預期提供。

    在網路瀏覽器的網址列中輸入 http://IP_ADDRESS。您應該會看到 Page served from: lb-backend-example-xxxx 訊息。

  9. 您可以重複執行這些步驟,逐步減少傳送至全域外部應用程式負載平衡器基礎架構的流量百分比。

    當您將所有流量傳送至傳統版應用程式負載平衡器時,後端服務的還原程序就會完成。「狀態」欄會設為「Testing by %」「Migration rate」設為 0%,而「Scheme activity」會設為「EXTERNAL: 100% EXTERNAL_MANAGED: 0%」

gcloud

  1. 將後端服務的結構定義變更為 EXTERNAL,並將遷移狀態變更為 TEST_ALL_TRAFFIC

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

    等待一段時間 (至少六分鐘)。

  2. 如要將部分傳統應用程式負載平衡器網路流量傳送至後端服務,請將後端服務的遷移狀態變更為 TEST_BY_PERCENTAGE,並設定百分比。

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

    等待一段時間 (至少六分鐘)。

    您可以查看負載平衡器的評量指標,確認要求的整體平衡情況是否符合您設定的回溯率。

  3. 將後端服務的遷移狀態變更為 PREPARE

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

    等待一段時間 (至少六分鐘)。

  4. 將後端服務的遷移狀態變更為遷移前的狀態。

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

    等待一段時間 (至少六分鐘)。

  5. 回溯後端服務後,請查看其記錄。您會看到負載平衡配置已變更為 EXTERNAL