lvs三种模式

DR模式

lvs的三种模式:nat 地址转换

DR 直接路由模式

tun 隧道模式

DR模式的特点:

调度器在整个lvs集群当中是最重要的,在nat模式下,即负责接收请求,同时根据负责负载均衡的算法转发流量,响应发送给客户端。

DR模式:调度器依然负责接收请求,同时也根据负载均衡算法转发流量到RS,响应直接由RS响应给客户端。

直接路由 Direct Routing 是一种二层转发模式。二层转发的是数据帧。根据源mac地址和目的mac地址转发。

不会修改数据包源ip和目的ip.根据数据包mac地址进行转发。DR模式下,Ivs也是维护一个虚拟的ip地址,所有

的请求都是发送到这个vip,既然是走二层转发,当客户端的请求到达调度之后,根据负载均衡的算法选择一个

RS,修改vip服务器的目的mac变成RS的mac地址,RS处理完请求之后,根据报文当中客户端的源mac地址直

接把响应发送到客户端即可,不需要走调度器了。

1、调度器配置了vip,RS上也配置了vip地址。

vip地址冲突,调度器和RS都在同一网段,ARP通信的素乱,因为是整个局域广播,所有的设备都收到了。

怎么把lo这个回环的响应把它屏蔽掉,只有本机的物理ip地址响应。

修改内核参数:

arp_ignore=1

系统的物理ip地址才会响应ARP。lo不会响应ARP请求。

2、返回报文时,vip地址还在,怎么样能让客户端来接收到响应。

arp_announce=2

系统不使用ip数据包的源地址来响应ARP地址,直接发送物理接口的ip地址

节点都武器的配置:

DR模式的实现:

nginx1 RS1 192.168.65.10

nginx2 RS2 192.168.65.20

vip 19.168.65.100

test41 调度器 192.168.65.41

test42 客户端 192.168.65.42

