今天就跟大家聊聊有關什么是LVS負載均衡DR模式,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
部署LVS_DR群集
LVS_DR數據包流向分析
為了方便進行原理分析,將Client0與群集機器放在同一網絡中,數據包流經路線為1-2-3-4

1.Client向目標VIP發出請求,Director(負載均衡器)接收。此時IP包頭及數據幀信息為:
2.Director根據負載均衡算法選擇RealServer_1,不修改也不封裝IP報文,而是將數據幀的MAC地址改為RealServer_1的MAC地址,然后在局域網上發送。IP包頭及數據幀頭信息如下:
3.RealServer_1收到這個幀,解封裝后發現目標IP與本機匹配(RealServer事先綁定了VIP),于是處理這個報文。隨后重新封裝報文,發送到局域網。此時IP包頭及數據幀頭信息為:
4.Client將收到回復報文。Client認為得到正常的服務而不會知道是哪一臺服務器處理的
注意:如果跨網段,那么報文通過路由器經由Internet返回給用戶
LVS_DR中的ARP問題
在LVS_DR負載均衡群集中,負載均衡器與節點服務器都要配置相同的VIP地址
在局域網中具有相同的IP地址,勢必會造成各服務器ARP通信的紊亂
當一個ARP廣播發送到LVS_DR集群時,因為負載均衡器和節點服務器都是連接到相同的網絡是上的,它們都會接收到ARP廣播
此時只有前端的負載均衡器進行相應,其他節點服務器不應該響應ARP廣播 
對節點服務器進行處理,使其不響應針對VIP的ARP請求
使用虛擬接口lo:0承載VIP地址
設置內核參數arp_ignore=1:系統只響應目標IP為本地IP的ARP請求
RealServer返回報文(源IP是VIP)經路由器轉發,再重新封裝報文時,需要先獲取路由器的MAC地址
發送ARP請求時,Linux默認使用IP包的源IP地址(即VIP)作為ARP請求包中的源IP地址,而不用發送接口IP地址

路由器收到ARP請求后,將更新ARP表項
原有的VIP對應Director的MAC地址會被更新為VIP對應RealServer的MAC地址
此時新來的請求報文,路由器根據ARP表項,會將該報文轉發給RealServer,從而導致Director的VIP失效
解決方法
對節點服務器進行處理。設置內核參數arp_announce=2:系統不適用IP包的源地址來設置ARP請求的源地址,而選擇發送接口的IP地址。
解決ARP的兩個問題的設置方法
修改/etc/sysctl.conf文件
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
看完上述內容,你們對什么是LVS負載均衡DR模式有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。