每個伺服器組均用於將用戶端的請求路由至一個或多個後端伺服器。ALB會通過健全狀態檢查來判斷後端伺服器的業務可用性。在為ALB執行個體添加監聽時您需要指定伺服器組,監聽會使用已配置的協議和連接埠檢查用戶端的串連請求,並將流量轉寄至相應的伺服器組。
ALB伺服器組分類及說明
建立ALB伺服器組及添加後端伺服器的操作,請參見建立和管理伺服器組。
伺服器群組類型 | 後端伺服器類型 | 說明 | 參考 |
伺服器類型 | 支援添加ECS、ENI、ECI執行個體作為後端服務。 | 添加的雲端服務器需與伺服器組所屬同一VPC。雲端服務器作為後端服務,接收來自ALB轉寄的請求。 | 關於ECS作為後端服務的教程,請參見: |
IP類型 | 支援添加IP地址作為後端服務。 | | 關於跨域掛載的使用限制及相關教程,請參見: |
Function Compute類型 | 支援添加Function Compute作為後端服務。 | 需開通Function Compute服務,且Function Compute和ALB執行個體屬於同一地區。 | 關於Function Compute作為後端服務的教程,請參見ALB添加Function ComputeFC作為後端服務。 |
重要
ALB執行個體的後端伺服器被釋放或私人IP地址被修改後,ALB不會聯動更新後端伺服器。建議您在釋放或修改ALB後端伺服器時,先在ALB伺服器組中移除該後端伺服器,確保不影響業務。
調度演算法
ALB支援的調度演算法如下。詳細調度演算法邏輯請參見負載平衡調度演算法介紹。
加權輪詢:權重值越高的後端伺服器,被輪詢到的次數(機率)也越高。
加權最小串連數:除了根據每台後端伺服器設定的權重值來進行輪詢,同時還考慮後端伺服器的實際負載(即串連數)。當權重值相同時,當前串連數越小的後端伺服器被輪詢到的次數(機率)也越高。
一致性雜湊:相同的源地址會調度到相同的後端伺服器。
配置ALB後端協議與健全狀態檢查協議
下表總結了ALB不同監聽協議下後端伺服器及健全狀態檢查協議的支援情況。
監聽協議 | 伺服器組後端協議 | 伺服器群組類型 | 健全狀態檢查協議 |
監聽協議 | 伺服器組後端協議 | 伺服器群組類型 | 健全狀態檢查協議 |
HTTP | HTTP、HTTPS | 伺服器類型、IP類型、Function Compute類型 說明 Function Compute的伺服器群組類型,無需配置後端協議和健全狀態檢查協議。 | HTTP、HTTPS、TCP、gRPC 說明 標準版及以上版本的ALB執行個體支援配置HTTPS健全狀態檢查協議,基礎版ALB執行個體不支援。 |
HTTPS | HTTP、HTTPS、gRPC |
QUIC | HTTP |
健全狀態檢查
您可以配置健全狀態檢查來檢查伺服器組的健全狀態,從而判斷伺服器的業務可用性。
ALB支援基於每個伺服器組定義ALB執行個體的健全狀態檢查配置。每個伺服器組預設開啟健全狀態檢查。
在開啟健全狀態檢查時,預設情況下,ALB會自動將用戶端請求路由至健全狀態檢查狀態正常的伺服器,並將持續對該伺服器組的所有後端伺服器的健全狀態進行監控。伺服器必須通過連續n次的健全狀態檢查才會被視為正常(n為配置的健全狀態檢查健康閾值,多次健全狀態檢查是為了避免網路抖動的影響)。
當某台後端伺服器健全狀態檢查出現異常時,ALB會自動將新的請求分發到其他健全狀態檢查正常的後端伺服器。
當該伺服器恢複正常運行時,ALB會將其自動回復到負載平衡服務中。
健全狀態檢查為短串連,完成健全狀態檢查後串連將關閉。
如果同一個伺服器組中僅包含健全狀態檢查異常的伺服器時,ALB仍會嘗試根據調度演算法將請求路由至這些伺服器,而不考慮這些伺服器的健全狀態,以最大可能避免您的業務受損。更多資訊,請參見同一個伺服器組的所有後端伺服器健全狀態檢查均異常時,ALB如何轉寄請求?。
會話保持
預設情況下,ALB會將每個用戶端請求分別分發至不同的後端伺服器上。開啟會話保持後,同一用戶端的請求會被轉寄至同一台後端伺服器上,方便後端伺服器維護狀態資訊及向用戶端提供持續體驗。
Function Compute類型的伺服器組不支援配置會話保持。
後端長串連
當開啟後端長串連後,ALB到後端伺服器之間會維持一定數量的TCP長串連,當新請求到達時,如果有閒置TCP長串連,ALB優先使用TCP長串連轉寄請求到後端伺服器,從而減少TCP握手建連次數,減輕後端伺服器壓力。
Function Compute類型的伺服器組不支援配置後端長串連。
跨AZ負載平衡
ALB預設開啟跨AZ負載平衡,即ALB在同地區跨可用性區域的後端服務之間分配流量。當ALB掛載的伺服器組關閉跨AZ負載平衡時,ALB僅在同地區同可用性區域的後端服務之間分配流量。
說明
僅標準版、WAF增強版ALB執行個體支援關閉跨AZ負載平衡,基礎版ALB不支援。
關閉跨AZ負載平衡時,不支援開啟會話保持。
開啟遠端IP的IP類型伺服器組,不支援關閉跨AZ負載平衡。
Function Compute類型的伺服器組無需配置該參數。
相關文檔
您可以在建立伺服器組的同時,配置調度演算法、健全狀態檢查,選擇是否開啟會話保持、跨AZ負載平衡、後端長串連等。詳細介紹與使用教程,請參見: