使用共用虛擬私有雲設定全域外部應用程式負載平衡器

本文提供兩個範例設定,說明如何在共用 VPC 環境中,設定具備 VM 執行個體群組後端的全域外部應用程式負載平衡器:

  • 第一個範例中,負載平衡器的前端和後端元件是在一個服務專案中建立。
  • 第二個範例中,負載平衡器的前端元件和網址對應是在一個服務專案中建立,而負載平衡器的後端服務和後端則是在另一個服務專案中建立。這種部署方式是指一個專案中的網址對應參照另一個專案中的後端服務,稱為「跨專案服務參照」

這兩個範例都需要相同的初始設定,包括授予權限在主專案中設定網路和子網路,以及設定共用 VPC,才能開始建立負載平衡器。

全域外部應用程式負載平衡器支援的共用 VPC 設定不只這些。如要瞭解其他有效的共用虛擬私有雲架構,請參閱共用虛擬私有雲架構

如不想使用 Shared VPC 網路,請參閱「設定具有 VM 執行個體群組後端的全域外部應用程式負載平衡器」。

事前準備

必要權限

在共用虛擬私有雲網路上設定負載平衡器時,管理員必須先進行一些初始設定和佈建作業。完成初始設定後,服務專案擁有者可以執行下列任一操作:

  • 在服務專案中部署負載平衡器的所有元件和後端。
  • 在服務專案中部署負載平衡器的後端元件 (後端服務和後端),這些元件可由其他服務或主機專案中的網址對應參照。

本節將摘要說明按照本指南操作,在共用虛擬私有雲網路上設定負載平衡器時所需的權限。

設定共用虛擬私有雲

如要執行下列工作,您必須具備下列角色:

  1. 執行一次性管理工作,例如設定共用虛擬私有雲和啟用主專案。
  2. 執行管理工作,每次要啟用新的服務專案時,都必須重複這些工作。包括附加服務專案、佈建及設定網路資源,以及授予服務專案管理員存取權。

這些工作必須在共用虛擬私有雲主專案中執行。建議您將共用 VPC 管理員設為共用 VPC 主專案的擁有者。系統會自動授予網路管理員和安全管理員角色。

工作 必要角色
設定共用虛擬私有雲、啟用主專案,並授予服務專案管理員存取權 共用虛擬私有雲管理員
在共用虛擬私有雲主專案中建立子網路,並授予服務專案管理員存取權 網路管理員
新增與移除防火牆規則 安全管理員

子網路佈建完成後,主專案擁有者必須在主專案中,將「網路使用者」角色授予需要使用這些資源的任何人 (通常是服務專案管理員、開發人員或服務帳戶)。

工作 必要角色
使用屬於主專案的虛擬私有雲網路和子網路 網路使用者

這個角色可以在專案層級或個別子網路授予。建議您在個別子網路上授予角色。在專案中授予角色,即可存取主專案虛擬私有雲網路中所有現有和日後的子網路。

部署負載平衡器和後端

服務專案管理員必須在服務專案中具備下列角色,才能建立負載平衡資源和後端。服務專案擁有者或編輯者會自動取得這些權限。

在服務專案中授予的角色
工作 必要角色
建立負載平衡器元件 網路管理員
建立執行個體 執行個體管理員
建立及修改 SSL 憑證 安全管理員

參照跨專案後端服務

如果負載平衡器需要參照其他服務專案的後端服務 (也稱為跨專案服務參照),負載平衡器管理員必須在後端服務建立所在的服務專案中,具備下列角色。

在服務專案中授予的角色
工作 必要角色
具備在其他專案中使用服務的權限 負載平衡器服務使用者

這個角色可以在專案層級或個別後端服務授予。如需授予這項角色的操作說明,請參閱本頁的跨專案服務參照範例

如要進一步瞭解 IAM,請參閱下列指南:

必要條件

在本節中,您需要執行下列步驟:

  1. 在主專案中設定網路和子網路
  2. 在主專案中設定共用虛擬私有雲

本節中的步驟不必在每次建立新負載平衡器時執行。不過,您必須確保有權存取本文所述資源,才能繼續建立負載平衡器。

在主專案中設定網路和子網路

您需要共用虛擬私有雲網路,以及負載平衡器後端的子網路。

這個範例使用以下網路、地區和子網路:

  • 電視網。網路名稱為「lb-network」。

  • 負載平衡器後端的子網路。us-west1 地區中名為 lb-backend-subnet 的子網路使用 10.1.2.0/24 做為其主要 IP 範圍。

設定負載平衡器後端的子網路

每次要建立新的負載平衡器時,不必執行這個步驟。您只需要確保服務專案有權存取共用虛擬私有雲網路中的子網路即可。

本節中的所有步驟都必須在主專案中執行。

控制台

  1. 前往 Google Cloud 控制台的「VPC Networks」(虛擬私有雲網路) 頁面。

    前往「VPC networks」(虛擬私有雲網路)

  2. 按一下「建立虛擬私有雲網路」
  3. 在「Name」(名稱) 中輸入 lb-network
  4. 在「Subnets」(子網路) 區段中:

    1. 將「Subnet creation mode」(子網路建立模式) 設為 [Custom] (自訂)
    2. 在「New subnet」(新的子網路) 區段中,輸入以下資訊:

      • Name (名稱):lb-backend-subnet
      • Region (區域):us-west1

      • IP address range (IP 位址範圍):10.1.2.0/24

    3. 按一下 [完成]

  5. 點選「建立」

gcloud

  1. 使用 gcloud compute networks create 指令建立虛擬私有雲網路:

    gcloud compute networks create lb-network --subnet-mode=custom
    
  2. us-west1 地區的 lb-network 網路中建立子網路:

    gcloud compute networks subnets create lb-backend-subnet 
    --network=lb-network
    --range=10.1.2.0/24
    --region=us-west1

