學習筆記 伺服器的負載均衡

2021-10-03 10:45:09 字數 2291 閱讀 7234

• 日益增長的網路業務量對伺服器造成了巨大壓力,當單個伺服器無法滿足網路需求時。更換更高效能的伺服器會讓之前的伺服器造成資源浪費。單純地增加伺服器的數量,則涉及到如何分配流量、伺服器間的協同機制等很多複雜的問題。既要考慮成本因素和現實需求,又要兼顧日後的裝置公升級和擴容。

• 處理業務的伺服器組成伺服器集群,對外體現為一台邏輯上的伺服器,由fw決定如何分配流量給各個伺服器。

伺服器負載均衡技術的一些常見概念如下:

• 實伺服器:處理業務流量的實體伺服器,客戶端傳送的服務請求最終是由實伺服器處理的。

• 實伺服器組:由多個實伺服器組成的集群,對外提供特定的一種服務。

• 虛擬伺服器:實伺服器組對外呈現的邏輯形態,客戶端實際訪問的是虛擬伺服器。

• 負載均衡演算法:fw分配業務流量給實伺服器時依據的演算法,不同的演算法可能得到不同的分配結果。

• 服務健康檢查:fw檢查伺服器狀態是否正常的過程,可以增強為使用者提供服務的穩定性。

伺服器負載均衡功能利用server-map表和會話表完成虛擬伺服器和實伺服器的對映。配置伺服器負載均衡功能後,fw會生成slb型別的靜態server-map表,該表項在關閉伺服器負載均衡功能時立即老化。

• 隨著企業的大規模擴充套件和業務量的**式增長,企業網路要處理的資料量也在大幅度增加。企業新建園區網或擴容原有網路的服務能力時,需要考慮服務能力和投入資金的關係,甚至要兼顧日後擴充套件的收益性。fw作為企業園區的安全閘道器,同時為園區內的使用者和伺服器集群提供安全隔離保護。配置伺服器負載均衡功能後,使用者可以快速獲取企業資源和服務,提公升了使用者體驗。對於企業來說,也方便日後對服務能力進行擴容,降低了企業的投入成本。

負載均衡演算法是伺服器負載均衡功能的核心,伺服器負載均衡是按照逐流方式進行流量分配的,每一條流到達fw後都會進行一次負載均衡處理。這裡的「一條流」可以理解為fw上建立的一條會話或乙個連線,所謂「逐流」就是將屬於同一條流的報文都分配給同乙個伺服器來處理。當會話老化後,即使流量的源ip、目的ip等網路引數都沒有改變,也會視新建的會話為一條新流。

• 將客戶端的業務流量依次分配到各個伺服器上。fw將客戶端的業務流量依次分配給伺服器,當每個伺服器都分配到一條流後,再從伺服器s1開始重新依次分配。當業務流量較大時,經過一段時間後,各伺服器的累積連線數大致相等。

• 將客戶端的業務流量分配到併發連線數最小的伺服器上。併發連線數即伺服器對應的實時連線數,會話新建或老化都會影響併發連線數的大小。

• 會話保持演算法是將同一客戶端的業務流量全部分配到同一臺伺服器上,通過基於源ip的hash計算實現此目的。

• 所有的演算法均可以加上權重的配置,在簡單輪詢的基礎上,對所配置的實伺服器再配置對應的權重,即為加權輪詢演算法,將客戶端的業務流量按照一定權重比依次分配到各個伺服器上。例如伺服器s1、s2、s3、s4的權重依次為2、1、1、1,此時伺服器s1將被視為兩台權重為1的伺服器,所以fw連續分配兩條流給s1,然後再分配下一條流給伺服器s2。當業務流量比較大時,經過一段時間後,各伺服器的累積連線數比例約為2:1:1:1。

• 加權最小連線演算法是將客戶端的業務流量分配到加權併發連線數最小的伺服器上。加權併發連線數是考慮伺服器權重後得到的實時連線數,例如s1,s2,s3實時連線數為8,4,3;加權為8:2:2,計算後為1:2:1.5,所以下一條連線在s1上。

• 加權會話保持演算法是將同一客戶端的業務流量全部分配到同一臺伺服器上,權重比高的伺服器將分配到更多的業務流量。

• 伺服器的效能

根據伺服器的效能差異來分配業務,可以保證裝置得到充分利用,提高服務的穩定性。當各個伺服器的效能不同且成一定比例關係時,可通過設定權重來實現負載均衡:效能高的伺服器權重值大,分配到較多的業務;效能低的伺服器權重值小,分配到較少的業務。

• 伺服器的服務型別

伺服器的服務型別不同,則會話連線的時長或服務請求的次數可能會有差異。如果使用者請求的服務需要長時間保持會話連線,那麼必須考慮伺服器併發處理的連線數。如果使用者需要和伺服器進行多次互動,才能完成某個特定的服務,那麼必須保證這期間的所有請求都傳送到乙個固定的伺服器上,否則將導致請求失敗。

• 如果伺服器提供的服務型別不包含在這5種協議(tcp、icmp、http、dns和radius)中,建議使用icmp協議報文檢查伺服器的可達性。

• 每個探測報文都會返回乙個檢查結果,顯示伺服器是否處在正常的工作狀態,fw提供了結果確認機制來保證不會發生誤判。如果有乙個檢查結果顯示伺服器故障,則fw在繼續傳送探測報文的同時,開始統計連續故障的次數。當連續次數達到預設值時,fw才認定此伺服器真的發生了故障。檢查結果反饋給負載均衡演算法後,改變了負載均衡的結果,該伺服器不再參與流量分配。管理員可以選擇是否繼續對故障伺服器進行健康檢查,如果指定故障伺服器為非啟用狀態,則fw不會再向伺服器傳送探測報文(修復好之後需要指定回啟用狀態),否則fw會繼續向故障伺服器傳送探測報文(修復好後不需要指定回啟用狀態)。

伺服器負載均衡演算法

3.1 伺服器負載均衡演算法 big ip是一台對流量和內容進行管理分配的裝置。它提供10種靈活的演算法將資料流有效地 到它所連線的伺服器群。而面對使用者,只是一台虛擬伺服器。使用者此時只須記住一台伺服器,即虛擬伺服器。但他們的資料流卻被big ip靈活地均衡到所有的伺服器。這10種演算法包括 輪詢...

Nginx tomcat伺服器 負載均衡

反向 reverse proxy 方式是指以 伺服器來接受internet上的連線請求,然後將請求 給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求連線的客戶端,此時 伺服器對外就表現為乙個反向 伺服器。1 熱部署 我個人覺得這個很不錯。在master管理程序與worker...

web 伺服器負載均衡

web 應用伺服器集群系統,是由一群同時執行同乙個web應用的伺服器組成的集群系統,在外界看來,就像是乙個伺服器一樣。為了均衡集群服務 器的負載,達到優化系統效能的目的,集群伺服器將眾多的訪問請求,分散到系統中的不同節點進行處理。從而實現了更高的有效性和穩定性,而這也正是基於web的企業應用所必須具...