linux中的IP負載均衡實現原理

2021-06-01 20:17:24 字數 2028 閱讀 5894

lvs的ip負載均衡技術可以實現高效能,大吞吐量的工作。那麼這些效能都引來很多的使用者,在這裡面我們先來介紹一下lvs的集群概念,之後再對它的ip負載均衡進行解說。相信大家可以對這個系統有乙個全方位的了解。

一般來說,lvs集群採用三層結構,其主要組成部分為:

a、負載排程器(load balancer),它是整個集群對外面的前端機,負責將客戶的請求傳送到一組伺服器上執行,而客戶認為服務是來自乙個ip位址(我們可稱之為虛擬ip位址)上的。

b、伺服器池(server pool),是一組真正執行客戶請求的伺服器,執行的服務有web、mail、ftp和dns等。

c、共享儲存(shared storage),它為伺服器池提供乙個共享的儲存區,這樣很容易使得伺服器池擁有相同的內容,提供相同的服務。

排程器是伺服器集群系統的唯一入口點(single entry point),它可以採用ip負載均衡技術、基於內容請求分發技術或者兩者相結合。在ip負載均衡技術中,需要伺服器池擁有相同的內容提供相同的服務。當 客戶請求到達時,排程器只根據伺服器負載情況和設定的排程演算法從伺服器池中選出乙個伺服器,將該請求**到選出的伺服器,並記錄這個排程;當這個請求的其 他報文到達,也會被**到前面選出的伺服器。在基於內容請求分發技術中,伺服器可以提供不同的服務,當客戶請求到達時,排程器可根據請求的內容選擇伺服器 執行請求。因為所有的操作都是在linux作業系統核心空間中將完成的,它的排程開銷很小,所以它具有很高的吞吐率。伺服器池的結點數目是可變的。當整個 系統收到的負載超過目前所有結點的處理能力時,可以在伺服器池中增加伺服器來滿足不斷增長的請求負載。對大多數網路服務來說,請求間不存在很強的相關性, 請求可以在不同的結點上並行執行,所以整個系統的效能基本上可以隨著伺服器池的結點數目增加而線性增長。 共享儲存通常是資料庫、網路檔案系統或者分布式檔案系統。伺服器結點需要動態更新的資料一般儲存在資料庫系統中,同時資料庫會保證併發訪問時資料的一致 性。靜態的資料可以儲存在網路檔案系統(如nfs/cifs)中,但網路檔案系統的伸縮能力有限,一般來說,nfs/cifs伺服器只能支援3~6個繁忙 的伺服器結點。對於規模較大的集群系統,可以考慮用分布式檔案系統,如afs、gfs、coda和intermezzo等。分布式檔案系統可為各伺服器提 供共享的儲存區,它們訪問分布式檔案系統就像訪問本地檔案系統一樣,同時分布式檔案系統可提供良好的伸縮性和可用性。此外,當不同伺服器上的應用程式同時 讀寫訪問分布式檔案系統上同一資源時,應用程式的訪問衝突需要消解才能使得資源處於一致狀態。這需要乙個分布式鎖管理器(distributed lock manager),它可能是分布式檔案系統內部提供的,也可能是外部的。開發者在寫應用程式時,可以使用分布式鎖管理器來保證應用程式在不同結點上併發訪 問的一致性。

負載排程器、伺服器池和共享儲存系統通過高速網路相連線,如100mbps交換網路、myrinet和gigabit網路等。使用高速的網路,主要為避免當系統規模擴大時網際網路絡成為整個系統的瓶頸。

graphic monitor是為系統管理員提供整個集群系統的監視器,它可以監視系統的狀態。graphic monitor是基於瀏覽器的,所以無論管理員在本地還是異地都可以監測系統的狀況。為了安全的原因,瀏覽器要通過https(secure http)協議和身份認證後,才能進行系統監測,並進行系統的配置和管理。

lvs的ip負載均衡

可伸縮網路服務的幾種結構,它們都需要乙個前端的負載排程器(或者多個進行主從備份)。我們先分析實現虛擬網路服務的主要技術,指出ip負載均衡技術是在 負載排程器的實現技術中效率最高的。在已有的ip負載均衡技術中,主要有通過網路位址轉換(network address translation)將一組伺服器構成乙個高效能的、高可用的虛擬伺服器,我們稱之為vs/nat技術(virtual server via network address translation)。在分析vs/nat的缺點和網路服務的非對稱性的基礎上,我們提出了通過ip隧道實現虛擬伺服器的方法vs/tun (virtual server via ip tunneling),和通過直接路由實現虛擬伺服器的方法vs/dr(virtual server via direct routing),它們可以極大地提高系統的伸縮性。vs/nat、vs/tun和vs/dr技術是lvs集群中實現的三種ip負載均衡技術。

LVS中的IP負載均衡

ip虛擬伺服器軟體ipvs 在排程器的實現技術中,ip負載均衡技術是效率最高的。在已有的ip負載均衡技術中有通過網路位址轉換 network address translation 將一組伺服器構成乙個高效能的 高可用的虛擬伺服器,我們稱之為vs nat技術 virtual server via n...

負載均衡之IP

首先讓我們來看看下面這張大家都非常熟悉的tcp ip協議族的分層圖 關於每層在網路資料報傳輸過程中所起到的作用不是本文的重點,本文主要是講解如何在網路層中使用ip來做伺服器集群的負載均衡,為什麼可以在這一層來做負載均衡。下面在來看ip協議的報頭格式 內紅色框內的源位址和目的位址是ip負載均衡功能的關...

IP層負載均衡

首先讓我們來看看下面這張大家都非常熟悉的tcp ip協議族的分層圖 關於每層在網路資料報傳輸過程中所起到的作用不是本文的重點,本文主要是講解如何在網路層中使用ip來做伺服器集群的負載均衡,為什麼可以在這一層來做負載均衡。下面在來看ip協議的報頭格式 內紅色框內的源位址和目的位址是ip負載均衡功能的關...