LVS 的幾種連接模式

初次搭建LVS時(shí)使用只有一張網(wǎng)卡的虛擬機(jī)浓镜,無論如何配置都不能跳轉(zhuǎn)到real server 上溃列,總結(jié)發(fā)現(xiàn)與LVS的連接模式有關(guān)系,LVS主要有以下幾種模式:

  1. NAT模式膛薛;
    NAT模型:地址轉(zhuǎn)換類型听隐,主要是做地址轉(zhuǎn)換,類似于iptables的DNAT類型哄啄,它通過多目標(biāo)地址轉(zhuǎn)換雅任,來實(shí)現(xiàn)負(fù)載均衡;
    特點(diǎn)和要求:
  • LVS(Director)上面需要雙網(wǎng)卡:DIP(內(nèi)網(wǎng))和VIP(外網(wǎng))

  • 內(nèi)網(wǎng)的Real Server主機(jī)的IP必須和DIP在同一個(gè)網(wǎng)絡(luò)中咨跌,并且要求其網(wǎng)關(guān)都需要指向DIP的地址

  • RIP都是私有IP地址沪么,僅用于各個(gè)節(jié)點(diǎn)之間的通信

  • Director位于client和Real Server之間,負(fù)載處理所有的進(jìn)站锌半、出站的通信

  • 支持端口映射

  • 通常應(yīng)用在較大規(guī)模的應(yīng)用場景中禽车,但Director易成為整個(gè)架構(gòu)的瓶頸。
    相關(guān)機(jī)器信息刊殉;
    LB1 eth0:192.168.244.132 (Vip) (公網(wǎng))
    eth1:192.168.27.128 (Dip) (內(nèi)網(wǎng))
    rs1 eth0:192.168.27.130 (Rip) (內(nèi)網(wǎng))getway:192.168.27.128
    rs2 eth0:192.168.27.131 (Rip) (內(nèi)網(wǎng))getway:192.168.27.128

    Paste_Image.png

    首先使用nginx將兩臺(tái)rs機(jī)器訪問頁面配置好殉摔,使得訪問rs1出現(xiàn)welcome to nginx!I'm rs 1记焊!逸月,訪問rs2出現(xiàn)welcome to nginx!I'm rs 2亚亲。

    現(xiàn)在在LB上操作彻采;
    確定本機(jī)ip_vs模塊是否加載,也就是是否支持lvs捌归,2.4.2后都支持了;然后安裝ipvsadm 用戶操作命令岭粤。

    ipvsadm安裝:

    [root@LB1 ~]# yum install ipvsadm -y
    echo 1 > /proc/sys/net/ipv4/ip_forward
    ipvsadm -A -t  192.168.244.132:80 -s rr
    ipvsadm -a -t 192.168.244.132:80 -r 192.168.27.130-m
    ipvsadm -a -t 192.168.244.132:80 -r 192.168.27.131-m
    

    測試頁面時(shí)可以訪問到 兩臺(tái)rs的 html頁面交替出現(xiàn)惜索。

  1. DR模式:
    特點(diǎn)和要求
  • 各個(gè)集群節(jié)點(diǎn)必須和Director在同一個(gè)物理網(wǎng)絡(luò)中

  • RIP地址不能為私有地址,可以實(shí)現(xiàn)便捷的遠(yuǎn)程管理和監(jiān)控

  • Director僅僅負(fù)責(zé)處理入站請(qǐng)求剃浇,響應(yīng)報(bào)文則由Real Server直接發(fā)往客戶端

  • 集群節(jié)點(diǎn)Real Server 的網(wǎng)關(guān)一定不能指向DIP巾兆,而是指向外部路由

  • Director不支持端口映射

  • Director能夠支持比NAT多很多的Real Server
    原理:
    DR模型:直接路由模型猎物,每個(gè)Real Server上都有兩個(gè)IP:VIP和RIP,但是VIP是隱藏的角塑,就是不能提高解析等功能蔫磨,只是用來做請(qǐng)求回復(fù)的源IP的,Director上只需要一個(gè)網(wǎng)卡圃伶,然后利用別名來配置兩個(gè)IP:VIP和DIP
    Director在接受到外部主機(jī)的請(qǐng)求的時(shí)候轉(zhuǎn)發(fā)給Real Server的時(shí)候并不更改目標(biāo)地址堤如,只是通過arp解析的MAC地址進(jìn)行封裝然后轉(zhuǎn)給Real Server,Real Server在接受到信息以后拆除MAC幀封裝窒朋,然后直接回復(fù)給CIP搀罢。

    Paste_Image.png

    LB1: eth0: 192.168.182.133
    vip(eth0:0): 192.168.182.200
    RS1: eth0:192.168.182.130
    lo:0(vip) :192.168.182.200
    RS2: eth0:192.168.182.129
    lo:0(vip) 192.168.182.200

    通信原理:
    每個(gè)Real Server上都有兩個(gè)IP:VIP和RIP,但是VIP是隱藏的侥猩,就是不能提高解析等功能榔至,只是用來做請(qǐng)求回復(fù)的源IP的,Director上只需要一個(gè)網(wǎng)卡欺劳,然后利用別名來配置兩個(gè)IP:VIP和DIP

    Director在接受到外部主機(jī)的請(qǐng)求的時(shí)候轉(zhuǎn)發(fā)給Real Server的時(shí)候并不更改目標(biāo)地址唧取,只是通過arp解析的MAC地址進(jìn)行封裝然后轉(zhuǎn)給Real Server,Real Server在接受到信息以后拆除MAC幀封裝划提,然后直接回復(fù)給CIP兵怯。

    而此時(shí)需要關(guān)閉RS上的基于VIP的arp解析,在linux內(nèi)核2.4以后腔剂,內(nèi)核中都內(nèi)置了這種功能媒区,通過一些設(shè)置可以關(guān)閉其arp的功能:

    arp_ignore:定義接收到ARP請(qǐng)求時(shí)的響應(yīng)級(jí)別
    0:默認(rèn),只用本地配置的有響應(yīng)地址都給予響應(yīng)
    1:僅僅在目標(biāo)IP是本地地址掸犬,并且是配置在請(qǐng)求進(jìn)來的接口上的時(shí)候才給予響應(yīng)(僅在請(qǐng)求的目標(biāo)地址配置請(qǐng)求到達(dá)的接口上的時(shí)候袜漩,才給予響應(yīng))
    arp_announce:定義將自己的地址向外通告時(shí)的級(jí)別
    0:默認(rèn),表示使用配置在任何接口的任何地址向外通告
    1:試圖僅向目標(biāo)網(wǎng)絡(luò)通告與其網(wǎng)絡(luò)匹配的地址
    2:僅向與本地接口上地址匹配的網(wǎng)絡(luò)進(jìn)行通告
    Ps:要想讓其功能生效湾碎,必須先設(shè)置相關(guān)設(shè)置宙攻,然后在配置IP地址等信息
    1、開始在RS1操作:

    [root@rs1 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
    [root@rs1 ~]# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
    [root@rs1 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
    [root@rs1 ~]# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
    [root@rs1 ~]# service network restart
    [root@rs1 ~]#ifconfig lo:0 192.168.182.200 netmask 255.255.255.255 broadcast 182.168.182.200
    [root@rs1 ~]# route add -host 192.168.182.200 dev lo:0
    

    上面的就是定義了arp響應(yīng)的級(jí)別介褥;還有就是vip的請(qǐng)求數(shù)據(jù)座掘,從rs1的本地ip進(jìn)行了回復(fù);
    2柔滔、在RS2上執(zhí)行上面同樣的操作
    3溢陪、在LB上操作:
    配置eth0網(wǎng)卡ip;

    [root@LB1 ~]# ifconfig eth0:0 192.168.182.200/24   #在eth0:0配置vip
    

    驗(yàn)證RS的web服務(wù)睛廊,訪問兩天RS服務(wù)器均可正確訪問形真,分別出現(xiàn)I'm 1! 和 I'm 2!

    接下來在DR上設(shè)置轉(zhuǎn)發(fā):

    [root@LB1 ~]# yum install ipvsadm -y
    ipvsadm -A -t  192.168.182.200:80 -s rr
    ipvsadm -a -t 192.168.182.200:80 -r 192.168.27.130 -g
    ipvsadm -a -t 192.168.182.200:80 -r 192.168.27.131 -g
    

    訪問192.168.182.200測試結(jié)果,可交替出現(xiàn)兩臺(tái)RS的html頁面超全。

  1. TUN模式咆霜;
    其實(shí)數(shù)據(jù)轉(zhuǎn)發(fā)原理和上圖是一樣的邓馒,不過這個(gè)我個(gè)人認(rèn)為主要是位于不同位置(不同機(jī)房);LB是通過隧道進(jìn)行了信息傳輸蛾坯,雖然增加了負(fù)載光酣,可是因?yàn)榈乩砦恢貌煌膬?yōu)勢,還是可以參考的一種方案脉课;

    優(yōu)點(diǎn):負(fù)載均衡器只負(fù)責(zé)將請(qǐng)求包分發(fā)給物理服務(wù)器救军,而物理服務(wù)器將應(yīng)答包直接發(fā)給用戶。所以下翎,負(fù)載均衡器能處理很巨大的請(qǐng)求量缤言,這種方式,一臺(tái)負(fù)載均衡能為超過100臺(tái)的物理服務(wù)器服務(wù)视事,負(fù)載均衡器不再是系統(tǒng)的瓶頸胆萧。使用VS-TUN方式,如果你的負(fù)載均衡器擁有100M的全雙工網(wǎng)卡的話俐东,就能使得整個(gè)Virtual Server能達(dá)到1G的吞吐量跌穗。

    不足:但是,這種方式需要所有的服務(wù)器支持"IP Tunneling"(IP Encapsulation)協(xié)議虏辫;

    LB1: eth0: 192.168.182.132
    vip(tunl0): 192.168.182.200
    RS1: eth0:192.168.27.130
    tunl0(vip) :192.168.182.200
    RS2: eth0:192.168.138.131
    tunl0(vip) :192.168.182.200

    LB1操作:

    yum install ipvsadm -y
    ifconfig tunl0 192.168.182.200 broadcast 192.168.182.200 netmask 255.255.255.0 up
    route add -host $VIP dev tunl0
    ipvsadm -A -t 192.168.182.200:80 -s rr
    ipvsadm -a -t 192.168.182.200:80 -r 192.168.27.130 -i
    ipvsadm -a -t 192.168.182.200:80 -r 192.168.138.131 -i
    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蚌吸,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子砌庄,更是在濱河造成了極大的恐慌羹唠,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,946評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娄昆,死亡現(xiàn)場離奇詭異佩微,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)萌焰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,336評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門哺眯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人扒俯,你說我怎么就攤上這事奶卓。” “怎么了撼玄?”我有些...
    開封第一講書人閱讀 169,716評(píng)論 0 364
  • 文/不壞的土叔 我叫張陵夺姑,是天一觀的道長。 經(jīng)常有香客問我互纯,道長瑟幕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,222評(píng)論 1 300
  • 正文 為了忘掉前任留潦,我火速辦了婚禮只盹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘兔院。我一直安慰自己殖卑,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,223評(píng)論 6 398
  • 文/花漫 我一把揭開白布坊萝。 她就那樣靜靜地躺著孵稽,像睡著了一般。 火紅的嫁衣襯著肌膚如雪十偶。 梳的紋絲不亂的頭發(fā)上菩鲜,一...
    開封第一講書人閱讀 52,807評(píng)論 1 314
  • 那天,我揣著相機(jī)與錄音惦积,去河邊找鬼接校。 笑死,一個(gè)胖子當(dāng)著我的面吹牛狮崩,可吹牛的內(nèi)容都是我干的蛛勉。 我是一名探鬼主播,決...
    沈念sama閱讀 41,235評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼睦柴,長吁一口氣:“原來是場噩夢啊……” “哼诽凌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起坦敌,我...
    開封第一講書人閱讀 40,189評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤侣诵,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后狱窘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體杜顺,經(jīng)...
    沈念sama閱讀 46,712評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,775評(píng)論 3 343
  • 正文 我和宋清朗相戀三年训柴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了哑舒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,926評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡幻馁,死狀恐怖洗鸵,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情仗嗦,我是刑警寧澤膘滨,帶...
    沈念sama閱讀 36,580評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站稀拐,受9級(jí)特大地震影響火邓,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,259評(píng)論 3 336
  • 文/蒙蒙 一铲咨、第九天 我趴在偏房一處隱蔽的房頂上張望躲胳。 院中可真熱鬧,春花似錦纤勒、人聲如沸坯苹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,750評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽粹湃。三九已至,卻和暖如春泉坐,著一層夾襖步出監(jiān)牢的瞬間为鳄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,867評(píng)論 1 274
  • 我被黑心中介騙來泰國打工腕让, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留孤钦,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,368評(píng)論 3 379
  • 正文 我出身青樓记某,卻偏偏與公主長得像司训,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子液南,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,930評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容