arrow_back

設定內部網路負載平衡器

登录 加入
访问 700 多个实验和课程

設定內部網路負載平衡器

实验 1 小时 30 分钟 universal_currency_alt 5 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

總覽

Google Cloud 可為 TCP/UDP 型流量提供內部網路負載平衡功能。運用這項功能,即可透過私人負載平衡 IP 位址執行服務及調度服務資源,這類 IP 位址只能透過內部的虛擬機器執行個體存取。

在本實驗室中,您將建立兩個位於相同區域的代管執行個體群組,接著設定以這些執行個體群組為後端的內部網路負載平衡器,並進行測試,如下方網路圖表所示:

網路架構圖表

目標

在這個實驗室中,您會瞭解如何執行下列工作:

  • 建立內部流量與健康狀態檢查防火牆規則。
  • 使用 Cloud Router 建立 NAT 設定。
  • 設定兩個執行個體範本。
  • 建立兩個代管執行個體群組。
  • 設定及測試內部網路負載平衡器。

設定和需求

在每個研究室中,您都能在固定時間內免付費建立新的 Google Cloud 專案,並使用一組資源。

  1. 請透過無痕式視窗登入 Qwiklabs。

  2. 請記下研究室的存取時間 (例如 1:15:00),並確保自己能在時間限制內完成作業。
    研究室不提供暫停功能。如有需要,您可以重新開始,但原先的進度恕無法保留。

  3. 準備就緒後,請按一下「Start lab」

  4. 請記下研究室憑證 (使用者名稱密碼),這組資訊將用於登入 Google Cloud 控制台。

  5. 按一下「Open Google Console」

  6. 按一下「Use another account」,然後複製這個研究室的憑證,並貼入提示訊息。
    如果使用其他憑證,系統會顯示錯誤或向您收取費用

  7. 接受條款,然後略過資源復原頁面。

工作 1:設定內部流量與健康狀態檢查防火牆規則。

請設定防火牆規則,允許來自 10.10.0.0/16 範圍中來源的內部流量連線。這項規則會允許所有來自子網路用戶端的連入流量。

健康狀態檢查會判斷負載平衡器的哪些執行個體能接收新的連線。以應用程式負載平衡 (HTTP) 來說,對達到負載平衡的執行個體執行健康狀態檢查探測時,探測要求的來源位址範圍為 130.211.0.0/2235.191.0.0/16。防火牆規則必須允許這類連線。

探索 my-internal-app 網路

系統已設定 my-internal-app 網路和其子網路 subnet-asubnet-b,以及 RDPSSHICMP 流量的防火牆規則。

  • 在 Cloud 控制台的「導覽選單」「導覽選單」圖示 中,依序點選「虛擬私有雲網路」>「虛擬私有雲網路」
    注意,my-internal-app 網路具有子網路:subnet-asubnet-b

    每項 Google Cloud 專案都是從預設網路開始。此外,系統已為您建立 my-internal-app 網路,如網路圖表所示。

    您將在 subnet-asubnet-b 建立代管執行個體群組。這兩個子網路都位於 區域,因為內部網路負載平衡器屬於區域性服務。代管執行個體群組則會位於不同的可用區,以免服務因可用區故障而無法運作。

建立防火牆規則,允許來自 10.10.0.0/16 範圍中任何來源的流量

建立防火牆規則,允許 10.10.0.0/16 子網路的流量。

  1. 在「導覽選單」「導覽選單」圖示 中,依序點選「虛擬私有雲網路」>「防火牆」
    注意 app-allow-icmpapp-allow-ssh-rdp 防火牆規則。

    系統已為您建立這些防火牆規則。

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

  3. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    名稱 fw-allow-lb-access
    網路 my-internal-app
    目標 指定的目標標記
    目標標記 backend-service
    來源篩選器 IPv4 範圍
    來源 IPv4 範圍 10.10.0.0/16
    通訊協定和通訊埠 全部允許
注意:請務必在「來源 IPv4 範圍」欄位中加入 /16
  1. 點選「建立」

建立健康狀態檢查規則

建立防火牆規則,允許健康狀態檢查。

  1. 在「導覽選單」「導覽選單」圖示 上,依序點選「虛擬私有雲網路」>「防火牆」

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

  3. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    名稱 fw-allow-health-checks
    網路 my-internal-app
    目標 指定的目標標記
    目標標記 backend-service
    來源篩選器 IPv4 範圍
    來源 IPv4 範圍 130.211.0.0/22 35.191.0.0/16
    通訊協定和通訊埠 指定的通訊協定和通訊埠
注意:請務必在「來源 IPv4 範圍」欄位中加入 /22/16
  1. 在「TCP」部分,勾選核取方塊並指定通訊埠 80
  2. 點選「建立」

點選「Check my progress」,確認目標已達成。 設定內部流量與健康狀態檢查防火牆規則

