服務來自多個區域的流量

在多個區域部署服務,並將使用者導向最近的區域,即可為全球使用者提供更快速的回應。部署到多個區域可降低延遲時間,並在區域服務中斷時提供更高的可用性。

由於 Cloud Run 服務會部署到個別區域,因此您必須將服務部署到多個區域,然後為服務設定全域負載平衡

您可以使用 Cloud Run 服務健康狀態,自動執行跨區域容錯移轉。

事前準備

  1. 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify 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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. 在 Google Cloud 專案中設定 Cloud Run 開發環境
  7. 安裝並初始化 gcloud CLI
  8. 確認您的帳戶具備下列 IAM 角色:
  9. 授予角色

    控制台

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

      前往「IAM」頁面
    2. 選取專案。
    3. 按一下「Grant access」(授予存取權)
    4. 在「New principals」(新增主體) 欄位中,輸入您的使用者 ID。這通常是部署 Cloud Run 服務時使用的 Google 帳戶電子郵件地址。

    5. 在「Select a role」(選取角色) 清單中,選取角色。
    6. 如要授予其他角色,請按一下「Add another role」(新增其他角色),然後選取其他角色。
    7. 按一下「Save」(儲存)

    gcloud

    如要在專案中授予帳戶必要的 IAM 角色,請按照下列步驟操作:

            gcloud projects add-iam-policy-binding PROJECT_ID \
                --member=PRINCIPAL \
                --role=ROLE
            

    更改項目:

    • PROJECT_NUMBER 改成您的 Google Cloud 專案編號。
    • PROJECT_ID 替換為 Google Cloud 專案 ID。
    • PRINCIPAL,您要為該帳戶新增繫結。這通常是部署 Cloud Run 服務時使用的 Google 帳戶電子郵件地址。
    • ROLE,並將角色新增至部署者帳戶。
  10. 請參閱「Cloud Run 定價」頁面。您可以使用 Pricing Calculator 根據預測用量估算費用。
  11. 執行下列指令,啟用 Artifact Registry、Cloud Build、Cloud Run Admin API、Compute Engine 和 Network Services API:
  12.   gcloud services enable artifactregistry.googleapis.com \
        cloudbuild.googleapis.com \
        run.googleapis.com \
        compute.googleapis.com \
        networkservices.googleapis.com
      

將服務部署至多個區域

您設定的資源調度參數會套用至多個區域。舉例來說,在多區域部署作業中,每個區域的執行個體數量下限都適用。

您可以透過下列其中一種方法,將同一項服務部署至多個區域:

部署多區域服務

本節說明如何透過單一 gcloud CLI 指令,或使用 YAML 或 Terraform 檔案,部署及設定多區域服務。

gcloud

  • 如要建立及部署多區域服務,請使用 --regions 旗標執行 gcloud run deploy 指令:

    gcloud run deploy SERVICE_NAME \
      --image=IMAGE_URL \
      --regions=REGIONS

    更改下列內容:

    • SERVICE_NAME:要部署的多區域服務名稱。
    • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/hello:latest
    • REGIONS:要部署的多個區域清單。例如:europe-west1,asia-east1

YAML

  1. 使用 run.googleapis.com/regions 屬性設定要部署服務的多個區域,然後建立服務的 YAML 檔案

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE_NAME
      annotations:
        run.googleapis.com/regions: REGIONS
    spec:
      template:
        spec:
          containers:
          - image: IMAGE_URL

    更改下列內容:

    • SERVICE_NAME:要部署至的多區域服務名稱。
    • REGIONS:要更新的多個區域清單。例如:europe-west1,asia-east1
    • IMAGE_URL:容器映像檔的參照,例如 us-docker.pkg.dev/cloudrun/container/hello:latest
  2. 使用下列指令建立服務:

    gcloud run multi-region-services replace service.yaml

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

在 Terraform 設定的 google_cloud_run_v2_service 資源中新增下列項目。

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-multi-region"
  location = "global"

  multi_region_settings {
    regions = [
      "REGION_1",
      "REGION_2",
    ]
  }

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
  }
}

