包含計量、警示和資源健康情況的 Standard Load Balancer 診斷

Azure Load Balancer 提供以下診斷功能:

  • 多維度指標與警示:透過Azure 監視器提供多維度診斷功能,適用於Azure Load Balancer配置。 您可以監視、管理和疑難排解您的 Standard Load Balancer 資源。

  • Resource health:負載平衡器的資源健康狀態狀態可在Resource health頁面的Monitor中取得。 此自動檢查會通知您負載平衡器資源目前的可用性。

本文提供這些功能的快速導覽,並說明如何將其用於 Standard Load Balancer。

使用多維度計量監視 Azure Load Balancer

Azure Load Balancer 透過 Azure 入口網站中的 Azure Metrics 提供多維度指標,並幫助你即時獲得對負載平衡資源的診斷洞察。 請注意,Basic Load Balancer 不支援多維度指標

各種負載平衡器組態提供下列指標:

計量 資源類型 描述 建議的彙總方式
資料路徑可用性 公用和內部負載平衡器 負載平衡器會持續使用區域內的資料路徑,從負載平衡器前端到支援您虛擬機器的網路。 只要仍有健全的執行個體存在,量測就會遵循與應用程式負載平衡流量相同的路徑。 系統會驗證正在使用的資料路徑。 此量測對您的應用程式不可見,且不會干擾其他作業。 平均
健康狀態探查狀態 公用和內部負載平衡器 負載平衡器會使用分散式的健康探查服務,依照您的組態設定來監視應用程式端點的健康狀態。 此指標提供負載平衡器集區中每個執行個體端點的彙總或依端點篩選的檢視。 您可以依健康探查組態,查看負載平衡器如何檢視應用程式的健康狀態。 平均
SYN 計數 公用和內部負載平衡器 負載平衡器不會終止傳輸控制通訊協定 (TCP) 連線,也不會與 TCP 或使用者資料包通訊協定 (UDP) 流量互動。 流量及其交握一律發生在來源與虛擬機器執行個體之間。 為了更有效疑難排解 TCP 通訊協定案例,您可以使用 SYN 封包計數器來了解建立了多少 TCP 連線嘗試。 此指標會回報接收到的 TCP SYN 封包數量。 Sum
來源網路位址轉譯 (SNAT) 連線計數 公用負載平衡器 負載平衡器會回報對公共 IP 前端進行位址偽裝的傳出流量數量。 SNAT 連接埠是可耗盡的資源。 此指標可顯示您的應用程式在起始傳出流量時對 SNAT 的依賴程度。 系統會回報成功與失敗的傳出 SNAT 流量計數。 這些計數器可用於疑難排解並了解傳出流量的健康狀態。 Sum
已配置的 SNAT 連接埠 公用負載平衡器 負載平衡器會回報每個後端執行個體已配置的 SNAT 連接埠數量 平均。
已使用的 SNAT 連接埠 公用負載平衡器 負載平衡器會回報每個後端執行個體實際使用的 SNAT 連接埠數量。 平均
位元組計數 公用和內部負載平衡器 負載平衡器會回報每個前端所處理的資料量。 您可能會注意到位元組未平均分佈於後端執行個體之間。 這是預期的,因為 Azure Load Balancer 演算法是基於流。 Sum
封包計數 公用和內部負載平衡器 負載平衡器會回報每個前端所處理的封包數。 Sum

附註

與頻寬相關的指標 (例如 SYN 封包、位元組計數和封包計數) 不會擷取透過 UDR (例如來自 NVA 或防火牆) 傳送至內部負載平衡器的任何流量。

SYN 計數、封包計數、SNAT 連線計數和位元組計數指標不提供最大值與最小值彙總。 不建議對資料路徑可用性與健康探查狀態使用計數彙總。 請改用平均值,以取得最能代表健康狀態的資料。

附註

資料路徑可用性指標在負載平衡器建立或更新後,可能需要長達 10 分鐘才會出現在 Azure 監視器 指標中。