工作 2:使用 Cloud Router 建立 NAT 設定

您在工作 3 設定的 Google Cloud VM 後端執行個體不會設有外部 IP 位址。

您要設定 Cloud NAT 服務,允許 VM 執行個體只透過 Cloud NAT 傳送輸出流量,並透過負載平衡器接收傳入流量。

建立 Cloud Router 執行個體

  1. 前往 Google Cloud 控制台,在標題列的搜尋欄位輸入網路服務,然後點選「Products & Page」(產品和頁面) 部分中的「Network services」(網路服務)

  2. 在「Network service」(網路服務) 頁面,點選「Network services」(網路服務) 旁的固定圖示。

  3. 點選「Cloud NAT」

  4. 點選「立即開始」來設定 NAT 閘道。

  5. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    閘道名稱 nat-config
    網路 my-internal-app
    區域
  6. 點選「Cloud Router」,選擇「建立新路由器」

  7. 在「名稱」部分輸入 nat-router-

  8. 點選「建立」

  9. 在「建立 Cloud NAT 閘道」上,按一下「建立」

注意:請等待 NAT 閘道狀態變更為「執行中」,再繼續下一項工作。

點選「Check my progress」,確認目標已達成。 使用 Cloud Router 建立 NAT 設定

工作 3:設定執行個體範本和建立執行個體群組

代管執行個體群組會根據執行個體範本,建立一組完全相同的執行個體。這些執行個體可用於建立內部網路負載平衡器的後端。

這項工作已於本實驗室開始時自動執行完畢。您需要透過 SSH 連線至每個 VM 執行個體群組,並執行下列指令來設定環境。

  1. 從「導覽選單」依序點選「Compute Engine」>「VM 執行個體」
    請留意開頭為 instance-group-1instance-group-2 的執行個體。

  2. 點選「instance-group-1」 旁的「SSH」,透過 SSH 連線至 VM。

  3. 如果出現「允許透過瀏覽器中的 SSH 連線至 VM」提示訊息,請點選「授權」

  4. 執行下列指令,以重新執行執行個體的開機指令碼:

sudo google_metadata_script_runner startup
  1. 針對 instance-group-2 重複執行上述步驟。

  2. 兩個開機指令碼皆執行完畢後,即可關閉每個 VM 的 SSH 終端機。開機指令碼的輸出內容應如下所示:

Finished running startup scripts.

驗證後端

確認兩個子網路中已建立 VM 執行個體,然後建立公用程式 VM 來存取後端的 HTTP 網站。

  1. 從「導覽選單」依序點選「Compute Engine」>「VM 執行個體」
    請留意開頭為 instance-group-1instance-group-2 的執行個體。

    這些執行個體位於不同可用區,且內部 IP 位置屬於 subnet-asubnet-b CIDR 區塊的一部分。

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

  3. 在「__機器設定__」頁面指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    名稱 utility-vm
    區域
    可用區
    系列 E2
    機型 e2-medium (2 個 vCPU,4 GB 記憶體)
  4. 點選「OS 和儲存空間」

  5. 如果顯示的「映像檔」不是「Debian GNU/Linux 12 (bookworm)」,請按一下「變更」後選擇「Debian GNU/Linux 12 (bookworm)」,再點按「選取」

  6. 點選「網路」

  7. 在「網路介面」部分,點選下拉式選單來編輯網路介面。

  8. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    網路 my-internal-app
    子網路 subnet-a
    主要內部 IPv4 位址 臨時 (自訂)
    自訂臨時 IP 位址 10.10.20.50
    外部 IPv4 位址
  9. 點選「完成」

  10. 點選「建立」

  11. 請注意,用於後端的內部 IP 位址是 10.10.20.210.10.30.2

注意:如果 IP 位址不同,請在下方的兩個 curl 指令中替換 IP 位址。

點選「Check my progress」,確認目標已達成。 設定執行個體範本和建立執行個體群組

  1. 在「utility-vm」部分,點選「SSH」來啟動終端機並連線。

  2. 如果出現「允許透過瀏覽器中的 SSH 連線至 VM」提示訊息,請點選「授權」

  3. 如要驗證 instance-group-1-xxxx 的歡迎頁面,請執行下列指令:

curl 10.10.20.2

輸出內容應如下所示。

輸出內容:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone:
  1. 如要驗證 instance-group-2-xxxx 的歡迎頁面,請執行下列指令:
curl 10.10.30.2

輸出內容應如下所示。

輸出內容:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-q5wp<h2>Server Location</h2>Region and Zone:

注意:此做法很實用,可確認內部負載平衡器是否將流量傳送到兩個後端。
  1. 關閉 utility-vm 的 SSH 終端機:
exit

工作 4:設定內部網路負載平衡器

設定內部網路負載平衡器,平衡兩個後端之間的流量 (後端分別為 instance-group-1instance-group-2),如下方網路圖表所示。

網路圖表