"REGION_1""REGION_2" 替換為每個需要的Google Cloud 區域。例如 europe-west1us-central1

更新多區域服務

本節說明如何透過單一 gcloud CLI 指令或 YAML 檔案,在多區域服務中新增或移除區域。

gcloud

如要從多區域服務新增或移除區域,請執行 gcloud run multi-region-services update 指令。

  • 如要將多區域服務新增至其他區域,請使用 --add-regions 旗標:

    gcloud run multi-region-services update SERVICE_NAME \
      --add-regions=REGIONS
  • 如要從一或多個區域移除多區域服務,請使用 --remove-regions 旗標:

    gcloud run multi-region-services update SERVICE_NAME \
      --remove-regions=REGIONS

    更改下列內容:

    • SERVICE_NAME:要更新的多區域服務名稱。
    • REGIONS:要新增或移除服務的區域。例如:us-central1,asia-east1

YAML

  1. 如要更新現有的多區域服務,請下載其 YAML 設定

    gcloud run multi-region-services describe SERVICE_NAME --format export > service.yaml
  2. 更新 run.googleapis.com/regions 屬性,新增或移除要部署服務的區域清單:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE_NAME
      annotations:
        run.googleapis.com/regions: REGIONS

    更改下列內容:

    • SERVICE_NAME:要部署至的多區域服務名稱。
    • REGIONS:您要將服務修訂版本部署至的新多個區域清單。
  3. 使用下列指令更新服務:

    gcloud run multi-region-services replace service.yaml

刪除多區域服務

  • 如要刪除多區域服務,請執行 gcloud run multi-region-services delete 指令:

    gcloud run multi-region-services delete SERVICE_NAME

    SERVICE_NAME 替換為要刪除的多區域服務名稱。

設定全域外部應用程式負載平衡器

本節說明如何設定全域外部應用程式負載平衡器,並使用代管 TLS 憑證保護網域,指向全域任播 IP 位址,將使用者導向部署服務的最近 Google 資料中心。

如果區域性 Cloud Run 服務沒有回應或傳回錯誤,下列各節所述的架構不會自動將要求轉送至其他區域。

如要提高多區域服務的可用性,請按照下列步驟操作:

設定區域網路端點群組

針對上一個步驟中部署的每個區域,您必須按照下列操作說明建立無伺服器網路端點群組 (NEG)

gcloud CLI

  1. REGION 中為 Cloud Run 服務建立網路端點群組:

    gcloud compute network-endpoint-groups create NEG_NAME \
      --region=REGION \
      --network-endpoint-type=serverless \
      --cloud-run-service=SERVICE_NAME

    更改下列內容:

    • NEG_NAME,網路端點群組資源的名稱,例如 myservice-neg-uscentral1
    • REGION 改為服務部署區域。
    • SERVICE_NAME 改為您的服務名稱。
  2. 針對每個區域重複上述步驟

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

  1. run_regions 變數中指定的每個區域,設定 Cloud Run 服務的網路端點群組,並命名為 myservice-neg

    resource "google_compute_region_network_endpoint_group" "lb_default" {
      provider              = google-beta
      count                 = length(local.run_regions)
      name                  = "myservice-neg"
      network_endpoint_type = "SERVERLESS"
      region                = local.run_regions[count.index]
      cloud_run {
        service = google_cloud_run_v2_service.run_default[count.index].name
      }
    }

建立全域外部應用程式負載平衡器

建立全域外部應用程式負載平衡器時,需要建立各種網路資源,並將這些資源連結在一起:

gcloud

  1. 預留靜態 IP 位址,這樣在重新建立負載平衡器時,就不必更新 DNS 記錄。
    gcloud compute addresses create --global SERVICE_IP
    在上述指令中,請將 SERVICE_IP 替換為 IP 位址資源的名稱 (例如 myservice-ip)。

    這個 IP 位址是全域任播 IPv4 位址,會將流量轉送至最靠近訪客的 Google 資料中心或服務點。

  2. 建立後端服務。
    gcloud compute backend-services create \
      --global BACKEND_NAME \
      --load-balancing-scheme=EXTERNAL_MANAGED

    BACKEND_NAME 替換為您要授予後端服務的名稱。例如:myservice-backend

  3. 將網路端點群組新增至後端服務:

    gcloud compute backend-services add-backend --global BACKEND_NAME 
    --network-endpoint-group-region=REGION
    --network-endpoint-group=NEG_NAME

    為區域指定您在上一步中建立的 NEG_NAME

  4. 建立網址對應。
    gcloud compute url-maps create URLMAP_NAME --default-service=BACKEND_NAME

    URLMAP_NAME 替換為您要為網址對應指定的名稱 (例如 myservice-urlmap)。

  5. 為網域建立代管的傳輸層安全標準 (TLS) 憑證,以提供 HTTPS 流量。(將 example.com 替換成您的網域名稱)。
    gcloud compute ssl-certificates create CERT_NAME \
      --domains=example.com

    CERT_NAME 替換為您要為代管 SSL 憑證設定的名稱 (例如 myservice-cert)。

  6. 建立目標 HTTPS Proxy。
    gcloud compute target-https-proxies create HTTPS_PROXY_NAME \
      --ssl-certificates=CERT_NAME \
      --url-map=URLMAP_NAME

    HTTPS_PROXY_NAME 替換為要授予目標 HTTPS Proxy 的名稱 (例如 myservice-https)。

  7. 建立轉送規則,將您建立的網路資源連結至 IP 位址。
    gcloud compute forwarding-rules create --global FORWARDING_RULE_NAME \
      --target-https-proxy=HTTPS_PROXY_NAME \
      --address=SERVICE_IP \
      --ports=443 \
      --load-balancing-scheme=EXTERNAL_MANAGED 

    FORWARDING_RULE_NAME 替換為要建立的轉送規則資源名稱。例如:myservice-lb

Terraform