授予服務專案管理員後端子網路的存取權

服務專案管理員必須有權存取 lb-backend-subnet 子網路,才能佈建負載平衡器的後端。

共用虛擬私有雲管理員必須授予服務專案管理員 (或部署使用子網路的資源和後端的開發人員) 後端子網路的存取權。如需操作說明,請參閱「部分子網路的服務專案管理員」。

在主專案中設定防火牆規則

這個範例使用下列防火牆規則:
  • fw-allow-health-check. 輸入規則,適用於要進行負載平衡的執行個體,可允許來自 Google Cloud健康狀態檢查系統 (位於 130.211.0.0/2235.191.0.0/16) 的所有 TCP 流量。這個範例會使用目標標記 load-balanced-backend 來辨識應套用這項規則的執行個體。
如果沒有這項防火牆規則,預設拒絕輸入規則會封鎖傳入至後端執行個體的流量。

本節中的所有步驟都必須在主專案中執行。

控制台

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

    前往「Firewall policies」(防火牆政策) 頁面

  2. 按一下「Create firewall rule」(建立防火牆規則),以建立允許 Google Cloud 健康狀態檢查的規則:
    • Name (名稱):fw-allow-health-check
    • Network (網路):lb-network
    • 「Direction of traffic」(流量方向):ingress
    • 「Action on match」(相符時執行的動作):允許
    • 「Target」(目標):指定的目標標記
    • 「Target tags」(目標標記)load-balanced-backend
    • Source filter (來源篩選器):IPv4 範圍
    • Source IPv4 ranges (來源 IPv4 範圍):130.211.0.0/2235.191.0.0/16
    • 通訊協定和通訊埠
      • 選擇「指定的通訊協定和通訊埠」
      • 勾選「TCP」TCP,然後輸入 80 做為通訊埠編號。
      • 最佳做法是將這項規則限制在與健康狀態檢查所用通訊協定和通訊埠相符的範圍。如果您將通訊協定和通訊埠指定為 tcp:80, Google Cloud 可以使用 HTTP 透過通訊埠 80 與 VM 聯絡,但無法使用 HTTPS 透過通訊埠 443 與 VM 聯絡。

  3. 點選「建立」

gcloud

  1. 建立 fw-allow-health-check 防火牆規則,允許Google Cloud 健康狀態檢查。這個範例可允許來自健康狀態檢查探測器的所有 TCP 流量。不過,您可以設定較窄的連接埠組合,以符合需求。

    gcloud compute firewall-rules create fw-allow-health-check \
       --network=lb-network \
       --action=allow \
       --direction=ingress \
       --source-ranges=130.211.0.0/22,35.191.0.0/16 \
       --target-tags=load-balanced-backend \
       --rules=tcp
    

在主專案中設定共用虛擬私有雲

這個步驟包括啟用共用虛擬私有雲主專案、共用主專案的子網路,以及將服務專案附加至主專案,以便服務專案使用共用虛擬私有雲網路。如要在主專案中設定共用虛擬私有雲,請參閱下列頁面:

這些操作說明的其餘部分假設您已設定共用 VPC。包括為機構設定 IAM 政策,以及指定主機和服務專案。

請先設定共用虛擬私有雲,並啟用主專案和服務專案,再繼續進行後續步驟。

完成本節定義的必要步驟後,您可以選擇下列任一設定:

在一個服務專案中設定負載平衡器

在主專案中設定 VPC 網路並設定共用 VPC 後,您就可以將注意力轉移到服務專案,在其中建立所有負載平衡元件 (後端服務、網址對應、目標 Proxy 和轉送規則) 和後端。

本節假設您已在主專案中執行上一節所述的必要步驟。在本節中,負載平衡器的前端和後端元件,以及後端,都會在一個服務專案中建立。

下圖顯示一個服務專案中的全域外部應用程式負載平衡器元件,該專案已附加至共用 VPC 網路中的主專案。

負載平衡器的前端和後端元件位於同一個服務專案中
圖 1:在一個服務專案中,負載平衡器的前端和後端元件

這些步驟應由服務專案管理員 (或在服務專案中運作的開發人員) 執行,不需要主專案管理員參與。本節中的步驟與設定全域外部應用程式負載平衡器的標準步驟類似。

本頁的範例會為全域外部應用程式負載平衡器的轉送規則明確設定保留的 IP 位址,而不允許分配暫時的 IP 位址。建議您最好為轉送規則保留 IP 位址。

建立代管執行個體群組後端

建立代管執行個體群組之前,您必須先建立執行個體範本。執行個體範本是一種資源,可用來建立虛擬機器 (VM) 執行個體。從用戶端到執行個體群組中 VM 的流量會經過負載平衡。代管執行個體群組提供的 VM 會執行外部應用程式負載平衡器的後端伺服器。在本範例中,後端會提供自己的主機名稱。

控制台

建立執行個體範本

建立執行個體範本,儲存用於為全域外部應用程式負載平衡器後端佈建 VM 執行個體的 VM 執行個體設定。

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Instance templates」(執行個體範本) 頁面。

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

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

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

  4. 在「Boot disk」(開機磁碟) 專區中,確認開機磁碟已設為 Debian 映像檔,例如 Debian GNU/Linux 12 (bookworm)。如有需要,請按一下「變更」變更圖片。

  5. 展開「Advanced options」(進階選項) 區段。

  6. 展開「Networking」(網路) 專區,然後在「Network tags」(網路標記) 欄位中輸入 load-balanced-backend

  7. 在「網路介面」部分,選取「與我共用的網路 (來源主專案:HOST_PROJECT_ID)」

  8. 在「Shared subnetwork」(共用子網路) 清單中,選取 lb-network 網路中的 lb-backend-subnet 子網路。

  9. 展開「Management」(管理) 區段,並在「Automation」(自動化) 欄位中指定下列開機指令碼:

     #! /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
    
  10. 點選「建立」

