LVS/DR模式原理剖析(FAQs)
创始人
2024-07-29 09:00:20
0

之前一篇LVS-DR模式原理图文详解介绍了该模式的工作原理,以下的FAQs解答了有关LVS/DR模式工作原理的常见问题。

 

1. LVS/DR如何处理请求报文的,会修改IP包内容吗?

1.1 vs/dr本身不会关心IP层以上的信息,即使是端口号也是tcp/ip协议栈去判断是否正确,vs/dr本身主要做这么几个事:

1)接收client的请求,根据你设定的负载均衡算法选取一台realserver的ip;

2)以选取的这个ip对应的mac地址作为目标mac,然后重新将IP包封装成帧转发给这台RS;

3)在hash table中记录连接信息。

vs/dr做的事情很少,也很简单,所以它的效率很高,不比硬件负载均衡设备差多少。

数据包、数据帧的大致流向是这样的:client --> VS --> RS --> client

1.2 前面已作了回答,vs/dr不会修改IP包的内容.

2. RealServer为什么要在lo接口上配置VIP?在出口网卡上配置VIP可以吗?

2.1 既然要让RS能够处理目标地址为vip的IP包,首先必须要让RS能接收到这个包。

在lo上配置vip能够完成接收包并将结果返回client。

2.2 答案是不可以将VIP设置在出口网卡上,否则会响应客户端的arp request,造成client/gateway arp table紊乱,以至于整个load balance都不能正常工作。

3. RealServer为什么要抑制arp帧?

这个问题在上一问题中已经作了说明,这里结合实施命令进一步阐述。我们在具体实施部署的时候都会作如下调整:

       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

我相信很多人都不会弄懂它们的作用是什么,只知道一定得有。我这里也不打算拿出来详细讨论,只是作几点说明,就当是补充吧。

3.1

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

这两条是可以不用的,因为arp对逻辑接口没有意义。

3.2 如果你的RS的外部网络接口是eth0,那么

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

其实真正要执行的是:

echo "1" >/proc/sys/net/ipv4/conf/eth0/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/eth0/arp_announce

所以我个人建议把上面两条也加到你的脚本里去,因为万一系统里上面两条默认的值不是0,那有可能是会出问题滴。

4. LVS/DR load balancer(director)与RS为什么要在同一网段中?

从第一个问题中大家应该明白vs/dr是如何将请求转发给RS的了吧?它是在数据链路层来实现的,所以director必须和RS在同一网段里面。

5. 为什么director上eth0接口除了VIP另外还要配一个ip(即DIP)?

5.1 如果是用了keepalived等工具做HA或者Load Balance,则在健康检查时需要用到DIP。

5.2 没有健康检查机制的HA或者Load Balance则没有存在的实际意义。

6. LVS/DR ip_forward需要开启吗?

不需要。因为director跟realserver是同一个网段,无需开启转发。

7. director的vip的netmask一定要是255.255.255.255吗?

lvs/dr里,director的vip的netmask 没必要设置为255.255.255.255,也不需要再去

route add -host $VIP dev eth0:0

director的vip本来就是要像正常的ip地址一样对外通告的,不要搞得这么特殊.

8. LVS/DR如何进行tcp的三次握手?

应该不用再多说的,有兴趣单独交流吧。

 

【编辑推荐】

  1. Linux集群服务LVS概述与安装配置详解
  2. 企业级WEB的负载均衡高可用之LVS+Keepalived
  3. 大流量、高负载LVS系统优化注意事项

 

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...