LVS集羣之DR模式

今天來說LVS-DR模式集羣實現負載均衡的搭建方法html

環境node

主機名 IP   系統 角色
dir DIP:192.168.199.9 VIP:192.168.199.8 rhel7.4 集羣服務器
node1 RIP:192.168.199.67 VIP:192.168.199.8 rhel6.5 RS/web服務器
node2 RIP:192.168.199.68 VIP:192.168.199.8 rhel6.5 RS/web服務器

 

分發器配置:web

一、安裝lvs核心軟件包:vim

[root@dir ~]# yum install ipvsadm -y後端

二、在DR設置兩個IP地址:DIP要配置在接口上,VIP要配置在網卡接口別名上tomcat

a) DIP: 192.168.199.9 ,設置靜態IDbash

b) VIP:192.168.199.8服務器

[root@dir ~]# cd /etc/sysconfig/network-scripts/
[root@dir network-scripts]# cp ifcfg-ens33 ifcfg-ens33:1網絡

[root@dir network-scripts]# vim ifcfg-ens33:1
負載均衡

三、寫腳本管理(開啓路由轉發,添加虛擬服務,添加虛擬服務後端的real server)

[root@dir ~]# vim lvs_nat.sh

#!/bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/ens33/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/ens37/send_redirects
iptables -t nat -F
iptables -t nat -X  
iptables -t nat -A POSTROUTING -s 192.168.199.0/24 -j MASQUERADE
IPVSADM='/sbin/ipvsadm'
$IPVSADM -C
$IPVSADM -A -t 192.168.199.8:80 -s rr
$IPVSADM -a -t 192.168.199.8:80 -r 192.168.199.67:80 -g
$IPVSADM -a -t 192.168.199.8:80 -r 192.168.199.68:80 -g

[root@dir ~]# chmod +x lvs_nat.sh  增長執行權限

[root@dir ~]# ./lvs_nat.sh

查看規則:
[root@node1 ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.199.8:80 rr
  -> 192.168.199.67:80            Route   1      0          0         
  -> 192.168.199.68:80            Route   1      0          0         
四、添加路由規則:
[root@dir ~]#route add -host 192.168.199.8 dev ens33:1

RS上配置(兩臺都得配置)。

一、在多臺RS( apeche或者tomcat )上面的配置:RIP要配置在接口上,VIP要配置在lo的別名上,定義內核參數,禁止響應對VIP的ARP廣播請求(先配置,再綁定VIP)

 兩臺RS的RIP設置:靜態設置192.168.199.67      192.168.199.68

二、關閉ARP

臨時關閉:

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

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

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

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

永久關閉:

[root@node1 ~]# vim /etc/sysctl.conf (配置文件後面添加)

net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2

 三、在兩臺機器(RS)上,設置網卡的別名192.168.199.8,此時綁定的網絡接口不進行對外通訊,因此VIP綁定在lo的別名上

ifconfig lo:1 192.168.199.8  netmask 255.255.255.255

四、在兩臺機器(RS)上,添加一個路由:route add -host 192.168.199.8 dev lo:1    確保若是請求的目標IP是$VIP,那麼讓出去的數據包的源地址也顯示爲$VIP

五、在rs1和rs2上安裝Apache服務,而後下一個測試頁面

rs1:echo 'this is 192.168.199.67' > /var/www/html/index.html

rs2: echo 'this is 192.168.199.68' > /var/www/html/index.html

測試:找一臺客戶機訪問VIP,查看結果:

相關文章
相關標籤/搜索