建立代管執行個體群組

建立代管執行個體群組,提供後端伺服器來處理全域外部應用程式負載平衡器後端服務分配的要求。

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Instance groups」(執行個體群組) 頁面。

    前往執行個體群組

  2. 按一下「建立執行個體群組」

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

  4. 輸入 lb-backend 做為執行個體群組的名稱。

  5. 在「Instance template」(執行個體範本) 清單中,選取您在上一個步驟中建立的執行個體範本 backend-template

  6. 在「Location」(位置) 專區中,選取「Single zone」(單一可用區),並輸入下列值:

    • 在「Region」(區域) 中選取 us-west1

    • 在「Zone」(可用區) 中選取 us-west1-a

  7. 在「Autoscaling」(自動調度資源) 區段中,輸入以下的值:

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

    • 在「Minimum number of instances」(執行個體數量下限) 中選取 2

    • 在「Maximum number of instances」(執行個體數量上限) 中選取 3

  8. 在「Port mapping」(通訊埠對應) 部分,按一下「Add port」(新增通訊埠),然後輸入下列值:

    • 在「Port name」(通訊埠名稱) 輸入 http

    • 在「Port number」(通訊埠編號) 部分輸入 80

  9. 點選「建立」

gcloud

  1. 建立執行個體範本:

    gcloud compute instance-templates create backend-template \
        --region=us-west1 \
        --network=projects/HOST_PROJECT_ID/global/networks/lb-network \
        --subnet=projects/HOST_PROJECT_ID/regions/us-west1/subnetworks/lb-backend-subnet \
        --tags=load-balanced-backend \
        --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' \
        --project=SERVICE_PROJECT_ID
    
  2. 建立代管執行個體群組,然後選取您在上一個步驟中建立的執行個體範本:

    gcloud compute instance-groups managed create lb-backend \
        --zone=us-west1-a \
        --size=2 \
        --template=backend-template \
        --project=SERVICE_PROJECT_ID
    
  3. 將具名通訊埠新增至執行個體群組:

    gcloud compute instance-groups set-named-ports lb-backend \
        --named-ports=http:80 \
        --zone=us-west1-a \
        --project=SERVICE_PROJECT_ID
    

建立健康狀態檢查

健康狀態檢查可以確認後端的可用性。建立使用 HTTP 通訊協定和在 80 通訊埠上探測的健康狀態檢查。稍後,您會將這項健康狀態檢查附加至負載平衡器參照的後端服務。

控制台

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Health checks」(健康狀態檢查) 頁面。

    前往「健康檢查」頁面

  2. 將健康狀態檢查的名稱設為 lb-health-check

  3. 將「Protocol」(通訊協定) 設為「HTTP」HTTP

  4. 點選「建立」

gcloud

建立 HTTP 健康狀態檢查。

gcloud compute health-checks create http lb-health-check \
  --use-serving-port \
  --project=SERVICE_PROJECT_ID

保留負載平衡器的 IP 位址

預留可指派給負載平衡器轉送規則的全域靜態外部 IP 位址。

控制台

  1. 在 Google Cloud 控制台中,前往虛擬私有雲的「IP addresses」(IP 位址) 頁面。

    前往「IP addresses」(IP 位址) 頁面

  2. 點選「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. 按一下「Reserve」(預留)

gcloud

建立全域靜態外部 IP 位址。

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

設定 SSL 憑證資源

如果是使用 HTTPS 做為要求和回應通訊協定的負載平衡器,請按照下列資源說明建立 SSL 憑證資源:

建議使用 Google 代管的憑證。

這個範例假設您已建立名為 lb-ssl-cert 的 SSL 憑證。安全資料傳輸層 (SSL) 憑證會附加至您在下列步驟中建立的目標 Proxy。

設定負載平衡器

本節說明如何為全域外部應用程式負載平衡器建立下列資源:

  • 後端服務,並以代管執行個體群組做為後端
  • 網址對應
  • SSL 憑證 (僅適用於 HTTPS 流量)
  • 目標 Proxy
  • 轉送規則

在本範例中,您可以使用 HTTP 或 HTTPS 做為用戶端與負載平衡器之間的要求與回應通訊協定。如為 HTTPS,您需要 SSL 憑證資源才能設定 Proxy。建議使用 Google 代管的憑證。

控制台

選取負載平衡器類型

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

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

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

基本設定

  1. 在負載平衡器的「Name」(名稱) 中輸入 l7-xlb-shared-vpc

設定負載平衡器前端

HTTP 流量

  1. 按一下「前端設定」

  2. 在負載平衡器前端的「Name」(名稱) 中輸入 http-fw-rule

  3. 針對「Protocol」(通訊協定),選取「HTTP」

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

  5. 在「IP address」(IP 位址) 的部分,選取您先前預留的 IP 位址「lb-ipv4-1」。

  6. 將「Port」(通訊埠) 設為「80」,接受 HTTP 流量。

  7. 如要完成前端設定,請按一下「Done」(完成)

  8. 請先確認「Frontend configuration」(前端設定) 出現藍色勾號,然後再繼續操作。

HTTPS 流量

  1. 按一下「前端設定」

  2. 在負載平衡器前端的「Name」(名稱) 中輸入 https-fw-rule

  3. 在「Protocol」(通訊協定) 部分,選取「HTTPS」

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

  5. 在「IP address」(IP 位址) 的部分,選取您先前預留的 IP 位址「lb-ipv4-1」。

  6. 將「Port」(通訊埠) 設為「443」,接受 HTTPS 流量。

  7. 在「Certificate」(憑證) 清單中,選取您建立的 SSL 憑證

  8. 如要完成前端設定,請按一下「Done」(完成)

  9. 繼續操作之前,請先驗證「Frontend configuration」(前端設定) 旁是否有藍色勾號。

設定後端

  1. 按一下「後端設定」

  2. 在「Backend services and backend buckets」(後端服務和後端值區) 選單中,按一下「Create a backend service」(建立後端服務)

  3. 輸入 lb-backend-service 做為後端服務的名稱。

  4. 在「Backend type」(後端類型) 部分,選取「Instance group」(執行個體群組)

  5. 將「Protocol」(通訊協定) 設為「HTTP」

  6. 在「Named port」(已命名通訊埠) 欄位輸入 http,也就是您在建立代管執行個體群組時輸入的通訊埠名稱。

  7. 如要將後端新增至後端服務,請按照下列指示操作:

    1. 在「Backends」(後端) 專區中,將「Instance group」(執行個體群組) 設為「lb-backend」,也就是您在先前步驟中建立的代管執行個體群組。

    2. 在「Port numbers」(通訊埠編號) 的部分,輸入 80

    3. 如要新增後端,請按一下「完成」

  8. 如要新增健康狀態檢查,請在「健康狀態檢查」清單中選取 lb-health-check,也就是您先前建立的健康狀態檢查。

  9. 如要建立後端服務,請按一下「Create」(建立)

  10. 繼續操作之前,請先驗證「Backend configuration」(後端設定) 旁是否有藍色勾號。

設定轉送規則

  • 按一下「轉送規則」。確認 lb-backend-service 是任何不相符主機和路徑的預設後端服務。

如要瞭解如何管理流量,請參閱設定流量管理

檢查並完成設定

  1. 按一下「檢查並完成」

  2. 查看負載平衡器的前端和後端設定,確認各項設定符合預期。

  3. 按一下「建立」,然後等待負載平衡器建立完成。

gcloud

  1. 建立後端服務,將流量分配到各個後端:

    gcloud compute backend-services create lb-backend-service \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --protocol=HTTP \
        --port-name=http \
        --health-checks=lb-health-check \
        --global \
        --project=SERVICE_PROJECT_ID
    
  2. 將執行個體群組新增至後端服務,做為後端使用:

    gcloud compute backend-services add-backend lb-backend-service \
        --instance-group=lb-backend \
        --instance-group-zone=us-west1-a \
        --global \
        --project=SERVICE_PROJECT_ID
    
  3. 建立網址對應,將傳入要求轉送至後端服務:

    gcloud compute url-maps create lb-map \
        --default-service=lb-backend-service \
        --global \
        --project=SERVICE_PROJECT_ID
    
  4. 建立目標 Proxy。

    如果是 HTTP 流量,請建立目標 HTTP Proxy,將要求轉送至網址對應:

    gcloud compute target-http-proxies create http-proxy \
        --url-map=lb-map \
        --global \
        --project=SERVICE_PROJECT_ID
    

    如果是 HTTPS 流量,請建立目標 HTTPS Proxy,將要求轉送至網址對應。Proxy 是負載平衡器的一部分,用於保存 HTTPS 負載平衡器的 SSL 憑證,因此您還可以在此步驟中載入 SSL 憑證

    gcloud compute target-https-proxies create https-proxy \
        --url-map=lb-map \
        --ssl-certificates=lb-ssl-cert
        --global \
        --project=SERVICE_PROJECT_ID
    
  5. 建立轉送規則。

    針對 HTTP 流量,請建立全域轉送規則,將傳入要求轉送至目標 Proxy:

    gcloud compute forwarding-rules create http-fw-rule \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --address=lb-ipv4-1 \
        --global \
        --target-http-proxy=http-proxy \
        --ports=80 \
        --project=SERVICE_PROJECT_ID
    

    如果是 HTTPS 流量,請建立全域轉送規則,將連入要求轉送至目標 Proxy:

    gcloud compute forwarding-rules create https-fw-rule \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --address=lb-ipv4-1 \
        --global \
        --target-https-proxy=https-proxy \
        --ports=443 \
        --project=SERVICE_PROJECT_ID
    

測試負載平衡器

負載平衡服務執行時,您可以將流量傳送至轉送規則,觀察流量是否分散到不同的執行個體。

控制台

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

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

  2. 按一下剛剛建立的負載平衡器。

  3. 記下負載平衡器的 IP 位址。這個 IP 位址在後續步驟中稱為 LB_IP_ADDRESS

  4. 在「Backend」(後端) 部分,確認 VM 顯示為健康狀態良好。

    「Healthy」(健康狀態良好) 欄應已填妥,顯示 VM 健康狀態良好。舉例來說,如果建立兩個執行個體,您應該會看到 2 of 2 訊息,旁邊有綠色勾號。如果顯示其他內容,請先嘗試重新載入頁面。 Google Cloud 控制台可能需要幾分鐘的時間,才能顯示 VM 健康狀態良好。如果幾分鐘後,後端仍未顯示為健康狀態良好,請檢查指派到後端 VM 的防火牆設定與網路標記。

  5. Google Cloud 控制台顯示後端執行個體健康狀態良好後,您可以將網路瀏覽器指向 https://LB_IP_ADDRESS (或 http://LB_IP_ADDRESS),測試負載平衡器。請將 LB_IP_ADDRESS 替換為負載平衡器的 IP 位址

  6. 若您使用自行簽署的憑證測試 HTTPS,您的瀏覽器會出現警告。您必須明確指示瀏覽器接受自行簽署的憑證。

  7. 瀏覽器應會顯示頁面,並於其中列出提供該頁面的執行個體名稱 (例如 Page served from: lb-backend-example-xxxx)。如果您的瀏覽器無法顯示這個頁面,請檢查本指南的配置設定。

gcloud

請注意預留的 IP 位址:

gcloud compute addresses describe IP_ADDRESS_NAME \
    --format="get(address)" \
    --global

將網路瀏覽器指向 https://LB_IP_ADDRESS (或 http://LB_IP_ADDRESS),即可測試負載平衡器。請將 LB_IP_ADDRESS 替換為負載平衡器的 IP 位址

若您使用自行簽署的憑證測試 HTTPS,您的瀏覽器會出現警告。您必須明確指示瀏覽器接受自行簽署的憑證。

瀏覽器應該會顯示含有後端執行個體基本資訊的頁面。如果瀏覽器無法顯示這個頁面,請查看本指南的設定。

設定具備跨專案後端服務的負載平衡器

本節說明如何在共用虛擬私有雲環境中,設定具有跨專案後端服務的負載平衡器。

事前準備

本頁稍早的範例說明如何設定共用虛擬私有雲端部署作業,其中所有負載平衡器元件及其後端都會在一個服務專案中建立。您也可以使用全域外部應用程式負載平衡器設定 Shared VPC 部署作業,其中一個主專案或服務專案中的網址對應會參照位於 Shared VPC 環境中多個服務專案的後端服務 (和後端)。

您可以參考本節中的步驟,設定下列任一支援的組合:

  • 主機專案中的轉送規則、目標 Proxy 和網址對應,以及服務專案中的後端服務
  • 一個服務專案中的轉送規則、目標 Proxy 和網址對應,以及另一個服務專案中的後端服務

本節使用共用虛擬私有雲環境設定跨專案部署作業,但共用虛擬私有雲環境並非必要條件。如果是全域外部應用程式負載平衡器,負載平衡器前端可以參照相同機構內任何專案的後端服務或後端 bucket。

設定需求

如果您尚未完成所有必要步驟,請先完成這些步驟,設定共用虛擬私有雲,並設定本範例所需的網路、子網路和防火牆規則。如需操作說明,請參閱本頁面開頭的下列各節:

在這個設定中,轉送規則、目標 Proxy 和網址對應位於一個服務專案,後端服務和後端則位於另一個服務專案。

  1. 在服務專案 B 中,您將設定下列後端資源:
    • 代管執行個體群組後端
    • 健康狀態檢查
    • 全域後端服務
  2. 在服務專案 A 中,您將設定下列前端資源:
    • IP 位址
    • SSL 憑證
    • 網址對應
    • 目標 Proxy
    • 轉送規則

下圖顯示全域外部應用程式負載平衡器,其中一個服務專案的網址對應參照了另一個服務專案的負載平衡器後端服務。

負載平衡器的前端和後端元件位於不同的服務專案
圖 2. 負載平衡器的前端和後端位於不同的服務專案

使用全域外部應用程式負載平衡器進行跨專案服務參照時,後端執行個體不一定要屬於同一個 VPC 網路或共用 VPC 網路。

在本範例中,服務專案中的後端 VM 是在主專案中建立的共用虛擬私有雲網路的一部分。不過,您也可以在服務專案中設定獨立的虛擬私有雲網路 (即未共用的虛擬私有雲網路),以及必要的防火牆規則。然後,您可以建立屬於這個獨立虛擬私有雲網路的後端執行個體 (例如執行個體群組)。建立後端執行個體後,您可以按照這個範例中的其餘步驟,在服務專案中建立後端服務,並使用跨專案服務參照,將該服務連結至另一個服務專案中的網址對應。

在服務專案 B 中設定負載平衡器的後端元件

在本節中,您需要在服務專案 B 中設定下列後端資源:

  • 代管執行個體群組
  • 健康狀態檢查
  • 全域後端服務

建立代管執行個體群組後端

建立代管執行個體群組之前,您必須先建立執行個體範本。執行個體範本是一種資源,可用來建立虛擬機器 (VM) 執行個體。從用戶端到執行個體群組中 VM 的流量會經過負載平衡。代管執行個體群組提供的 VM 會執行外部應用程式負載平衡器的後端伺服器。在本範例中,後端會提供自己的主機名稱。

控制台

建立執行個體範本

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Instance templates」(執行個體範本) 頁面。

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

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

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

  4. 在「Boot disk」(開機磁碟) 專區中,確認開機磁碟已設為 Debian 映像檔,例如 Debian GNU/Linux 12 (bookworm)。如有需要,請按一下「Change」(變更),以變更映像檔。

  5. 展開「Advanced options」(進階選項) 區段。

  6. 展開「Networking」(網路) 專區,然後在「Network tags」(網路標記) 欄位中輸入 load-balanced-backend

  7. 在「網路介面」中,選取「與我共用的網路 (來源主專案:HOST_PROJECT_ID))」。

  8. 在「Shared subnetwork」(共用子網路) 清單中,選取 lb-network 網路中的 lb-backend-subnet 子網路。

  9. 展開「管理」區段,並在「自動化」欄位中指定下列開機指令碼:

      #! /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
    
  10. 點選「建立」

建立代管執行個體群組

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Instance groups」(執行個體群組) 頁面。

    前往執行個體群組

  2. 按一下「建立執行個體群組」

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

  4. 輸入 lb-backend 做為執行個體群組的名稱。

  5. 在「Instance template」(執行個體範本) 清單中,選取您在上一個步驟中建立的執行個體範本 backend-template

  6. 在「Location」(位置) 專區中,選取「Single zone」(單一可用區),並輸入下列值:

    • 在「Region」(區域) 中選取 us-west1

    • 在「Zone」(可用區) 中選取 us-west1-a

  7. 在「Autoscaling」(自動調度資源) 區段中,輸入以下的值:

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

    • 在「Minimum number of instances」(執行個體數量下限) 中選取 2

    • 在「Maximum number of instances」(執行個體數量上限) 中選取 3

  8. 在「Port mapping」(通訊埠對應) 部分,按一下「Add port」(新增通訊埠),然後輸入下列值:

    • 在「Port name」(通訊埠名稱) 輸入 http

    • 在「Port number」(通訊埠編號) 部分輸入 80

  9. 點選「建立」