除了本節所述步驟,您也可以使用全域 HTTP 負載平衡器 Terraform 模組

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

  1. 設定 IP 位址:

    resource "google_compute_global_address" "lb_default" {
      provider = google-beta
      name     = "myservice-service-ip"
    
      # Use an explicit depends_on clause to wait until API is enabled
      depends_on = [
        google_project_service.compute_api
      ]
    }
    output "load_balancer_ip_addr" {
      value = google_compute_global_address.lb_default.address
    }

    將 IP 位址資源名稱設為 myservice-service-ip。你可以將這個值變更為自己的值。 這個 IP 位址是全域任播 IPv4 位址,會將流量轉送至最靠近訪客的 Google 資料中心或服務點。

  2. 建立及設定後端服務:

    resource "google_compute_backend_service" "lb_default" {
      provider              = google-beta
      name                  = "myservice-backend"
      load_balancing_scheme = "EXTERNAL_MANAGED"
    
      backend {
        group = google_compute_region_network_endpoint_group.lb_default[0].id
      }
    
      backend {
        group = google_compute_region_network_endpoint_group.lb_default[1].id
      }
    
      # Use an explicit depends_on clause to wait until API is enabled
      depends_on = [
        google_project_service.compute_api,
      ]
    }

    這項資源會將後端服務的名稱設為 myservice-backend。你可以將這個值變更為自己的值。

  3. 設定網址對應:

    resource "google_compute_url_map" "lb_default" {
      provider        = google-beta
      name            = "myservice-lb-urlmap"
      default_service = google_compute_backend_service.lb_default.id
    
      path_matcher {
        name            = "allpaths"
        default_service = google_compute_backend_service.lb_default.id
        route_rules {
          priority = 1
          url_redirect {
            https_redirect         = true
            redirect_response_code = "MOVED_PERMANENTLY_DEFAULT"
          }
        }
      }
    }

    將後端服務資源 (myservice-backend) 連線至新的網址對應資源 (myservice-lb-urlmap)。您可以將這些值變更為自己的值。

  4. 為網域建立代管的傳輸層安全標準 (TLS) 憑證,以服務 HTTPS 流量。在 google_compute_managed_ssl_certificate 資源中,將 example.com 替換為您的網域名稱:

    resource "google_compute_managed_ssl_certificate" "lb_default" {
      provider = google-beta
      name     = "myservice-ssl-cert"
    
      managed {
        domains = ["example.com"]
      }
    }
  5. 設定 HTTPS Proxy:

    resource "google_compute_target_https_proxy" "lb_default" {
      provider = google-beta
      name     = "myservice-https-proxy"
      url_map  = google_compute_url_map.lb_default.id
      ssl_certificates = [
        google_compute_managed_ssl_certificate.lb_default.name
      ]
      depends_on = [
        google_compute_managed_ssl_certificate.lb_default
      ]
    }

    建立 google_compute_target_https_proxy 資源,目標名稱為 myservice-https-proxy,並連結先前建立的 TLS 憑證 (myservice-ssl-cert) 和網址對應資源 (myservice-lb-urlmap)。您可以將這些值變更為自己的值。

  6. 設定轉送規則:

    resource "google_compute_global_forwarding_rule" "lb_default" {
      provider              = google-beta
      name                  = "myservice-lb-fr"
      load_balancing_scheme = "EXTERNAL_MANAGED"
      target                = google_compute_target_https_proxy.lb_default.id
      ip_address            = google_compute_global_address.lb_default.id
      port_range            = "443"
      depends_on            = [google_compute_target_https_proxy.lb_default]
    }

    建立 google_compute_global_forwarding_rule 資源,目標名稱為 myservice-https-proxy,並連結先前建立的 HTTPS Proxy 目標 (myservice-https-proxy) 和 IP 位址資源 (myservice-service-ip)。您可以將這些值變更為自己的值。

  7. 套用這項設定:

    如要在 Google Cloud 專案中套用 Terraform 設定,請完成下列各節的步驟。

    準備 Cloud Shell

    1. 啟動 Cloud Shell
    2. 設定要套用 Terraform 設定的預設 Google Cloud 專案 。

      每項專案只需要執行一次這個指令,而且可以在任何目錄中執行。

      export GOOGLE_CLOUD_PROJECT=PROJECT_ID

      如果您在 Terraform 設定檔中設定明確值,環境變數就會遭到覆寫。

    準備目錄

    每個 Terraform 設定檔都必須有自己的目錄 (也稱為根模組)。

    1. Cloud Shell 中建立目錄,並在該目錄中建立新檔案。檔案名稱的副檔名必須是 .tf,例如 main.tf。在本教學課程中,這個檔案稱為 main.tf
      mkdir DIRECTORY && cd DIRECTORY && touch main.tf
    2. 如果您正在學習教學課程,可以複製每個章節或步驟中的程式碼範例。

      將程式碼範例複製到新建立的 main.tf

      視需要從 GitHub 複製程式碼。如果 Terraform 程式碼片段是端對端解決方案的一部分,建議您使用這個方法。

    3. 查看並修改範例參數,套用至您的環境。
    4. 儲存變更。
    5. 初始化 Terraform。每個目錄只需執行一次這項操作。
      terraform init

      如要使用最新版 Google 供應商,請加入 -upgrade 選項:

      terraform init -upgrade

    套用變更

    1. 查看設定,確認 Terraform 即將建立或更新的資源符合您的預期:
      terraform plan

      視需要修正設定。

    2. 執行下列指令並在提示中輸入 yes,套用 Terraform 設定:
      terraform apply

      等待 Terraform 顯示「Apply complete!」訊息。

    3. 開啟 Google Cloud 專案,查看結果。在 Google Cloud 控制台中,前往 UI 中的資源,確認 Terraform 已建立或更新這些資源。

設定區域網路端點群組

針對上個步驟中部署的每個區域,您必須建立無伺服器網路端點群組 (NEG),並按照下列操作說明將其新增至後端服務:

gcloud CLI

  1. REGION 中為 Cloud Run 服務建立網路端點群組:

    gcloud compute network-endpoint-groups create NEG_NAME \
      --region=REGION \
      --network-endpoint-type=serverless \
      --cloud-run-service=SERVICE_NAME

    更改下列內容:

    • NEG_NAME 替換為網路端點群組資源的名稱。 (例如 myservice-neg-uscentral1)
    • REGION 改為服務部署區域。
    • SERVICE_NAME 改為您的服務名稱。
  2. 將網路端點群組新增至後端服務:

    gcloud compute backend-services add-backend --global BACKEND_NAME \
      --network-endpoint-group-region=REGION \
      --network-endpoint-group=NEG_NAME

    為區域指定您在上一步中建立的 NEG_NAME

  3. 針對每個區域重複上述步驟。

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

  1. run_regions 變數中指定的每個區域,設定 Cloud Run 服務的網路端點群組,並命名為 myservice-neg

    resource "google_compute_region_network_endpoint_group" "lb_default" {
      provider              = google-beta
      count                 = length(local.run_regions)
      name                  = "myservice-neg"
      network_endpoint_type = "SERVERLESS"
      region                = local.run_regions[count.index]
      cloud_run {
        service = google_cloud_run_v2_service.run_default[count.index].name
      }
    }
  2. 設定後端服務,附加網路端點群組 (myservice-neg):

    resource "google_compute_backend_service" "lb_default" {
      provider              = google-beta
      name                  = "myservice-backend"
      load_balancing_scheme = "EXTERNAL_MANAGED"
    
      backend {
        group = google_compute_region_network_endpoint_group.lb_default[0].id
      }
    
      backend {
        group = google_compute_region_network_endpoint_group.lb_default[1].id
      }
    
      # Use an explicit depends_on clause to wait until API is enabled
      depends_on = [
        google_project_service.compute_api,
      ]
    }

設定網域的 DNS 記錄

如要將網域名稱指向您建立的轉送規則,請使用您建立的 IP 位址更新網域名稱的 DNS 記錄。

  1. 執行下列指令,找出負載平衡器的預留 IP 位址:

    gcloud compute addresses describe SERVICE_IP \
      --global \
      --format='value(address)'

    SERVICE_IP 替換為您先前建立的 IP 位址名稱。這個指令會將 IP 位址輸出至畫面。

  2. 新增含有這個 IP 位址的 A 記錄,更新網域的 DNS 記錄。

如果使用已驗證的服務,請設定自訂目標對象

通過驗證的服務受到 IAM 保護。 這類 Cloud Run 服務需要用戶端驗證,在產生憑證時聲明要求的預期收件者 (即對象)。

目標對象通常是目標服務的完整網址,Cloud Run 服務預設會產生以 run.app 結尾的網址。不過,在多區域部署中,用戶端無法預先得知要求會傳送至哪個區域服務。因此,如果是多區域部署,請將服務設定為使用自訂目標對象

等待負載平衡器佈建完成

使用負載平衡器 IP 位址設定網域後,請等待 DNS 記錄傳播。同樣地,請等待系統為網域核發受管理 TLS 憑證,並準備好開始在全球提供 HTTPS 流量。

負載平衡器最多可能需要 30 分鐘才會開始放送流量。

準備就緒後,請前往網站網址並加上 https:// 前置字元,即可試用。

核對狀態

  1. 如要檢查 DNS 記錄的傳播狀態,請使用 dig 指令列公用程式:

    dig A +short example.com

    輸出內容會顯示您在 DNS 記錄中設定的 IP 位址。

  2. 執行下列指令,檢查受管理憑證的核發狀態:

    gcloud compute ssl-certificates describe CERT_NAME

    CERT_NAME 替換成您先前為 SSL 憑證資源選擇的名稱。

    輸出結果會顯示包含 status: ACTIVE 的一行。

設定 HTTP 至 HTTPS 的重新導向

根據預設,轉送規則只會處理單一通訊協定,因此對 http:// 端點的要求會以「404 Not Found」回應。如需將對 http:// 網址的要求重新導向至 https:// 通訊協定,請按照下列操作說明建立額外的網址對應和轉送規則:

gcloud CLI

  1. 建立含有重新導向規則的網址對應。

    gcloud compute url-maps import HTTP_URLMAP_NAME \
      --global \
      --source /dev/stdin <<EOF
            name: HTTP_URLMAP_NAME
            defaultUrlRedirect:
              redirectResponseCode: MOVED_PERMANENTLY_DEFAULT
              httpsRedirect: True
            EOF

    HTTP_URLMAP_NAME 替換成您要建立的網址對應資源名稱 (例如 myservice-httpredirect)。

  2. 使用網址對應建立目標 HTTP Proxy。

    gcloud compute target-http-proxies create HTTP_PROXY_NAME \
      --url-map=HTTP_URLMAP_NAME

    HTTP_PROXY_NAME 替換為您要建立的目標 HTTP Proxy 名稱 (例如 myservice-http)。

  3. 在通訊埠 80 上建立轉送規則,並使用相同的保留 IP 位址。

    gcloud compute forwarding-rules create --global HTTP_FORWARDING_RULE_NAME \
      --target-http-proxy=HTTP_PROXY_NAME \
      --address=SERVICE_IP \
      --ports=80
            

    HTTP_FORWARDING_RULE_NAME 替換為您要建立的新轉送規則名稱 (例如 myservice-httplb)。

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

  1. 使用重新導向規則建立網址對應資源:

    resource "google_compute_url_map" "https_default" {
      provider = google-beta
      name     = "myservice-https-urlmap"
    
      default_url_redirect {
        redirect_response_code = "MOVED_PERMANENTLY_DEFAULT"
        https_redirect         = true
        strip_query            = false
      }
    }
  2. 使用新建立的網址對應資源 (myservice-https-urlmap) 建立目標 HTTP Proxy:

    resource "google_compute_target_http_proxy" "https_default" {
      provider = google-beta
      name     = "myservice-http-proxy"
      url_map  = google_compute_url_map.https_default.id
    
      depends_on = [
        google_compute_url_map.https_default
      ]
    }
  3. 在通訊埠 80 上建立轉送規則,並使用相同的保留 IP 位址資源 (myservice-http-proxy):

    resource "google_compute_global_forwarding_rule" "https_default" {
      provider   = google-beta
      name       = "myservice-https-fr"
      target     = google_compute_target_http_proxy.https_default.id
      ip_address = google_compute_global_address.lb_default.id
      port_range = "80"
      depends_on = [google_compute_target_http_proxy.https_default]
    }

如需其他設定選項,請參閱「設定具備 Cloud Run 的全域外部應用程式負載平衡器」。

透過 Cloud Run 服務健康狀態自動執行跨區域容錯移轉

如要設定多區域高可用性 Cloud Run 服務,並為內部或外部流量啟用自動容錯移轉和容錯回復功能,請參閱服務健康狀態指南

搭配多區域部署項目使用已驗證的 Pub/Sub 推送訂閱項目

根據預設,Pub/Sub 服務會將訊息傳送至與 Pub/Sub 服務儲存訊息的 Google Cloud 區域相同的推送端點。如要解決這個問題,請參閱「搭配多區域 Cloud Run 部署作業使用經過驗證的 Pub/Sub 推送訂閱項目」。

設定手動容錯移轉

如要手動設定流量,以便在某個區域發生故障時轉移至正常運作的區域,請修改全域外部應用程式負載平衡器網址對應。

  1. 如要更新全域外部應用程式負載平衡器網址對應,請使用 --global 旗標,從後端服務移除 NEG:

    gcloud compute backend-services remove-backend BACKEND_NAME \
    --network-endpoint-group=NEG_NAME \
    --network-endpoint-group-region=REGION \
    --global
    

    更改下列內容:

    • BACKEND_NAME:後端服務的名稱。
    • NEG_NAME:網路端點群組資源的名稱,例如 myservice-neg-uscentral1
    • REGION:建立 NEG 的區域,以及您要從中移除服務的區域。例如:us-central1,asia-east1
  2. 如要確認健康狀態良好的區域現在正在處理流量,請前往 https://<domain-name>

後續步驟

  • 查看以 Go 撰寫的 Cloud Run 準備狀態探查和 Service Health程式碼範例