0

0

Linux LVS 高可用负载均衡部署

冷漠man

冷漠man

发布时间:2026-03-01 12:59:02

|

139人浏览过

|

来源于php中文网

原创

需配置ipvs模块、keepalived实现vip漂移、lvs转发规则、rs的arp抑制与回环绑定,并启动服务验证。具体包括启用ip_forward、加载ip_vs模块、安装keepalived、主备节点差异化配置vrrp、定义virtual_server调度策略、rs绑定vip至lo并调优arp参数、启服务后用ipvsadm和curl验证高可用性。

linux lvs 高可用负载均衡部署

如果您需要在Linux环境中构建高可用的LVS负载均衡系统,则需同时配置IPVS内核模块、Keepalived服务以及后端真实服务器的健康检查与会话同步机制。以下是完成该部署的具体步骤:

一、配置主备LVS节点的内核参数与IPVS模块

为确保LVS正常转发数据包,必须启用路由转发功能并加载IPVS相关内核模块。主备节点均需执行以下操作以提供基础转发能力。

1、编辑/etc/sysctl.conf文件,添加以下两行:

net.ipv4.ip_forward = 1

net.ipv4.vs.conntrack = 0

2、执行sysctl -p命令使配置立即生效。

3、运行modprobe ip_vs命令加载IPVS核心模块。

4、运行modprobe ip_vs_rr、modprobe ip_vs_wrr、modprobe ip_vs_sh命令加载调度算法模块。

5、执行lsmod | grep ip_vs验证所有模块已成功加载。

二、安装并配置Keepalived实现VIP漂移

Keepalived通过VRRP协议协调主备节点对虚拟IP(VIP)的控制权,避免单点故障。主节点优先级更高,故障时VIP自动迁移至备用节点。

1、在主备节点均执行yum install -y keepalived(CentOS)或apt install -y keepalived(Ubuntu)。

2、备份原配置文件:cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak。

3、主节点配置中设置state MASTER、priority 100,并指定virtual_ipaddress段包含VIP及子网掩码。

4、备节点配置中设置state BACKUP、priority 90,其余virtual_ipaddress保持一致。

5、在vrrp_instance块内添加nopreempt选项(仅主节点需注释该行),确保主恢复后不强制抢占。

三、定义LVS转发规则并绑定Real Server

通过Keepalived的virtual_server段定义LVS集群服务,包括VIP端口、调度算法、健康检查方式及后端RS地址,使流量按策略分发。

1、在keepalived.conf的vrrp_instance下方新增virtual_server配置块,格式为virtual_server 192.168.1.100 80。

开源电子商务系统(网店) iWebShop
开源电子商务系统(网店) iWebShop

iWebShop基于iWebSI框架开发,在获得iWebSI技术平台库支持的条件下,iWebShop可以轻松满足用户量级百万至千万级的大型电子商务网站的性能要求。站点的集群与分布式技术(分布式计算与存储/高可用性/负载均衡)被屏蔽在SI 平台之内,基于iWebShop并且按照SI平台库扩展规范开发的新增功能模块,也将同时获得这种超级计算与处理的能力。作为开源的LAMP电子商务系统,iWebShop

下载

2、设置delay_loop 6指定健康检查间隔为6秒。

3、设置lb_algo rr指定轮询调度算法,lb_kind DR指定直接路由模式。

4、设置persistence_timeout 300启用连接保持时间,保障同一客户端请求持续由同一RS处理。

5、为每个Real Server添加real_server子块,包含其IP、权重及TCP检查参数(如connect_port 80、connect_timeout 3)。

四、配置Real Server的ARP抑制与回环接口

在DR模式下,Real Server必须响应VIP的ARP请求但不能对外宣告VIP,否则会导致网络冲突。需禁用VIP所在接口的ARP响应并绑定VIP到lo接口。

1、在每台Real Server上执行ip addr add 192.168.1.100/32 dev lo指令将VIP绑定至本地回环。

2、执行echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore指令设置仅响应目标为本机lo接口的ARP请求。

3、执行echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce指令限制ARP通告仅使用匹配的源地址。

4、执行echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore和echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce确保全局生效。

5、将上述命令写入/etc/rc.local或systemd服务,保证重启后持续生效。

五、启动服务并验证LVS转发状态

所有组件配置完成后,需依次启动Keepalived服务并确认VIP绑定、RS在线状态及实际流量分发效果,确保高可用链路完整建立。

1、在主节点执行systemctl start keepalived && systemctl enable keepalived。

2、在备节点执行相同命令启动服务,此时VIP应仅出现在主节点的ip addr输出中。

3、在主节点执行ipvsadm -Ln查看当前LVS规则,确认virtual server条目及activeconn数值非零。

4、在任意客户端向VIP发起curl http://192.168.1.100请求,观察返回内容是否来自不同RS。

5、手动停止主节点keepalived服务,等待约10秒后在备节点执行ip addr检查VIP是否已迁移,且ipvsadm -Ln仍显示有效规则。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

452

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

183

2023.10.30

硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

1708

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

549

2025.10.17

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2329

2025.12.29

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

42

2026.01.19

页面置换算法
页面置换算法

页面置换算法是操作系统中用来决定在内存中哪些页面应该被换出以便为新的页面提供空间的算法。本专题为大家提供页面置换算法的相关文章,大家可以免费体验。

483

2023.08.14

http500解决方法
http500解决方法

http500解决方法有检查服务器日志、检查代码错误、检查服务器配置、检查文件和目录权限、检查资源不足、更新软件版本、重启服务器或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

482

2023.11.09

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

6

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9.9万人学习

Git 教程
Git 教程

共21课时 | 3.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号