1. 程式人生 > >lvs的四種工作模式及其優缺點比較

lvs的四種工作模式及其優缺點比較

1、VS/NAT(地址翻譯實現虛擬伺服器)
排程器接受到客戶端的請求之後,根據排程演算法,將客戶端的的請求傳送給伺服器,伺服器處理完請求,檢視預設路由(NAT模式下需要將伺服器的預設閘道器設定為排程器),LB接受到響應包以後,將源IP進行修改,然後將響應資料傳送給客戶端。
這裡寫圖片描述
原理詳情:
<1>客戶端請求資料,然後將資料傳送給LB;
<2>LB接受到客戶端的請求,根據排程演算法,將客戶端的請求包的源IP和埠,修改為伺服器,然後將這條連線資訊儲存在hash表中;
<3>資料包經過伺服器的處理,伺服器的預設閘道器是LB,然後將響應資料發給LB;
<4>收到伺服器的響應包以後,根據hash表中的連線資訊,將源IP改為LB自己,然後將資料傳送給客戶端。
2、VS/TUN(用IP隧道技術實現虛擬伺服器)
比起NAT技術,由於請求和響應都需要通過LB進行地址的改寫,那麼當客戶端的請求越來越多的時候,LB的處理能力就會成為一個瓶頸。為了解決這個問題,LB通過IP隧道,將客戶端的請求通過IP隧道,傳送給真實的伺服器,伺服器處理完請求之後,將響應請求的IP改為LB的IP,然後將響應報文傳送給客戶端。
這裡寫圖片描述


原理詳情:
<1>客戶請求資料包,目標地址VIP(LB的IP地址)傳送到LB上;
<2>LB接收到客戶請求包,進行IP Tunnel封裝,在原有的包頭加上IP Tunnel的包頭,然後傳送給伺服器;
<3>伺服器根據IP Tunnel包頭資訊(此時就又一種邏輯上的隱形隧道,只有LB和伺服器之間懂)收到請求包,然後解開IP Tunnel包頭資訊,得到客戶的請求包並進行響應處理;
<4>響應處理完畢之後,伺服器使用自己的出公網的線路,將這個響應資料包傳送給客戶端,源IP地址還是VIP地址。
3、VS/DR(用直接路由技術實現虛擬伺服器)
DR模式是通過改寫請求報文的目的MAC地址,將請求傳送給真實伺服器,伺服器將響應訊息直接傳送給客戶端。
這裡寫圖片描述

原理詳情:
<1>通過在排程器LB上修改資料包的目的MAC地址實現轉發,注意源地址仍然是CIP,目的地址仍然是VIP地址;
<2>請求的報文經過排程器,而伺服器響應處理後的報文無需經過排程器LB,因此併發訪問量大時使用效率很高(和NAT模式比)
<3>因為DR模式是通過MAC地址改寫機制實現轉發,因此所有RS節點和排程器LB只能在一個局域網裡面
<4>伺服器主機需要繫結VIP地址在LO介面上,並且需要配置ARP抑制。
<5>伺服器節點的預設閘道器不需要配置成LB,而是直接配置為上級路由的閘道器,能讓伺服器直接出網就可以。
<6>由於DR模式的排程器僅做MAC地址的改寫,所以排程器LB就不能改寫目標埠,那麼伺服器就得使用和VIP相同的埠提供服務。
4、VS/FULLNAT
相比於NAT的區域網,FULLNAT是相對於沒有那麼侷限,它是限制在內網中的。對於運維比較方便。
5、VS/NAT的優缺點
<1>優點:
對後端的作業系統沒有要求;
只需要一個IP地址配置在排程器上,伺服器組可以用私有IP地址;
支援埠對映;
<2>缺點:
請求和響應都需要通過LB,伸縮能力有限(一般後面能連線10臺左右伺服器)
需要伺服器和LB在同一個區域網中;
需要將伺服器的預設閘道器設定為LB;
6、VS/TUN的優缺點
<1>優點:
不需要排程應答報文,負載能力強;
伺服器和排程器可以不在同一個VLAN中;
支援廣域負載均衡;
<2>缺點:
所有的伺服器必須支援“IP Tunneling”協議,需安裝核心模組,安裝複雜;
建立IP隧道的開銷大;
伺服器需要聯通外網,風險較大;
不支援埠對映;
7、VS/DR的優缺點
<1>優點:
與TUN相比,沒有IP隧道的開銷,效能較高;
<2>缺點:
要求LB和伺服器都有一塊網絡卡連在同一個物理網段中;
不支援埠對映;
8、使用場景
VS/NAT:小併發的實驗性應用、mysql叢集;
VS/TUN:廣域網負載;
VS/DR:大眾方式;
VS/FULLNAT:人少錢多;