gcloud

  1. 建立執行個體範本:

    gcloud compute instance-templates create backend-template \
        --region=us-west1 \
        --network=projects/HOST_PROJECT_ID/global/networks/lb-network \
        --subnet=projects/HOST_PROJECT_ID/regions/us-west1/subnetworks/lb-backend-subnet \
        --tags=load-balanced-backend \
        --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' \
        --project=SERVICE_PROJECT_B_ID
    
  2. 建立代管執行個體群組,然後選取您在上一個步驟中建立的執行個體範本:

    gcloud compute instance-groups managed create lb-backend \
        --zone=us-west1-a \
        --size=2 \
        --template=backend-template \
        --project=SERVICE_PROJECT_B_ID
    
  3. 將具名通訊埠新增至執行個體群組:

    gcloud compute instance-groups set-named-ports lb-backend \
        --named-ports=http:80 \
        --zone=us-west1-a \
        --project=SERVICE_PROJECT_B_ID
    

建立健康狀態檢查

健康狀態檢查可以確認後端的可用性。建立使用 HTTP 通訊協定和在 80 通訊埠上探測的健康狀態檢查。稍後,您會將這項健康狀態檢查附加至負載平衡器參照的後端服務。

控制台

  1. 在 Google Cloud 控制台中,前往 Compute Engine 的「Health checks」(健康狀態檢查) 頁面。

    前往「健康檢查」頁面

  2. 將健康狀態檢查的名稱設為 lb-health-check

  3. 將「Protocol」(通訊協定) 設為「HTTP」HTTP

  4. 點選「建立」

gcloud

建立 HTTP 健康狀態檢查。

gcloud compute health-checks create http lb-health-check \
  --use-serving-port \
  --project=SERVICE_PROJECT_B_ID

建立全域後端服務

建立全域後端服務,在後端之間分配流量。在這個步驟中,您需要將建立的健康狀態檢查指派給後端服務,並將執行個體群組新增至後端服務,做為後端。

控制台

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

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

  2. 前往「後端」部分。

  3. 按一下「建立後端服務」

  4. 在「全域後端服務」部分,點選旁邊的「建立」按鈕。

  5. 輸入 cross-ref-backend-service 做為後端服務的名稱。

  6. 在「Backend type」(後端類型) 部分,選取「Instance group」(執行個體群組)

  7. 將「Protocol」(通訊協定) 設為「HTTP」

  8. 在「Named port」(已命名通訊埠) 欄位輸入 http,也就是您在建立代管執行個體群組時輸入的通訊埠名稱。

  9. 如要將後端新增至後端服務,請按照下列指示操作:

    1. 在「Backends」(後端) 專區中,將「Instance group」(執行個體群組) 設為「lb-backend」,也就是您在先前步驟中建立的代管執行個體群組。

    2. 在「Port numbers」(通訊埠編號) 的部分,輸入 80

    3. 如要新增後端,請按一下「完成」

  10. 如要新增健康狀態檢查,請在「健康狀態檢查」清單中選取 lb-health-check,也就是您先前建立的健康狀態檢查。

  11. 選用:在「新增權限」部分,輸入其他專案的 IAM 主體 (通常是電子郵件地址),這些主體必須具備 Compute 負載平衡器管理員角色 (roles/compute.loadBalancerAdmin),才能在自己的專案中將這個後端服務用於負載平衡器。如果沒有這項權限,您就無法使用跨專案服務參照。

    如果沒有權限為這項專案中的後端服務設定存取控制政策,您還是可以立即建立後端服務,授權使用者稍後再執行這個步驟,詳情請參閱「授予 Compute Load Balancer 管理員使用後端服務的權限」一節。該節也會說明如何授予存取權給這個專案中的所有後端服務,這樣您就不必在每次建立新的後端服務時授予存取權。

  12. 如要建立後端服務,請按一下「Create」(建立)

gcloud

  1. 建立全域後端服務,將流量分配到各個後端:

    gcloud compute backend-services create cross-ref-backend-service \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --protocol=HTTP \
        --port-name=http \
        --health-checks=lb-health-check \
        --global \
        --project=SERVICE_PROJECT_B_ID
    
  2. 將執行個體群組新增至後端服務,做為後端使用:

    gcloud compute backend-services add-backend cross-ref-backend-service \
        --instance-group=lb-backend \
        --instance-group-zone=us-west1-a \
        --global \
        --project=SERVICE_PROJECT_B_ID
    

在服務專案 A 中設定負載平衡器的前端元件

在本節中,您需要在服務專案 A 中設定下列前端資源:

  • IP 位址
  • SSL 憑證
  • 網址對應
  • 目標 Proxy
  • 轉送規則

保留負載平衡器的 IP 位址

預留可指派給負載平衡器轉送規則的全域靜態外部 IP 位址。

控制台

  1. 在 Google Cloud 控制台中,前往虛擬私有雲的「IP addresses」(IP 位址) 頁面。

    前往「IP addresses」(IP 位址) 頁面

  2. 點選「Reserve external static IP address」(預留外部靜態 IP 位址)

  3. 在「Name」(名稱) 中輸入 cross-ref-ip-address

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

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

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

  7. 按一下「Reserve」(預留)

gcloud

建立全域靜態外部 IP 位址。

gcloud compute addresses create cross-ref-ip-address \
    --ip-version=IPV4 \
    --network-tier=PREMIUM \
    --global \
    --project=SERVICE_PROJECT_A_ID