在 Azure 入口網站查看你的負載平衡器指標

Azure 入口網站透過 Metrics 頁面揭露負載平衡器的指標。 此頁面可在特定資源的負載平衡器資源頁面和 Azure 監視器 頁面上取得。

附註

Azure Load Balancer 不會將健康探針傳送到已配置的虛擬機。 當虛擬機器被解除配置時,負載平衡器會停止回報該實例的指標。 無法取得的指標會在入口網站中以虛線顯示,或顯示無法取得指標的錯誤訊息。

若要檢視負載平衡器資源的指標:

  1. 前往計量頁面,並執行下列其中一項工作:

    • 在負載平衡器的資源頁面中,於下拉式清單中選取指標類型。

    • 在 Azure 監視器 頁面中,選擇負載平衡器資源。

  2. 設定適當的指標彙總類型。

  3. (選擇性) 設定所需的篩選和分組。

  4. (選擇性) 設定時間範圍和彙總。 預設會以 UTC 顯示時間。

附註

解讀特定指標時,時間彙總相當重要,因為資料每分鐘取樣一次。 如果你將時間聚合設為五分鐘,並對 SNAT 分配等指標使用指標彙總類型 Sum,圖表會顯示分配總 SNAT 端口的五倍。

建議:在分析指標彙整類型 Sum and Count 時,使用大於一分鐘的時間彙總值。

透過 API 以程式設計方式擷取多維度指標

關於取得多維度度量定義與值的 API 指引,請參閱 Azure Monitoring REST API 的導覽。 你可以透過新增「所有指標」類別的診斷設定,將這些指標寫入儲存帳號。

常見的 Azure Load Balancer 診斷場景與推薦檢視

我的負載平衡器前端資料路徑是否已啟動並可用?

展開

資料路徑可用性指標會描述區域內資料路徑到虛擬機器所在計算主機的健康狀態。 這個指標反映了你的負載平衡器的健康狀況,根據你的設定和 Azure 基礎設施。 您可以使用此指標來:

  • 監視服務的外部可用性。

  • 調查服務部署所在的平台,並判斷其是否健全。 判斷客體 OS 或應用程式執行個體是否健全。

  • 釐清事件是否與您的服務或底層資料平面相關。 請勿將此指標與健康探查狀態指標混淆。

若要取得負載平衡器資源的資料路徑可用性:

  1. 請確認已選取正確的負載平衡器資源。

  2. 在指標下拉式清單中,選取資料路徑可用性。

  3. 在彙總下拉式清單中,選取平均。

  4. 另外,將前端 IP 位址或前端連接埠作為維度新增篩選,並指定所需的前端 IP 位址或前端連接埠。 接著依選取的維度進行分組。

此指標由區域內模擬流量的探查服務所產生。 探查服務會定期產生符合您部署之前端和負載平衡規則的封包。 封包接著從來源遍歷該區域到後端池中虛擬機的主機。 負載平衡器基礎結構會執行與所有其他流量相同的負載平衡和轉譯作業。 探查抵達後端集區中虛擬機器所在的主機後,主機會對探查服務產生回應。 您的虛擬機器不會看到此流量。

請注意,資料路徑可用性指標只會在具有負載平衡規則的前端 IP 組態上產生。

資料路徑可用性指標可能因下列原因而降低:

  • 後端集區中已沒有任何健全的虛擬機器。

  • 發生基礎結構中斷。

基於診斷目的,您可以搭配健康探查狀態一起使用資料路徑可用性的指標。

在大多數情境中,請使用平均作為彙總。

我的負載平衡器後端執行個體是否回應探查?

展開

健康探查狀態指標會描述您在設定負載平衡器健康探查時所定義的應用程式部署健康狀態。 負載平衡器會使用健康探查的狀態來判斷新流量要傳送到哪裡。 健康探測源自 Azure 基礎架構位址,並可在虛擬機的訪客作業系統中可見。

