Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Configure HTTP and health check firewall rules
/ 20
Configure instance templates and create instance groups
/ 20
Configure the HTTP Load Balancer
/ 20
Test the HTTP Load Balancer
/ 20
Create Cloud Armor Rate Limiting Policy
/ 20
Configure HTTP and health check firewall rules
/ 20
Configure instance templates and create instance groups
/ 20
Configure the HTTP Load Balancer
/ 20
Test the HTTP Load Balancer
/ 20
Create Cloud Armor Rate Limiting Policy
/ 20
Google 在自家遍布全球的網路邊緣服務點 (POP) 提供 Google Cloud HTTP(S) 負載平衡服務。導向 HTTP(S) 負載平衡器的使用者流量會進入離使用者最近的 POP,接著透過 Google 的全球網路進行負載平衡,再傳至有足夠容量且距離最近的後端。
您可以透過 Cloud Armor IP 許可清單/拒絕清單,在盡可能接近使用者和惡意流量的 Google Cloud 邊緣,允許或限制對方存取 HTTP(S) 負載平衡器。這有助於防止惡意使用者或流量消耗資源,或進入虛擬私有雲 (VPC) 網路。
在本實驗室,您會設定具有全域後端的 HTTP 負載平衡器 (如下圖所示),然後對負載平衡器進行壓力測試,並新增 Cloud Armor 頻率限制政策,根據 IP 限制流量。
在本實驗室中,您將瞭解如何執行下列工作:
請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。
您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。
為了順利完成這個實驗室,請先確認:
點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」。
接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
如有必要,請將下方的 Username 貼到「登入」對話方塊。
您也可以在「Lab Details」窗格找到 Username。
點選「下一步」。
複製下方的 Password,並貼到「歡迎使用」對話方塊。
您也可以在「Lab Details」窗格找到 Password。
點選「下一步」。
按過後續的所有頁面:
Google Cloud 控制台稍後會在這個分頁開啟。
Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。
點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示 。
系統顯示視窗時,請按照下列步驟操作:
連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID:
gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。
輸出內容:
輸出內容:
gcloud 的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南。
請設定防火牆規則,允許傳送至後端的 HTTP 流量,以及來自 Google Cloud 健康狀態檢查工具的 TCP 流量。
請建立防火牆規則,允許 HTTP 流量傳送至後端。
在 Cloud 控制台,依序點選「導覽選單」圖示 >「虛擬私有雲網路」>「防火牆」。
留意現有的 ICMP、內部、RDP 和 SSH 防火牆規則。
每項 Google Cloud 專案一開始就有 default 網路和這些防火牆規則。
按一下「建立防火牆規則」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 名稱 | default-allow-http |
| 網路 | default |
| 目標 | 指定的目標標記 |
| 目標標記 | http-server |
| 來源篩選器 | IPv4 範圍 |
| 來源 IP 範圍 | 0.0.0.0/0 |
| 通訊協定和通訊埠 | 指定的通訊協定和通訊埠:勾選「TCP」並輸入 80 |
點選「建立」。
健康狀態檢查會判斷負載平衡器的哪些執行個體能接收新連線。以 HTTP 負載平衡來說,對達到負載平衡的執行個體執行健康狀態檢查探測時,探測要求的來源位址範圍為 130.211.0.0/22 和 35.191.0.0/16。防火牆規則必須允許這類連線。
一樣在「防火牆規則」頁面,點選「建立防火牆規則」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 名稱 | default-allow-health-check |
| 網路 | default |
| 目標 | 指定的目標標記 |
| 目標標記 | http-server |
| 來源篩選器 | IPv4 範圍 |
| 來源 IP 範圍 |
130.211.0.0/22 和 35.191.0.0/16
|
| 通訊協定和通訊埠 | 指定的通訊協定和通訊埠:勾選「TCP」 |
點選「建立」。
點選「Check my progress」,確認目標已達成。
代管執行個體群組會使用執行個體範本,建立一組相同的執行個體。請使用這些執行個體來建立 HTTP 負載平衡器的後端。
執行個體範本是一種 API 資源,可用來建立 VM 執行個體和代管執行個體群組。執行個體範本會定義機型、開機磁碟映像檔、子網路、標籤和其他執行個體屬性。請分別為
點選「網路」,然後在「網路標記」部分輸入 http-server。
在「網路介面」部分,展開 default 網路的設定,然後設定下列值。
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 網路 | default |
| 子網路 | default ( |
在「中繼資料」下方,點選「+ 新增項目」並指定下列設定:
| 鍵 | 值 |
|---|---|
| startup-script-url | gs://spls/gsp975/startup.sh |
startup-script-url 能指定執行個體啟動時執行的指令碼。這個指令碼會安裝 Apache 並變更歡迎頁面,在頁面中納入用戶端 IP,以及 VM 執行個體的名稱、區域和可用區。歡迎查看指令碼內容。接下來,請複製
default 網路。在
按一下「導覽選單」圖示 ,然後在左選單依序點選「Compute Engine」>「執行個體群組」。
點選「建立執行個體群組」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 名稱 |
|
| 執行個體範本 |
|
| 位置 | 多可用區 |
| 區域 | |
| 執行個體數量下限 | 1 |
| 執行個體數量上限 | 5 |
| 「自動調度資源」>「自動調度資源信號」(點選下拉式選單圖示來編輯) >「信號類型」 | CPU 使用率 |
| 目標 CPU 使用率 | 80 |
| 初始化期間 | 45 |
點選「建立」。
接著執行相同程序,在
點選「建立執行個體群組」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 名稱 |
|
| 執行個體範本 |
|
| 位置 | 多可用區 |
| 區域 | |
| 執行個體數量下限 | 1 |
| 執行個體數量上限 | 5 |
| 「自動調度資源」>「自動調度資源信號」(點選下拉式選單圖示來編輯) >「信號類型」 | CPU 使用率 |
| 目標 CPU 使用率 | 80 |
| 初始化期間 | 45 |
點選「建立」。
點選「Check my progress」,確認目標已達成。
請確認兩個區域皆已建立 VM 執行個體,而且都能存取 HTTP 網站。
一樣在「Compute Engine」頁面,點選左選單中的「VM 執行個體」。
留意開頭為 和 的執行個體。
這些執行個體屬於代管執行個體群組。
點選 執行個體的「外部 IP」。
畫面上會顯示「用戶端 IP」(您的 IP 位址)、「主機名稱」(開頭為 ),以及「伺服器位置」 (
點選 執行個體的「外部 IP」。
畫面上會顯示「用戶端 IP」(您的 IP 位址)、「主機名稱」(開頭為 ),以及「伺服器位置」 (
請設定 HTTP 負載平衡器,在
後端服務會將傳入流量導向一或多個連接的後端。每個後端都有執行個體群組,以及其他負載能力中繼資料。
點選「後端設定」。
按一下「後端服務和後端 bucket」下拉式選單,然後點選「建立後端服務」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示選取選項) |
|---|---|
| 名稱 | http-backend |
| 執行個體群組 |
|
| 通訊埠編號 | 80 |
| 平衡模式 | 頻率 |
| 每秒要求數上限 | 50 |
| 容量 | 100 |
點選「完成」。
點選「新增後端」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示選取選項) |
|---|---|
| 執行個體群組 |
|
| 通訊埠編號 | 80 |
| 平衡模式 | 使用率 |
| 後端使用率上限 | 80 |
| 容量 | 100 |
點選「完成」。
在「健康狀態檢查」部分,選取「建立健康狀態檢查」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示選取選項) |
|---|---|
| 名稱 | http-health-check |
| 通訊協定 | TCP |
| 通訊埠 | 80 |
點選「建立」。
勾選「啟用記錄功能」方塊。
將「取樣率」設為 1:
點選「建立」來建立後端服務,然後按一下「確定」。
主機與路徑規則會決定流量的導向方式。舉例來說,您可以將影片流量導向其中一個後端,並將靜態內容流量導向另一個後端。不過,本實驗室無須設定「主機與路徑規則」。
點選「前端設定」。
指定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 通訊協定 | HTTP |
| IP 版本 | IPv4 |
| IP 位址 | 臨時 |
| 通訊埠 | 80 |
點選「完成」。
點選「新增前端 IP 和通訊埠」。
指定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 通訊協定 | HTTP |
| IP 版本 | IPv6 |
| IP 位址 | 自動分配 |
| 通訊埠 | 80 |
點選「完成」。
點選「檢查並完成」。
檢查「後端服務」和「前端」。
點選「建立」。
等待負載平衡器建立完畢。
點選負載平衡器的名稱 (http-lb)。
記下負載平衡器的 IPv4 和 IPv6 位址,下一個工作會用到。這兩個 IP 位址分別為 [LB_IP_v4] 和 [LB_IP_v6]。
點選「Check my progress」,確認目標已達成。
為後端建立 HTTP 負載平衡器後,接著要確認流量是否會轉送至後端服務。
http://[LB_IP_v4],測試能否透過 IPv4 存取 HTTP 負載平衡器。請務必將 [LB_IP_v4] 改成負載平衡器的 IPv4 位址。如果您有本機 IPv6 位址,可以前往 http://[LB_IP_v6],測試能否透過 IPv6 位址存取 HTTP 負載平衡器。請務必將 [LB_IP_v6] 改成負載平衡器的 IPv6 位址。
請建立新的 VM,使用 siege 模擬 HTTP 負載平衡器上的負載,然後在負載偏高時,判斷兩個後端的流量是否達到平衡。
依序點選控制台中的「導覽選單」圖示 >「Compute Engine」>「VM 執行個體」。
點選「建立執行個體」。
設定下方的值,其他屬性均保留預設值:
| 屬性 | 值 (按照指示輸入值或選取選項) |
|---|---|
| 名稱 | siege-vm |
| 區域 | |
| 可用區 | |
| 系列 | E2 |
點選「Check my progress」,確認目標已達成。
[LB_IP_v4] 改成 IPv4 位址,在環境變數中儲存 HTTP 負載平衡器的 IPv4 位址:輸出內容應如下所示:
http-lb」。流量一開始應該只會導向
這證明流量預設只會轉送至距離最近的後端,但如果負載過高,流量也可能會分配至其他後端。
在本節中,您將使用 Cloud Armor 設定頻率限制政策,將 siege-vm 加入拒絕清單,禁止該執行個體存取 HTTP 負載平衡器。
在 Cloud 控制台,依序點選「導覽選單」圖示 >「查看所有產品」>「網路」專區下的「網路安全性」>「Cloud Armor 政策」。
點選「rate-limit-siege」。政策內容應如下所示:
點選「Check my progress」,確認目標已達成。
返回 siege-vm 的 SSH 終端機。
對負載平衡器 IP 執行 curl,確認仍可連線至該負載平衡器。您應該會收到 200 回應:
這個指令不會產生任何輸出內容。
查看安全性政策記錄,確認這個流量是否也遭到封鎖。
在 Cloud 控制台,依序點選「導覽選單」圖示 >「查看所有產品」>「網路」專區下的「網路安全性」>「Cloud Armor 政策」。
點選「rate-limit-siege」。
點選「記錄」。
點選「查看政策記錄檔」。
在「Logging」頁面上,務必將「查詢預覽」內的文字全部清除。
依序點選「應用程式負載平衡器」>「http-lb-forwarding-rule」>「http-lb」來選取資源,然後按一下「套用」。
接著點選「執行查詢」。
展開「查詢結果」中的記錄項目。
展開「httpRequest」。
這個要求應該來自 siege-vm IP 位址。如果不是,請展開另一個記錄項目。
展開「jsonPayload」。
展開「enforcedSecurityPolicy」。
請注意,configuredAction 的設定值為 DENY,名稱為 rate-limit-siege。
您設定了後端位於
如要瞭解 Cloud Armor 的基本概念,請參閱 Cloud Armor 說明文件。
如要進一步瞭解負載平衡,請參閱 Load Balancing 說明文件。
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2025 年 9 月 8 日
實驗室上次測試日期:2025 年 9 月 8 日
Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。
This content is not currently available
We will notify you via email when it becomes available
Great!
We will contact you via email if it becomes available
One lab at a time
Confirm to end all existing labs and start this one
Complete this quick step to start your lab.