企业架构LNMP学习笔记34

LVS-DR模式:

老师分析:

1、首先用户用CIP请求VIP

2、根据上图可以看到,不管是Director Server还是Real Server上都需要配置VIP,那么当用户请求到达我们的集群网络的前端路由器 的时候,请求数据包的源地址为CIP目标地址为VIP,此时路由器会发广播问谁是VIP,那么我们集群中所有的节点都配置有VIP,此时谁先响应路由器那么路由器就会将用户请求发给谁,这样一来我们的集群系统是不是没有意义了,那我们可以在网关路由器上配置静态路由指定VIP就是Director Server ,或者使用一种机制不让Real Server 接收来自网络中的ARP地址解析请求,这样一来用户的请求数据包都会经过Director Servrer。

3、当Director Server收到用户的请求后根据此前设定好的调度算法 结果来确定将请求负载到某台Real Server上去,假如说此时根据调度算法的结果,会将请求负载到RealServer 1上面去,此时Director Server 会将数据帧中的目标MAC地址修改为Real Server1的MAC地址,然后再将数据帧发送出去

4、当Real Server1 收到一个源地址为CIP目标地址为VIP的数据包时,Real Server1发现目标地址为VIP,而VIP是自己,于是接受数据包并给予处理,当Real Server1处理完请求后,会将一个源地址为VIP目标地址给CIP的数据包发出去,此时的响应请求就不会再经过Director Server了,而是直接响应给用户。

实际工作中,我们是没有权限更改路由器。

|----------|-----------------|-----------------------------------------|
| Server | Type | IP |
| server04 | 负载均衡调度服务器 DS | 192.168.17.110(DIP)192.168.17.205(VIP) |
| server01 | 真实服务器 RS Web服务器 | 192.168.17.107(RIP)192.168.17.205(VIP) |
| server03 | 真实服务器 RS Web服务器 | 192.168.17.109(RIP) 192.168.17.205(VIP) |

在RS上配置:

bash 复制代码
#设置arp的通告模式  通过VIP请求到DS服务器
shell > echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
shell > echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
shell > echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
shell > echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
#绑定VIP到网卡
shell > ifconfig lo:0 192.168.17.205  broadcast 192.168.17.205 netmask 255.255.255.255 up
#添加主机路由
shell > route add -host 192.168.17.205 dev lo:0

自己响应自己,通过lo速度更快一点。

添加路由,自己找自己的时候,到自己的lo网卡走进行了。

在DS上配置:

bash 复制代码
#配置DS上的VIP
shell > ifconfig ens33:0 192.168.17.205 broadcast 192.168.17.205 netmask 255.255.255.255 up
#添加主机路由
shell > route add -host 192.168.17.205 dev ens33:0
#配置转发规则
shell > ipvsadm -C
shell > ipvsadm -A -t 192.168.17.205:80 -s rr
shell > ipvsadm -a -t 192.168.17.205:80 -r 192.168.17.107 -g
shell > ipvsadm -a -t 192.168.17.205:80 -r 192.168.17.109 -g

-g 是DR工作模式

然后再进行测试:

这种配置都是临时生效的,如果要让这些永久生效。

可以放到etc/rc.local这个开机自启配置文件。

相关推荐
MZWeiei4 小时前
Spark SQL 运行架构详解(专业解释+番茄炒蛋例子解读)
大数据·分布式·sql·架构·spark
#金毛4 小时前
一、HAL库的设计理念详解:从架构到实践
stm32·嵌入式硬件·架构
是麟渊4 小时前
【大模型面试每日一题】Day 17:解释MoE(Mixture of Experts)架构如何实现模型稀疏性,并分析其训练难点
人工智能·自然语言处理·面试·职场和发展·架构
好吃的肘子4 小时前
MongoDB 高可用复制集架构
数据库·mongodb·架构
TsingtaoAI4 小时前
医疗系统开发架构和技术路线建议-湖南某三甲医院
架构·医疗ai系统·医疗信息化·医疗系统架构·医疗ai机构
敲代码的 蜡笔小新5 小时前
【行为型之命令模式】游戏开发实战——Unity可撤销系统与高级输入管理的架构秘钥
unity·设计模式·架构·命令模式
码上飞扬6 小时前
MongoDB数据库深度解析:架构、特性与应用场景
数据库·mongodb·架构
九章云极AladdinEdu7 小时前
GPU SIMT架构的极限压榨:PTX汇编指令级并行优化实践
汇编·人工智能·pytorch·python·深度学习·架构·gpu算力
blues_C7 小时前
【专栏启动】开篇:为什么是 Django + Vue3?测试平台的技术选型与架构蓝图
架构·django·测试平台
胡斌附体9 小时前
微服务调试问题总结
java·微服务·架构·调试·本地·夸微服务联调