当前位置: 首页 > news >正文

DR模式 LVS负载均衡群集

LVS DR模式工作原理(Direct Routing)

数据包流向分析

1.客户端 → Director(负载均衡器)

客户端发送请求到 VIP(虚拟IP),数据包到达 Director Server 内核空间。

2.Director → Real Server(真实服务器)

Director 判断数据包目标IP为VIP,是集群服务请求,修改

  • 目标MAC:Real Server MAC
  • 源MAC:Director Server MAC

IP地址保持不变,发送到 Real Server

3.Real Server 处理请求

  • 接收报文(目标MAC为自身),通过 lo 接口配置 VIP 处理请求。
  • 响应报文源IP为 VIP,目标IP为客户端(CIP),直接发送给客户端

4.客户端接收响应

响应报文不经过 Director Server

DR模式特点

  • Director Server 与 Real Server 必须在同一物理网络
  • Real Server 可以使用私有或公网地址。
  • Director 仅作为请求入口,不作为网关。
  • 所有请求经过 Director,响应直接由 Real Server 发送。
  • Real Server 的网关不能指向 Director Server。
  • Real Server 的 lo 接口配置 VIP。

DR模式部署步骤

服务器规划

  • DR 服务器:192.168.10.23
  • Web 服务器1:192.168.10.16
  • Web 服务器2:192.168.10.17
  • vip:192.168.10.180

配置负载调度器(Director Server)

环境部署

  • IP: 192.168.10.23
  • VIP: 192.168.10.180
1.系统配置
systemctl stop firewalld.servicesetenforce 0modprobe ip_vsyum -y install ipvsadm
2.配置虚拟IP
cd /etc/sysconfig/network-scripts/cp ifcfg-ens33 ifcfg-ens33:0vim ifcfg-ens33:0# 内容
DEVICE=ens33:0ONBOOT=yesIPADDR=192.168.10.180NETMASK=255.255.255.255ifup ens33:0ifconfig ens33:0
  1. 调整内核参数
vim /etc/sysctl.conf# 添加
net.ipv4.ip_forward = 0net.ipv4.conf.all.send_redirects = 0net.ipv4.conf.default.send_redirects = 0net.ipv4.conf.ens33.send_redirects = 0sysctl -p
4.配置 LVS 服务及调度
 ipvsadm -Cipvsadm -A -t 192.168.10.180:80 -s rripvsadm -a -t 192.168.10.180:80 -r 192.168.10.16:80 -gipvsadm -a -t 192.168.10.180:80 -r 192.168.10.17:80 -gipvsadm -ln  # 查看节点状态,Route代表DR模式

配置节点服务器(Real Server)

IP: 192.168.10.16 、 192.168.10.17

1.配置 VIP 到 lo 接口

 cd /etc/sysconfig/network-scripts/cp ifcfg-lo ifcfg-lo:0vim ifcfg-lo:0# 内容DEVICE=lo:0ONBOOT=yesIPADDR=192.168.10.180NETMASK=255.255.255.255ifup lo:0ifconfig lo:0route add -host 192.168.10.180 dev lo:0
2.ARP 参数调整,避免MAC冲突
 vim /etc/sysctl.conf#内容net.ipv4.conf.lo.arp_ignore = 1net.ipv4.conf.lo.arp_announce = 2net.ipv4.conf.all.arp_ignore = 1net.ipv4.conf.all.arp_announce = 2#刷新sysctl -p
3.安装 Web 服务
 # 192.168.10.16echo 'this is 192.168.10.16 web01!' > /var/www/html/index.html# 192.168.10.17echo 'this is 192.168.10.17 web02!' > /var/www/html/index.html

测试 LVS 群集

  • 在客户端浏览器访问: http://192.168.10.180/
  • 轮询显示不同节点页面内容。

注意:LVS-DR 用户访问 http://192.168.10.180/ 下次刷新时 延迟50秒

LVS三种工作模式

模式原理优缺点
NAT(VS/NAT)Director 改变数据包目标IP并转发, RS响应包回到Director再发客户端优点:节点可任意OS;缺点: Director是瓶颈
DR(VS/DR)Director 改变目标MAC地址,RS直接 响应客户端优点:Director不处理响应;缺 点:节点需与Director同网段
TUN(VS/TUN)Director 封装IP包到隧道,RS解封直 接响应客户端优点:Director不处理响应;缺 点:节点需支持IP隧道

