LVS介紹——三種工作模式(NAT、TUN-IP、TUN-DR)分析

內容要點:

一、企業羣集應用概述:

二、企業羣集分類:

三、負載均衡羣集工作模式分析:

四、負載均衡羣集架構:

五、LVS 虛擬服務器:


一、企業羣集應用概述:

在互聯網應用中,隨着站點對硬件性能、響應速度、服務穩定性、數據可靠性等要求越來越高,單臺服務器遠不能滿足需求,此時就需要多臺服務器組成一個集羣,但是對外仍表現的是一個整體,類似於一個“代表”。


羣集:

  • Cluster ,集羣 ,羣集

  • 由多臺主機構成,但對外只表現爲一個整體

二、企業羣集分類:

根據羣集所針對的目標差異,可分爲三種類型:


  • 負載均衡羣集;

  • 高可用羣集;

  • 高性能運算羣集;

(1)負載均衡集羣(Load Balance Cluster)

  • 以提高應用系統的響應能力、儘可能處理更多的訪問請求、減少延遲爲目標,獲得高併發、高負載(LB)的整體性能;

  • LB 的負載分配依賴於主節點的分流算法;

(2)高可用羣集 (High Availability Cluster)

  • 以提高應用系統的可靠性、儘可能地減少中斷時間爲目標,確保服務的連續性,達到高可用(HA)的容錯效果;

  • HA 的工作方式包括雙工和主從兩種模式

(3)高性能運算羣集 (High Performmance Computer Cluster)

  • 是以提高應用系統的 CPU運算速度、擴展硬件資源和分析能力爲目標,獲得相當於大型,超級計算機的高性能運算(HPC)能力;

  • 高性能運算羣集的高性能依賴於 “分佈式運算”、 “並行計算” ,通過專用硬件和軟件將多個服務器的CPU、內存等資源整合在一起。

三、負載均衡羣集工作模式分析:

負載均衡羣集是目前企業用的最多的羣集類型,羣集的負載均衡調度技術有三種工作模式:


1、地址轉換(NAT)

2、IP 隧道

3、直接路由

(一)、NAT模式(VS-NAT)

原理:就是把客戶端發來的數據包的IP頭的目的地址,在負載均衡器上換成其中一臺RS的IP地址併發至此RS來處理,RS處理完後把數據交給負載均衡器,負載均衡器再把數據包原IP地址改爲自己的IP,將目的地址改爲客戶端IP地址即可期間,無論是進來的流量,還是出去的流量,都必須經過負載均衡器

優點:集羣中的物理服務器可以使用任何支持TCP/IP操作系統,只有負載均衡器需要一個合法的IP地址

缺點:擴展性有限。當服務器節點(普通PC服務器)增長過多時,負載均衡器將成爲整個系統的瓶頸

因爲所有的請求包和應答包的流向都經過負載均衡器。當服務器節點過多時

大量的數據包都交匯在負載均衡器那,速度就會變慢!

(二)、IP隧道模式(VS-TUN)

原理:首先要知道,互聯網上的大多Internet服務的請求包很短小,而應答包通常很大,那麼隧道模式就是,把客戶端發來的數據包,封裝一個新的IP頭標記(僅目的IP)發給RS,RS收到後,先把數據包的頭解開,還原數據包,處理後,直接返回給客戶端,不需要再經過負載均衡器。注意,由於RS需要對負載均衡器發過來的數據包進行還原,所以說必須支持。

IPTUNNEL協議,所以,在RS的內核中,必須編譯支持IPTUNNEL這個選項

優點:負載均衡器只負責將請求包分發給後端節點服務器,而RS將應答包直接發給用戶。所以,減少了負載均衡器的大量數據流動,負載均衡器不再是系統的瓶頸,就能處理很巨大的請求量。這種方式,一臺負載均衡器能夠爲很多RS進行分發。而且跑在公網上就能進行不同地域的分發。

缺點:隧道模式的RS節點需要合法IP,這種方式需要所有的服務器支持”IP Tunneling”(IP Encapsulation)協議,服務器可能只侷限在部分Linux系統上。

(三)、直接路由模式(VS-DR)

原理:負載均衡器和RS都使用同一個IP對外服務但只有DR對ARP請求進行響應,所有RS對本身這個IP的ARP請求保持靜默也就是說,網關會把對這個服務IP的請求全部定向給DR,而DR收到數據包後根據調度算法,找出對應的RS,把目的MAC地址改爲RS的MAC(因爲IP一致),並將請求分發給這臺RS這時RS收到這個數據包,處理完成之後,由於IP一致,可以直接將數據返給客戶。則等於直接從客戶端收到這個數據包無異,處理後直接返回給客戶端由於負載均衡器要對二層包頭進行改換,所以負載均衡器和RS之間必須在一個廣播域也可以簡單的理解爲在同一臺交換機上。

優點:和TUN(隧道模式)一樣,負載均衡器也只是分發請求,應答包通過單獨的路由方法返回給客戶端,與VS-TUN相比,VS-DR這種實現方式不需要隧道結構,因此可以使用大多數操作系統做爲物理服務器。

缺點:(不能說缺點,只能說是不足)要求負載均衡器的網卡必須與物理網卡在一個物理段上。

四、負載均衡羣集架構:

第一層:負載均衡器

第二層:服務器池

第三層:共享存儲

負載均衡結構圖:

image.png


五、LVS 虛擬服務器:

Linux Virtual Server

●針對Linux內核的負載均衡解決方案

●1998年5月,由我國的章文嵩博士創建

●官方網站: http://www.linuxvirtualserver.org/

(1)LVS 的負載調度算法:

1、輪詢:將收到的訪問請求按照順序輪流分配給羣集中的各節點(真實的服務器),均等地對待每一臺服務器,而不管服務器實際的連接數和系統負載。

2、加權輪詢:根據真實服務器的處理能力輪流分配收到的訪問請求,調度器可以自動查詢各節點的負載情況,並動態調整其權重;保證處理能力強的服務器承擔更多的訪問流量。

(2)LVS 負載調度算法:

1、最少連接:

根據真實服務器已建立的連接數進行分配,將收到的訪問請求優先分配給連接最少的節點。

2、加權最少連接:

在服務器節點的性能差異較大的情況下,可以爲真實服務器自動調整權重;並且權重較高的節點將承擔更大比例的活動連接負載。

(3)LVS 羣集創建於管理 (使用 ipvsadm工具)

image.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章