若要取得負載平衡器資源的健康探查狀態指標:

  1. 選擇帶有平均彙整類型的健康探針狀態指標。

  2. 在必要的前端 IP 位址或連接埠 (或兩者) 上套用篩選。

健康探查會因下列原因而失敗:

  • 您將健康探查設定為未接聽、未回應或使用錯誤通訊協定的連接埠。 如果您的服務使用直接伺服器回傳或浮動 IP 規則,請確認服務在 NIC 的 IP 組態 IP 位址,以及以前端 IP 位址設定的回送介面上接聽。

  • 您的網路安全性群組、虛擬機器的客體 OS 防火牆或應用程式層篩選器未允許健康探查流量。

在大多數情境中,請使用平均作為彙總。

我要如何檢查我的傳出連線統計資料?

展開

SNAT 連線計數指標表示 外向流量中成功和失敗的連線數量。

連線容量大於零的失敗表示 SNAT 埠已耗盡。 你必須進一步調查,找出可能導致這些故障的原因。 SNAT 連接埠耗盡會表現為無法建立傳出流量。 請檢閱關於傳出連線的文章,以了解運作中的情境與機制,並學習如何緩解及設計以避免 SNAT 連接埠耗盡。

如果出站連接間歇性故障,可能是 SNAT 埠耗盡所致。 請檢查 SNAT 埠使用率與分配指標 ,並檢視 SNAT 埠口耗盡指引。 若要提升 SNAT 容量,請使用 Azure NAT 閘道。

若要取得 SNAT 連線統計資料:

  1. 選取 SNAT 連線指標類型,並將彙總設為總和。

  2. 依連線狀態分組,讓成功與失敗的 SNAT 連線計數以不同線條呈現。

我要如何檢查 SNAT 連接埠使用量和配置情況?

展開

已使用的 SNAT 連接埠指標會追蹤為維持傳出流量而消耗的 SNAT 連接埠數量。 此指標指出,位於負載平衡器後方且沒有公用 IP 位址的後端 VM 或虛擬機擴展集,與網際網路來源之間建立了多少個唯一流程。 透過比較您使用的 SNAT 端口數量與分配 SNAT 端口指標,您可以判斷您的服務是否正經歷或面臨 SNAT 耗盡及出站流量故障的風險。

如果指標顯示存在傳出流量失敗風險,請參考相關文章並採取緩解措施,以確保服務健康狀態。

若要檢視 SNAT 連接埠使用量和配置情況:

  1. 將圖表的時間彙總設為 1 分鐘,以確保顯示所需資料。

  2. 選取已使用的 SNAT 連接埠及/或已配置的 SNAT 連接埠作為指標類型,並將彙總設為平均。

    • 依預設,這些指標會顯示每個後端虛擬機器或虛擬機器擴展集所配置或使用的 SNAT 連接埠平均數。 這些指標對應到對負載平衡器進行對應的所有前端 公共 IP,並跨 TCP 和 UDP 彙總。

    • 若要檢視負載平衡器所使用或配置的 SNAT 連接埠總數,請使用總和指標彙總。

  3. 篩選特定的通訊協定類型、一組後端 IP,及/或前端 IP。

  4. 若要監視每個後端或前端執行個體的健康狀態,請套用分割。

    • 請注意,分割一次只能顯示單一指標。
  5. 例如,監控每台機器的 TCP 流量 SNAT 使用情況,依 平均值彙總、依 後端 IP 劃分,並依 協定類型過濾。

如何檢查我的服務的連入和連出連線嘗試?

展開 SYN 封包指標會描述 TCP SYN 封包的數量,這些封包已抵達或已為與特定前端相關聯的傳出流量而傳送。 您可以使用此指標來了解服務的 TCP 連線嘗試情況。

如需傳出連線的詳細資訊,請參閱來源網路位址轉譯 (SNAT) 的傳出連線

在大多數情境中,請使用總和作為彙總。

我要如何檢查網路頻寬使用量?

