LVS实验

一、实验说明

  1. 实验背景

LVS 是 Linux 内核实现的高性能、高可用的负载均衡集群技术,本实验围绕 LVS 的NAT 模式DR 模式展开,同时解决 DR 模式下多协议轮询异常问题,并实现会话粘滞功能,帮助理解 LVS 核心工作机制与实际应用场景。

  1. 实验环境

服务器角色:VS(调度器)、RS1/RS2(真实服务器)、Router(路由器)、Client(客户端)

网络规划:

NAT 模式:VS 的 eth0(192.168.80.100)对外,eth1(192.168.61.100)对内;RS1(192.168.61.10)、RS2(192.168.61.20)仅内网。

DR 模式:VS(192.168.61.50)、RS1/RS2(192.168.61.10/20)、VIP(192.168.61.200),Router(192.168.80.100/192.168.61.100)做转发。

软件依赖:ipvsadm(LVS 管理工具)、httpd/mod_ssl(web 服务)、iptables(防火墙)、NetworkManager(网络管理)。

二、核心知识点

  1. LVS 工作模式
模式 转发方式 特点 适用场景
NAT 网络地址转换(Masq) VS 作为网关,改写数据包地址;RS 网关指向 VS;仅 VS 需公网 IP 小规模集群、RS 无公网 IP 场景
DR(直接路由) 路由转发(Route) VIP 在 VS 和所有 RS 的 lo 口配置;RS 禁止 ARP 响应;数据包直接返回客户端 高性能集群、大流量场景
  1. 关键概念

IPVS:LVS 内核模块,实现虚拟服务与真实服务器的映射。

调度算法:rr(轮询)、wrr(加权轮询),按权重分配请求。

防火墙标记(FWM):将多端口 / 协议数据包标记,统一负载均衡策略。

会话粘滞(Persistent):同一客户端请求在指定时间内固定到同一 RS,保证会话连续性。

ARP 抑制:DR 模式下,RS 禁止响应 VIP 的 ARP 请求,避免 IP 冲突。

3.核心命令

ipvsadm:LVS 规则管理(增删改查、持久化)。

nmcli:网络配置(IP、网关、lo 口 VIP)。

iptables:防火墙标记、NAT 转发、路由策略。

sysctl:内核参数调整(IP 转发、ARP 参数)。

三、实验操作

(一)LVS NAT 模式实验

(1)网络环境配置

VS 主机配置:

RS1 配置:

RS2 配置:

(2)RS 业务部署

RS1 部署 web 服务:

RS2 部署 web 服务:

(3)VS 配置 LVS NAT 规则

开启内核 IP 转发:

安装和配置 IPVS 规则:

(4)测试与权重调整

基础测试:

调整 RS1 权重为 2:

(5)规则持久化

自定义文件持久化:

系统服务持久化:

(二)LVS DR 模式实验

(1)把先前的vsnode 改成router配置

(2)前置清理

(3)Router 节点配置

(4)VS 节点配置

基础网络配置:

配置 lo 口 VIP:

(5)Client 节点配置

(6)RS1 节点配置

基础网络配置:

root@RS1 \~# vmset.sh eth0 192.168.61.10 RS1 norouter

root@RS1 \~# nmcli connection modify eth0 ipv4.gateway 192.168.61.100

root@RS1 \~# nmcli connection reload

root@RS1 \~# nmcli connection up eth0

root@RS1 \~# route -n

配置 lo 口 VIP:

抑制 ARP 响应:

(7)RS2 节点配置

基础网络配置:

root@RS2 \~# vmset.sh eth0 192.168.61.20 RS2 norouter

root@RS2 \~# nmcli connection modify eth0 ipv4.gateway 192.168.61.100

root@RS2 \~# nmcli connection reload

root@RS2 \~# nmcli connection up eth0

配置 lo 口 VIP:

抑制 ARP 响应:

(三)DR 模式多协议轮询错误解决(防火墙标记)

1.问题场景

RS1/RS2 同时开启 http(80)和 https(443),VS 分别配置 80/443 规则,导致同一客户端请求 80 和 443 时可能命中不同 RS。

2.操作步骤

(1)RS开启https服务

(2)VS 配置独立 80/443 规则(复现问题)

客户端测试(复现问题):

(3)防火墙标记解决问题

客户端验证:

(四)DR 模式会话粘滞(持久连接)

1.删除原先有的规则,在创建

2.客户端测试(多次请求固定到同一RS)

3.VS观察连接状态

四、实验总结

1.NAT 模式依赖 VS 做地址转换,配置简单但性能受限;DR 模式通过直接路由提升性能,需配置 VIP 和 ARP 抑制,是生产环境主流方案。

2.防火墙标记可解决多端口 / 协议的负载均衡策略统一问题,避免轮询异常。

3.会话粘滞通过持久连接参数实现,保证客户端会话连续性,适用于需要会话保持的业务场景。

4.LVS 规则持久化可通过文件或系统服务实现,避免重启后规则丢失。

相关推荐
2401_834636995 天前
Keepalived + LVS (DR) + Nginx + NFS 高可用 Web 集群部署实战手册
前端·nginx·lvs
念何架构之路16 天前
接入层LVS
lvs
念何架构之路16 天前
接入LVS+Nginx和服务发现
nginx·服务发现·lvs
风曦Kisaki20 天前
Nginx代理与LVS(NAT/DR)全方位对比
运维·nginx·lvs
风曦Kisaki21 天前
# Linux运维Day05:Keepalived热备基础,Keepalived+LVS实现负载均衡
linux·运维·lvs
雨的旋律209924 天前
keepalived + LVS NAT模式
服务器·网络·lvs
源远流长jerry25 天前
LVS 与 Nginx 负载均衡:从原理到生产实战
运维·网络·网络协议·tcp/ip·nginx·负载均衡·lvs
风曦Kisaki25 天前
# Linux运维Day04:集群与 LVS 负载均衡(LVS-NAT 集群,LVS-DR 集群)
linux·运维·lvs
Donk_6725 天前
LVS 实验搭建
lvs
雨的旋律20991 个月前
keepalived + LVS DR
服务器·网络·lvs