LVS负载均衡群集(二)-- DR模式

前言

在服务器运维与集群搭建中,"存储共享"(解决多节点数据互通与存储资源利用)和 "负载均衡"(保障服务高可用、避免单点过载)是核心需求。本文聚焦 NFS 网络共享服务与 LVS DR(直接路由)模式,从原理简化到实操步骤,助力落地:NFS 部分教你搭建跨节点存储共享,实现存储压力分担与硬件利旧;LVS DR 部分拆解负载均衡集群部署,借直接路由优化数据包流向、提升服务响应效率。无论运维新手入门,还是从业者梳理实操流程,这份 "原理 + 步骤 + 验证" 指南都能帮你避坑,快速掌握两项关键技术的应用方法。

一、FNS的共享服务

NFS:可以跨节点,通过网络连接提供自己的存储空间(共享空间)

这一类存储服务/类型,称之为 NAS 存储(网络共享存储)

给其它服务器负担存储压力/服务器的利旧使用

步骤一:关闭防火墙(2台服务器)
步骤二:安装软件包,新建共享目录,修改权限

yum install -y nfs-utils.x86_64 rpcbind

步骤三:编辑配置文件

vim /etc/exports

/opt/nfs_share 192.168.255.0/24(rw,sync,no_root_squash)

#共享目录 网段 读写,同步,无root权限

步骤四:不重启生效

systemctl start rpcbind

systemctl start nfs

exportfs -vr

#查看详细的nfs信息

root@localhost share#exportfs -v

#查看本机发布的 NFS 共享目录

root@localhost \~# netstat -anpt | grep rpc

root@localhost \~# showmount -e

步骤五:服务端

(1)yum install -y httpd

systemctl start httpd

(2)服务端也需要下载yum install -y nfs-utils 和rpcbind 否会会("超级块"错误)

yum install -y nfs-utils rpcbind

(3)mount 服务器地址:对方共享文件夹 本地挂载点

mount 192.168.255.129:/opt/nfs_share /var/www/html

永久挂载:vi /etc/fstab

192.168.255.129:/opt/nfs_share /var/www/html defaults,_netdev 0 0

mount -a(刷新生效)

#自动挂载

showmount -e 主机名 (查看远程主机nfs共享)

步骤六:验证

二、LVS的DR模式(直接路由)

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

1、数据包流向分析

2、DR模式特点

LVS-DR 模式(直接路由):

接受用户请求时,LVS 服务器负责接收请求,并转发给后端服务器,任务处理完后,后端服务器会使用虚拟IP(VIP)作为源IP,直接通过网关响应客户端(给与结果)

ps: LVS-NAT 模式(地址映射)

接受用户请求时,LVS 服务器负责将外网IP映射为内网IP,然后通过负载均衡/分流算法,将任务分发给后端,响应客户结果的时候,也是由LVS服务器来处理的(内网IP映射为外网IP)

(二) DR模式部署步骤

LVS 边界设备

LVS ENS33 192.168.255.131 ENS33:0 VIP 192.168.255.100

server01 ENS33 192.168.255.132 lo:0 VIP 192.168.255.100

server02 ENS33 192.168.255.133 lo:0 VIP 192.168.255.100

步骤一:基础环境

关闭防火墙、核心防护;DNS;网卡保证是正确IP

步骤二:配置负载调度器(Director Server)

(1)安装ipvsadm 工具(LVS的管理工具)

modprobe ip_vs

yum -y install ipvsadm

(2)配置虚拟IP

cd /etc/sysconfig/network-scripts/

cp -p ifcfg-ens33 ifcfg-ens33:0

vim ifcfg-ens33:0

DEVICE=ens33:0

ONBOOT=yes

IPADDR=192.168.255.100

NETMASK=255.255.255.255

#不全部重启,开启指定网卡

ifup ens33:0

#指定查看网卡信息

ifconfig ens33:0

(3)调整内核参数

vim /etc/sysctl.conf

net.ipv4.ip_forward = 0

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.ens33.send_redirects = 0

刷新:sysctl -p

(4)配置LVS服务及调度

ipvsadm -C

ipvsadm -A -t 192.168.255.100:80 -s rr

ipvsadm -a -t 192.168.255.100:80 -r 192.168.255.132:80 -g

ipvsadm -a -t 192.168.255.100:80 -r 192.168.255.133:80 -g

ipvsadm #开启LVS

ipvsadm -ln # 查看节点状态,Route代表DR模式

步骤三:配置节点服务器

IP:192.168.255.132、192.168.255.133

(1)配置 VIP 到 lo 接口

cd /etc/sysconfig/network-scripts/

cp -p ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

DEVICE=lo:0

ONBOOT=yes

IPADDR=192.168.255.100

NETMASK=255.255.255.255

#不全部重启,开启指定网卡

ifup lo:0