設定 SSL 憑證資源

如果是使用 HTTPS 做為要求和回應通訊協定的負載平衡器,請按照下列資源說明建立 SSL 憑證資源:

建議使用 Google 代管的憑證。

這個範例假設您已建立名為 lb-ssl-cert 的 SSL 憑證。安全資料傳輸層 (SSL) 憑證會附加至您在下列步驟中建立的目標 Proxy。

建立前端元件

控制台

選取負載平衡器類型

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

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

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

基本設定

  1. 輸入負載平衡器的「Name」(名稱)cross-ref-lb-shared-vpc
  2. 請保持開啟這個頁面,以便繼續操作。

設定前端

HTTP:

  1. 按一下「前端設定」
  2. 輸入轉送規則的「Name」(名稱):cross-ref-http-forwarding-rule
  3. 將「Protocol」(通訊協定) 設為 HTTP
  4. 選取您在「保留負載平衡器的 IP 位址」中建立的 IP 位址,稱為「cross-ref-ip-address」
  5. 將「Port」(通訊埠) 設為 80
  6. 按一下 [完成]

HTTPS:

如果您在用戶端與負載平衡器間使用的是 HTTPS,則需要有一個或多個 SSL 憑證資源才能設定 Proxy。如要瞭解如何建立 SSL 憑證資源,請參閱「SSL 憑證」。區域外部應用程式負載平衡器不支援 Google 代管憑證。

  1. 按一下「前端設定」
  2. 輸入轉送規則的「Name」(名稱):cross-ref-https-forwarding-rule
  3. 在「Protocol」(通訊協定) 欄位中選取 HTTPS (includes HTTP/2)
  4. 選取您在「保留負載平衡器的 IP 位址」中建立的 IP 位址,稱為「cross-ref-ip-address」
  5. 確認「Port」(通訊埠) 已設為 443,以允許 HTTPS 流量。
  6. 按一下「Certificate」(憑證) 清單。
    1. 如果已有自行管理的 SSL 憑證資源,且想要做為主要 SSL 憑證使用,請在選單中選取所需資源。
    2. 否則,請選取「建立新憑證」
      1. 輸入 SSL 憑證的名稱
      2. 將 PEM 格式的檔案上傳至相對應的欄位:
        • 公用金鑰憑證
        • 憑證鏈結
        • 私密金鑰
      3. 點選「建立」
  7. 如要新增主要 SSL 憑證資源以外的憑證資源,請按照下列步驟操作:
    1. 按一下「Add certificate」(新增憑證)
    2. 從「Certificates」(憑證) 清單中選取所需憑證,或是按一下「Create a new certificate」(建立新憑證) 並按照先前的指示操作。
  8. 按一下 [完成]

設定後端

  1. 按一下「後端設定」
  2. 按一下「跨專案後端服務」
  3. 在「Project ID」部分,輸入服務專案 B 的專案 ID
  4. 在「選取後端服務」清單中,選取要使用的服務專案 B 後端服務。在本例中,請輸入 cross-ref-backend-service
  5. 按一下 [確定]

設定轉送規則

  • 按一下「轉送規則」。確認「cross-ref-backend-service」cross-ref-backend-service是任何不相符主機和路徑的唯一後端服務。

如要瞭解流量管理,請參閱設定流量管理

檢查並完成設定

  • 點選「建立」

gcloud

  1. 選用:建立負載平衡器並交叉參照後端服務前,請先確認您要參照的後端服務是否可使用網址對應參照:

    gcloud compute backend-services list-usable \
        --global \
        --project=SERVICE_PROJECT_B_ID
    
  2. 建立網址對應,將傳入要求轉送至後端服務:

    gcloud compute url-maps create cross-ref-url-map \
        --default-service=projects/SERVICE_PROJECT_B_ID/global/backendServices/cross-ref-backend-service \
        --global \
        --project=SERVICE_PROJECT_A_ID
    
  3. 建立目標 Proxy。

    如果是 HTTP 流量,請建立目標 HTTP Proxy,將要求轉送至網址對應:

    gcloud compute target-http-proxies create cross-ref-http-proxy \
        --url-map=cross-ref-url-map \
        --global \
        --project=SERVICE_PROJECT_A_ID
    

    如果是 HTTPS 流量,請建立目標 HTTPS Proxy,將要求轉送至網址對應。Proxy 是負載平衡器的一部分,用於保存 HTTPS 負載平衡器的 SSL 憑證,因此您還可以在此步驟中載入 SSL 憑證

    gcloud compute target-https-proxies create cross-ref-https-proxy \
        --url-map=cross-ref-url-map \
        --ssl-certificates=lb-ssl-cert \
        --global \
        --project=SERVICE_PROJECT_A_ID
    
  4. 建立轉送規則。

    針對 HTTP 流量,請建立全域轉送規則,將傳入要求轉送至目標 Proxy:

    gcloud compute forwarding-rules create cross-ref-http-forwarding-rule \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --address=cross-ref-ip-address \
        --global \
        --target-http-proxy=cross-ref-http-proxy \
        --ports=80 \
        --project=SERVICE_PROJECT_A_ID
    

    如果是 HTTPS 流量,請建立全域轉送規則,將連入要求轉送至目標 Proxy:

    gcloud compute forwarding-rules create cross-ref-https-forwarding-rule \
        --load-balancing-scheme=EXTERNAL_MANAGED \
        --address=cross-ref-ip-address \
        --global \
        --target-https-proxy=cross-ref-https-proxy \
        --ports=443 \
        --project=SERVICE_PROJECT_A_ID
    

將使用後端服務的權限授予 Compute Load Balancer 管理員

