本頁說明負載平衡器的 Network Analyzer 洞察資料。如要瞭解所有洞察類型,請參閱「洞察群組和類型」。
在 Recommender API 中查看洞察資料
如要在 gcloud CLI 或 Recommender API 中查看這些洞察資料,請使用下列洞察資料類型:
google.networkanalyzer.networkservices.loadBalancerInsight
您需要具備下列權限:
recommender.networkAnalyzerLoadBalancerInsights.list
recommender.networkAnalyzerLoadBalancerInsights.get
如要進一步瞭解如何使用 Recommender API 取得 Network Analyzer 深入分析資料,請參閱「使用 Recommender CLI 和 API」。
未設定健康狀態檢查防火牆
這項洞察資料表示,負載平衡器使用的 VPC 網路並未設定健康狀態檢查防火牆。洞察資料包含下列資訊:
- 負載平衡器:負載平衡器的名稱。
- 轉送規則:特定轉送規則的名稱。
- 網路:負載平衡器所在網路的名稱。
- 封鎖防火牆:封鎖健康檢查 IP 位址範圍的防火牆名稱。
- 後端設定錯誤:負載平衡器的後端未包含允許健康檢查 IP 位址範圍的防火牆規則。
建議
設定健康狀態檢查防火牆規則,明確允許健康狀態檢查 IP 位址範圍存取負載平衡器後端。詳情請參閱「負載平衡器的防火牆規則」。
健康狀態檢查 IP 位址範圍遭到封鎖
這項洞察資料表示使用者設定的防火牆規則封鎖了健康狀態檢查 IP 位址範圍。您可以從洞察資料詳細資料中,找出封鎖健康檢查位址範圍的防火牆規則。
建議
如要瞭解負載平衡器類型的健康狀態檢查位址範圍,請參閱「負載平衡器的防火牆規則」。
- 如果封鎖防火牆規則的 IP 位址範圍較廣,請為健康狀態檢查 IP 位址範圍建立優先順序較高的允許規則。
- 如果封鎖防火牆規則的 IP 位址範圍與健康狀態檢查 IP 位址範圍相同或較小,請移除封鎖防火牆規則。
防火牆設定不一致
這項洞察資料表示後端 VM 的防火牆設定不一致。健康狀態檢查 IP 位址範圍在某些後端 VM 上允許,但在其他 VM 上則遭到拒絕。在某些後端 VM 上誤修改網路標記或服務帳戶時,就會發生這個問題。洞察資料包含下列資訊:
- 負載平衡器:負載平衡器名稱
- 轉送規則:特定轉送規則的名稱
- 網路:負載平衡器所在網路的名稱
- 封鎖防火牆:封鎖健康檢查範圍的防火牆名稱
- 部分允許防火牆:允許在正確設定的後端 VM 上執行健康狀態檢查流量的防火牆名稱
- 後端設定有誤:後端發生此問題,即健康狀態檢查 IP 位址範圍的防火牆設定無法正常運作
相關主題
建議
找出設定錯誤的標記,方法是比較設定錯誤的後端 VM 上設定的標記,以及在部分允許的防火牆規則上設定的標記。修改錯誤設定的後端 VM 上的標記和服務帳戶,使其與正常運作的後端 VM 上的標記和服務帳戶具有相同的值。
健康狀態檢查 IP 位址範圍有部分遭到封鎖
這項洞察資料指出,所有後端都已部分封鎖健康檢查範圍的流量。部分健康狀態檢查 IP 位址範圍允許健康狀態檢查流量,其他健康狀態檢查 IP 位址範圍則不允許。洞察資料包含下列資訊:
- 負載平衡器:負載平衡器名稱
- 轉送規則:特定轉送規則的名稱
- 網路:負載平衡器所在網路的名稱
- 封鎖防火牆:封鎖健康檢查範圍的防火牆名稱
- 部分允許防火牆:允許在正確設定的後端 VM 上執行健康狀態檢查流量的防火牆名稱
- 後端設定有誤:後端發生此問題,即健康狀態檢查範圍的防火牆設定無法正常運作
- 已封鎖的健康狀態檢查範圍:健康狀態檢查流量遭到封鎖的 IP 位址範圍
相關主題
建議
請比較部分允許防火牆規則的 IP 位址範圍,以及負載平衡器類型的健康狀態檢查 IP 位址範圍。如果缺少任何 IP 位址範圍,請將這些範圍新增至允許的防火牆規則。如果洞察資訊仍持續出現,請確認部分允許防火牆規則的優先順序高於拒絕防火牆規則的優先順序。
後端服務平衡模式會破壞工作階段相依性
當以 Proxy 為基礎的負載平衡器後端服務具有 NONE
以外的工作階段相依性,且有一或多個使用 UTILIZATION
平衡模式的執行個體群組後端時,系統就會觸發這項洞察。如果負載均衡器的流量偏低,工作階段相依性可能會中斷。當負載平衡器新增或移除後端時,後端數量也會隨之變動,這時負載平衡器也會捨棄部分工作階段,例如在健康狀態檢查失敗或隨後成功的情況下。因此,您可以透過調整後端數量來控制要捨棄的工作階段數量。這類變更也會中斷這些工作階段的工作階段相依性。
這項洞察包含下列資訊:
- 後端服務:受影響的後端服務。
- 轉送規則:將流量導向此後端服務的轉送規則。
- 工作階段相依性:後端服務使用的工作階段相依性。
- 受影響的後端:使用
UTILIZATION
平衡模式的後端。
相關主題
建議
如要使用 NONE
以外的工作階段相依性,您必須使用 RATE
或 CONNECTION
平衡模式。您只能透過 Google Cloud CLI 或 Compute Engine API 執行這項作業,不能在 Google Cloud 控制台上執行。
如果 Proxy 負載平衡器後端服務使用 HTTP、HTTPS 或 HTTP/2 通訊協定,請使用 gcloud compute backend-services update-backend
指令並選擇率平衡模式,將平衡模式切換為 RATE
。
以下程式碼範例說明如何使用此指令將模式切換為 RATE
:
gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \ BACKEND_SERVICE_SCOPE \ --instance-group=INSTANCE_GROUP_NAME \ INSTANCE_GROUP_SCOPE \ --balancing-mode=RATE \ TARGET_CAPACITY
如果 Proxy 負載平衡器後端服務使用非 HTTP 通訊協定 (例如 TCP 或 SSL),請使用 gcloud compute backend-services update-backend
指令並選擇連線平衡模式,將平衡模式切換為 CONNECTION
。
下列程式碼範例說明如何使用這個指令將模式切換為 CONNECTION
:
gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \ BACKEND_SERVICE_SCOPE \ --instance-group=INSTANCE_GROUP_NAME \ INSTANCE_GROUP_SCOPE \ --balancing-mode=CONNECTION \ TARGET_CAPACITY
在兩個範例中,請替換下列項目:
- BACKEND_SERVICE_NAME:後端服務名稱。
- BACKEND_SERVICE_SCOPE:後端服務的範圍。如果是全球後端服務,請使用
--global
。針對區域性後端服務,請使用--region=
REGION,並將 REGION 替換為區域。 - INSTANCE_GROUP_NAME:後端執行個體群組的名稱。
- INSTANCE_GROUP_SCOPE:執行個體群組的位置。如果是地區代管執行個體群組,請使用
--region=
REGION,並將 REGION 替換成地區。如果是區域執行個體群組,請使用--zone=
ZONE,並將 ZONE 替換為區域。 - TARGET_CAPACITY:目標費率或目標連線規格。如要使用費率平衡模式,請使用
--max-rate=
或--max-rate-per-instance=
標記,並參閱「後端服務」一文中的「費率平衡模式」。如要使用連線排除平衡模式,請使用--max-connections=
或--max-connections-per-instance=
旗標,並參閱「後端服務」一文中的「連線平衡模式」。
後端服務健康狀態檢查與流量使用的通訊埠不同
負載平衡器會對不同通訊埠上的部分後端執行健康狀態檢查,而非負載平衡器用於提供流量的已命名通訊埠。除非您刻意將負載平衡器設定為使用其他通訊埠,否則這項設定可能會發生問題。
這項洞察包含下列資訊:
- 後端服務:受影響的後端服務。
- 轉送規則:將流量導向後端服務的轉送規則。
- 服務通訊埠名稱:後端服務用於服務流量的通訊埠名稱。
- 健康狀態檢查:後端服務使用的健康狀態檢查。
- 健康狀態檢查通訊埠編號:健康狀態檢查使用的通訊埠。
- 受影響的後端:服務通訊埠與健康狀態檢查通訊埠不同的執行個體群組。
相關主題
請參閱「類別和通訊埠規格」。
建議
使用「使用服務通訊埠規格」設定健康狀態檢查,讓健康狀態檢查使用與後端服務相同的通訊埠。下列程式碼範例說明如何使用 Google Cloud CLI 指令更新健康檢查,以便使用服務端口:
gcloud compute health-checks update PROTOCOL HEALTH_CHECK_NAME \ HEALTH_CHECK_SCOPE \ --use-serving-port
更改下列內容:
- PROTOCOL:健康狀態檢查使用的通訊協定。
- HEALTH_CHECK_NAME:健康檢查的名稱。
- HEALTH_CHECK_SCOPE:健康檢查的範圍。如要進行全域健康狀態檢查,請使用
--global
。如要檢查地區健康狀態,請使用--region=
REGION,並將 REGION 替換為地區。
SSL 憑證未與負載平衡器建立關聯
這表示您的專案含有 Google 代管的 SSL 憑證,但未與負責處理 SSL 或 HTTPS 流量的負載平衡器建立關聯。您必須先將 Google 代管的 SSL 憑證附加至負載平衡器,才能使用這些憑證。您可以在洞察詳細資料中查看未附加的憑證清單。
相關主題
建議
您可以在建立負載平衡器之前、期間或之後,建立 Google 代管的 SSL 憑證。如要成為 ACTIVE
,Google 代管的 SSL 憑證必須與負載平衡器建立關聯,具體來說,就是負載平衡器的目標 Proxy。
建立 SSL 憑證並處於 PROVISIONING
狀態後,您可以在建立負載平衡器時使用該憑證,也可以用來更新現有的負載平衡器。如要進一步瞭解 Google 代管憑證,請參閱「Google 代管 SSL 憑證疑難排解」。
與未公開通訊埠 443 的負載平衡器相關聯的 SSL 憑證
這表示您的專案有 Google 代管的 SSL 憑證無法正常運作,因為與這些憑證相關聯的轉送規則不會公開 443
連接埠。您可以在洞察詳細資料中查看這些憑證的清單。
相關主題
建議
建立或更新負載平衡器時,請使用埠 443
建立轉送規則。