lvs負載均衡

MrUse發表於2015-03-05

LVS

目錄

  • LVS介紹
  • LVS配置
  • 參考資料

LVS介紹

一、簡介

詳細資料見LVS專案介紹這裡只做功能及工作原理簡述。

LVS在Unix-like系統中是作為一個前端(Director)存在的,又稱為排程器,它本身不提供任何的服務,只是將通過網際網路進來的請求接受後再轉發給後臺執行的真正的伺服器(RealServer)進行處理,然後響應給客戶端。

LVS有兩個重要的元件:一個是IPVS,一個是IPVSADM。ipvs是LVS的核心元件,它本身只是一個框架,類似於iptables,工作於核心空間中。ipvsadm 是用來定義LVS的轉發規則的,工作於使用者空間中。

LVS有三種轉發型別:

  1. LVS-NAT模型,稱為網路地址轉換,實現起來比較簡單。
  2. LVS-DR模型,稱為直接路由模型,應用比較廣泛。
  3. LVS-TUN模型,稱為隧道模型。

二、LVS的三種模型的工作屬性

  • LVS-NAT模型的工作屬性或特徵:

    1. 所有的RealServer叢集節點和前端排程器Director都要在同一個子網
    2. 這種模型可以實現埠對映
    3. RealServer的作業系統可以是任意作業系統
    4. 前端的Director既要處理客戶端發起的請求,又要處理後臺RealServer的響應資訊,將RealServer響應的資訊再轉發給客戶端
    5. 前端Director很容易成為整個叢集系統效能的瓶頸
    6. 通常情況下RealServer的IP地址(以下簡成RIP)為私有地址,便於RealServer叢集節點之間進行通訊
    7. 通常情況下前端的Director有兩個IP地址,一個為VIP,是虛擬的IP地址,客戶端向此IP地址發起請求。一個是DIP,是真正的Director的IP地址,RIP的閘道器要指向Director的DIP。
  • LVS-DR模型的工作屬性或特徵:此種模型通過MAC地址轉發工作,如何轉發後面將會介紹。

    1. 所有的RealServer叢集節點和前端排程器Director都要在同一個物理網路中
    2. 此種模型不支援埠對映
    3. RealServer可以使用大多數的作業系統
    4. 前端的Director只處理客戶端的請求,然後將請求轉發給RealServer,由後臺的RealServer直接響應客戶端,不再經過Director
    5. 此種模型的效能要優於LVS-NAT
    6. RIP可以使用公網的IP
    7. RIP的閘道器不能指向DIP
  • LVS-TUN模型的基本工作屬性或特徵

    1. RealServer伺服器與前端的Director可以在不同的網路中
    2. 此種模型也不支援埠對映
    3. RealServer只能使用哪些支援IP隧道的作業系統
    4. 前端的Director只處理客戶端的請求,然後將請求轉發給RealServer,由後臺的RealServer直接響應客戶端,不再經過Director
    5. RIP一定不能是私有IP

見下表:
注:RSer 為 RealServer縮寫;Dir為Director縮寫

模型|網路 |埠對映|作業系統 |處理內容 |效能 |IP,閘道器
---|-----------------------------|---------|------------------------|----------|------- NAT|RSer與Dir要在同一子網 |支援 |任意 |處理請求,轉發請求,轉發響應 |Dir易成瓶頸|RIP常為私有地址,Dir有2個IP:VIP,DIP;RIP閘道器要指向DIP DR |RSer與Dir要在同一物理網路|不支援 |多數 |處理請求,轉發請求,RSer響應|優於NAT |RIP可用公網IP,RIP網管不能指向DIP TUN|可以在不同網路中 |不支援 |支援IP隧道|處理請求,轉發請求,RSer響應 | |不能是私有IP

三、LVS Scheduling Method LVS的排程演算法

  1. Fixed Scheduling Method 靜態調服方法
  2. Dynamic Scheduling Method 動態調服方法

四、ipvsadm元件定義規則的格式

LVS配置

參考資料

參考資料

相關文章