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

Nginx 高可用集群与 LVS 负载均衡实战指南(场景选型对比 + 完整配置步骤 + 主备漂移部署实操)

一、Nginx vs LVSipvsadm 核心场景对比表终极对照对比维度Nginx你的高可用方案LVSipvsadm4 层负载方案核心定位7 层应用层负载均衡4 层内核级负载均衡适用协议HTTP/HTTPSWeb、API、前端TCP/UDPMySQL、Redis、MQ、游戏网关性能单台扛 1-5 万 QPS满足中小项目单台扛 10 万 QPS超大流量核心功能部署前端、跨域、URL 重写、SSL、SPA 路由适配仅 IP 端口转发无业务逻辑配置复杂度低新手易上手高需配 DR 模式、ARP 抑制、ipvsadm 规则依赖工具Keepalived仅 VIP 漂移KeepalivedVIP 漂移 管理 LVS ipvsadm配置规则健康检查Nginx 自带upstreamLVSKeepalived 联动或单独配置你的场景是否需要✅ 必须选有前端、Web 业务❌ 完全不需要典型生产场景前后端分离项目、中小流量 Web 服务、企业业务系统数据库负载、Redis 集群、超大流量入口、纯 TCP 服务二、LVSipvsadm 核心适用场景什么时候必须用只有满足以下任意一条才需要部署 LVSipvsadm纯 TCP/UDP 服务负载MySQL 主从负载、Redis 集群入口、RabbitMQ、游戏 TCP 网关、FTP 服务等Nginx 虽能做但 LVS 性能更高、更适配超大流量入口日活百万级、QPS 超 5 万的 Web 服务用 LVS 做第一层 4 层转发后面挂 Nginx 集群跨机房 / 跨网段转发需要内核级低延迟转发不涉及 HTTP 业务逻辑无 Nginx 的纯后端服务集群比如只有 3 台 Tomcat无前端需 4 层端口转发。三、LVSipvsadm 完整配置步骤DR 模式生产最常用以「LVSKeepalived 做 MySQL 负载」为例典型 TCP 服务场景给你可直接复制的配置环境规划示例 IP角色IP 地址作用VIP192.168.1.200统一入口LVS 主节点192.168.1.204 层负载主节点LVS 备节点192.168.1.214 层负载备节点MySQL 节点 1192.168.1.30:3306后端数据库 1MySQL 节点 2192.168.1.31:3306后端数据库 2核心前提所有机器关闭防火墙 / 放行 VRRP 协议Keepalived 心跳systemctl stop firewalld systemctl disable firewalld所有机器关闭 SELinuxsetenforce 0 sed -i s/^SELINUX.*/SELINUXdisabled/ /etc/selinux/configDR 模式要求所有机器在同一网段且网卡为桥接模式无 NAT。步骤 1安装 LVSipvsadmKeepalivedLVS 主 / 备都执行# CentOS/RHEL yum install -y ipvsadm keepalived # 加载ipvs内核模块开机自启 echo modprobe ip_vs /etc/rc.local chmod x /etc/rc.local modprobe ip_vs # 验证模块加载 lsmod | grep ip_vs步骤 2配置 LVS 主节点192.168.1.202.1 Keepalived 配置集成 LVS 规则mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak vi /etc/keepalived/keepalived.confglobal_defs { router_id LVS_MASTER } # 配置LVS负载规则替代手动ipvsadm命令 virtual_server 192.168.1.200 3306 { delay_loop 6 # 健康检查间隔6秒 lb_algo wrr # 加权轮询 lb_kind DR # DR模式最常用 persistence_timeout 0 # 关闭会话保持MySQL无需 protocol TCP # TCP协议 # 后端MySQL节点1 real_server 192.168.1.30 3306 { weight 1 # 权重 # 健康检查检测MySQL端口 TCP_CHECK { connect_port 3306 connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } # 后端MySQL节点2 real_server 192.168.1.31 3306 { weight 1 TCP_CHECK { connect_port 3306 connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } } # VIP漂移配置 vrrp_instance VI_1 { state MASTER interface eth0 # 实际网卡名 virtual_router_id 52 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.1.200/24 dev eth0 # 绑定VIP到网卡 }2.2 配置 DR 模式 ARP 抑制主 / 备都执行关键vi /etc/sysctl.conf添加以下内容net.ipv4.ip_forward 1 net.ipv4.conf.all.arp_ignore 1 net.ipv4.conf.all.arp_announce 2 net.ipv4.conf.lo.arp_ignore 1 net.ipv4.conf.lo.arp_announce 2生效配置sysctl -p步骤 3配置 LVS 备节点192.168.1.21仅修改state和priority其余和主节点一致global_defs { router_id LVS_BACKUP } virtual_server 192.168.1.200 3306 { delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 0 protocol TCP real_server 192.168.1.30 3306 { weight 1 TCP_CHECK { connect_port 3306 connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } real_server 192.168.1.31 3306 { weight 1 TCP_CHECK { connect_port 3306 connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } } vrrp_instance VI_1 { state BACKUP # 备节点 interface eth0 virtual_router_id 52 priority 80 # 优先级低于主 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.1.200/24 dev eth0 } }步骤 4配置后端 Real ServerMySQL 节点 1/2 都执行DR 模式要求后端节点绑定 VIP 到回环网卡lo# 绑定VIP到lo ifconfig lo:0 192.168.1.200 netmask 255.255.255.255 up # 永久生效写入开机脚本 echo ifconfig lo:0 192.168.1.200 netmask 255.255.255.255 up /etc/rc.local chmod x /etc/rc.local # 配置ARP抑制和LVS节点一致 vi /etc/sysctl.conf添加net.ipv4.conf.all.arp_ignore 1 net.ipv4.conf.all.arp_announce 2 net.ipv4.conf.lo.arp_ignore 1 net.ipv4.conf.lo.arp_announce 2生效sysctl -p步骤 5启动服务并验证LVS 主 / 备都执行# 启动Keepalived自动加载LVS规则 systemctl start keepalived systemctl enable keepalived # 查看ipvsadm规则验证LVS配置 ipvsadm -Ln # 正常输出 # IP Virtual Server version 1.2.1 (size4096) # Prot LocalAddress:Port Scheduler Flags # - RemoteAddress:Port Forward Weight ActiveConn InActConn # TCP 192.168.1.200:3306 wrr # - 192.168.1.30:3306 Route 1 0 0 # - 192.168.1.31:3306 Route 1 0 0 # 测试VIP漂移停主节点KeepalivedVIP自动飘到备节点 systemctl stop keepalived ip addr | grep 192.168.1.200 # 备节点能看到VIP步骤 6手动管理 ipvsadm 规则备用了解即可如果不用 Keepalived 自动配置可手动用 ipvsadm 命令# 添加VIP虚拟服务 ipvsadm -A -t 192.168.1.200:3306 -s wrr # 添加后端节点 ipvsadm -a -t 192.168.1.200:3306 -r 192.168.1.30:3306 -g # -gDR模式 ipvsadm -a -t 192.168.1.200:3306 -r 192.168.1.31:3306 -g # 保存规则开机自启 ipvsadm -S /etc/sysconfig/ipvsadm systemctl enable ipvsadm四、终极选择总结你该怎么选你的业务类型首选方案是否需要 ipvsadm核心配置要点前后端分离 Web 项目NginxKeepalived❌ 不需要upstream 负载、VIP 漂移、前端部署MySQL/Redis/MQ 等 TCP 服务LVSipvsadmKeepalived✅ 必须要DR 模式、ARP 抑制、VIP 漂移超大流量 Web 入口LVS (4 层)Nginx 集群 (7 层)✅ 必须要两层负载、LVS 管分发、Nginx 管业务五、关键提醒避坑LVS DR 模式必须关闭 ARP 响应否则会出现 VIP 冲突Keepalived 既可以做 VIP 漂移也可以直接管理 LVS 规则推荐无需手动用 ipvsadm你的 Web 场景有前端、API永远优先选 NginxLVS 只会增加复杂度ipvsadm 仅用于配置 LVS 规则无 LVS 则完全不用装。

