先简单介绍一下LVS是什么,LVS是Linux Virtuual Server的简称,也就是linux虚拟服务器,是由章文松博士发起的自由软件项目。主要用它来实现高可用集群。

LVS-NAT模式:

步骤:

1.关闭防火墙策略及selinux设置:

iptables -F;setnforce 0

2.启动nginx、mariadb、php-fpm等服务

3.查看内核是否支持ipvs模块:

grep -i -C 10 "ipvs" /boot/config-VERSION-RELEASE.X86_64

Lvs-server:(桥接模式)

4.安装ipvsadm:yum install ipvsadm

5.开启基于80端口的虚拟服务,调度方式为wrr:

ipvsadm -A -t 172.17.251.233:80 -s wrr

6.配置web服务后端real server 为nat工作方式,权重为1:

ipvsadm -a -t 172.17.251.233:80 -r 192.168.46.10:80 -m -w 1

7.配置web服务后端real server 为nat工作方式,权重为1:

ipvsadm -a -t 172.17.251.233:80 -r 192.168.46.20:80 -m -w 1

8.查看:ipvsadm -L -n

f9385ee5f0e2d9f468d93b8e1a152b00.png9.修改内核配置,开启路由转发:

vim /etc/sysctl.conf

添加:net.ipv4.ip_forward=1

10.sysctl -p 生效配置文件

Real-server1:(仅主机模式)

11.配置网关指向192.168.46.130

添加默认网关:route add default gw 192.168.46.130

Real-server2:(仅主机模式)

12.添加默认网关:route add default gw 192.168.46.130

13.验证:

浏览器端输入172.17.251.233/index.php

出现如图页面,成功

49ba60f62ec6342b9c0815729e1d1157.png


LVS-DR模式:

Lvs-server:(桥接模式)

1.配置VIP到本地网卡别名:配置VIP到本地网卡eth0:0上,并只广播自己

ifconfig eth0:0 172.17.251.100 broadcast 172.17.251.100 netmask 255.255.255.255 up

2.配置VIP路由:

route  add -host 172.17.251.100 dev eth0:0

3.开启基于80端口的虚拟服务,调度方式为wrr:

ipvsadm -A -t 172.17.251.100:80 -s wrr

4.配置web服务后端real server为DR工作方式,权重为1:

ipvsadm -a -t 172.17.251.100:80 -r 172.17.251.10:80 -g -w 1

5.配置web服务后端real server为DR工作方式,权重为1:

ipvsadm -a -t 172.17.251.100:80 -r 172.17.251.20:80 -g -w 1

6.查看添加情况:ipvsadm -L -n

7.修改内核配置,开启路由方式:

方式一:vim /etc/sysctl.conf

net.ipv4.ip_forward=1

方式二:echo 1 > /proc/sys/net/ipv4/ip_forward

8.生效配置:sysct -p

Real-server1、Real-server2:(桥接模式)

9.配置VIP到本地回环网卡lo上,并只广播自己

ifconfig lo:0 172.17.251.100 broadcast 172.17.251.100 netmask 255.255.255.255 up

10.配置本地回环网卡路由:

route add -host 172.17.251.100 lo:0

11.1只回答目标IP地址是来访网络接口本地地址的ARP查询请求:

echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore

12.2对查询目标使用最适当的本地地址.在此模式下将忽略这个IP数据包的源地址并尝试选择与能与该地址通信的本地地址:

    echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce

13. echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

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

#关闭arp应答:

①仅在请求的目标IP配置在本地主机的接收到请求报文的接口上时,才给予相应

②必须避免将接口信息向非本网络进行通告

14.验证:浏览器端输入http://172.17.251.100(没截图,但是小编做的实验是成功的j_0003.gif