LVS+Keepalived高可用群集

一、核心概念

核心组合:LVS(四层负载均衡)+ Keepalived(高可用+健康检查),解决"单点故障"+"高并发分发"问题,企业级核心方案。

1. LVS(Linux Virtual Server)

  • 定位:内核级四层(TCP/UDP)负载均衡,不处理应用层内容,仅做请求转发
  • 核心优势:性能极高(内核态转发),吞吐量大,远优于Nginx/HAProxy(七层)
  • 核心功能:按调度算法,将客户端请求分发到多台Real Server(RS,后端应用服务器)

2. Keepalived

  • 定位:基于VRRP协议,实现LVS负载均衡器的高可用,同时管理LVS规则、检测RS健康状态
  • 核心功能:① 主备切换(VIP漂移);② 后端RS健康检查;③ 集成ipvsadm,统一管理LVS转发规则

3. 关键术语

  • Director(LB):负载均衡器,运行LVS+Keepalived,分主(MASTER)、备(BACKUP)两台
  • VIP:虚拟IP,对外服务的统一入口,由主LB持有,故障时漂移到备LB
  • Real Server(RS):后端真实应用服务器(如Web、API服务器)

二、LVS三种工作模式

|-----------------------|------------------------------------|----------|---------------------|
| 模式 | 核心特点 | 性能 | 适用场景 |
| DR(Direct Route,直接路由) | 调度器仅修改请求的目标MAC地址,响应由RS直接回客户端(不经LB) | 最高(企业首选) | 高并发、低延迟业务(如Web、API) |
| NAT | 请求、响应都经过调度器,需做地址转换 | 低(易成瓶颈) | 小规模集群、后端服务器不能直接访问公网 |
| TUN(IP隧道) | 通过IP隧道转发请求,支持跨网段部署 | 中等(配置复杂) | 跨机房、跨网段集群 |

三、典型架构

1. 架构组成(示例)

  • LB主(MASTER):192.168.1.10(运行LVS+Keepalived)
  • LB备(BACKUP):192.168.1.11(运行LVS+Keepalived)
  • VIP:192.168.1.100(对外统一入口)
  • RS1:192.168.1.12(Web服务器)
  • RS2:192.168.1.13(Web服务器)

2. DR模式数据流(核心)

  1. 客户端 → VIP(192.168.1.100)→ 主LB(MASTER)
  1. 主LB根据调度算法,修改请求的目标MAC地址(改为某台RS的MAC),转发到内网
  1. RS接收请求,处理后直接响应客户端(不经过LB)→ 性能最优

四、部署步骤

1. LB节点(主备均操作)

  • 安装软件:yum install -y keepalived ipvsadm
  • 核心配置:/etc/keepalived/keepalived.conf(重点修改3部分)
  • vrrp_instance:主备区分(state MASTER/BACKUP)、优先级(主>备)、VIP配置
  • virtual_server:VIP+端口、调度算法(rr轮询)、工作模式(DR)
  • real_server:后端RS的IP+端口、健康检查配置(TCP_CHECK)
  • 启动服务:systemctl start keepalived; systemctl enable keepalived

2. RS节点(所有后端服务器)

DR模式必须配置(避免VIP冲突),两步核心操作:

  • 绑定VIP到lo网卡(回环网卡):配置ifcfg-lo:0文件,IP为VIP,子网掩码255.255.255.255
  • 抑制ARP广播:修改sysctl.conf,添加4行配置(arp_ignore=1、arp_announce=2),执行sysctl -p生效

3. 验证命令

  • 查看VIP:ip addr show 物理网卡(如ens33)
  • 查看LVS转发规则:ipvsadm -Ln
  • 查看Keepalived状态:systemctl status keepalived

五、高可用故障切换(核心优势)

  • LB主故障:主备心跳丢失(advert_int 1,每秒检测),备LB自动升级为MASTER,接管VIP,客户端无感知
  • RS故障:Keepalived健康检查(delay_loop 6,每6秒检测),失败则自动从LVS规则中剔除,恢复后自动加回

六、重点总结

  • LVS工作在四层,核心是转发,不处理应用层内容;Keepalived解决LVS的单点故障
  • DR模式是企业首选,核心是"RS直接回客户端",性能最高
  • RS节点必须配置"绑定VIP到lo+抑制ARP",否则会出现VIP冲突
  • 企业常用组合:LVS+Keepalived(四层入口)→ Nginx(七层路由)→ 应用服务器
相关推荐
武子康2 小时前
大数据-268 实时数仓-ODS 层 Flink+Kafka+HBase实时流处理:Kafka数据写入维度表实战
大数据·后端·flink
残 风2 小时前
事务并发机制之两阶段锁篇
数据库·postgresql·开源·数据库开发
淼淼爱喝水2 小时前
SQL注入漏洞检测与修复
数据库·sql
TechWayfarer2 小时前
RSAC 2026启示录:从IP归属到IP风险画像,风控系统如何防御住宅代理与AI攻击?
网络·人工智能·python·tcp/ip·ip
dddddppppp1232 小时前
arm32段+页映射 手撕mmu的行为之软件模拟
linux·服务器·网络
傻啦嘿哟2 小时前
住宅IP隧道代理vs数据中心隧道代理:谁更值得买
网络·网络协议·tcp/ip
Lution Young2 小时前
关于IP、子网掩码以及网关
网络·网络协议·tcp/ip
天赐学c语言2 小时前
MySQL - 数据库基础
linux·数据库·mysql
跨境摸鱼2 小时前
海外仓压力加大跨境卖家如何优化履约结构
大数据·人工智能·跨境电商·亚马逊·内容营销