配置环境:
3台机器
DR:192.168.232.135
RS1:192.168.232.136
RS2:192.168.232.137
VIP:192.168.232.100 ===》三台机器上都需要配置VIP
环境准备:
关闭防火墙
systemctl stop firewalld
setenforce 0
1、DR上操作:我的DR是192.168.232.135
安装管理软件ipvsadm,不需要启动
[root@localhost ~]# yum -y install ipvsadm
2、编译脚本
[root@localhost ~]# vim lvs.sh
#!/bin/bash
VIP=192.168.232.100
RS1=192.168.232.136
RS2=192.168.232.137
case $1 in
start)
ifconfig ens33:0 $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev ens33:0
ipvsadm -A -t $VIP:80 -s rr
ipvsadm -a -t $VIP:80 -r $RS1:80 -g
ipvsadm -a -t $VIP:80 -r $RS2:80 -g
;;
stop)
ifconfig ens33:0 down
route del $VIP
;;
*)
echo "Usage: $0 {start | stop}"
exit
esac
2.1、执行脚本
[root@localhost ~]# sh lvs.sh start
3、RS1和RS2上操作
安装httpd(两台都安装)
[root@localhost ~]#yum -y install httpd
[root@localhost ~]# echo "test1" > /var/www/html/index.html
启动httpd
[root@localhost ~]# systemctl start httpd
4、编写脚本(两台操作一样)
[root@localhost ~]# vim rs.sh
#!/bin/bash
VIP=192.168.232.100
case $1 in
start)
ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev lo:0
echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
sysctl -p
;;
stop)
ifconfig lo:0 down
route del $VIP
echo "0" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" > /proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p
;;
*)
echo "Usage: $0 {start | stop}"
exit
esac
5、执行脚本
[root@localhost ~]# sh rs.sh start
6、最终结果