#指定查看网卡信息

ifconfig lo:0

#把路由指向到回环网卡的设备位置

route add -host 192.168.255.100 dev lo:0

(2) ARP 参数调整,避免MAC冲突

vim /etc/sysctl.conf

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

刷新:sysctl -p

(3)安装 Web 服务

yum install -y httpd

192.168.255.132

echo 'this is httpd01 192.168.255.132 web page!' > /var/www/html/index.html

192.168.255.133

echo 'this is httpd02 192.168.255.133 web page!' > /var/www/html/index.html

步骤四:测试 LVS 群集

在客户端浏览器访问: http://192.168.255.100

应轮询显示不同节点页面内容。

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

总结

本文围绕 NFS 共享服务与 LVS DR 模式展开,核心内容与实践要点可归纳为以下两部分:

一、NFS 共享服务:实现跨节点存储互通
  1. 核心价值:通过网络为多节点提供共享存储空间,减轻单服务器存储压力,同时实现硬件资源(如旧服务器)的高效利用,属于 NAS(网络共享存储)类型。
  2. 关键步骤:
  • 基础准备:两台服务器均需关闭防火墙,安装nfs-utils与rpcbind软件包;
  • 服务端配置:创建共享目录(如/opt/nfs_share),编辑/etc/exports指定共享规则(网段、读写权限等),启动服务并通过exportfs -vr使配置生效;
  • 客户端挂载:安装依赖包后,通过mount命令挂载服务端共享目录(如挂载到/var/www/html),并可通过/etc/fstab配置永久挂载,最后验证挂载有效性。
二、LVS DR 模式:搭建高效负载均衡集群
  1. 核心原理:与 NAT 模式不同,DR 模式中 LVS 调度器仅接收客户端请求并转发给后端节点,后端节点处理完成后直接通过虚拟 IP(VIP)响应客户端,减少调度器转发压力,提升响应效率。
  2. 关键步骤:
  • 环境准备:所有节点关闭防火墙与核心防护,确保 IP 配置正确(LVS 节点需配置 VIP 到ens33:0,后端节点配置 VIP 到lo:0);
  • 调度器配置:安装ipvsadm工具,调整内核参数(关闭 IP 转发与重定向),通过ipvsadm命令配置集群规则(指定 VIP、后端节点与 DR 模式);
  • 后端节点配置:配置 VIP 到回环接口lo:0并添加路由,调整 ARP 参数避免 MAC 冲突,安装 Web 服务并差异化配置页面内容;
  • 验证:客户端访问 VIP(如http://192.168.255.100),应轮询显示后端节点页面,证明负载均衡生效(注意刷新需间隔 50 秒以观察轮询效果)。

配置正确(LVS 节点需配置 VIP 到ens33:0,后端节点配置 VIP 到lo:0);

  • 调度器配置:安装ipvsadm工具,调整内核参数(关闭 IP 转发与重定向),通过ipvsadm命令配置集群规则(指定 VIP、后端节点与 DR 模式);
  • 后端节点配置:配置 VIP 到回环接口lo:0并添加路由,调整 ARP 参数避免 MAC 冲突,安装 Web 服务并差异化配置页面内容;
  • 验证:客户端访问 VIP(如http://192.168.255.100),应轮询显示后端节点页面,证明负载均衡生效(注意刷新需间隔 50 秒以观察轮询效果)。

两项技术均以 "实操落地" 为核心,步骤清晰且标注了关键坑点(如 NFS 客户端需装依赖避免 "超级块" 错误、LVS 节点 ARP 参数调整避免冲突),可直接作为日常运维的参考手册,助力高效解决存储共享与负载均衡需求。

相关推荐
weixin_3077791321 分钟前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
流浪0012 小时前
Git篇(三):吃透远程协作:SSH 密钥、分支、标签全流程实战指南
运维·git·ssh
FoldWinCard2 小时前
D4 Linux 进程 内存 等命令
linux·运维·服务器
番茄育学园2 小时前
2026表格自动化工具实测:四个不同方案,适配不同办公场景
运维·自动化
j7~3 小时前
【Linux 系统】二十.进程间通信(共享内存、消息队列、信号量)
linux·运维·消息队列·共享内存·信号量·system v
裤兜里有钱3 小时前
关于Xshell连接虚拟机Linux失败的主要原因
linux·运维·服务器
有毒的教程3 小时前
Ansible批量操作自动化完整教程:批量部署服务、配置同步、软件更新实战
运维·自动化·ansible
辞旧 lekkk3 小时前
CMake工程指南(一)
linux·运维·服务器·开发语言·qt·学习·萌新
oushaojun24 小时前
deepseek教我什么是docker
运维·docker·容器
jieyucx4 小时前
Windows11 & Linux 环境Docker部署与镜像拉取效率优化实战指南
linux·运维·docker