全部產品
Search
文件中心

Server Load Balancer:CLB伺服器組

更新時間:Jul 28, 2026

監聽基於配置的轉寄策略,將業務請求路由至指定的伺服器組。伺服器組按照調度演算法,將業務流量分發至相應的後端伺服器。

工作原理

伺服器群組類型

伺服器群組類型

預設伺服器組

虛擬伺服器組

主備伺服器組

類型說明

每個CLB執行個體內建一個預設伺服器組

(有且僅有一個)

使用者自行建立與管理

使用者自行建立與管理

後端伺服器數量

一個或多個

一個或多個

兩個(一主一備)

特點

  • 執行個體共用:執行個體全域共用,所有監聽共用使用

  • 連接埠限制:同一監聽下的所有後端伺服器必須使用相同連接埠

  • 業務靈活:不同監聽可綁定不同伺服器組

  • 多連接埠:同一個虛擬伺服器組,支援配置不同連接埠的後端伺服器

  • 進階路由:結合網域名稱和URL路徑規則,實現更精細的流量分發

  • 業務靈活:不同監聽可綁定不同伺服器組

  • 高可用:主備自動切換

  • 多連接埠:同一個主備伺服器組,支援配置不同連接埠的後端伺服器

適用情境

簡單架構,所有請求轉寄到同一組後端伺服器

複雜架構,例如按照網域名稱/連接埠分發業務請求

資料庫、核心API 等固定主備模式的業務

支援監聽類型

TCP/UDP/HTTP/HTTPS

TCP/UDP/HTTP/HTTPS

僅TCP/UDP

權重配置

調度演算法決定 CLB 如何將收到的請求分發到後端的多個伺服器。權重則是在支援加權的演算法中,控制每台伺服器流量分配比例的參數。

  • 生效範圍:使用支援加權的調度演算法。輪詢演算法不生效。

  • 取值範圍:0-100,預設值為100。

  • 權重為0的行為:伺服器不再接收新的請求流量。但已建立的串連會繼續處理直至正常斷開,健全狀態檢查也會繼續進行。常用於伺服器的優雅下線。

  • 權重變更的生效範圍:權重變更只對建立串連生效,不影響已建立的串連。在長串連情境下,調整權重後流量變化會比較緩慢。

  • 流量分配比例:在支援加權的調度演算法(如加權輪詢 WRR)下,各後端伺服器獲得的流量比例與其權重比例相同。例如,伺服器組中現有一台權重為 100 的伺服器,再添加一台權重為 1 的新伺服器,新伺服器每 101 次請求僅被調度約 1 次(佔比不到 1%)。

重要

當伺服器組中已有高權重(如 100)的後端伺服器時,新添加的低權重(如 1)伺服器可能長時間收不到可見的調度流量。這是 WRR 演算法按權重比例分配流量的正常行為——在低流量情境下,低權重伺服器每被調度一次所需等待的請求數更多,可能需要較長時間才能觀察到流量。建議新添加後端伺服器時,初始權重不低於 10,待確認伺服器正常接收流量後,再根據業務需要逐步調整權重值。

服務高可用

開啟 CLB 健全狀態檢查,定期發送請求來確認伺服器的狀態。

  • 健全狀態檢查成功:伺服器狀態正常,CLB 會將流量轉寄給該伺服器。

  • 健全狀態檢查失敗:伺服器狀態異常,CLB 會停止向該伺服器轉寄任何新的請求流量,直至其恢複正常。

CLB 健全狀態檢查使用 100.64.0.0/10 網段,請確保後端伺服器的 iptables 或其他第三方安全軟體未屏蔽此網段,否則健全狀態檢查會失敗,導致業務中斷。

主備伺服器依賴健全狀態檢查進行主備切換:

  • 主伺服器健全狀態檢查失敗後,流量將切換到備伺服器。由於備伺服器預設不做健全狀態檢查,需要使用者自行確保備伺服器的可用性,保證切換後可用。

  • 主備伺服器的切換時間取決於設定的健全狀態檢查響應逾時時間,當主機健全狀態檢查恢複之後流量會自動切換至主機。

