LVS-DR

1、LVS-DR模式的工作原理(重点)

①客户端发送请求到VIP

②LVS调度器接收请求后,根据算法选择一台后端的真实服务器,转发到RS,此时请求的报文的目的MAC地址修改成后端真实服务器的MAC地址转发

③后端真实服务器接收请求处理完成,由于后端服务器直接把响应结果转发给客户端,响应报文中的目的MAC地址修改成客户端的MAC地址,直接把响应报文转发到客户端

④调度器、后端真实服务器都有VIP地址,调度器的地址和后端真实服务器的地址以及VIP在同一网段

2、VIP地址的作用

①标识后端的真实服务器

②保证调度器和后端服务器之间的通信,保证请求可以正确的转发到后端服务器

③实现高可用和故障转移

3、LVS-DR的缺点

①由于调度器和后端服务器有相同的VIP地址,导致响应冲突——ARP通信紊乱

解决方法:对真实服务器进行处理,让真实服务器不响应针对VIP的ARP请求(只让RIP响应)——避免后端真实服务器的VIP地址响应

具体操作:VIP地址使用lo虚拟地址,内核参数优化

arp_ignore=1  #后端真实服务器只响应目的IP为本地IP(物理网卡的真实地址——RIP)

②返回报文使用的源地址还是VIP地址,调度器也是VIP地址,怎么把响应返回到客户端不经过调度器?

解决方法:对后端真实服务器做内核参数优化

arp_announce=2  #系统不使用IP数据包的源地址来设置ARP的请求,使用真实的物理网卡地址来响应

4、DR模式的特点

①调度器的ip和真实服务器的ip必须在同一个物理网络中

②真实服务器的ip地址,可以是私有地址(常用),也可以是公网地址。如果配置公网地址,可以通过互联网直接访问RIP(很少用)

③调度器只作为访问入口,不做网关服务器,要把服务器的转发功能关闭

网关服务器——路由服务器——转发

④后端真实服务器的网关也不能指向调度器,真实服务器的数据包不允许经过调度器

⑤后端真实服务器上,基于lo回环接口配置VIP地址

5、重点

LVS负载均衡的工作方式

(1)NAT模式——地址转换

优点:配置简单

缺点:性能瓶颈

真实服务器:所有

真实服务器支持的网络模式:私网

真实服务器数量:10-20台

(2)DR模式——直接路由(最常用)

优点:性能最好

缺点:调度服务器和后端真实服务器不能跨网段,只能在一个网段中

真实服务器:不能支持ARP响应NO-ARP,请求只能到真实服务器

真实服务器支持的网络模式:公网、私网

真实服务器数量:100台

(3)TUN模式——公司不用

LVS调度器中常用的算法(负载均衡策略)

rr、wrr、dh、sh、wlc、lc、lblc

6、LVS-DR的负载均衡实验

实验条件:

DS——20.0.0.11——调度器

RS1——20.0.0.10——集群1

RS2——20.0.0.20——集群2

nginx2——20.0.0.21——共享目录

调度器和真实服务器的IP地址以及VIP地址必须在同一网段

LVS-DR_第1张图片

实验步骤:

1、配置共享服务nginx2

(1)设置20.0.0网段可以访问共享目录

LVS-DR_第2张图片

(2)共享目录赋权

(3)发布共享服务

LVS-DR_第3张图片

(4)在共享服务中写入内容

LVS-DR_第4张图片

2、配置调度器nginx1

(1)下载ipvsadm工具包

LVS-DR_第5张图片

(2)配置VIP地址

ifconfig ens33:0 20.0.0.100/24

LVS-DR_第6张图片

(3)保存配置文件,启动ipvsadm服务(不保存无法启动服务)

ipvsadm-save > /etc/sysconfig/ipvsadm

(4)调度器内核参数优化

LVS-DR_第7张图片

重定向会有回显消息,禁止重定向,没有回显消息

LVS-DR_第8张图片

(5)配置策略

LVS-DR_第9张图片

配置策略后记得保存配置文件ipvsadm-save > /etc/sysconfig/ipvsadm

3、集群1test1

(1)安装nginx服务

(2)挂载共享目录

LVS-DR_第10张图片

(3)测试

(4)设置回环接口

LVS-DR_第11张图片

LVS-DR_第12张图片

把VIP地址绑定到lo:0,作为LVS的VIP地址,作为标识,告诉调度器进行转发请求的IP地址寻址

(5)内核参数优化

LVS-DR_第13张图片

LVS-DR_第14张图片

4、集群2test2

(1)安装nginx服务

(2)挂载共享目录

LVS-DR_第15张图片

(3)设置回环接口

LVS-DR_第16张图片

LVS-DR_第17张图片

把vip地址绑定到lo:0,作为LVS的vip地址,标识,告诉调度器进行转发请求的IP地址寻址

内核参数优化

LVS-DR_第18张图片

net.ipv4.conf.lo.arp ignore = 1

#设置lo接口忽略来自任何接口的ARP请求

net.ipv4.conf.lo.arp announce = 2

#设置lo接口仅响应本地的ip地址,其他的接口ARP请求全部忽略

net.ipv4.conf.all.arp ignore = 1

#所有接口忽略来自任务接口的ARP请求

net .ipv4.conf.all.arp announce = 2

#所有接口仅响应本地的ip地址的ARP请求,其他街交口的ARP请求全部忽略

5、测试

LVS-DR_第19张图片

你可能感兴趣的:(lvs)