日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

介绍最全的LVS负载均衡技术

發(fā)布時間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 介绍最全的LVS负载均衡技术 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

LVS集群采用IP負載均衡技術(shù)和基于內(nèi)容請求分發(fā)技術(shù)。調(diào)度器具有很好的吞吐率,將請求均衡地轉(zhuǎn)移到不同的服務器上執(zhí)行,且調(diào)度器自動屏蔽掉服務器的故障,從而將一組服務器構(gòu)成一個高性能的、高可用的虛擬服務器。整個服務器集群的結(jié)構(gòu)對客戶是透明的,而且無需修改客戶端和服務器端的程序。為此,在設(shè)計時需要考慮系統(tǒng)的透明性、可伸縮性、高可用性和易管理性。

LVS的三種模式:

VS/NAT通過NAT實現(xiàn)虛擬服務器

由于IPv4中IP地址空間的日益緊張和安全方面的原因,很多網(wǎng)絡(luò)使用保留IP地址(10.0.0.0/255.0.0.0、 172.16.0.0/255.128.0.0和192.168.0.0/255.255.0.0)[64, 65, 66]。這些地址不在Internet上使用,而是專門為內(nèi)部網(wǎng)絡(luò)預留的。當內(nèi)部網(wǎng)絡(luò)中的主機要訪問Internet或被Internet訪問時,就需要 采用網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation, 以下簡稱NAT),將內(nèi)部地址轉(zhuǎn)化為Internets上可用的外部地址。NAT的工作原理是報文頭(目標地址、源地址和端口等)被正確改寫后,客戶相信 它們連接一個IP地址,而不同IP地址的服務器組也認為它們是與客戶直接相連的。由此,可以用NAT方法將不同IP地址的并行網(wǎng)絡(luò)服務變成在一個IP地址 上的一個虛擬服務。
VS/NAT的體系結(jié)構(gòu)如圖2所示。在一組服務器前有一個調(diào)度器,它們是通過Switch/HUB相連接的。這些服務器提供相同的網(wǎng)絡(luò)服務、相同的內(nèi)容, 即不管請求被發(fā)送到哪一臺服務器,執(zhí)行結(jié)果是一樣的。服務的內(nèi)容可以復制到每臺服務器的本地硬盤上,可以通過網(wǎng)絡(luò)文件系統(tǒng)(如NFS)共享,也可以通過一 個分布式文件系統(tǒng)來提供?

VS/DR? ?通過直接路由模式實現(xiàn)虛擬服務器

VS/DR 的工作流程如圖8所示:它的連接調(diào)度和管理與VS/NAT和VS/TUN中的一樣,它的報文轉(zhuǎn)發(fā)方法又有不同,將報文直接路由給目標服務器。在VS/DR 中,調(diào)度器根據(jù)各個服務器的負載情況,動態(tài)地選擇一臺服務器,不修改也不封裝IP報文,而是將數(shù)據(jù)幀的MAC地址改為選出服務器的MAC地址,再將修改后 的數(shù)據(jù)幀在與服務器組的局域網(wǎng)上發(fā)送。因為數(shù)據(jù)幀的MAC地址是選出的服務器,所以服務器肯定可以收到這個數(shù)據(jù)幀,從中可以獲得該IP報文。當服務器發(fā)現(xiàn) 報文的目標地址VIP是在本地的網(wǎng)絡(luò)設(shè)備上,服務器處理這個報文,然后根據(jù)路由表將響應報文直接返回給客戶。?

VS/TUN??通過ip隧道實現(xiàn)虛擬服務器要求:

