當您遇到CLB請求逾時或流量限速等網路連接問題,或需要瞭解CLB的負載和效能時,您可以利用CloudMonitor功能查看CLB資源的運行狀態和各項指標。您可以通過控制台、API或SDK查看CLB的監控資訊。
前提條件
請確保您已經建立了執行個體並添加了監聽。具體操作,請參見:
通過控制台查看監控
在頂部功能表列,選擇CLB執行個體所屬的地區。
在實例管理頁面,找到目標執行個體,通過以下任意一種方式查看監控資訊。
方式一:在監控列單擊
。在彈出的監控資訊面板,選擇執行個體或監聽頁簽。方式二:單擊執行個體ID。在實例詳情頁簽,單擊監控頁簽,選擇執行個體或監聽頁簽。
您可以選擇執行個體下的頻寬/流量頁簽,在監控圖表上方查看CLB處理的請求和響應的資料處理量。
您可以通過設定時間來調整監控圖表顯示的時間段。開啟自動重新整理後監控圖表每分鐘自動重新整理監控資料。
支援查看的監控指標如下。
監控指標 | 說明 |
流量 |
|
資料封包數 |
|
並行串連數 |
|
新建串連數 | 在統計周期內,建立立的從用戶端串連到負載平衡的串連請求的平均數。 |
丟棄流量 |
|
丟棄資料封包數 |
|
丟棄串連數 | 每秒丟棄的串連數。 |
以下是7層(HTTP/HTTPS)監聽特有的監控指標。 | |
7層合約QPS | 每秒可以處理的HTTP/HTTPS請求。 |
7層合約RT | 負載平衡的平均回應時間。 |
7層協議2XX/3XX/4XX/5XX/其他狀態代碼 | 監聽返回的HTTP響應代碼的數量。 |
7層協議UpstreamCode4XX/5XX | 後端伺服器返回的HTTP響應代碼的數量。 |
7層合約Upstream RT | 後端伺服器的平均回應時間。 |
CLB 監控資料分為執行個體級和監聽級兩個維度。執行個體級指標反映 CLB 執行個體整體的流量和串連情況;監聽級指標反映單個監聽連接埠的流量和串連情況。CLB 監控暫不支援按後端 ECS 執行個體或應用維度拆分流量資料,無法通過 CLB 控制台直接查看哪個後端應用佔用了最多流量。如需定位高流量來源,建議通過以下替代方案排查:
在 ECS 控制台查看各後端 ECS 執行個體的頻寬監控資料:進入目標 ECS 執行個體的執行個體詳情頁,選擇監控頁簽,可按執行個體維度分別查看各後端伺服器的網路頻寬使用方式。
分析應用程式的訪問日誌,通過日誌中記錄的請求來源和流量統計定位高流量來源。
登入後端伺服器,執行命令
iftop -i eth0 -PnN,即時查看網卡上各串連的流量佔用情況。
CLB 監控資料的預設統計周期為 60 秒。通過CloudMonitor API(如 DescribeMetricList 介面)查詢監控資料時,Period 參數的預設取值為 60(秒),監控圖表中每個資料點代表對應時間點前 60 秒內的統計值。
通過API查看監控
通過CloudMonitorAPI可以查看CLB執行個體的監控項和詳細監控資料。
通過API查看監控資料的流程如下:
查看資料命名空間Namespace。調用
DescribeProjectMeta介面查詢CloudMonitor中CLB的資料命名空間Namespace。可選:查看已有監控項。調用
DescribeMetricMetaList介面查詢CloudMonitor開放的時序類指標監控項描述或直接查看監控項說明,更多資訊,請參見監控警示項說明。查看指定監控項的監控資料。
調用
DescribeMetricLast介面查詢CLB指定監控對象的最新監控資料。調用
DescribeMetricList介面查詢CLB指定時間段內監控對象的時序指標監控資料。
DescribeProjectMeta
調用DescribeProjectMeta介面查詢CloudMonitor中CLB的資料命名空間Namespace。
將請求參數中警示產品標籤過濾Labels的值設定為
[{"name":"product","value":"SLB"}],其他參數保持預設值。根據返回參數,擷取CloudMonitor中負載平衡資料命名空間Namespace的值為
acs_slb_dashboard。
DescribeMetricMetaList
調用DescribeMetricMetaList介面查詢CloudMonitor開放的時序類指標監控項描述。
將請求參數中資料命名空間Namespace的值設定為acs_slb_dashboard,其他參數保持預設值。
根據返回參數,查看負載平衡的時序類指標監控項。可以查看本次樣本中使用的監控項7層合約QPS是否存在。
DescribeMetricLast
調用DescribeMetricLast介面查詢負載平衡指定監控對象的最新監控資料,本樣本查看7層合約QPS的最新監控資料。
在請求參數中,設定查詢7層合約QPS的參數。
需要配置以下參數,其他參數可保持預設值。
MetricName:監控項名稱,本樣本設定為InstanceQps。
Dimensions:維度map,用於查詢指定資源的監控資料,本樣本設定為
[{"instanceId":"lb-bp1r92vzpemy099f******"}]。Namespace:產品的資料命名空間,用於區分不同的產品,本樣本設定為acs_slb_dashboard。
根據返回參數,查看7層合約QPS的最新監控資料。
DescribeMetricList
調用DescribeMetricList介面查詢負載平衡指定時間段內的時序指標監控資料。
在請求參數中,設定查詢指定時間內7層合約QPS的監控資料。
需要配置以下參數,其他參數可保持預設值。
MetricName:監控項名稱,本次樣本設定為InstanceQps。
Namespace:產品的資料命名空間,用於區分不同的產品,本次樣本設定為acs_slb_dashboard。
Dimensions:維度map,用於查詢指定資源的監控資料,本樣本設定為
[{"instanceId":"lb-bp1r92vzpemy099f******"}]。StartTime:開始時間,StartTime不能等於或大於EndTime,本次樣本設定為
2020-03-28 00:10:00。支援格式:
Unix時間戳記:從1970年1月1日開始所經過的毫秒數。
Format格式:YYYY-MM-DDThh:mm:ssZ。
EndTime:結束時間,支援的格式和StartTime一致,本次樣本設定為
2020-03-28 00:11:00。
根據返回參數,查看7層合約QPS在指定時間內的監控資料。
通過SDK查看監控
介紹如何通過SDK查看CLB監控項和詳細監控資料。本文以SDK調用DescribeMetricList介面查詢CLB執行個體每秒最大並發串連數為例介紹。
設定以下請求參數,其他參數可保持預設值。
MetricName:監控項名稱。本文設定為InstanceMaxConnection。
Namespace:產品的資料命名空間。本文設定為acs_slb_dashboard。
Dimensions:維度map,用於查詢指定資源的監控資料。本文設定為[{"instanceId":"lb-bp1r92vzpemy099f******"}]。
StartTime:開始時間,不能等於或大於EndTime。本文設定為
2022-10-13 20:45:03。支援格式:
Unix時間戳記:從1970年1月1日開始所經過的毫秒數。
Format格式:YYYY-MM-DDThh:mm:ssZ。
EndTime:結束時間,支援的格式和StartTime一致,本文設定為
2022-10-13 20:47:03。
選擇SDK樣本頁簽下的Python頁簽,單擊運行樣本。
在下方彈出的運行面板中查看運行結果。
常見問題
CLB監控顯示有串連數和頻寬資料,但請求數為空白?
CLB執行個體的公網IP可能被互連網掃描程式訪問。掃描程式通過IP直接發起TCP串連,這些串連會被計入串連數和頻寬統計,但掃描程式不會發送有效HTTP請求,因此七層監控中的請求數顯示為空白。
這是CLB監控的正常統計行為:
串連數和頻寬指標統計所有TCP層面的串連,包括掃描產生的串連。
請求數(QPS)僅統計七層HTTP/HTTPS協議的有效請求,不包含無HTTP請求的TCP串連。
如果您從CLB遷移到ALB後發現CLB仍有串連和頻寬資料但請求數為空白,通常也是掃描行為導致,不影響已遷移的業務。
能否用 CLB 監控 QPS 精確推算實際請求數?
不能。CLB 監控中的 QPS 是分鐘粒度的彙總統計值,與逐筆請求數存在統計偏差,無法與實際請求數精確等同,也不能通過 QPS 與真實值的倍數關係換算請求數或跨執行個體比例推算。
如需估算到達 CLB 的請求數,建議使用監控中的「7 層協議 QPS」指標,不建議使用狀態代碼類指標。狀態代碼類指標僅統計 CLB 返回給用戶端的狀態代碼,不包含未產生狀態代碼的請求(例如串連未完成即中斷的情況),存在統計遺漏。
如何查看 CLB 歷史流量總和及後端 ECS 流入頻寬?
查看歷史總流量
CLB 控制台監控展示的是即時資料流量與頻寬的變化趨勢,反映的是某一時刻的速率,無法直接匯總出某個時間段(如上個月)的流量總和;且監控資料最多支援查詢最近 31 天以內的歷史資料。如需按月統計歷史流出流量總和,請通過賬單的用量資料查看:
單擊表格右上方的定製列表徵圖,在用量資訊下方勾選用量和用量單位,然後單擊確定。
在表格中找到計費項目為公網計費方式的行,其用量列的數值即為該賬單月份的公網流出流量總和(單位通常為 GB)。
CLB 僅對公網出流量計費,入流量免費,賬單中流量費用均為流出流量。
查看後端 ECS 流入頻寬
請求經CLB轉寄到後端 ECS 時表現為內網流量,因此後端 ECS 的接收流量需通過其內網頻寬指標查看。您可以通過以下方式查看:
進入目標 ECS 執行個體的執行個體詳情頁,選擇監控頁簽,可按執行個體維度分別查看各後端伺服器的公網和內網頻寬使用方式。
若需五元組維度明細流量資訊,可配置 NIS 流量分析器(計費項目)進行核實。
CLB 監控中的並發串連數代表什嗎?
定義:CLB 監控中的並發串連數指當前活躍的 TCP/UDP 串連會話數,統計的是用戶端到 CLB 之間的建聯數量,而非 CLB 到後端 ECS 的串連數,也不代表訪問使用者數。
與規格上限的區分:監控圖表中顯示的並發串連數僅為當前實際串連數,並非Server Load Balancer執行個體的規格上限。如需判斷是否接近瓶頸,請結合執行個體效能說明中的並發串連數上限進行評估。
串連數出現規律性波動的原因:若並發串連數出現規律性的一高一低波動(而非平緩曲線),可能是因為業務側存在部分用戶端進行規律性的串連操作(如定時心跳、定時資料拉取)所導致,屬於正常現象。
CLB TCP 監聽是否支援回應時間(RT)監控?
不支援。CLB 基礎監控中,僅 7 層(HTTP/HTTPS)監聽支援回應時間(RT)指標,4 層(TCP/UDP)監聽不支援應用程式層回應時間監控。如需分析 TCP 監聽的延遲原因,建議通過後端伺服器(如Nginx)的訪問日誌進行分析。
相關文檔
如果您需要查看CLB監控項指標具體含義,請參見監控警示項說明。