相关文章:

Nginx 高可用集群与 LVS 负载均衡实战指南(场景选型对比 + 完整配置步骤 + 主备漂移部署实操)

一、Nginx vs LVSipvsadm 核心场景对比表(终极对照)对比维度Nginx(你的高可用方案)LVSipvsadm(4 层负载方案)核心定位7 层应用层负载均衡4 层内核级负载均衡适用协议HTTP/HTTPS(Web、API、前端&…...

Rancher Desktop技术架构深度解析:桌面Kubernetes开发环境的实现原理与实践指南

Rancher Desktop技术架构深度解析:桌面Kubernetes开发环境的实现原理与实践指南 【免费下载链接】rancher-desktop Container Management and Kubernetes on the Desktop 项目地址: https://gitcode.com/gh_mirrors/ra/rancher-desktop 在当今云原生开发领域…...

C4D动画渲染农场怎么选?

选择C4D渲染农场一定要看2个方面:价格和是否需要排队。因为C4D是用显卡渲染,显卡的价格比CPU贵很多,而且数量也很紧缺。而渲C4D动画又需要大量的显卡机器,导致很多农场需要排队渲染,遇到紧急项目,就很容易耽…...

计算机网络核心概念

一、计算机网络到底在做什么?本质:把数据从一台设备,可靠 / 快速地送到另一台设备。为了做到这件事,需要解决:怎么标识设备(地址)怎么找到路径(路由)怎么保证不丢、不错、…...

工频干扰消除算法实战选型指南

1. 工频干扰的工程挑战与算法选型逻辑 第一次处理心电信号时,我被示波器上那条"跳舞"的波形惊呆了——本该平稳的QRS波群上叠加着明显的50Hz正弦波,就像给心电图套了层锯齿状的枷锁。这种工频干扰在生物电信号采集、工业传感器监测等领域堪称&…...

nli-distilroberta-base商业应用:短视频脚本与品牌调性关键词逻辑匹配分析

nli-distilroberta-base商业应用:短视频脚本与品牌调性关键词逻辑匹配分析 1. 项目概述 nli-distilroberta-base是一个基于DistilRoBERTa模型的自然语言推理(NLI)Web服务,专门用于分析两段文本之间的逻辑关系。这个轻量级但强大的工具可以帮助企业快速…...

TVBoxOSC:让电视盒子管理回归简单本质的开源解决方案

TVBoxOSC:让电视盒子管理回归简单本质的开源解决方案 【免费下载链接】TVBoxOSC TVBoxOSC - 一个基于第三方项目的代码库,用于电视盒子的控制和管理。 项目地址: https://gitcode.com/GitHub_Trending/tv/TVBoxOSC 核心价值:重新定义电…...

N_m3u8DL-CLI-SimpleG:轻松下载在线视频的终极图形界面工具

N_m3u8DL-CLI-SimpleG:轻松下载在线视频的终极图形界面工具 【免费下载链接】N_m3u8DL-CLI-SimpleG N_m3u8DL-CLIs simple GUI 项目地址: https://gitcode.com/gh_mirrors/nm3/N_m3u8DL-CLI-SimpleG 想要快速下载网络上的M3U8格式视频吗?N_m3u8DL…...

SEO_资深专家揭秘长期稳定的SEO操作秘诀

SEO操作的长期稳定之道:资深专家揭秘 在当今数字化时代,搜索引擎优化(SEO)已经成为了企业在网络上获得流量和知名度的关键手段。无论是小型企业还是大型公司,都在竞争着在搜索结果中的高排名。很多人在进行SEO操作时&a…...

ChatGPT与国内大模型的技术差距解析:从架构到应用场景

ChatGPT与国内大模型的技术差距解析:从架构到应用场景 在评估大语言模型时,基准测试是衡量其综合能力的重要标尺。以MMLU(大规模多任务语言理解)和C-Eval(中文语言理解评估基准)为例,GPT-4在MM…...

工业现场组网指南:用Schneider BMXNOM0200模块实现PLC与SCADA系统的稳定通讯

工业现场组网实战:基于Schneider BMXNOM0200的PLC-SCADA高效通讯架构设计 在工业自动化领域,稳定可靠的通讯网络如同生产线的神经系统,承载着控制指令与实时数据的双向传输。作为Modicon M340系列PLC的核心通讯扩展模块,BMXNOM02…...

终极Klipper固件高级调试指南:从日志分析到性能优化的完整技术解析

终极Klipper固件高级调试指南:从日志分析到性能优化的完整技术解析 【免费下载链接】klipper Klipper is a 3d-printer firmware 项目地址: https://gitcode.com/GitHub_Trending/kl/klipper Klipper作为高性能3D打印机固件,其日志系统和调试工具…...

从零到一:用Nuxt3、Vue3和Ant Design Vue搭建现代化Web应用

从零到一:用Nuxt3、Vue3和Ant Design Vue搭建现代化Web应用 在当今快速发展的前端领域,选择合适的技术栈对于构建高性能、可维护的Web应用至关重要。Nuxt3作为Vue生态中最具前瞻性的框架之一,结合Vue3的Composition API和Ant Design Vue的丰富…...

STM32HAL 进阶实战(一):SysTick软定时器 —— 构建非阻塞式多任务调度框架

1. SysTick定时器的本质与优势 SysTick定时器是ARM Cortex-M内核自带的一个24位递减计数器,它就像是嵌入式系统里的"心跳"。我在实际项目中发现,很多初学者会把它和普通定时器混淆,其实SysTick最大的特点是与操作系统深度绑定——它…...

HunyuanVideo-Foley音效生成:支持多声道输出(5.1/7.1)与空间音频格式导出

HunyuanVideo-Foley音效生成:支持多声道输出(5.1/7.1)与空间音频格式导出 1. 产品概述 HunyuanVideo-Foley是一款专为影视后期制作设计的AI音效生成工具,基于RTX 4090D 24GB显存显卡深度优化,能够自动生成高质量的环…...

内容解锁革新:突破付费壁垒的5种高效资源获取方案

内容解锁革新:突破付费壁垒的5种高效资源获取方案 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的数字时代,优质内容的获取常常受到付费墙的限制。…...

MATLAB实战:5步搞定VSB调制解调(附完整代码+避坑指南)

MATLAB实战:5步实现VSB调制解调系统开发与性能优化 在数字通信系统设计中,残留边带调制(VSB)因其独特的频谱效率优势,成为广播电视和宽带通信的关键技术。本文将带您从零构建完整的VSB调制解调系统,通过MATLAB代码实现信号生成、频…...

3步解锁Zotero PDF Translate新可能:大模型翻译引擎接入实战指南

3步解锁Zotero PDF Translate新可能:大模型翻译引擎接入实战指南 【免费下载链接】zotero-pdf-translate 支持将PDF、EPub、网页内容、元数据、注释和笔记翻译为目标语言,并且兼容20多种翻译服务。 项目地址: https://gitcode.com/gh_mirrors/zo/zoter…...

3分钟极速汉化Figma:设计师必备的中文界面解决方案

3分钟极速汉化Figma:设计师必备的中文界面解决方案 【免费下载链接】figmaCN 中文 Figma 插件,设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN 还在为Figma的全英文界面而烦恼吗?FigmaCN插件为您提供专业级…...

图像处理入门避坑指南:从拨码开关识别项目复盘霍夫变换与二值化的那些坑

图像处理实战复盘:拨码开关识别中的霍夫变换与二值化优化策略 第一次用OpenCV完成课程大作业时,面对拨码开关状态识别的需求,我原以为调用几个现成的图像处理函数就能轻松搞定。直到实际调试时才发现,从边缘检测到二值化的每个环节…...

QML输入控件进阶:TextField(文本框)的样式定制与交互优化

1. TextField样式定制基础 在QML开发中,TextField作为最常用的文本输入控件,其默认样式往往难以满足现代UI设计的需求。我第一次用TextField做登录界面时,就被那个灰突突的方框打击到了 - 这完全配不上我们精心设计的界面风格啊!…...

经济学原理资源合集

ID:13136_1358高分系列电子书 文件大小: 5.0GB内容特色: 高分系列电子书合集适用人群: 爱书人、通勤阅读者核心价值: 一次打包口碑佳作,省时省钱下载链接: https://pan.quark.cn/s/ff0d5555013e 13887《经济学原理》 文件大小: 13.9GB内容特色: 高清扫…...

CiteSpace实战指南(三)——多源文献数据格式转换与预处理技巧

1. 多源文献数据格式转换的必要性 刚接触CiteSpace的新手常会遇到一个头疼问题:从不同数据库下载的文献数据格式五花八门,直接导入软件根本没法用。我刚开始用CNKI数据做分析时,就卡在这个环节整整两天。其实这是因为CiteSpace底层分析引擎是…...

告别参数调试困境:OrcaSlicer工艺参数决策系统3大方案提升打印成功率90%

告别参数调试困境:OrcaSlicer工艺参数决策系统3大方案提升打印成功率90% 【免费下载链接】OrcaSlicer G-code generator for 3D printers (Bambu, Prusa, Voron, VzBot, RatRig, Creality, etc.) 项目地址: https://gitcode.com/GitHub_Trending/orc/OrcaSlicer …...

虚拟机突然断电后卡在initramfs?试试这个xfs_repair修复命令(附详细步骤)

虚拟机异常断电后XFS文件系统修复实战指南 当你的Linux虚拟机遭遇突然断电,重启后卡在initramfs界面并提示generating /run/initramfs/rdsosreport.txt时,这通常意味着XFS文件系统出现了损坏。作为运维人员,掌握正确的修复方法不仅能快速恢复…...

Linux性能分析工具全解析与调优指南

Linux 性能分析工具全解析:从基础命令到高级调优1. 系统性能分析基础1.1 性能分析的核心指标系统性能分析主要关注四个关键维度:CPU利用率:用户态与内核态时间分配内存管理:物理内存与交换空间使用情况磁盘I/O:读写吞吐…...

QuPath生物图像分析进阶指南:从基础操作到材料科学应用

QuPath生物图像分析进阶指南:从基础操作到材料科学应用 【免费下载链接】qupath QuPath - Bioimage analysis & digital pathology 项目地址: https://gitcode.com/gh_mirrors/qu/qupath 一、认知阶段:理解QuPath核心价值与技术原理 1.1 认识…...

OFA VQA镜像效果对比:vs BLIP-2 vs LLaVA-1.5在英文VQA任务表现

OFA VQA镜像效果对比:vs BLIP-2 vs LLaVA-1.5在英文VQA任务表现 你是不是也好奇,现在这么多视觉问答模型,到底哪个最好用?是号称“大一统”的OFA,还是后起之秀BLIP-2,或者是开源社区的热门选手LLaVA-1.5&a…...

公开信息整理|2026年3月24日:成品油调控、高校专利转化、人形机器人半马与部分国际动态速览

🔥个人主页:杨利杰YJlio❄️个人专栏: 《Sysinternals实战教程》 《Windows PowerShell 实战》 《WINDOWS教程》 《IOS教程》 《微信助手》 《锤子助手》 《Python》 《Kali Linux》 《那些年未解决的Windows疑难杂症》 🌟 让复杂…...

Horos医疗影像处理系统:技术架构与临床应用全解析

Horos医疗影像处理系统:技术架构与临床应用全解析 【免费下载链接】horos Horos™ is a free, open source medical image viewer. The goal of the Horos Project is to develop a fully functional, 64-bit medical image viewer for OS X. Horos is based upon O…...