天天看點

進階實戰03-SLB負載均衡實踐

心得體會:負載均衡是伺服器業務中重要的組成部分,他是為用戶端提供穩定服務的基礎。通過本次實踐,充分了解到了負載均衡的作用,以及權重對伺服器相應的影響。同時阿裡雲提供的負載均衡服務效果配置簡單有條理,可以快速為企業伺服器搭建負載均衡服務。

場景體驗目标

擁有大量使用者的企業,經常會面臨如下的難題:在高并發的情況下,經常會導緻伺服器響應速度慢,嚴重的情況會直接導緻伺服器停止服務。此時,會導緻企業的業務中斷,影響客戶的正常通路。

本場景通過使用阿裡雲負載均衡SLB以及對負載均衡SLB後端伺服器ECS的權重進行修改,可以快速解決上述的問題。

背景知識

阿裡雲負載均衡

  • 簡介
負載均衡(Server Load Balancer)

是将通路流量根據轉發政策分發到後端多台雲伺服器(ECS執行個體)的流量分發控制服務。負載均衡擴充了應用的服務能力,增強了應用的可用性。

負載均衡通過設定虛拟服務位址,将添加的ECS執行個體虛拟成一個高性能、高可用的應用服務池,并根據轉發規則,将來自用戶端的請求分發給雲伺服器池中的ECS執行個體。

負載均衡預設檢查雲伺服器池中ECS執行個體的健康狀态,自動隔離異常狀态的ECS執行個體,消除了單台ECS執行個體的單點故障,提高了應用的整體服務能力。此外,負載均衡還具備抗DDoS攻擊的能力,增強了應用服務的防護能力。

  • 架構

負載均衡服務主要有三個核心概念:

  1. 負載均衡執行個體 (Server Load Balancer instances)

一個負載均衡執行個體是一個運作的負載均衡服務,用來接收流量并将其配置設定給後端伺服器。要使用負載均衡服務,您必須建立一個負載均衡執行個體,并至少添加一個監聽和兩台ECS執行個體。

  1. 監聽 (Listeners)

監聽用來檢查用戶端請求并将請求轉發給後端伺服器。監聽也會對後端伺服器進行健康檢查。

  1. 後端伺服器(Backend Servers)

一組接收前端請求的ECS執行個體。您可以單獨添加ECS執行個體到伺服器池,也可以通過虛拟伺服器組或主備伺服器組來批量添加和管理。

進階實戰03-SLB負載均衡實踐
  • 特點

1)負載均衡服務通過設定虛拟服務位址(IP),将位于同一地域(Region)的多台雲伺服器(Elastic Compute Service,簡稱ECS)資源虛拟成一個高性能、高可用的應用服務池;根據應用指定的方式,将來自用戶端的網絡請求分發到雲伺服器池中。

2)負載均衡服務會檢查雲伺服器池中ECS的健康狀态,自動隔離異常狀态的ECS,進而解決了單台ECS的單點問題,同時提高了應用的整體服務能力。在标準的負載均衡功能之外,負載均衡服務還具備TCP與HTTP抗DDoS攻擊的特性,增強了應用伺服器的防護能力。

3)負載均衡服務是ECS面向多機方案的一個配套服務,需要同ECS結合使用。

  • 産品優勢
  1. 高可用

采用全備援設計,無單點,支援同城容災。搭配DNS可實作跨地域容災,可用性高達99.95%。

根據應用負載進行彈性擴容,在流量波動情況下不中斷對外服務。

  1. 可擴充

您可以根據業務的需要,随時增加或減少後端伺服器的數量,擴充應用的服務能力。

  1. 低成本

與傳統硬體負載均衡系統高投入相比,成本可下降60%。

  1. 安全

結合雲盾,可提供5Gbps的防DDOS攻擊能力。

雲伺服器狀态确認

  • 打開浏覽器,在輸入框中輸入 雲産品資源 提供的 雲伺服器ECS-1 的 彈性IP
進階實戰03-SLB負載均衡實踐
進階實戰03-SLB負載均衡實踐
  • 可以發現部署的網站内容相同,隻是顯示的後端伺服器IP不同。說明:在真實場景下,負載均衡後端的伺服器中部署的應用都是一緻的。

負載均衡配置

  1. 登入控制台->負載均衡服務->配置
  2. 配置負載均衡的 監聽端口、後端伺服器 和 健康檢查 :
  • 在 協定&監聽 頁面,輸入如下資訊
    • 負載均衡協定:選擇 HTTP
    • 監聽端口:設為 80
    • 進階配置保持預設
進階實戰03-SLB負載均衡實踐
  • 在 後端伺服器 頁面,監聽請求轉發至 預設伺服器組,在已添加伺服器處點選 繼續添加 。在彈出的待添加伺服器頁面,在預先配置好的兩台雲伺服器前打勾選擇,
進階實戰03-SLB負載均衡實踐
  • 在後端伺服器界面的已添加伺服器清單中,可以看到新增的兩台雲伺服器,分别将 端口 設定為 80。
  • 在 健康檢查 配置中,開啟健康檢查按鈕為綠色 開啟狀态
進階實戰03-SLB負載均衡實踐

負載均衡驗證

  1. 驗證負載均衡的工作原理;
  • 兩台後端伺服器的權重比例相同。在浏覽器中建立頁面,并通路 負載均衡 的 服務位址 。界面顯示的 後端伺服器IP 為 雲伺服器ECS-1(或 雲伺服器ECS-2) 的 内網位址 。
  • 重新整理後界面顯示的 後端伺服器IP 為 雲伺服器ECS-2(或 雲伺服器ECS-1) 的 内網位址**
  • 經過重複重新整理操作,觀察 後端伺服器IP 是在兩個雲伺服器的 内網位址 間輪流更換。可以說明負載均衡會将使用者的請求發送到後端不同的伺服器進行處理。這樣,可以減輕單台伺服器的負載壓力,進而確定業務不會中斷。
  1. 驗證通過配置不同後端伺服器權重,将使用者的請求按比例分發到不同後端伺服器;
  • 修改權重:預設伺服器組->已添加的伺服器->修改權重。
  • 設定兩個執行個體的 權重 分别為20 ,100 。
  • 浏覽器中,重新整理多次負載均衡 服務位址 的頁面,并記錄頁面顯示的 後端伺服器IP 。可以發現:每 6 次重新整理,将有 5 次通路 權重 為 100 的 ECS執行個體,1 次通路權重為 20 的 ECS執行個體。
  • 如上結果證明:使用者可以根據實際情況調整負載均衡器的請求分發,一般将配置高的伺服器設定的權重調高,配置較低的伺服器設定的權重調低。這樣可以避免在高并發時,配置較低的伺服器因為壓力較大服務異常的發生。
  1. 驗證在一台後端伺服器開啟會話請求時,請求在會話開啟的時間内隻會分發到這一台伺服器。
  • 打開監聽:監聽->配置->進階設定中的修改->開啟會話保持->逾時時間180秒->預設确認。
  • 再次在浏覽器中輸入 負載均衡 的 IP位址 ,多次重新整理,發現在會話保持的逾時時間内請求隻會分發到某一台 ECS 上(究竟是哪一台 ECS 沒有規定),時間超出後,重新按照權重比例分發。
  • 停止開啟會話的ECS伺服器。監聽頁面出現異常。
  • 此時再次重新整理浏覽器中 負載均衡 的 IP位址 ,請求發送到健康檢查狀态為 正常 的ECS上。
  • 結果證明,當某一台 ECS 出現異常後,負載均衡會自動将請求發送到健康檢查狀态正常的 ECS 上。

繼續閱讀