開始設定

  1. 前往 Cloud 控制台,依序點選「導覽選單」圖示 「導覽選單」圖示 >「網路服務」>「負載平衡」
  2. 點選「建立負載平衡器」
  3. 在「負載平衡器類型」部分,選取「網路負載平衡器 (TCP/UDP/SSL)」,然後點選「下一步」
  4. 在「直通或使用 Proxy」部分,選取「直通式負載平衡器」,然後點選「下一步」
  5. 在「公開或內部」部分,選取「內部」,然後點選「下一步」
  6. 在「建立負載平衡器」部分,點選「設定」
  1. 在「負載平衡器名稱」部分輸入 my-ilb
  2. 在「區域」部分輸入
  3. 在「網路」部分,選取 my-internal-app

設定區域性後端服務

後端服務可監控執行個體群組,避免用量超過設定值。

  1. 按一下「後端設定」

  2. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示選取選項)
    執行個體群組 instance-group-1 ()
  3. 點選「完成」

  4. 點選「新增後端」

  5. 在「執行個體群組」部分,選取「instance-group-2 ()」

  6. 點選「完成」

  7. 在「健康狀態檢查」部分,選取「建立健康狀態檢查」

  8. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示選取選項)
    名稱 my-ilb-health-check
    通訊協定 TCP
    通訊埠 80
    檢查時間間隔 10 秒
    逾時間隔 5 秒
    良好健康狀態判定門檻 2
    不良健康狀態判定門檻 3
注意:健康狀態檢查會判斷哪些執行個體可以接收新的連線。HTTP 健康狀態檢查會每 10 秒輪詢執行個體一次,並等待 5 秒來接收回應。良好健康狀態判定門檻為成功 2 次,不良則為失敗 3 次。
  1. 按一下「儲存」
  2. 確認 Cloud 控制台的「後端設定」旁已顯示藍色勾號。如未顯示,請重新檢查一遍,確認是否已完成上述所有步驟。

設定前端

前端會將流量傳送到後端。

  1. 按一下「前端設定」

  2. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    子網路 subnet-b
    「內部 IP 用途」>「IP 位址」 建立 IP 位址
  3. 指定下列屬性,其餘設定保留預設值:

    屬性 值 (按照指示輸入值或選取選項)
    名稱 my-ilb-ip
    靜態 IP 位址 自行選擇
    自訂 IP 位址 10.10.30.5
  4. 按一下「保留」

  5. 在「通訊埠」的「通訊埠編號」,輸入 80

  6. 點選「完成」

檢查並建立內部網路負載平衡器

  1. 點選「檢查並完成」
  2. 檢查「後端」和「前端」
  3. 點選「建立」
    等待負載平衡器建立完成,再開始執行下一項工作。

點選「Check my progress」,確認目標已達成。 設定內部網路負載平衡器

工作 5:測試內部網路負載平衡器

確認 my-ilb 的 IP 位址順利將流量傳送到 instance-group-1instance-group-2

存取內部網路負載平衡器

  1. 從「導覽選單」依序點選「Compute Engine」>「VM 執行個體」
  2. 在「utility-vm」部分,點選「SSH」來啟動終端機並連線。
  3. 如果出現「允許透過瀏覽器中的 SSH 連線至 VM」提示訊息,請點選「授權」
  4. 如要驗證內部網路負載平衡器是否順利轉送流量,請執行下列指令:
curl 10.10.30.5

輸出內容應如下所示。

輸出內容:

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-1zn8<h2>Server Location</h2>Region and Zone: {{{project_0.default_zone_2 | Zone 2}}} 注意:如預期的一樣,流量從內部負載平衡器 (10.10.30.5) 轉送至後端。
  1. 重複執行幾次相同的指令:
curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5

您應該會看到 中的 instance-group-1 中的 instance-group-2 發出回應。如果沒有看到回應,請再次執行指令。

恭喜!

在本實驗室中,您在 區域建立了兩個代管執行個體群組,並設定了防火牆規則來接收傳至這些執行個體的 HTTP 流量,以及來自 Google Cloud 健康狀態檢查工具的 TCP 流量。接著您為這些執行個體群組設定了內部網路負載平衡器,並完成測試。

關閉研究室

如果您已完成研究室,請按一下「End Lab」(關閉研究室)。Google Cloud Skills Boost 會移除您使用的資源,並清除所用帳戶。

您可以針對研究室的使用體驗評分。請選取合適的星級評等並提供意見,然後按一下「Submit」(提交)

星級評等代表您的滿意程度:

  • 1 星 = 非常不滿意
  • 2 星 = 不滿意
  • 3 星 = 普通
  • 4 星 = 滿意
  • 5 星 = 非常滿意

如果不想提供意見回饋,您可以直接關閉對話方塊。

如有任何想法、建議或指教,請透過「Support」(支援) 分頁提交。

Copyright 2022 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。