IP | Hostname | 备注 |
---|---|---|
192.168.88.80 | rs1 | 真实服务器rs1 |
192.168.88.81 | rs2 | 真实服务器rs2 |
192.168.88.83 | dir | 调度器dir |
. | VIP: 192.168.88.110 | . |
环境说明:firewalld关闭,selinux关闭。
1.安装所需软件包
[root@rs1 ~]# yum -y install net-tools //三台都需
[root@dir ~]# yum -y install ipvsadm //dir安装
2.dir服务器编辑脚本
[root@dir ~]# vim /usr/local/sbin/lvs_dr.sh
#! /bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
ipv=/usr/sbin/ipvsadm
vip=192.168.88.110
rsl=192.168.88.80
rs2=192.168.88.81
ifconfig ens33:2 $vip broadcast $vip netmask 255.255.255.255 up route add -host $vip dev ens33:2
$ipv -C
$ipv -A -t $vip:80 -s wrr
$ipv -a -t $vip:80 -r $rsl:80 -g -w 1
$ipv -a -t $vip:80 -r $rs2:80 -g -w 1
3.rs服务器编辑脚本
[root@rs1 ~]# vi /usr/local/sbin/lvs_dr.sh //rs2同rs1一样
#/bin/bash
vip=192.168.88.110
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip lo:0
echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
4.运行脚本
[root@rs1 ~]# bash /usr/local/sbin/lvs_dr.sh
[root@rs2 ~]# bash /usr/local/sbin/lvs_dr.sh
[root@dir ~]# bash /usr/local/sbin/lvs_dr.sh
在dir服务器上查看当前连接情况
[root@dir ~]# 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.88.110:80 wrr
-> 192.168.88.80:80 Route 1 2 0
-> 192.168.88.81:80 Route 1 4 0
5.测试
网页访问VIP
多次刷新后