伺服器組是一個邏輯組,包含一個或多個後端伺服器。每個伺服器組用於將CLB分發的業務請求,路由到相應的後端伺服器。CLB支援預設伺服器組、虛擬伺服器組、主備伺服器組等不同伺服器群組類型。
不同類型伺服器組的區別
伺服器群組類型 | 預設伺服器組 | 虛擬伺服器組 | 主備伺服器組 |
類型說明 | 每個CLB執行個體都內建一個預設伺服器組(有且僅有一個) | 使用者可自行建立與管理的伺服器組 | 使用者可自行建立與管理的伺服器組 |
掛載後端伺服器數量 | 一個或多個 | 一個或多個 | 兩個(一主一備) |
特點 |
|
|
|
適用情境 | 應用架構較為簡單,所有請求都需要轉寄到同一組後端伺服器。不需要針對不同監聽或網域名稱進行個人化流量分發 | 應用架構複雜,例如需要對HTTP和HTTPS請求分別處理、需要根據不同的監聽連接埠或網域名稱將流量分發到不同的後端伺服器組 | 固定主備模式的關鍵應用或服務,例如資料庫服務或核心API服務 |
支援監聽類型 | TCP/UDP/HTTP/HTTPS | TCP/UDP/HTTP/HTTPS | 僅TCP/UDP |
伺服器組使用注意事項
CLB執行個體、監聽、伺服器組之間的關係:
監聽與伺服器組是CLB執行個體維度資源。不同CLB執行個體的監聽、伺服器組資訊不互連。
不同的監聽可以關聯不同的伺服器組。
一個伺服器組能同時被多個監聽綁定,但是一個監聽只能同時綁定一個伺服器組。
掛載的後端伺服器限制:
只支援掛載CLB同地區的後端伺服器資源,不支援掛載跨地區伺服器。
對於Virtual Private Cloud類型的CLB執行個體,只能掛載同VPC內的後端伺服器。
對於非Virtual Private Cloud類型的CLB執行個體,可以掛載不同VPC內的後端伺服器。
CLB所有類型伺服器組均支援掛載如下資源:Elastic Compute Service、彈性網卡ENI、彈性容器ECI。
後端伺服器為ECS並且進行熱遷移時,可能導致CLB長串連斷開。重新串連後即可恢複,請做好應用的重連工作。
公網CLB執行個體可以添加後端同地區任意某個VPC的伺服器,但當添加多個後端伺服器時,這些後端伺服器必須屬於同一個VPC。
高可用建議:
建議您開啟CLB的健全狀態檢查功能,並同時保證Server Load Balancer執行個體中至少有一台正常啟動並執行後端伺服器。
主備伺服器組中,依賴健全狀態檢查進行主備切換,主伺服器健全狀態檢查失敗後,流量將切換到備伺服器。由於備伺服器預設不做健全狀態檢查,需要使用者自己確保備伺服器的可用性,保證切換後可用。
管理伺服器組與後端伺服器
預設伺服器組
每個CLB執行個體都內建一個預設伺服器組(有且僅有一個),可以直接添加後端伺服器。
CLB執行個體下的所有監聽都共用使用該預設伺服器組。
無法建立多個預設伺服器組。
添加後端伺服器
在建立監聽頁面選擇建立伺服器組時,或在執行個體詳情的伺服器組頁面,可以添加後端伺服器。
請確保後端伺服器的地區和CLB執行個體的地區相同。
添加Elastic Compute Service
選擇Elastic Compute Service。
配置權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
添加彈性網卡ENI
已經綁定至ECS的彈性網卡,才可以被添加。
可以添加彈性網卡的主私網IP及輔助私網IP。
開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。
目標彈性網卡樣本:

勾選需要綁定的彈性網卡,並選擇主私網IP或輔助私網IP。可以同時綁定多個IP。
配置權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
添加彈性容器ECI
選擇彈性容器ECI。
配置權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
配置預設伺服器組連接埠
僅支援在首次建立監聽時的後端伺服器嚮導介面,設定預設伺服器組的伺服器連接埠。並且同一監聽下預設伺服器組內的不同伺服器的連接埠必須是相同的。
例如:

監聽建立之後,預設伺服器組連接埠無法修改。
不同監聽的預設伺服器組連接埠可以不同。
例如:

虛擬伺服器組
建立虛擬伺服器組
您可以通過如下方式,建立虛擬伺服器組:
建立監聽頁面:

執行個體管理頁面:

添加後端伺服器
在建立監聽頁面選擇建立伺服器組時,或在執行個體詳情的伺服器組編輯頁面,可以添加後端伺服器。
請確保後端伺服器的地區和CLB執行個體的地區相同。
一個後端伺服器可以屬於多個虛擬伺服器組。
添加Elastic Compute Service
選擇Elastic Compute Service。
配置連接埠和權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
不同的後端伺服器連接埠可以不同,並且同一個後端伺服器可以配置多個不同的連接埠。

添加彈性網卡ENI
已經綁定至ECS的彈性網卡,才可以被添加。
可以添加彈性網卡的主私網IP及輔助私網IP。
開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。
目標彈性網卡樣本:

勾選需要綁定的彈性網卡,並選擇主私網IP或輔助私網IP。可以同時綁定多個IP。
配置連接埠和權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
不同的後端伺服器連接埠可以不同,並且同一個後端伺服器可以配置多個不同的連接埠。

添加彈性容器ECI
選擇彈性容器ECI。
配置連接埠和權重。
當監聽使用加權輪詢調度演算法時,權重越高的後端伺服器將被分配到更多的訪問請求。詳情請參見負載平衡調度演算法介紹。
如果權重設定為0,該伺服器不會再接受新請求。
不同的後端伺服器連接埠可以不同,並且同一個後端伺服器可以配置多個不同的連接埠。

刪除虛擬伺服器組
如果虛擬伺服器組存在關聯監聽或關聯轉寄策略,需要先解除監聽或轉寄策略的關聯關係,才可以刪除該虛擬伺服器組。
主備伺服器組
建立主備伺服器組
您可以通過如下方式,建立主備伺服器組:
建立監聽頁面:

執行個體管理頁面:

添加後端伺服器
建立主備伺服器組並完成添加伺服器之後,伺服器、連接埠、主備類型均無法調整,如需調整需要重建主備伺服器組。請謹慎配置。
主備伺服器組中,依賴健全狀態檢查進行主備切換,主伺服器健全狀態檢查失敗後,流量將切換到備伺服器。由於備伺服器預設不做健全狀態檢查,需要使用者自己確保備伺服器的可用性,保證切換後可用。
在建立主備伺服器組時,可以添加後端伺服器。
主備伺服器組需要在後端伺服器中設定一台主機和一台備機。監聽中選擇主備伺服器組後:主機工作正常時,流量將直接轉寄至主機;當主機宕機時,流量將切換至備機。主備伺服器的切換時間取決於設定的健全狀態檢查響應逾時時間,當主機健全狀態檢查恢複之後流量會自動切換至主機。
請確保後端伺服器的地區和CLB執行個體的地區相同。
一個後端伺服器可以屬於多個主備伺服器組。
添加Elastic Compute Service
選擇Elastic Compute Service。
配置連接埠。
主備伺服器組添加的後端伺服器有且只能選擇2台。
選擇其中一台伺服器作為主機。
添加彈性網卡ENI
已經綁定至ECS的彈性網卡,才可以被添加。
可以添加彈性網卡的主私網IP及輔助私網IP。
開啟進階模式,並單擊已綁定彈性網卡的ECS執行個體右側的加號表徵圖,找到目標彈性網卡。
目標彈性網卡樣本:

勾選需要綁定的彈性網卡,並選擇主私網IP或輔助私網IP。可以同時綁定多個IP。
配置連接埠。
主備伺服器組添加的後端伺服器有且只能選擇2台。
選擇其中一台伺服器作為主機。
添加彈性容器ECI
選擇彈性容器ECI。
配置連接埠。
主備伺服器組添加的後端伺服器有且只能選擇2台。
選擇其中一台伺服器作為主機。
刪除主備伺服器組
如果主備伺服器組存在關聯監聽,需要先解除監聽的關聯關係,才可以刪除該主備伺服器組。
常見問題
CLB執行個體處於運行中是否可調整ECS數量?
當您使用預設伺服器組、虛擬伺服器組時,可以調整。主備伺服器組不支援調整伺服器數量。
使用預設伺服器組、虛擬伺服器組時,您可以在任意時刻增加或減少負載平衡的後端ECS執行個體數量並且支援不同ECS執行個體之間的切換。但是為了保證您對外服務的穩定,請確保在執行上述操作時,開啟了負載平衡的健全狀態檢查功能,並保證負載平衡後端至少有一台正常啟動並執行ECS執行個體。
後端ECS執行個體的作業系統是否可以不同?
可以。
CLB本身不會限制後端ECS執行個體使用哪種作業系統,只要確保後端ECS執行個體中的應用服務部署相同且資料一致即可。但建議使用相同的作業系統,以便您日後的管理維護。
可以使用不同地區的ECS執行個體作為後端伺服器嗎?
CLB本身不支援掛載跨地區的後端伺服器,但是結合全域流量管理產品,您可在CLB上層部署全域流量管理並且在各地區部署多個CLB,通過切換不同的CLB實現跨地區掛載,詳細操作可參考CLB結合全域流量管理實現跨地區負載平衡。
應用型負載平衡ALB(Application Load Balancer)與網路型負載平衡 NLB(Network Load Balancer)支援跨地區掛載後端伺服器。具體操作,請參見對應產品教程:
為什麼有100開頭的IP在頻繁訪問ECS執行個體?
負載平衡系統除了會通過系統伺服器的內網IP將來自外部的訪問請求轉到後端ECS執行個體之外,還會對ECS執行個體進行健全狀態檢查和可用性監控,這些訪問的來源都是由負載平衡系統發起的。
負載平衡系統的位址區段為100.64.0.0/10(100.64.0.0/10是阿里雲保留地址,其他使用者無法分配到該網段內,不會存在安全風險),所以會有很多100開頭的IP地址訪問ECS執行個體。
為了確保您對外服務的可用性,請確保對上述地址的訪問配置了允許存取規則。
ECS執行個體上沒有配置壓縮,為什麼從CLB返回的HTTP響應卻被壓縮了?
可能是用戶端瀏覽器端支援壓縮。您可以在控制台上建立監聽時關閉Gzip壓縮功能,或改用TCP監聽。
ECS執行個體使用了HTTP 1.0是否支援chunked transfer傳輸編碼?
支援。
為什麼CLB後端ECS執行個體頻繁收到User-Agent為KeepAliveClient的請求?
問題現象:CLB後端的ECS執行個體即使在沒有使用者訪問時也會頻繁收到GET請求,來源的IP是阿里雲的內網IP,User-Agent顯示為KeepAliveClient。
問題原因:監聽協議選擇的是TCP,而健全狀態檢查選擇了HTTP協議。TCP監聽下使用HTTP協議進行健全狀態檢查時,預設使用GET方法請求。
解決方案:建議您將監聽協議和健全狀態檢查協議統一設定為相同的協議。
預設伺服器組下的伺服器連接埠支援修改嗎?
情境說明:如果您需要對已經建立的監聽配置進行修改操作,預設伺服器組下的伺服器連接埠是不支援修改的。僅支援在初次建立監聽的後端伺服器嚮導介面,設定預設伺服器組的伺服器連接埠,並且同一監聽下預設伺服器組的不同伺服器的連接埠必須是相同的。
解決方案:如果您在同一監聽下需要配置不同的伺服器連接埠,請在配置監聽的後端伺服器嚮導介面,選擇虛擬伺服器組。
CLB四層監聽支援ECS執行個體同時作為後端伺服器和用戶端?
不支援。您可以:
使用CLB七層監聽。
使用NLB執行個體並關閉NLB伺服器組的用戶端地址保持功能,參考ECS如何在NLB中同時作為後端伺服器和用戶端?。
為什麼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串連。