展開

位元組和封包計數指標會描述服務在每個前端層級所傳送或接收的位元組和封包數量。

在大多數情境中,請使用總和作為彙總。

若要取得位元組或封包計數統計資料:

  1. 選擇 元組計數 和 封包計數 指標類型,並將 Sum 設為彙總。

  2. 執行下列任一步驟:

    • 對特定 前端 IP、前端連接埠、後端 IP 或後端連接埠套用篩選。

    • 在不套用任何篩選的情況下,取得負載平衡器資源的整體統計資料。

我要如何診斷負載平衡器部署?

展開

在單一圖表上結合資料路徑可用性與健康探查狀態指標,即可找出問題所在並加以解決。 你可以確信 Azure 運作正常,並利用這些資訊確定設定或應用程式是根本原因。

你可以利用健康探測指標來了解 Azure 如何根據你提供的配置來評估部署的健康狀況。 在監視或判斷原因時,檢視健康探查一向是很好的第一步。

你還可以更進一步,利用資料路徑可用性指標來洞察 Azure 如何看待負責你特定部署的底層資料平面健康狀況。 當您同時結合這兩個指標時,就能如以下範例所示,釐清可能發生錯誤的位置:

結合資料路徑可用性與健康探查狀態指標。

圖:結合資料路徑可用性與健康探查狀態指標

圖表顯示下列資訊:

  • 在圖表開始時,裝載虛擬機器的基礎結構無法使用,且為 0%。 之後,基礎結構恢復健全,虛擬機器可供連線,並且後端中放置了多部虛擬機器。 代表資料路徑可用性的藍色曲線其後達到 100%,顯示了此資訊。

  • 健康狀態探查狀態由紫色追蹤線表示,在圖表一開始時為 0%。 以綠色圈選的區域突顯健康狀態探查轉為健全的位置,並且在該時間點客戶的部署即可接受新的流量。

這張圖表幫助你排除部署問題,而不必猜測或詢問客服是否有其他問題發生。 服務無法使用是因為健康狀態探查失敗,原因可能是組態錯誤或應用程式失敗。

為多維度指標設定警示

Azure Load Balancer 支援易於設定的多維度指標警示。 為特定指標設定自訂閾值以觸發不同嚴重性等級的警示,進而實現免接觸的資源監視體驗。

若要設定警示:

  1. 前往負載平衡器的警示頁面

  2. 建立新的警示規則

    1. 設定警報條件(為避免雜訊警報,將彙整類型設為平均,回溯五分鐘資料視窗,閾值為95%)

    2. (選擇性) 新增動作群組以進行自動修復

    3. 指派警示嚴重性、名稱與描述,以便直覺地回應

傳入可用性警示

附註

如果你的負載平衡器的後端池是空的,表示負載平衡器沒有任何有效的資料路徑可供測試。 因此,資料路徑可用性指標無法使用,且資料路徑可用性指標上設定的任何 Azure 警報都不會觸發。

若要針對入站可用性發出警示,您可以使用資料路徑可用性和健康探查狀態計量,建立兩個個別的警示。 客戶可能有不同的情境需要特定的警示邏輯,但以下範例對大多數配置都很有幫助。

透過資料路徑可用性,當特定負載平衡規則無法使用時,你可以發出警報。 您可以透過設定資料路徑可用性的警示條件,並依前端連接埠與前端 IP 位址的所有目前值與未來值進行分割,來設定此警示。 將警報邏輯設定為小於或等於 0,當任何負載平衡規則失效時,該警報就會觸發。 請依照您期望的評估方式設定彙總粒度與評估頻率。

透過使用健康探針狀態,當某個後端實例長時間未回應健康探針時,你可以發出警示。 設定警示條件以使用健康探測狀態指標,並使用 平均 彙總類型,依後端 IP 位址和後端連接埠分割。 這可確保您能針對每個個別後端執行個體在特定連接埠上提供流量服務的能力分別發出警示。

傳出可用性警示

