AWS 彈性負載平衡器(ELB):實現高可用性和自動流量分配

在雲端運算環境中,建立高效能且具備容錯能力的應用程式已成為成功的關鍵。 AWS 彈性負載平衡器(Elastic Load Balancer,簡稱ELB)透過自動分配請求流量至多個目標,實現應用的高可用性、擴展性和安全性,是企業現代化架構不可或缺的一環。

 

AWS 彈性負載平衡器(Elastic Load Balancer, ELB)是由Amazon Web Services 提供的完全託管服務,可自動將傳入的請求流量指派到多個目標實例,例如Amazon EC2、容器服務或IP 位址。它充當連接客戶端與後端目標之間的中介,根據目標的運作狀況與效能,智慧地進行流量分發,從而實現負載平衡。

透過ELB,開發者無需手動設定複雜的流量管理規則,即可輕鬆實現請求的自動路由和故障轉移,提高服務穩定性。

 

1.可擴展性
ELB 能夠根據流量變化自動擴展。無論是假日突發訪問高峰,還是漸進式用戶成長,ELB 都可以根據請求數量進行智慧擴容,從而實現效能彈性。

2.高可用性

當某個實例變得不可用或故障,ELB 會自動偵測並將連線請求重新路由到其他健康實例,確保應用程式持續線上、使用者體驗不會中斷。

3.容錯能力
ELB 會定期對目標進行健康檢查,基於檢查結果動態調整流量分配。即使某些後端伺服器無法回應,請求也能及時被引導到可用伺服器。

4.安全性

ELB 支援SSL/TLS 協定終止,確保客戶端與目標之間的加密連線。同時,它可無縫整合AWS WAF(Web 應用防火牆),協助防範常見的Web 攻擊行為。

5.成本效益
ELB 屬於以使用量計費的託管服務,無需投入大量資源進行基礎架構管理,是提升系統效能的高性價比方案。

 

每次客戶端請求到達負載平衡器時,ELB 會執行以下流程:

  1. 接收請求流量;

  2. 檢查目標伺服器的運作狀況(透過配置的健康檢查);

  3. 依照協議及負載平衡策略將請求分發到最佳目標;

  4. 一旦某個目標失效,立即重新路由請求至健康目標,保障系統連結性與回應速度。

這種機制不僅優化了請求回應,還幫助應用程式在每秒處理成千上萬連線時依舊穩定運作。

 

AWS 提供三種類型的彈性負載平衡器,每種類型適用於不同的用例:

應用程式負載平衡器(ALB)在 OSI 模型的應用程式層(第7 層)運行。它非常適合需要基於內容的路由的應用程序,例如根據URL 路徑、主機名稱或標頭引導HTTP/HTTPS 流量。

應用場景:

  • Web 應用系統

  • 多服務部署

  • HTTP/HTTPS 分送控制

核心特性:

  • 路徑/主機路由

  • WebSocket 支援

  • HTTPS 協定終止

  • 支援容器服務(如ECS、EKS)

 

網路負載平衡器(NLB)在網路層(第4 層)運行,非常適合處理高效能、低延遲的應用程式。它每秒能夠處理數百萬個請求,非常適合需要超快速效能的工作負載。

典型用例:

  • 遊戲、直播等高效能應用

  • TCP/UDP 通訊服務

  • 每秒百萬連線請求的場景

功能特點:

  • 支援靜態IP 和跨區域分佈

  • IP 位址目標支持

  • 實作協定級連線保持

 

Classic Load Balancer (CLB)是原始的AWS ELB 服務。它在第4 層和第7 層都有效,但缺少ALB 和NLB 的一些高級功能。它通常用於在引入ALB 和NLB 之前建立的舊版應用程式。

適用場景:

  • 舊系統遷移或遺留服務維護

  • 不依賴內容路由的簡單負載平衡

功能概覽:

  • HTTP、HTTPS 和TCP 連線支援

  • SSL 終止

  • 基礎健康檢查機制

 

假設您建立了一個基於EC2 的電商網站。用戶訪問量逐漸增長,伺服器負載不斷上升。如果未部署彈性負載平衡器,請求容易集中在某個實例上,從而引發回應變慢或系統宕機。

透過部署ALB,您可根據路徑將 /product 路由至一個微服務集群,將 /checkout 路由至另一個服務。當某個EC2 實例失效時,ALB 會立即將流量轉移至其他健康實例,以實現無感知故障復原和系統彈性擴展。

 

設定AWS ELB 是一個簡單的過程。以下是簡化的指南:

  1. 建立負載平衡器:選擇負載平衡器的類型(ALB、NLB 或CLB),並在AWS 管理控制台中進行設定。
  2. 定義偵聽器:偵聽器是檢查連線請求的過程。例如,可以為Web 流量設定HTTP 或HTTPS 偵聽器。
  3. 新增目標:選擇將接收流量的執行個體、容器或IP 位址。
  4. 配置健康檢查:設定健康檢查來監控目標的健康狀況。
  5. 測試負載平衡器:設定完成後,測試負載平衡器以確保流量正確分配。

 

管理與監控:實現視覺化的效能保障

AWS 提供了完善的監控工具,幫助開發者即時追蹤ELB 的運作狀態:

  • CloudWatch 指標:即時查看請求量、回應時間、錯誤率等關鍵資料;

  • 訪問日誌:記錄每個請求的來源IP、目標實例及回應時間,以便分析與調優;

  • AWS Trusted Advisor:提供基於最佳實務的效能建議及安全優化提示。

 

總結:使用AWS ELB 提供更智慧的流量管理

無論是中小企業或大型企業級架構,AWS 彈性負載平衡器(ELB)都能為應用系統實現請求的自動分配、高並發處理與容錯保護。根據您的應用情境選擇合適的負載平衡器類型(ALB、NLB 或CLB),即可獲得具備高可用性、安全性和可擴充性的解決方案,可協助建立穩定且高效的雲端基礎架構。

更多探索

Tell me what you need