適用範圍

  • 關聯關係:

    • 監聽與伺服器組是 CLB 執行個體維度資源。不同 CLB 執行個體的監聽、伺服器組資訊不互連。

    • 一個伺服器組能同時被多個監聽綁定,但是一個監聽只能同時綁定一個伺服器組。

    • CLB 四層監聽不支援ECS執行個體同時作為後端伺服器和用戶端。如有需求,可使用七層監聽。

  • 掛載後端伺服器:

    • CLB 僅支援掛載同帳號、同地區的後端伺服器。

      • 私網 CLB 執行個體:只能掛載 CLB 所屬 VPC 內的後端伺服器。

      • 公網 CLB 執行個體:添加多個後端伺服器必須屬於同一個 VPC。

    • CLB 所有類型伺服器組均支援掛載如下資源:Elastic Compute Service、彈性網卡ENI、彈性容器ECI。

      • 僅支援添加已經綁定至ECS的彈性網卡。彈性網卡的主私網IP及輔助私網IP均可以添加。

    • ECS 作為後端伺服器,進行熱遷移時,可能導致CLB長串連斷開,重新串連後即可恢複。需確保應用程式具備自動重連機制。

  • 配置可修改性:

    配置可修改性

    增刪伺服器組

    修改連接埠

    修改權重

    預設伺服器組

    不支援

    首次建立監聽並關聯後,連接埠不可修改

    支援

    虛擬伺服器組

    支援

    支援

    支援

    主備伺服器組

    支援

    不支援

    主備角色不支援修改

設定管理員組

控制台

預設伺服器組

  1. 無需建立,每個CLB執行個體內建一個預設伺服器組。

  2. 添加伺服器:

    1. 前往CLB - 執行個體管理頁面,單擊目標執行個體 ID,選擇預設伺服器組頁簽,單擊新增

      • 設定伺服器類型資源群組,篩選可用資源。

      • 如需添加彈性網卡 ENI,需先開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。勾選需要綁定的彈性網卡,可選擇IP地址

    2. 配置連接埠與權重:

      • 配置連接埠:選擇監聽頁簽,單擊新增監聽。在後端伺服器嚮導介面,設定預設伺服器組的伺服器通信埠,同一監聽下預設伺服器組內的不同伺服器的連接埠必須相同。

        僅支援添加監聽時指定連接埠,後續無法修改。
      • 配置權重:設定已選伺服器的權數

虛擬伺服器組

  1. 前往CLB - 執行個體管理頁面,單擊目標執行個體 ID,選擇虛擬伺服器組,單擊建立虛擬伺服器組

  2. 添加伺服器:

    • 設定伺服器類型資源群組,篩選可用資源。

    • 如需添加彈性網卡 ENI,需先開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。勾選需要綁定的彈性網卡,可選擇IP地址

  3. 配置已選伺服器的通信埠權數。選擇添加連接埠,可以為同一個後端伺服器配置多個不同的連接埠。

主備伺服器組

  1. 前往CLB - 執行個體管理頁面,單擊目標執行個體 ID,選擇主備伺服器組,單擊建立主備伺服器組

  2. 添加伺服器:

    • 設定伺服器類型資源群組,篩選可用資源。

    • 如需添加彈性網卡 ENI,需先開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。勾選需要綁定的彈性網卡,可選擇IP地址

    • 僅支援添加 2 台後端伺服器。

  3. 配置已選伺服器的通信埠,選擇添加連接埠,可以為同一個後端伺服器配置多個不同的連接埠。添加後,選擇主機,配置主備關係。

API

預設伺服器組

虛擬伺服器組

主備伺服器組

常見問題

CLB執行個體處於運行中是否可調整ECS數量?

  • 預設伺服器組、虛擬伺服器組:支援在任意時刻增加或減少負載平衡的後端ECS執行個體數量,且支援不同ECS執行個體之間的切換。為保障服務穩定,確保在執行操作前已開啟健全狀態檢查,且後端至少有一台正常啟動並執行ECS執行個體。

  • 主備伺服器組:不支援調整。

後端ECS執行個體的作業系統是否可以不同?

可以不同。

CLB 不限制後端 ECS 執行個體的作業系統,只要確保應用服務部署相同且資料一致即可。建議使用相同的作業系統,以便於統一管理和維護。

可以使用不同地區的ECS執行個體作為後端伺服器嗎?

CLB 不支援直接掛載跨地區的後端伺服器。若需實現跨地區部署,可選擇以下方案:

為什麼有100開頭的IP在頻繁訪問ECS執行個體?