對於外站可用性,你可以透過使用 SNAT 連線數量和 SNAT 埠碼指標來設定兩個獨立的警示。

若要偵測出站連線失敗,請使用 SNAT 連線計數計量來設定警示,並將篩選條件設為 Connection State = Failed。 使用總計彙總。 接著,將這個指標依後端 IP 位址拆分,並設定包含所有目前和未來的值,這樣你可以針對每個連線失敗的後端實例分別發出警示。 請將閾值設為大於 0,或在您預期會看到一些傳出連線失敗時設為更高的數值。

透過已使用的 SNAT 連接埠計量,你可以設定警示,以因應較高的 SNAT 耗盡和對外連線失敗風險。 使用此警示時,請確保依後端 IP 位址和協定來分開。 使用平均彙總。 將閾值設為超過你為不安全的實例分配的埠數百分比。 例如,當後端執行個體使用其配置連接埠的 75% 時,設定低嚴重性警示。 當其使用 90% 或 100% 的配置連接埠時,設定高嚴重性警示。

資源健康狀態

Standard Load Balancer 資源的健康狀態會透過現有的資源健康狀態顯示於監視器>服務健康狀態底下。 系統每兩分鐘進行一次評估,透過量測資料路徑可用性來判斷前端負載平衡端點是否可用。

資源健康狀態 描述
可用 您的 Standard Load Balancer 資源處於健全且可用的狀態。
已降級 您的 Standard Load Balancer 發生由平台或使用者啟動的事件,影響效能。 資料路徑可用性指標在至少兩分鐘內回報低於 90% 但高於 25% 的健康狀態。 在此狀態下,您會感受到中度到嚴重的效能影響。 請參閱 Support 與故障排除,Azure Load Balancer 的相關資訊,以判斷是否有使用者發起的事件影響您的可用時間。
[無法使用] 您的 Standard Load Balancer 資源並非健康狀態。 資料路徑可用性指標在至少兩分鐘內回報低於 25% 的健康狀態。 在此狀態下,您會遇到顯著的效能影響,或是傳入連線無法使用。 可能有使用者或平台事件導致無法使用。 請參閱 Support 與故障排除,Azure Load Balancer 的相關資訊,以判斷是否有使用者發起的事件影響您的可用時間。
Unknown 您的負載平衡器資源的健康狀態在過去 10 分鐘內尚未更新,或尚未接收到資料路徑可用性的資訊。 此狀態應該是暫時性的,系統會在收到資料後立即反/映正確的狀態。

若要檢視您的公用 Standard Load Balancer 資源的健康狀態:

  1. 選取監視器>服務健康狀態。

  2. 選取資源健康狀態,然後確認已選取訂用帳戶 ID 與資源類型 = 負載平衡器。

  3. 在清單中,選取負載平衡器資源以檢視其歷史健康狀態。

您可以在資源健康狀態文件中取得資源健康狀態的一般說明。

資源健康狀態警示

Azure 資源健康狀態警示能近乎即時地通知你負載平衡器資源的健康狀態變化。 建議您設定資源健康狀態警示,在負載平衡器資源處於已降級或無法使用狀態時通知您。

當你為負載平衡器建立 Azure 資源健康警示時,Azure 會向你的 Azure 訂閱發送資源健康通知。 您可以根據下列項目建立並自訂警示:

  • 受影響的訂用帳戶
  • 受影響的資源群組
  • 受影響的資源類型 (負載平衡器)
  • 特定資源 (您選擇設定警示的任何負載平衡器資源)
  • 受影響的負載平衡器資源的事件狀態
  • 受影響的負載平衡器資源的目前狀態
  • 受影響的負載平衡器資源的先前狀態
  • 受影響的負載平衡器資源的原因類型

您也可以設定警示的接收對象:

  • 新的動作群組 (可用於未來的警示)
  • 現有的動作群組

如需如何設定這些資源健康狀態警示的詳細資訊,請參閱:

後續步驟