LVS集羣的基礎概念篇

端口映射其實就是常說的NAT的一種,其功能就是把在公網的地址轉翻譯成私有地址(目標地址轉換DNET)

LVS集羣中實現的三種IP負載均衡技術:

VS/NAT:在已有的IP負載均衡技術中,主要有通過網絡地址轉換NAT(Network Address  Translation)將一組服務器構成一個高性能的、高可用的虛擬服務器

VS/TUN:通過IP隧道實現虛擬服務器。(Virtual Server via IP Tunneling)

VS/DR:通過直接路由實現虛擬服務器的方法

wps_clip_p_w_picpath-25429

LVS  DR模型:

CIP進入Director中目標IP(VIP)沒改變,只是改變了目標IP 的mac。

當響應返回時,源IP是VIP,目標IP是CIP。

都處於同一物理網絡,不要跨越路由器

拒絕realserver上VIP對前端路由上的VIP的arp請求:

wps_clip_p_w_picpath-23524

在LVS DR模型中:

Realserver中有eth0和lo接口,lo接口上配置的是VIP地址,要設置來自 director向後端realserver轉發請求時,通過lo接口接進來,它還要從lo出去,lo又沒辦法出去,所以lo就將響應通過eth0轉發出去,能通過eth0轉發出去的條件是,eth0(DIP)必須指向一個網關,這個網關可以連向互聯網。Eth0必須把網關指向能夠到達CIP的網關。

CIP -- VIP --- DIP --- RS(lo -->eth0)--router --CIP

LVS-DR模型:

Director兩個地址:VIP, DIP

RS有兩個地址:VIP, RIP

禁止RS響應對VIP的ARP廣播請求:

1、在前端路由上實現靜態MAC地址VIP的綁定;

前提:得有路由器的配置權限;

缺點:Directory故障轉時,無法更新此綁定;

2、arptables

前提:在各RS在安裝arptables程序,並編寫arptables規則

缺點:依賴於獨特功能的應用程序

3、修改Linux內核參數

前提:RS必須是Linux;

缺點:適用性差;

兩個參數:

arp_announce:定義通告模式

arp_ignore:定義收到arp請求的時響應模式

配置專用路由,以使得響應報文首先通過vip所配置的lo上的別名接口

Linux的工作特性:IP地址是屬於主機,而非某特定網卡;

LVS-DR配置架構根據其VIP與RIP是否在同一樣網絡上有兩種模型:

在Directory和RS上配置VIP,要使用如下格式:

# ifconfig ALIAS VIP netmask 255.255.255.255 broadcast VIP up

# route add -host VIP dev ALIAS

LVS-DR的配置:

Director: 最好打開路由轉發

# iptables -t filter -F  

# ifconfig eth0:0 VIP  up     不加broadcast和netmask

# route add -host VIP dev eth0:0  

RSs:

# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

# ifconfig lo:0 VIP netmask 255.255.255.255 broadcast VIP up    

# route add -host VIP dev lo:0

Director:

# ipvsadm -A -t IP:PORT -s SCHEDULER(調度方法)   定義集羣服務

# ipvsadm -a -t IP:PORT -r RS1 -g(lvs類型) -w WEIGHT  wps_clip_p_w_picpath-26435

/proc/sys/net/ipv4/conf/etho

proc/sys/net/ipv4/conf/all

先配置參數,再去配置IP地址。

arp_announce :arp主動通告(只當有arp請求時,主機主動的通告)

arp_announce=0(默認)  B網卡上的所以網卡地址都去通過

arp_announce=1 儘量只讓B上和A在同一物理網絡的網卡去通告

arp_announce=2 只讓B上和A在同一物理網絡的網卡去通告(假設A爲172.16網絡, 那就只讓m去向A通告)

arp_ignore :arp 響應

arp_ignore=0 只要主機上有地址,就去響應arp請求

arp_ignore=1 對方請求的本地IP地址,並且配置在響應報文的接口上(A去請求m,   只有m剛好在與它連接的端口上,才響應)

    arp_ignore=2 同上,跟請求的一方必須在一個子網內

arp_ignore=3 同上,並且某一網卡的作用域是本地(localhost)的話,不予響應

    arp_ignore=8 同上,並且全部的請求都不響應

wps_clip_p_w_picpath-25432

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