主要演示LVS工作模式的DR模式和NAT模式实战

DR模式

实验环境

192.168.136.130 客户机
192.168.136.133 LVS负载均衡器 虚拟IP地址 192.168.136.123
192.168.136.134 RS真实服务器 虚拟IP地址 192.168.136.123
192.168.136.135 RS真实服务器 虚拟IP地址 192.168.136.123

LVS负载均衡器配置

(1)LVS准备VIP和路由

#配置虚拟ip
ifconfig ens33:0 192.168.136.123 broadcast 192.168.136.255 netmask 255.255.255.0
#配置路由
route add -net 192.168.136.123 dev ens33:0
#设置路由转发
vi /etc/sysctl.conf
net.ipv4.ip_forward=1 #开启路由转发
net.ipv4.conf.all.send_redirects=0 #禁用路由重定向转发
net.ipv4.conf.ens33.send_redirects=0 #禁用ens33转发重定向报文
net.ipv4.conf.default.send_redirects=0 #禁用转发默认重定向报文

(2)LVS设置负载均衡条目

#安装ipvsadm
yum install ipvsadm -y
#擦除虚拟服务器的所有规则
ipvsadm -C
#添加一个虚拟的服务器地址(-A表示添加一个虚拟ip -t表示tcp地址 -s表示调度算法 rr表示轮询)
ipvsadm -A -t 192.168.136.123:80 -s rr
#添加LVS转发规则(-a表示添加一个真实服务器地址 -t表示tcp地址 -r表示真实服务器地址 -g表示dr直接路由)
ipvsadm -a -t 192.168.136.123:80 -r 192.168.136.134:80 -g
ipvsadm -a -t 192.168.136.123:80 -r 192.168.136.135:80 -g

(3)LVS让配置永久生效

#将配置写入文件中
ipvsadm-save> /etc/sysconfig/ipvsadm
#开机自启动
systemctl enable ipvsadm

RS服务器配置

(1)安装服务

#安装httpd服务
yum install httpd -y
#写页面
echo web1 > /var/www/html/index.html
#启动httpd服务
systemctl start httpd

(2)给RS服务器lo网卡配置子网掩码为32位的vip

#rs1
ifconfig lo:0 192.168.136.123/32
#rs2
ifconfig lo:0 192.168.136.123/32

(3)给RS服务器设置内核参数

#忽略arp请求,不允许收
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#为了让vip发包出去,但允许发
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

测试

#访问虚拟vip
curl http://192.168.136.130:80

NAT模式

实验环境

客户机 VMNET0 192.168.0.101
LVS负载均衡器 VMNET0 192.168.0.102
VMNET2 192.168.136.136
RS真实服务器 VMNET2 192.168.136.134
RS真实服务器 VMNET2 192.168.136.135

RS服务器配置

#写页面
echo web1 > /var/www/html/index.html
#启动httpd服务
systemctl start httpd
route add -net 192.168.0.0/24 gw 192.168.136.136

LVS配置

#开启路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward
#安装ipvsadm
yum install ipvsadm -y
#添加调度算法
ipvsadm -A -t 192.168.0.102:80 -s rr
添加LVS转发规则(-a表示添加一个真实服务器地址 -t表示tcp地址 -r表示真实服务器地址 -m表示nat模式)
ipvsadm -a -t 192.168.0.102:80 -r 192.168.136.134:80 -m
ipvsadm -a -t 192.168.0.102:80 -r 192.168.136.135:80 -m
#将配置写入文件中
ipvsadm-save> /etc/sysconfig/ipvsadm
#开机自启动
systemctl enable ipvsadm

测试

curl http://192.168.0.102:80