SLB負載均衡實踐
背景知識
簡介
負載均衡(Server Load Balancer)是將訪問流量根據轉發策略分發到後端多臺雲服務器(ECS實例)的流量分發控制服務。負載均衡擴展了應用的服務能力,增強了應用的可用性。
負載均衡通過設置虛擬服務地址,將添加的ECS實例虛擬成一個高性能、高可用的應用服務池,並根據轉發規則,將來自客戶端的請求分發給雲服務器池中的ECS實例。
負載均衡默認檢查雲服務器池中ECS實例的健康狀態,自動隔離異常狀態的ECS實例,消除了單臺ECS實例的單點故障,提高了應用的整體服務能力。此外,負載均衡還具備抗DDoS攻擊的能力,增強了應用服務的防護能力。
架構
負載均衡服務主要有三個核心概念:
負載均衡實例 (Server Load Balancer instances)
一個負載均衡實例是一個運行的負載均衡服務,用來接收流量並將其分配給後端服務器。要使用負載均衡服務,您必須創建一個負載均衡實例,並至少添加一個監聽和兩臺ECS實例。
監聽 (Listeners)
監聽用來檢查客戶端請求並將請求轉發給後端服務器。監聽也會對後端服務器進行健康檢查。
後端服務器(Backend Servers)
一組接收前端請求的ECS實例。您可以單獨添加ECS實例到服務器池,也可以通過虛擬服務器組或主備服務器組來批量添加和管理。
特點
1)負載均衡服務通過設置虛擬服務地址(IP),將位於同一地域(Region)的多臺雲服務器(Elastic Compute Service,簡稱ECS)資源虛擬成一個高性能、高可用的應用服務池;根據應用指定的方式,將來自客戶端的網絡請求分發到雲服務器池中。
2)負載均衡服務會檢查雲服務器池中ECS的健康狀態,自動隔離異常狀態的ECS,從而解決了單臺ECS的單點問題,同時提高了應用的整體服務能力。在標準的負載均衡功能之外,負載均衡服務還具備TCP與HTTP抗DDoS攻擊的特性,增強了應用服務器的防護能力。
3)負載均衡服務是ECS面向多機方案的一個配套服務,需要同ECS結合使用。
產品優勢
- 高可用
採用全冗餘設計,無單點,支持同城容災。搭配DNS可實現跨地域容災,可用性高達99.95%。
根據應用負載進行彈性擴容,在流量波動情況下不中斷對外服務。
- 可擴展
您可以根據業務的需要,隨時增加或減少後端服務器的數量,擴展應用的服務能力。
- 低成本
與傳統硬件負載均衡系統高投入相比,成本可下降60%。
- 安全
結合雲盾,可提供5Gbps的防DDOS攻擊能力。
利用Nginx也可以實現負載均衡,但是直接購買阿里雲負載均衡SLB穩定搞、容災高、多種協議支持、並且運維成本低
使用場景:
負載均衡配置
將兩臺服務器掛載到負載均衡的後端,這樣,用戶只需訪問一個IP地址或域名,負載均衡服務器將會根據權重自動轉發用戶請求到相應的後端服務器上
登錄實例後
點擊左側導航欄的 產品與服務 ,下拉菜單中,在 彈性計算 條目下選擇 負載均衡 。
點擊左側的 實例管理 ,然後打開實驗提供的實例,在實例列表頁面,點擊目標實例右側的 點我開始配置
通過負載均衡業務配置嚮導,配置負載均衡的 監聽端口、後端服務器 和 健康檢查 :
-
1)在 協議&監聽 頁面,輸入如下信息,完成後,點擊 下一步 。
- 負載均衡協議:選擇 HTTP
- 監聽端口:設為 80
- 高級配置保持默認
2)在 後端服務器 頁面,監聽請求轉發至 默認服務器組,在已添加服務器處點擊 繼續添加 。
3)在彈出的待添加服務器頁面,在預先配置好的兩臺雲服務器前打勾選擇,然後點擊下一步,之後再點擊 添加;
4)在後端服務器界面的已添加服務器列表中,可以看到新增的兩臺雲服務器,分別將 端口 設置為 80,並點擊 下一步 。
說明:負載均衡器將會按照輸入的權重比例分發請求。
5)在 健康檢查 配置中,開啟健康檢查按鈕為綠色 開啟狀態,點擊 下一步。
6)在 配置審核 頁面,確認上述配置操作正確,點擊 提交;出現如下界面,提示配置成功後,點擊 知道了;
7)此時,頁面將顯示一個狀態為 運行中 的負載均衡監聽實例,後端服務器組已添加完成兩臺ECS服務器,且 健康檢查 的狀態為 正常。
注意:通常等待1分鐘左右健康檢查狀態變為正常,可點擊右側的 刷新 查看。
負載均衡驗證
利用網頁多次訪問負載均衡的IP地址,可以看到內網(負載均衡訪問後端ECS實例,是通過內網訪問的)的IP交替更換
將兩臺負載均衡的服務權重更新為30與90後:
瀏覽器中,刷新多次負載均衡 服務地址 的頁面,並記錄頁面顯示的 後端服務器IP 。可以發現:每 4 次刷新,將有 3 次訪問 權重 為 90 的 ECS實例,1 次訪問權重為 30 的 ECS實例。
如上結果證明:用戶可以根據實際情況調整負載均衡器的請求分發,一般將配置高的服務器設置的權重調高,配置較低的服務器設置的權重調低。這樣可以避免在高併發時,配置較低的服務器因為壓力較大服務異常的發生。
開啟負載均衡的 會話保持 功能。
注意:新版的更改方式有所變化
再次在瀏覽器中輸入 負載均衡 的 IP地址 ,多次刷新,發現在會話保持的超時時間內請求只會分發到某一臺 ECS 上(究竟是哪一臺 ECS 沒有規定),時間超出後,重新按照權重比例(30,90)分發。
當某一臺 ECS 出現異常後,負載均衡會自動將請求發送到健康檢查狀態正常的 ECS 上
負載均衡會將用戶的請求發送到後端不同的服務器進行處理。這樣,可以減輕單臺服務器的負載壓力,從而確保業務的持續性。