1. 程式人生 > >硬體負載均衡裝置介紹

硬體負載均衡裝置介紹

最常用是F5 與citrix netscaler

負載均衡分全域性負載均衡和本地負載均衡。

地負載均衡是指對本地的伺服器群做負載均衡,全域性負載均衡是指對分別放置在不同的地理位置、有不同網路結構的伺服器群間作負載均衡。

迴圈DNS

就是每次解析域名時指向IP loop list 裡的下一個IP.

負載均衡路由器

通過某種策略把請求傳送到響應最快的server上, 同時可以滿足故障轉移/故障恢復. 但是負載均衡路由器本身需要維護,通常需要有兩個, 來防止單點故障.

例如Alteon 180 和 F5 Network 的 Big-IP

負載均衡可以針對不同的網路層次

鏈路聚合技術(第二層負載均衡)是將多條物理鏈路當作一條單一的聚合邏輯鏈路使用,網路資料流量由聚合邏輯鏈路中所有物理鏈路共同承擔,由此在邏輯上增大了鏈路的容量,使其能滿足頻寬增加的需求.

現在經常使用的是4至7層的負載均衡。

第四層負載均衡將一個Internet上合法註冊的IP地址對映為多個內部伺服器的IP地址,對每次TCP連線請求動態使用其中一個內部IP地址,達到負載均衡的目的。在第四層交換機中,此種均衡技術得到廣泛的應用,一個目標地址是伺服器群VIP(虛擬IP,Virtual IP address)連線請求的資料包流經交換機,交換機根據源端和目的IP地址、TCP或UDP埠號和一定的負載均衡策略,在伺服器IP和VIP間進行對映,選取伺服器群中最好的伺服器來處理連線請求。

第七層負載均衡控制應用層服務的內容,提供了一種對訪問流量的高層控制方式,適合對HTTP伺服器群的應用。第七層負載均衡技術通過檢查流經的HTTP報頭,根據報頭內的資訊來執行負載均衡任務。 

第七層負載均衡優點表現在如下幾個方面:

1。通過對HTTP報頭的檢查,可以檢測出HTTP400、500和600系列的錯誤資訊,因而能透明地將連線請求重新定向到另一臺伺服器,避免應用層故障。

2。可根據流經的資料型別(如判斷資料包是影象檔案、壓縮檔案或多媒體檔案格式等),把資料流量引向相應內容的伺服器來處理,增加系統性能。

3。能根據連線請求的型別,如是普通文字、圖象等靜態文件請求,還是asp、cgi等的動態文件請求,把相應的請求引向相應的伺服器來處理,提高系統的效能及安全性。

缺點: 第七層負載均衡受到其所支援的協議限制(一般只有HTTP),這樣就限制了它應用的廣泛性,並且檢查HTTP報頭會佔用大量的系統資源,勢必會影響到系統的效能,在大量連線請求的情況下,負載均衡裝置自身容易成為網路整體效能的瓶頸

負載均衡策略:

1.       輪循均衡(Round Robin):每一次來自網路的請求輪流分配給內部中的伺服器,從1至N然後重新開始。此種均衡演算法適合於伺服器組中的所有伺服器都有相同的軟硬體配置並且平均服務請求相對均衡的情況。

2.       權重輪循均衡(Weighted Round Robin):根據伺服器的不同處理能力,給每個伺服器分配不同的權值,使其能夠接受相應權值數的服務請求。例如:伺服器A的權值被設計成1,B的權值是3,C的權值是6,則伺服器A、B、C將分別接受到10%、30%、60%的服務請求。此種均衡演算法能確保高效能的伺服器得到更多的使用率,避免低效能的伺服器負載過重。

3.       隨機均衡(Random):把來自網路的請求隨機分配給內部中的多個伺服器。

4.       權重隨機均衡(Weighted Random):此種均衡演算法類似於權重輪循演算法,不過在處理請求分擔時是個隨機選擇的過程。

5.       響應速度均衡(Response Time):負載均衡裝置對內部各伺服器發出一個探測請求(例如Ping),然後根據內部中各伺服器對探測請求的最快響應時間來決定哪一臺伺服器來響應客戶端的服務請求。此種均衡演算法能較好的反映伺服器的當前執行狀態,但這最快響應時間僅僅指的是負載均衡裝置與伺服器間的最快響應時間,而不是客戶端與伺服器間的最快響應時間。

6.       最少連線數均衡(Least Connection):客戶端的每一次請求服務在伺服器停留的時間可能會有較大的差異,隨著工作時間加長,如果採用簡單的輪循或隨機均衡演算法,每一臺伺服器上的連線程序可能會產生極大的不同,並沒有達到真正的負載均衡。最少連線數均衡演算法對內部中需負載的每一臺伺服器都有一個數據記錄,記錄當前該伺服器正在處理的連線數量,當有新的服務連線請求時,將把當前請求分配給連線數最少的伺服器,使均衡更加符合實際情況,負載更加均衡。此種均衡演算法適合長時處理的請求服務,如FTP。

7.       處理能力均衡:此種均衡演算法將把服務請求分配給內部中處理負荷(根據伺服器CPU型號、CPU數量、記憶體大小及當前連線數等換算而成)最輕的伺服器,由於考慮到了內部伺服器的處理能力及當前網路執行狀況,所以此種均衡演算法相對來說更加精確,尤其適合運用到第七層(應用層)負載均衡的情況下。

8.       DNS響應均衡(Flash DNS):在Internet上,無論是HTTP、FTP或是其它的服務請求,客戶端一般都是通過域名解析來找到伺服器確切的IP地址的。在此均衡演算法下,分處在不同地理位置的負載均衡裝置收到同一個客戶端的域名解析請求,並在同一時間內把此域名解析成各自相對應伺服器的IP地址(即與此負載均衡裝置在同一位地理位置的伺服器的IP地址)並返回給客戶端,則客戶端將以最先收到的域名解析IP地址來繼續請求服務,而忽略其它的IP地址響應。在種均衡策略適合應用在全域性負載均衡的情況下,對本地負載均衡是沒有意義的。

服務故障的檢測方式和能力:

1.       Ping偵測:通過ping的方式檢測伺服器及網路系統狀況,此種方式簡單快速,但只能大致檢測出網路及伺服器上的作業系統是否正常,對伺服器上的應用服務檢測就無能為力了。

2.       TCP Open偵測:每個服務都會開放某個通過TCP連線,檢測伺服器上某個TCP埠(如Telnet的23口,HTTP的80口等)是否開放來判斷服務是否正常。

3.       HTTP URL偵測:比如向HTTP伺服器發出一個對main.html檔案的訪問請求,如果收到錯誤資訊,則認為伺服器出現故障。