負載均衡(Server Load Balancer)是将通路流量根據轉發政策分發到後端多台雲伺服器(ECS執行個體)的流量分發控制服務。負載均衡擴充了應用的服務能力,增強了應用的可用性。
負載均衡通過設定虛拟服務位址,将添加的ECS執行個體虛拟成一個高性能、高可用的應用服務池,并根據轉發規則,将來自用戶端的請求分發給雲伺服器池中的ECS執行個體。
負載均衡預設檢查雲伺服器池中ECS執行個體的健康狀态,自動隔離異常狀态的ECS執行個體,消除了單台ECS執行個體的單點故障,提高了應用的整體服務能力。此外,負載均衡還具備抗DDoS攻擊的能力,增強了應用服務的防護能力。
架構
負載均衡服務主要有三個核心概念:
負載均衡執行個體 (Server Load Balancer instances)
一個負載均衡執行個體是一個運作的負載均衡服務,用來接收流量并将其配置設定給後端伺服器。要使用負載均衡服務,您必須建立一個負載均衡執行個體,并至少添加一個監聽和兩台ECS執行個體。
監聽 (Listeners)
監聽用來檢查用戶端請求并将請求轉發給後端伺服器。監聽也會對後端伺服器進行健康檢查。
後端伺服器(Backend Servers)
一組接收前端請求的ECS執行個體。您可以單獨添加ECS執行個體到伺服器池,也可以通過虛拟伺服器組或主備伺服器組來批量添加和管理。
1雲伺服器狀态确認
- 點選左側導航欄處的 雲産品資源,檢視 雲伺服器ECS-1 和 雲伺服器ECS-2 的相關資訊。
- 打開浏覽器,在輸入框中輸入 雲産品資源 提供的 雲伺服器ECS-1 的 彈性IP ,
說明:正常情況下不會顯示 後端伺服器IP,此處是為了觀察比較的便利性而設計的。
- 打開新的視窗,輸入 雲伺服器ECS-2 的 彈性IP ,
- 比較兩台ECS的通路結果,發現部署的網站内容相同,隻是顯示的後端伺服器IP不同。
說明:在真實場景下,負載均衡後端的伺服器中部署的應用都是一緻的
2負載均衡配置
- 通過如下步驟,檢視阿裡雲負載均衡控制台:
1)點選左側導航欄處的 雲産品資源 檢視資源資訊,點選 一鍵複制url,用浏覽器隐身視窗(或無痕模式)登入控制台,
2)輸入實驗提供的 子使用者名稱 和 子使用者密碼 ,完成後點選 登入 。登入阿裡雲管理控制台。
3)點選左側導航欄的 産品與服務 ,下拉菜單中,在 彈性計算 條目下選擇 負載均衡 。
- 點選左側的 執行個體管理 ,然後打開實驗提供的執行個體,在執行個體清單頁面,點選目标執行個體右側的 點我開始配置 。
-
通過負載均衡業務配置向導,配置負載均衡的 監聽端口、後端伺服器 和 健康檢查 :
1)在 協定&監聽 頁面,輸入如下資訊,完成後,點選 下一步 。
負載均衡協定:選擇 HTTP
監聽端口:設為 80
進階配置保持預設
2)在 後端伺服器 頁面,監聽請求轉發至 預設伺服器組,在已添加伺服器處點選 繼續添加 。
3)在彈出的待添加伺服器頁面,在預先配置好的兩台雲伺服器前打勾選擇,然後點選下一步,之後再點選 添加;
4)在後端伺服器界面的已添加伺服器清單中,可以看到新增的兩台雲伺服器,分别将 端口 設定為 80,并點選 下一步 。
說明:負載均衡器将會按照輸入的權重比例分發請求。
5)在 健康檢查 配置中,開啟健康檢查按鈕為綠色 開啟狀态,點選 下一步。
6)在 配置稽核 頁面,确認上述配置操作正确,點選 送出;出現如下界面,提示配置成功後,點選 知道了;
7)此時,頁面将顯示一個狀态為 運作中 的負載均衡監聽執行個體,後端伺服器組已添加完成兩台ECS伺服器,且 健康檢查 的狀态為 正常。
3負載均衡驗證
驗證負載均衡的工作原理;
驗證通過配置不同後端伺服器權重,将使用者的請求按比例分發到不同後端伺服器;
驗證在一台後端伺服器開啟會話請求時,請求在會話開啟的時間内隻會分發到這一台伺服器。
- 此時,兩台後端伺服器的權重比例相同。通過如下步驟,驗證負載均衡伺服器是輪詢通路後端雲伺服器ECS執行個體:
1)在控制台點選左側 執行個體管理 ,在右側頁面中的紅框處看到負載均衡的 服務位址(也就是 雲産品資源 提供的 負載均衡 的 IP位址) ;
2)在浏覽器中建立頁面,并通路 負載均衡 的 服務位址 。界面顯示的 後端伺服器IP 為 雲伺服器ECS-1(或 雲伺服器ECS-2) 的 内網位址 。
3)重新整理 浏覽頁面,顯示的 後端伺服器IP 将發生變化,變為 雲伺服器ECS-2(或 雲伺服器ECS-1)的 内網位址 ;
4)重複重新整理操作,觀察 後端伺服器IP 是在兩個雲伺服器的 内網位址 間輪流更換。
5)如上結果證明:負載均衡會将使用者的請求發送到後端不同的伺服器進行處理。這樣,可以減輕單台伺服器的負載壓力,進而確定業務的持續性。
- 通過如下步驟,修改後端伺服器權重,驗證負載均衡向後端伺服器發送請求的比例是按照權重的比例調整的。
1)傳回 執行個體管理 頁面,點選該執行個體的 預設伺服器組 ;
2)選中 已添加的伺服器 ,清單中,勾選下方的勾選框 ,然後點選 修改權重 ;
3)彈出對話框中,勾選 設定不同的權重 。
4)設定兩個執行個體的 權重 分别為 30 ,90 。
說明:通過如上的權重配置,使用者通過負載均衡通路的時候,1/4 的使用者請求發送到一台後端伺服器中,3/4 的請求發送到另一台後端伺服器中。
5)完成如上配置後,點選 确定 ,生效配置資訊。
6)傳回已添加的伺服器的頁面,檢視到兩台 ECS執行個體 的權重分别為 30 和 90 ,并記錄對應的 ECS執行個體 内網位址。
7)浏覽器中,重新整理多次負載均衡 服務位址 的頁面,并記錄頁面顯示的 後端伺服器IP 。可以發現:每 4 次重新整理,将有 3 次通路 權重 為 90 的 ECS執行個體,1 次通路權重為 30 的 ECS執行個體。
8)如上結果證明:使用者可以根據實際情況調整負載均衡器的請求分發,一般将配置高的伺服器設定的權重調高,配置較低的伺服器設定的權重調低。這樣可以避免在高并發時,配置較低的伺服器因為壓力較大服務異常的發生。
- 執行以下步驟,開啟負載均衡的 會話保持 功能。
1)點選左側 監聽 ,監聽頁面點選右側的 配置 。
2) 配置監聽頁面的 進階配置 處,點選 修改 ;
3)開啟 會話保持 ,逾時時間 輸入 180 (即 3 分鐘);完成後點選 下一步 。
4)下面的 後端伺服器、健康檢查 和 配置稽核 頁面都采用預設值 ,依次完成配置。
5)傳回到 監聽 頁面 ,會話保持 狀态 已開啟 。
- 再次在浏覽器中輸入 負載均衡 的 IP位址 ,多次重新整理,發現在會話保持的逾時時間内請求隻會分發到某一台 ECS 上(究竟是哪一台 ECS 沒有規定),時間超出後,重新按照權重比例分發。
- 我們關閉開啟 會話保持 的那台ECS 。預設伺服器組頁面,已添加的伺服器中 ,點選目标ECS的的高亮部分(即 雲伺服器ID)。
-
執行個體詳情頁面 ,點選右上角處的 【停止】 ,彈窗頁面點選【确定 】關閉目前ECS。
等待1分鐘左右,執行個體的狀态變為 已停止 。
-
傳回負載均衡管理控制台,在預設伺服器組頁面中點選右上角的【重新整理】,頁面重新整理後被停止的 ECS 的 狀态 變為 已停止。
【監聽】 頁面,也出現 異常 提示 。
同樣的,點選左上角的 【執行個體管理 】,傳回負載均衡管理控制台首頁面,異常 報警也會出現。
- 再次重新整理浏覽器中 負載均衡 的 IP位址 ,此時,請求發送到 健康檢查狀态 為 正常 的ECS上。
- 結果證明,當某一台 ECS 出現異常後,負載均衡會自動将請求發送到健康檢查狀态正常的 ECS 上。