1. 程式人生 > >LVS的三種工作模式

LVS的三種工作模式

LVS介紹 1.LVS系統結構與特點 使用LVS架設的伺服器集群系統從體系結構上看是透明的,終端使用者只感覺到一個虛擬伺服器.物理伺服器之間可以通過高速的LAN或分佈在各地的WAN相連。最前端是負載均衡器,它負責將各種服務請求分發給後面的物理伺服器,讓整個叢集表現得象一個服務於同一IP地址的虛擬伺服器。 LVS集群系統具有良好的可擴充套件性和高可用性。 可擴充套件性是指,LVS叢集建立後,可以很容易地根據實際的需要增加或減少物理伺服器。而高可用性是指當檢測到伺服器節點或服務程序出錯、失效時,集群系統能夠自動進行適當的重新調整系統。 2.LVS是如何工作的 Linux Virtual Server的主要是在負載均衡器上實現的,負載均衡器是一臺加了LVS Patch的2.2.x版核心的Linux系統。LVS Patch可以通過重新編譯核心的方法加入核心,也可以當作一個動態的模組插入現在的核心中。 負載均衡器可以執行在以下三種模式下中的一種或幾種: 1)Virtual Server via NAT(VS-NAT):用地址翻譯實現虛擬伺服器;2)Virtual Server via IP Tunneling (VS-TUN):用IP隧道技術實現虛擬伺服器;3)Virtual Server via Direct Routing(VS-DR):用直接路由技術實現虛擬伺服器。 另外,還需要根據LVS應用對物理伺服器進行恰當的配置。 以下將分別講述一下三種模式的工作原理和優缺點。 2.1.Virtual server via NAT(VS-NAT) Virtual Server via NAT方法的最大優點是叢集中的物理伺服器可以使用任何支援TCP/IP作業系統,物理伺服器可以分配Internet的保留私有地址,只有負載均衡器需要一個合法的IP地址。 這種實現方法的最大的缺點是擴充套件性有限。當伺服器節點(普通PC伺服器)資料增長到20個或更多時,負載均衡器將成為整個系統的瓶頸,因為所有的請求包和應答包都需要經過負載均衡器再生。假使TCP包的平均長度是536位元組的話,平均包再生延遲時間大約為60us(在Pentium處理器上計算的,採用更快的處理器將使得這個延遲時間變短),負載均衡器的最大容許能力為8.93M/s,假定每臺物理伺服器的平臺容許能力為400K/s來計算,負責均衡器能為22臺物理伺服器計算。 Virtual Server via NAT能夠滿足許多伺服器的服務效能需求。即使是是負載均衡器成為整個系統的瓶頸,如果是這樣也有兩種方法來解決它。一種是混合處理,另一種是採用Virtual Server via IP tunneling或Virtual Server via direct routing。如果採用混合處理的方法,將需要許多同屬單一的RR DNS域。你採用Virtual Server via IP tunneling或Virtual Server via direct routing以獲得更好的可擴充套件性。也可以巢狀使用負載均衡器,在最前端的是VS-Tunneling或VS-Drouting的負載均衡器,然後後面採用VS-NAT的負載均衡器。 2.2.Virtual server via IP tunneling(VS-TUN) 採用VS-NAT方式,請求與應答包都需要經過負載均衡器,那麼當伺服器節點增長到20個或更多時,這個負載均衡器就可能成為新的瓶頸。我們發現,許多Internet服務(例如WEB伺服器)的請求包很短小,而應答包通常很大。 而使用VS-TUN方式的話,負載均衡器只負責將請求包分發給物理伺服器,而物理伺服器將應答包直接發給使用者
。所以,負載均衡器能處理很巨大的請求量,這種方式,一臺負載均衡能為超過100臺的物理伺服器服務,負載均衡器不再是系統的瓶頸。使用VS-TUN方式,如果你的負載均衡器擁有100M的全雙工網絡卡的話,就能使得整個Virtual Server能達到1G的吞吐量。 IP tunneling(IP隧道)能夠用於架構一個高效能的virtual server,非常適合構建virtual proxy server,因為當代理伺服器收到了請求,能夠讓終端使用者直接與伺服器聯絡。 但是,這種方式需要所有的伺服器支援IP Tunneling(IP Encapsulation)協議,我僅在Linux系統上實現了這個,如果你能讓其它作業系統支援,還在探索之中。 2.3.Virtual Server via Direct Routing(VS-DR) 就象VS-TUN一下,在VS-DR方式下,負載均衡器也只是分發請求,應答包通過單獨的路由方法返回給客戶端
。這種方式能夠大大提高Virtual Server的可擴充套件性。與VS-TUN相比,VS-DR這種實現方式不需要隧道結構,但它要求負載均衡器的網絡卡必須與物理網絡卡在一個物理段上。 而且VS-DR模式,可以使用大多數作業系統做為物理伺服器,其中包括:Linux 2.0.36、2.2.9、2.2.10、2.2.12;Solaris 2.5.1、2.6、2.7;FreeBSD 3.1、3.2、3.3;NT4.0無需打補丁;IRIX 6.5;HPUX11等 以下來源於:Tool哥的LVS教程

lvs三種工作模式比較