四層負載均衡lvs

本文鏈接:https://blog.csdn.net/cheng1804/article/details/81951254

一、 四種模式

1、nat模式,也可以說三層負載均衡

2、dr模式,二層負載均衡,用的最多

3、隧道模式(tunnel)

4、full_nat模式

二、nat模式和dr模式的區(qū)別

主要區(qū)別在與數(shù)據(jù)的流向

nat模式數(shù)據(jù)流入:客戶--分發(fā)器--真實服務器;流出:真實服務器--分發(fā)器--客戶

dr模式數(shù)據(jù)流入:客戶--分發(fā)器--真實服務器;流出:真實服務器--客戶

image

dr模式客戶訪問分發(fā)器的vip,再由分發(fā)器的dip經由lvs算法發(fā)給真實服務器,真實服務器直接回復客戶。

要求:分發(fā)器有兩塊網(wǎng)卡,兩個ip,一個做vip,一個做dip,再在真實服務器的lo回環(huán)網(wǎng)卡上添加臨時的vip,以便真實服務器使用vip回復客戶。

問題:1、vip的選擇

        2、多個相同的vip在相同的網(wǎng)段怎么避免ip沖突

        3、怎么確定真實服務器使用vip回復客戶

解決:1、route -n查看路由條目,哪個規(guī)則在上哪一個做dip,另一個做vip

        2、使真實服務器的vip忽略arp協(xié)議的響應來避免ip沖突

        3、給真實服務器添加的vip用最精確的ip,子網(wǎng)掩碼越長ip被認為越好,規(guī)則設定用本地最好的ip發(fā)送數(shù)據(jù)包

各ip的作用:

        1、vip,作為訪問的入口

        2、dip 作為給真實服務器分發(fā)數(shù)據(jù)的出口

        3、rip,分發(fā)器用來獲取真實服務器的mac地址,來修改數(shù)據(jù)包的mac地址

實現(xiàn)過程:

1、真實服務器上部署web服務

2、route -n 查看路由條目,哪個規(guī)則在下哪個作為vip

3、給真服務器的lo網(wǎng)卡設置子網(wǎng)掩碼為32位vip

  ifconfig lo:0 vip/32

4、給真實服務器設置內核參數(shù)

  保證優(yōu)先使用vip發(fā)送數(shù)據(jù) ,echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

  讓vip忽略arp響應,echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

5、在分發(fā)器上設置lvs路由條目

  yum install ipvsadm -y 

  ipvsadm -A -t 10.0.0.30:80 -s rr

  ipvsadm -a -t 10.0.0.30:80 -r 10.0.0.21:80 -g

  ipvsadm -a -t 10.0.0.30:80 -r 10.0.0.22:80 -g

  **-A 添加virtual server
  -t 指定使用tcp協(xié)議
  -s 指定調度策略為rr
  -a 添加realserver
  -r 指定realserver是誰**

三、lvs調度算法

1、輪詢調度(Round Robin)(簡稱rr),按順序輪流分配真實服務器,均等地對待每一臺服務器,而不管服務器上實際的連接數(shù)和系統(tǒng)負載

2、加權輪詢(Weighted Round Robin)(簡稱wrr),根據(jù)真實服務器的不同處理能力來調度訪問請求。調度器可以自動問詢真實服務器的負載情況,并動態(tài)地調整其權值。

3、最少鏈接(Least Connections)(LC),調度到已建立的鏈接數(shù)最少的服務器上

4、加權最少鏈接(Weighted Least Connections)(WLC),較高權值的服務器將承受較大比例的活動連接負載。調度器可以自動問詢真實服務器的負載情況,并動態(tài)地調整其權值。

5、基于局部性的最少鏈接(Locality-Based Least Connections)(LBLC),根據(jù)請求的目標IP地址找出該目標IP地址最近使用的服務器,若該服務器是可用的且沒有超載,將請求發(fā)送到該服務器;若服務器不存在,或者該服務器超載且有服務器處于一半的工作負載,則用“最少鏈接”。

6、帶復制的基于局部性最少鏈接(Locality-Based Least Connections with Replication)(LBLCR)

7、最短的期望的延遲(Shortest Expected Delay Scheduling SED)(SED)

8、最少隊列調度(Never Queue Scheduling NQ)(NQ),無需隊列。如果有臺 realserver的連接數(shù)=0就直接分配過去

9、目標地址散列(Destination Hashing)(DH),緩存目標地址

10、源地址散列(Source Hashing)(SH),緩存源地址

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容