如要讓負載平衡器參照其他服務專案中的後端服務,負載平衡器管理員必須具備 compute.backendServices.use 權限。如要授予這項權限,可以使用名為「Compute 負載平衡器服務使用者」(roles/compute.loadBalancerServiceUser) 的預先定義 IAM 角色。這項角色必須由服務專案管理員授予,且可套用至專案層級或個別後端服務層級。

如果您在建立後端服務時,已在後端服務層級授予必要權限,則不需要執行這個步驟。您可以略過這個章節,也可以繼續閱讀,瞭解如何授予這項專案中所有後端服務的存取權,這樣就不必在每次建立新的後端服務時授予存取權。

在本例中,服務專案 B 的服務專案管理員必須執行下列其中一個指令,將 compute.backendServices.use 權限授予服務專案 A 的負載平衡器管理員。您可以在專案層級 (適用於專案中的所有後端服務) 或後端服務層級執行這項操作。

控制台

專案層級權限

請按照下列步驟,授予專案中所有後端服務的權限。

您必須具備 compute.backendServices.setIamPolicyresourcemanager.projects.setIamPolicy 權限,才能完成這個步驟。

  1. 前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。

    前往「IAM」(身分與存取權管理) 頁面

  2. 選取專案。

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

  4. 在「New principals」(新增主體) 欄位中,輸入主體的電子郵件地址或其他 ID。

  5. 在「Select a role」(選取角色) 清單中,選取「Compute Load Balancer Services User」(Compute Load Balancer 服務使用者)

  6. 選用:為角色新增條件

  7. 按一下 [儲存]

個別後端服務的資源層級權限

請按照下列步驟,授予專案中個別後端服務的權限。

您必須具備 compute.backendServices.setIamPolicy 權限,才能完成這個步驟。

  1. 前往 Google Cloud 控制台的「Backends」(後端) 頁面。

    前往「後端」

  2. 從後端清單中,選取要授予存取權的後端服務,然後按一下「權限」

  3. 按一下「新增主體」

  4. 在「New principals」(新增主體) 欄位中,輸入主體的電子郵件地址或其他 ID。

  5. 在「Select a role」(選取角色) 清單中,選取「Compute Load Balancer Services User」(Compute Load Balancer 服務使用者)

  6. 按一下 [儲存]

gcloud

專案層級權限

請按照下列步驟,授予專案中所有後端服務的權限。

您必須具備 compute.backendServices.setIamPolicyresourcemanager.projects.setIamPolicy 權限,才能完成這個步驟。

gcloud projects add-iam-policy-binding SERVICE_PROJECT_B_ID \
    --member="user:LOAD_BALANCER_ADMIN" \
    --role="roles/compute.loadBalancerServiceUser"

個別後端服務的資源層級權限

在後端服務層級,服務專案管理員可以使用下列任一指令,授予 Compute 負載平衡器服務使用者角色 (roles/compute.loadBalancerServiceUser)。

您必須具備 compute.backendServices.setIamPolicy 權限,才能完成這個步驟。

gcloud projects add-iam-policy-binding SERVICE_PROJECT_B_ID \
    --member="user:LOAD_BALANCER_ADMIN" \
    --role="roles/compute.loadBalancerServiceUser" \
    --condition='expression=resource.name=="projects/SERVICE_PROJECT_B_ID/regions/us-west1/backend-services/BACKEND_SERVICE_NAME",title=Shared VPC condition'

gcloud compute backend-services add-iam-policy-binding BACKEND_SERVICE_NAME \
    --member="user:LOAD_BALANCER_ADMIN" \
    --role="roles/compute.loadBalancerServiceUser" \
    --project=SERVICE_PROJECT_B_ID \
    --region=us-west1

如要使用這些指令,請將 LOAD_BALANCER_ADMIN 替換為使用者的主體,例如 test-user@gmail.com

您也可以設定 IAM 權限,只將權限套用至部分區域後端服務,方法是使用條件並指定條件屬性

測試負載平衡器

設定負載平衡器可能需要幾分鐘的時間。負載平衡服務執行時,您可以將流量傳送至服務專案 A 中的轉送規則,並觀察流量是否分散到服務專案 B 中的不同 VM 執行個體。

控制台

  1. 在 Google Cloud 控制台中,前往服務專案 A 的「Load balancing」(負載平衡) 頁面。

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

  2. 按一下剛剛建立的負載平衡器。

  3. 記下負載平衡器的 IP 位址。這個 IP 位址在後續步驟中稱為 LB_IP_ADDRESS

  4. 將網路瀏覽器指向 https://LB_IP_ADDRESS (或 http://LB_IP_ADDRESS),即可測試負載平衡器。請將 LB_IP_ADDRESS 替換為負載平衡器的 IP 位址

  5. 若您使用自行簽署的憑證測試 HTTPS,您的瀏覽器會出現警告。您必須明確指示瀏覽器接受自行簽署的憑證。

  6. 瀏覽器應會顯示頁面,並於其中列出提供該頁面的執行個體名稱 (例如 Page served from: lb-backend-example-xxxx)。如果您的瀏覽器無法顯示這個頁面,請檢查本指南的配置設定。

gcloud

請注意預留的 IP 位址:

gcloud compute addresses describe IP_ADDRESS_NAME \
    --format="get(address)" \
    --global
    --project=SERVICE_PROJECT_A_ID

將網路瀏覽器指向 https://LB_IP_ADDRESS (或 http://LB_IP_ADDRESS),即可測試負載平衡器。請將 LB_IP_ADDRESS 替換為負載平衡器的 IP 位址

若您使用自行簽署的憑證測試 HTTPS,您的瀏覽器會出現警告。您必須明確指示瀏覽器接受自行簽署的憑證。

瀏覽器應該會顯示含有後端執行個體基本資訊的頁面。如果瀏覽器無法顯示這個頁面,請查看本指南的設定。

後續步驟