在VS/NAT 的集群系統(tǒng)中,請求和響應的數(shù)據(jù)報文都需要通過負載調(diào)度器,當真實服務器的數(shù)目在10臺和20臺之間時,負載調(diào)度器將成為整個集群系統(tǒng)的新瓶頸。大多數(shù) Internet服務都有這樣的特點:請求報文較短而響應報文往往包含大量的數(shù)據(jù)。如果能將請求和響應分開處理,即在負載調(diào)度器中只負責調(diào)度請求而響應直 接返回給客戶,將極大地提高整個集群系統(tǒng)的吞吐量。
IP隧道(IP tunneling)是將一個IP報文封裝在另一個IP報文的技術(shù),這可以使得目標為一個IP地址的數(shù)據(jù)報文能被封裝和轉(zhuǎn)發(fā)到另一個IP地址。IP隧道技 術(shù)亦稱為IP封裝技術(shù)(IP encapsulation)。IP隧道主要用于移動主機和虛擬私有網(wǎng)絡(luò)(Virtual Private Network),在其中隧道都是靜態(tài)建立的,隧道一端有一個IP地址,另一端也有唯一的IP地址。
我們利用IP隧道技術(shù)將請求報文封裝轉(zhuǎn)發(fā)給后端服務器,響應報文能從后端服務器直接返回給客戶。但在這里,后端服務器有一組而非一個,所以我們不可能靜態(tài) 地建立一一對應的隧道,而是動態(tài)地選擇一臺服務器,將請求報文封裝和轉(zhuǎn)發(fā)給選出的服務器。這樣,我們可以利用IP隧道的原理將一組服務器上的網(wǎng)絡(luò)服務組成 在一個IP地址上的虛擬網(wǎng)絡(luò)服務。 VS/TUN的體系結(jié)構(gòu)如圖4所示,各個服務器將VIP地址配置在自己的IP隧道設(shè)備上。?

?

可伸縮網(wǎng)絡(luò)服務的幾種結(jié)構(gòu),它們都需要一個前端的負載調(diào)度器(或者多個進行主從備份)。我們先分析實現(xiàn)虛擬網(wǎng)絡(luò)服務的主要技術(shù),指出IP負載均衡技術(shù)是在負載調(diào)度器的實現(xiàn)技術(shù)中效率最高的。在已有的IP負載均衡技術(shù)中,主要有通過網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation)將一組服務器構(gòu)成一個高性能的、高可用的虛擬服務器,我們稱之為VS/NAT技術(shù)(VirtualServer via Network Address Translation)。在分析VS/NAT的缺點和網(wǎng)絡(luò)服務的非對稱性的基礎(chǔ)上,我們提出了通過IP隧道實現(xiàn)虛擬服務器的方法VS/TUN (VirtualServervia IP Tunneling),和通過直接路由實現(xiàn)虛擬服務器的方法VS/DR(VirtualServer via Direct Routing),它們可以極大地提高系統(tǒng)的伸縮性。VS/NAT、VS/TUN和VS/DR技術(shù)是LVS集群中實現(xiàn)的三種IP負載均衡技術(shù)

?

LVS的十中輪詢算法:

一.rr 輪叫(RoundRobin)

?? 調(diào)度器通過"輪叫"調(diào)度算法將外部請求按順序輪流分配到集群中的真實服務器上,它均等地對待每一臺服務器,而不管服務器上實際的連接數(shù)和系統(tǒng)負載。

二.wrr 加權(quán)輪叫(WeightedRound Robin)

?? 調(diào)度器通過"加權(quán)輪叫"調(diào)度算法根據(jù)真實服務器的不同處理能力來調(diào)度訪問請求。這樣可以保證處理能力強的服務器處理更多的訪問流量。調(diào)度器可以自動問詢真實服務器的負載情況,并動態(tài)地調(diào)整其權(quán)值。

三.lc 最少鏈接(LeastConnections)

?? 調(diào)度器通過"最少連接"調(diào)度算法動態(tài)地將網(wǎng)絡(luò)請求調(diào)度到已建立的鏈接數(shù)最少的服務器上。如果集群系統(tǒng)的真實服務器具有相近的系統(tǒng)性能,采用"最小連接"調(diào)度算法可以較好地均衡負載。

四.wlc 加權(quán)最少鏈接(WeightedLeast Connections)

?? 在集群系統(tǒng)中的服務器性能差異較大的情況下,調(diào)度器采用"加權(quán)最少鏈接"調(diào)度算法優(yōu)化服務器性能,具有較高權(quán)值的服務器將承受較大比例的活動連接負載。調(diào)度器可以自動問詢真實服務器的負載情況,并動態(tài)地調(diào)整其權(quán)值。