复制代码
route add -host 192.168.65.100 dev lo:0
​
设置ip地址为192.168.65.100的添加到回环接口,作为lvs的vip。通过路由的模式转发到RS
能让vip识别到真实的服务器。
复制代码
net.ipv4.conf.lo.arp ignore =1
#设置回环接口忽略来自任何接口的ARP请求
net.ipv4.conf.lo.arp announce =2
#设置回环地址仅仅公告本地的ip地址,但是不响应ARP请求
net.ipv4.conf.all.arp iqnore =1
#设置所有接口忽略来自任何接口的ARP请求
net.ipv4.conf.all.arp announce =2
#设置所有接口仅仅公告本地的ip地址,但是不响应ARP请求
lvs的三种工作模式 NAT DR TUN
优化 地址转换,配置简单 性能好 WAN可以实现较远距离的数据包转发
缺点 性能瓶颈 不支持跨网段 专用通道,需要开通vpn(花钱
RS的要求 无限制 必须要禁止非物理接口的ARP响应 要支持隧道模式
RS的数量 10-20台 100台 100台

面试题

简述lvs的三种模式和区别?

lvs的三种工作模式 NAT DR TUN
优化 地址转换,配置简单 性能好 WAN可以实现较远距离的数据包转发
缺点 性能瓶颈 不支持跨网段 专用通道,需要开通vpn(花钱
RS的要求 无限制 必须要禁止非物理接口的ARP响应 要支持隧道模式
RS的数量 10-20台 100台 100台

LVS的工作模式及其工作过程:

LVS 有三种负载均衡的模式,分别是VS/NAT(nat 模式)、VS/DR(路由模式)、VS/TUN(隧道模式)。

1、NAT模式(VS-NAT)

原理:首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。 然后负载均衡器就把客户端发送的请求数据包的目标IP地址及端口改成后端真实服务器的IP地址(RIP)。

真实服务器响应完请求后,查看默认路由,把响应后的数据包发送给负载均衡器,负载均衡器在接收到响应包后, 把包的源地址改成虚拟地址(VIP)然后发送回给客户端。

优点:集群中的服务器可以使用任何支持TCP/IP的操作系统,只要负载均衡器有一个合法的IP地址。

缺点:扩展性有限,当服务器节点增长过多时,由于所有的请求和应答都需要经过负载均衡器,

因此负载均衡器将成为整个系统的瓶颈。

2、直接路由模式(VS-DR)

原理:首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。 然后负载均衡器就把客户端发送的请求数据包的目标MAC地址改成后端真实服务器的MAC地址(R-MAC)。

真实服务器响应完请求后,查看默认路由,把响应后的数据包直接发送给客户端,不需要经过负载均衡器。

优点:负载均衡器只负责将请求包分发给后端节点服务器,而RS将应答包直接发给用户。

所以,减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,也能处理很巨大的请求量。

缺点:需要负载均衡器与真实服务器RS都有一块网卡连接到同一物理网段上,必须在同一个局域网环境。

3、IP隧道模式(VS-TUN)

原理:首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。 然后负载均衡器就把客户端发送的请求报文封装一层IP隧道(T-IP)转发到真实服务器(RS)。

真实服务器响应完请求后,查看默认路由,把响应后的数据包直接发送给客户端,不需要经过负载均衡器。

优点:负载均衡器只负责将请求包分发给后端节点服务器,而RS将应答包直接发给用户。

所以,减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,也能处理很巨大的请求量。

缺点:隧道模式的RS节点需要合法IP,这种方式需要所有的服务器支持"IP Tunneling"。

面试题

keepalive的脑裂怎么解决?

lvs集群当中的高可用架构,只是针对调度器的高可用

基于vrrp来实现调度器的主和备。

高可用的HA架构

主调度器和备调度器(也可以多台)

在主调度器正常工作的时候,备完全处于冗余状态(待命)。不参与集群的运转,只有当主调度器出现故障时,备才会承担主调度器的作用。主调度器恢复功能后,主继续做为集群中的入口,备继续处于冗余状态。

取决于优先级决定

keepalive基于vrrp协议来实现lvs高可用的方案。

1、组播地址:224.0.0.18根据组播地址来进行通信,主和备之间发送报文。确定对方是否存活。

2、根据优先级的大小来确定主和备的位置

3、故障切换,主挂了,备来继续工作;主恢复了,备继续等待。

4、主和备之间的切换是vip地址的切换。keepalive是专门为了lvs而出现,但是不是lvs的专用。

复制代码
test1 192.168.65.41主
test2 192.168.65.42备
vip 192.168.65.100
nginx1:192.168.65.10
nginx2:192.168.65.20
客户端:192.168.65.43

lvs和nginx做负载均衡的区别:

lvs是四层转发 内核态 ip+端口 四层代理

nginx 四层代理也可以七层代理

lvs(DR模式)+nginx+tomcat

lvs实现四层转发+nginx实现七层代理(动态)

访问lvs的ip地址可以实现动静分离

相关推荐
chxii23 分钟前
19.go日志包log
网络·golang
Goober Airy2 小时前
局域网:电脑或移动设备作为主机实现局域网访问
服务器·网络·负载均衡
听风说雨的人儿3 小时前
浅谈在HTTP中GET与POST的区别
网络·网络协议·http
23zhgjx-hyh4 小时前
IS-IS认证
运维·服务器·网络
KangkangLoveNLP4 小时前
手动实现一个迷你Llama:手动实现Llama模型
网络·人工智能·python·算法·机器学习·自然语言处理·llama
武帝为此5 小时前
【计算机网络中的网桥设备】
网络·计算机网络·php
rufeike5 小时前
OSI模型中协议数据单元(PDU)
运维·网络
故事与他6455 小时前
迅饶科技X2Modbus网关-GetUser信息泄露漏洞
网络·科技·计算机网络·安全·web安全
北海屿鹿6 小时前
Linux网络:数据链路层&以太网
linux·运维·网络
【云轩】6 小时前
《比特城的七重结界:从数据洪流到量子盾牌的终极守护》
网络·安全·web安全