LVS调度算法

  • 固定调度:rr、wrr、dh、sh
  • 动态调度:lc、wlc、lblc
算法描述
rr轮询,每个RS均摊
wrr加权轮询,权重高的分配多
dh目的地址哈希分配
sh源地址哈希分配
lc最少连接数
wlc加权最少连接
lblc基于地址的最少连接

Nginx vs LVS vs HAProxy 区别

特 性NginxLVS (Linux Virtual Server)HAProxy
定 位Web 服务器 + 反向代理 + 负载均衡内核级四层负载均衡专业负载均衡器(四层 +七层)
工 作 层 级四层(TCP)+ 七层 (HTTP/HTTPS)四层(TCP/UDP,传输层)四层 + 七层
性 能高(软件级,单机可达 十万级并发)极高(内核态,百万级并发)高(接近 Nginx,但更专 注负载均衡)
功 能 特 点静态资源服务- 反向代 理- 缓存- 支持 HTTP/HTTPS 负载均衡高性能转发- 调度算法丰富 (RR、LC、SH…)- 内核态转 发,几乎无性能损耗专注于负载均衡- 健康检 查更强大- 支持会话保 持、SSL 卸载等
健 康 检 查简单(TCP/HTTP)依赖 Keepalived 或其他工具强大(多协议、多方式)
配 置 复 杂 度简单较复杂(需 ipvsadm/keepalived 配合)中等(配置文件灵活)
适 用 场 景Web 代理、动静分离、 中小型集群超大规模集群、核心四层调度高可用集群、对健康检查 要求高的业务
优 缺 点优点:功能多,易上手 缺点:七层性能不如 LVS/HAProxy优点:性能最强,稳定缺点:只 能四层,配置偏复杂优点:专业负载均衡,健 康检查强缺点:不自带 Web 服务

总结:

  • Nginx:轻量、全能,适合 Web 服务和中小型负载均衡。
  • LVS:极致性能,适合四层超大规模集群,但功能单一。
  • HAProxy:专业负载均衡器,四层+七层都行,健康检查能力最强。
http://www.dtcms.com/a/605123.html

相关文章:

  • 【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 C
  • openGauss 数据库快速上手评测:从 Docker 安装到SQL 实战
  • ffmpeg离线安装到服务器:解决conda/sudo/无法安装的通用方案
  • 力扣--两数之和(Java)
  • wordpress翻译公司网站吕梁网站制作
  • Lanelet2 OSM数据格式详解
  • 分布式系统保证数据强一致性的示例
  • Spring Boot性能提升的核武器,速度提升500%!
  • SOLIDWORKS 2025设计效率的大幅提高
  • 比标准Json库好用——json-iterator
  • 汇编语言编译器的作用 | 探讨汇编编译器的工作原理和实际应用
  • C语言编译器下载地址与安装指南
  • kanass实战教程系列(4) - 产品经理如何使用kanass有效管理需求
  • RLS(递归最小二乘)算法详解
  • 红色好看的网站济南网络推广软件公司
  • mvcc 简介
  • UniApp 商品分类左右联动技术文档
  • pytest 入门指南:Python 测试框架从零到一(2025 实战版)
  • SpringBoot教程(三十三)| SpringBoot集成MinIO
  • 【开题答辩全过程】以 基于.NET MVC的线上鞋服交易系统设计与实现为例,包含答辩的问题和答案
  • MySQL 全体系深度解析(存储引擎、事务、日志、MVCC、锁、索引、执行计划、复制、调优)
  • SpringMVC基础教程(1)--MVC/DispathcerServlet
  • 在streampark运行paimon-flink-action-1.20.0.jar
  • AI得贤面试智能体:重构企业招聘新范式
  • 硅基计划6.0 陆 JavaEE HttpHttps协议
  • 稳定边界层高度参数化方案的回归建模
  • 企业网站推广方法wap网站预览
  • 可以做推广的门户网站wordpress适合中国的小插件介绍
  • Dubbo服务治理全解析:从零搭建高可用微服务架构
  • java List怎么转换为Vector