請求來自負載平衡系統的健全狀態檢查和可用性監控。

  • 來源:阿里雲保留位址區段 100.64.0.0/10

  • 安全性:該網段由阿里雲保留,其他使用者無法分配,不存在安全風險。

  • 配置建議:請確保後端伺服器的 iptables 或其他第三方安全軟體未屏蔽該網段,以確保服務可用性。

如健全狀態檢查異常,可參見 如何排查健全狀態檢查異常?

ECS執行個體上沒有配置壓縮,為什麼從CLB返回的HTTP響應卻被壓縮了?

  • 原因:CLB 監聽配置中開啟了 Gzip 壓縮,且用戶端瀏覽器支援壓縮。

  • 操作:如需關閉,請在 CLB 控制台的監聽配置中關閉 Gzip 壓縮功能,或改用 TCP 監聽。

ECS執行個體使用了HTTP 1.0是否支援chunked transfer傳輸編碼?

支援。

為什麼CLB後端ECS執行個體頻繁收到User-Agent為KeepAliveClient的請求?

  • 現象:後端 ECS 收到大量來自內網 IP、User-Agent為KeepAliveClient的 GET 請求。

  • 原因:監聽協議為 TCP,但健全狀態檢查協議配置為 HTTP。TCP 監聽使用 HTTP 健全狀態檢查時,預設使用 GET 方法。

  • 解決:將監聽協議和健全狀態檢查協議統一(如都使用 TCP 或都使用 HTTP)。

預設伺服器組下的伺服器連接埠支援修改嗎?

不支援直接修改。

  • 限制:預設伺服器組的連接埠僅能在建立監聽時設定,且同一監聽下的所有後端伺服器連接埠必須一致。

  • 解決:如需為同一監聽配置不同的後端連接埠,請使用虛擬伺服器組。

CLB四層監聽支援ECS執行個體同時作為後端伺服器和用戶端?

不支援,上述配置會導致訪問環路。

替代方案:

為什麼CLB後端存在大量TIME-WAIT串連,而ALB後端只有少量?

傳統型負載平衡CLB和應用型負載平衡ALB在與後端伺服器互動時,採用的串連機制不同。

  • 傳統型負載平衡CLB:預設使用HTTP短串連。CLB將請求轉寄給後端伺服器時,會在HTTP頭部插入Connection: close欄位。當後端伺服器處理完該請求後,會根據此頭部主動發送FIN包中斷連線,每次中斷連線都會進入TIME-WAIT狀態(預設60秒),高並發情境下會快速積累大量TIME-WAIT串連。

  • 應用型負載平衡ALB:預設支援HTTP長串連(keep-alive)。單個TCP串連可複用處理多個請求,長串連開啟情況下會減少串連斷開次數,因此減少了TIME-WAIT串連。

如需減少 TIME-WAIT 串連的積累,可選擇以下方案:

  • 改用 CLB 四層(TCP)監聽。四層健全狀態檢查會在握手成功後主動發送 RST 資料包中斷連線,不會進入 TIME-WAIT 狀態。

  • 遷移至應用型負載平衡 ALB,利用其預設的 HTTP 長串連複用機制。

為什麼後端伺服器之間的流量分配不均衡?

常見原因

說明

排查與解決方案

會話保持

開啟會話保持後,同一用戶端的請求會固定轉寄到同一台後端伺服器。當用戶端數量較少時(如使用少量用戶端進行壓測),流量容易集中在個別伺服器上。

檢查是否開啟了會話保持,評估業務是否確實需要。

長串連

已建立的長串連不會因權重調整而重新分配。長串連情境下,調整權重後流量變化會比較緩慢。

  • 在業務低峰期進行擴容或權重調整,等待舊串連自然關閉。

  • 確保後端伺服器的 TCP Keepalive 配置一致,避免串連在部分伺服器上堆積。

健全狀態檢查失敗或波動

個別後端伺服器健全狀態檢查失敗,無法接受請求;或健全狀態檢查狀態頻繁在正常與異常之間切換,造成流量分配不穩定。

  • 查看健全狀態檢查日誌,確認是否存在狀態波動。

  • 適當增大健全狀態檢查間隔和不健康閾值,減少誤判。

  • 確認健全狀態檢查的響應碼配置正確。

總體請求數較少

查看CLB的監控資訊。如果總體的請求數較少,輕微的請求分配不均衡屬於正常現象。

請求量增大後觀察流量分配是否趨於均衡。如果在大量請求下仍不均衡,請排查其他原因。

權重配置不當

各伺服器的權重設定與其實際處理能力不匹配,導致部分伺服器過載而其他伺服器閑置。

  • 確認使用了支援加權的調度演算法(輪詢演算法忽略權重)。

  • 根據後端伺服器的實際處理能力合理設定權重。

一致性雜湊 (CH) 調度演算法

當監聽配置了基於源 IP 的一致性雜湊 (CH) 調度演算法時,相同源 IP 的請求始終被分配到同一後端伺服器。在用戶端數量較少或源 IP 集中的情境下,可能導致部分後端伺服器無流量。

登入 CLB 控制台,在執行個體詳情頁點擊監聽標籤,點擊對應監聽進入詳情,查看調度演算法是否為一致性雜湊 (CH)。如果是,可考慮切換為加權輪詢 (WRR) 或輪詢 (RR) 以改善流量分配。

如何安全地從 CLB 移除後端 ECS 執行個體?

直接移除 ECS 可能造成業務閃斷。建議先將該 ECS 的權重修改為 0,待已建立的串連處理完畢後再執行移除。權重為 0 的具體行為說明,請參見上文權重配置章節。

如果移除 ECS 後仍有持續的業務請求,可從以下方面排查:

  • 該 ECS 是否同時加入了其他 CLB 執行個體。

  • 該 ECS 自身是否對外提供其他服務,可使用 netstat 命令查看連接埠監聽情況。

新增後端伺服器後為什麼沒有流量轉寄?

CLB 新增後端伺服器後沒有流量轉寄到該伺服器,可從以下幾個方面排查:

  • 健全狀態檢查未通過:後端伺服器的連接埠不通或應用未監聽對應連接埠,會導致健全狀態檢查失敗,CLB 不會向該伺服器轉寄流量。請在 CLB 控制台確認該伺服器的健全狀態檢查狀態是否正常,並檢查後端伺服器上的連接埠監聽和應用運行情況。如健全狀態檢查異常,可參見 如何排查健全狀態檢查異常?

  • 權重設定為 0:權重為 0 的伺服器不會接收新的請求流量。請檢查該伺服器在伺服器組中的權重配置,確認權重值大於 0。權重的詳細說明請參見上文權重配置章節。

  • 添加到了錯誤的伺服器組:CLB 的每個監聽綁定了特定的伺服器組(預設伺服器組或虛擬伺服器組)。如果新增的伺服器被添加到了監聽未綁定的伺服器組中,則該伺服器不會收到對應監聽的流量。請確認目標監聽實際綁定的伺服器組,並將伺服器添加到正確的組中。

  • iptables 或第三方安全軟體屏蔽了健全狀態檢查網段:CLB 健全狀態檢查使用 100.64.0.0/10 網段。如果後端伺服器上的 iptables 或其他第三方安全軟體屏蔽了該網段,健全狀態檢查會失敗,導致 CLB 認為伺服器異常而不轉寄流量。請確保相關規則未屏蔽此網段。

  • 健全狀態檢查視窗期未到:新增後端伺服器後,CLB 需要等待健全狀態檢查通過後才會開始轉寄流量。請稍等片刻後再觀察流量是否正常轉寄。

  • 一致性雜湊 (CH) 調度演算法導致流量未分配:當監聽使用基於源 IP 的一致性雜湊 (CH) 調度演算法時,請求根據源 IP 雜湊結果固定分配到特定後端伺服器。新增伺服器後,只有雜湊結果命中該伺服器的源 IP 請求才會被轉寄過來。在用戶端數量較少或源 IP 集中的情境下,新伺服器可能長時間收不到流量。請在 CLB 控制台執行個體詳情頁點擊監聽標籤,查看對應監聽的調度演算法配置,如為一致性雜湊 (CH),可考慮切換為加權輪詢 (WRR) 或輪詢 (RR) 以改善流量分配。

CLB 七層監聽回源後端伺服器使用什麼協議?

無論七層監聽是 HTTP 還是 HTTPS,CLB 回源後端伺服器時都使用 HTTP 協議,HTTP 版本映射關係如下:

  • 用戶端請求為 HTTP 1.1 或 HTTP 2.0 版本時,七層監聽訪問後端伺服器的 HTTP 協議版本是 HTTP 1.1。

  • 用戶端請求為除 HTTP 1.1 和 HTTP 2.0 以外其他版本時,七層監聽訪問後端伺服器的 HTTP 協議版本是 HTTP 1.0。