集羣LVS DR詳解及配置
DR模型:
所有的集羣節點在同一個物理設備上。所有設備都只需要一個物理網卡
每一個RS服務器都需要配置相同的VIP地址
客戶端發送請求:數據報文原IP爲CIP 目標IP爲VIP 要讓RS服務器不能對ARP廣播解析進行響應
方法1:DR:
VIP:MAC(DVIP)Director綁定MAC地址
方法2:
arptables:在每個RS服務器上定義響應規則
arp_ignore 接收到ARP請求時的相應級別 默認0
0:只要本地配置有相應地址就給予響應
1:僅在請求的目標地址與請求到達的接口
方法3:
kernel parameter:
arp_announce 定義將自己地址向外通告時的通告級別的 默認0
0表示使用本機任何接口上的任何地址向外通告
1表示試圖僅向目標網絡通告與其網絡匹配的地址
2表示僅將於本地接口上地址匹配的網絡通告
Director:
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
ONBOOT=no
setup 172.16.100.2 255.255.0.0 172.16.0.1
service network restart
ifconfig eth0:0 172.16.100.1/32 up
先配置RS1和RS2的 RIP最後配置VIP(橋接模式)
RS1:
setup 172.16.100.7 255.255.0.0 172.16.0.1
service network restart
RS2:
setup 172.16.100.8 255.255.0.0 172.16.0.1
service network restart
RS:
[root@localhost ~]# cd /proc/sys/net/ipv4/conf
[root@localhost conf]# ls all
[root@localhost conf]# ls lo
[root@localhost conf]# ls eth0
accept_local log_martians
accept_redirects mc_forwarding
accept_source_route medium_id
arp_accept promote_secondaries
arp_announce proxy_arp
arp_filter proxy_arp_pvlan
arp_ignore route_localnet
arp_notify rp_filter
bootp_relay secure_redirects
disable_policy send_redirects
disable_xfrm shared_media
force_igmp_version src_valid_mark
forwarding tag
all需要配置,lo和eth0只需要配置其中一個即可
[root@localhost conf]# sysctl -w net.ipv4.conf.eth0.arp_announce=2
net.ipv4.conf.eth0.arp_announce = 2
[root@localhost conf]# cat eth0/arp_announce
2
[root@localhost conf]# sysctl -w net.ipv4.conf.all.arp_announce=2
net.ipv4.conf.all.arp_announce = 2
[root@localhost conf]# cat all/arp_announce
2
或者使用echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
改完以後可以配置vip了
ifconfig lo:0 172.16.100.1/32 up
檢驗是否生效ping VIP地址 然後使用arp-a查看mac看是否是Director響應的
此時需要保證RS的響應報文使用VIP作爲原地址,而不是RIP
RS:
ifcongig lo:0 down
ifconfig lo:0 172.16.100.1 broadcast 172.16.100.1 netmask 255.255.255.255 up
添加路由
route add -host 172.16.100.1 dev lo:0 以lo:0的地址作爲出發的源地址
Director:
route add -host 172.16.100.1 dev eth0:0
檢查RS httpd服務是否正常
然後配置ipvsadm
ipvsadm -A -t 172.16.100.1:80 -s wlc
ipvsadm -a -t 172.16.100.1:80 -r 172.16.100.7 -g -w 2
ipvsadm -a -t 172.16.100.1:80 -r 172.16.100.8 -g -w 9