五.lblc 基于局部性的最少鏈接(Locality-BasedLeast Connections)

?? "基于局部性的最少鏈接"調(diào)度算法是針對目標IP地址的負載均衡,目前主要用于Cache集群系統(tǒng)。該算法根據(jù)請求的目標IP地址找出該目標IP地址最近使用的服務器,若該服務器是可用的且沒有超載,將請求發(fā)送到該服務器;若服務器不存在,或者該服務器超載且有服務器處于一半的工作負載,則用"最少鏈接"的原則選出一個可用的服務器,將請求發(fā)送到該服務器。

六.lblcr 帶復制的基于局部性最少鏈接(Locality-BasedLeast Connections with Replication)

?? "帶復制的基于局部性最少鏈接"調(diào)度算法也是針對目標IP地址的負載均衡,目前主要用于Cache集群系統(tǒng)。它與LBLC算法的不同之處是它要維護從一個目標IP地址到一組服務器的映射,而LBLC算法維護從一個目標IP地址到一臺服務器的映射。該算法根據(jù)請求的目標IP地址找出該目標IP地址對應的服務器組,按"最小連接"原則從服務器組中選出一臺服務器,若服務器沒有超載,將請求發(fā)送到該服務器,若服務器超載;則按"最小連接"原則從這個集群中選出一臺服務器,將該服務器加入到服務器組中,將請求發(fā)送到該服務器。同時,當該服務器組有一段時間沒有被修改,將最忙的服務器從服務器組中刪除,以降低復制的程度。

七.dh 目標地址散列(DestinationHashing)

?? "目標地址散列"調(diào)度算法根據(jù)請求的目標IP地址,作為散列鍵(HashKey)從靜態(tài)分配的散列表找出對應的服務器,若該服務器是可用的且未超載,將請求發(fā)送到該服務器,否則返回空。

八.sh 源地址散列(SourceHashing)

"源地址散列"調(diào)度算法根據(jù)請求的源IP地址,作為散列鍵(HashKey)從靜態(tài)分配的散列表找出對應的服務器,若該服務器是可用的且未超載,將請求發(fā)送到該服務器,否則返回空。

九.SED最短期望延遲(ShortestExpected Delay)

??“按內(nèi)容服務器的最短期望延遲分配鏈接,SED=(Ci+1)/Ui ,即(任務數(shù)+1)/權(quán)重

十.NQ(無需隊列等待)

?? 將請求優(yōu)先裝發(fā)給空閑的服務器,否則按最短預計延遲策略分配鏈接。

?

實現(xiàn)軟件

Ipvsadm-1.24-8.1.i386.rpm包,redhat光盤自帶本軟件,軟件具體命令介紹如下:

ipvsadm -A -t XXX.XXX.XXX.XXX -s rr

-A --add-service在服務器列表中新添加一條新的虛擬服務器記錄

-t?表示為tcp服務

-u?表示為udp服務

-s --scheduler?使用的調(diào)度算法,rr | wrr | lc | wlc | lblb | lblcr | dh | sh | sed | nq?默認調(diào)度算法是wlc

ipvsadm -a -t 172.18.1.187:80 –r172.18.1.2:80 -m -w 1

-a --add-server?在服務器表中添加一條新的真實主機記錄

-t --tcp-service?說明虛擬服務器提供tcp服務

-u --udp-service?說明虛擬服務器提供udp服務

-r --real-server?真實服務器地址

-m --masquerading?指定LVS工作模式為NAT模式

-w --weight?真實服務器的權(quán)值

-g --gatewaying?指定LVS工作模式為直接路由器模式(也是LVS默認的模式)

-i --ipip?指定LVS的工作模式為隧道模式

-p?會話保持時間,定義流量唄轉(zhuǎn)到同一個realserver的會話存留時間? ?



附件是三種模式的詳細方法!!!!

總結(jié)

以上是生活随笔為你收集整理的介绍最全的LVS负载均衡技术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。