LVS在两台服务器上怎么安装,负载均衡怎么配置

两台服务器装LVS,最省事的做法是让一台当调度器(Director)、另一台当真实服务器(RealServer),用DR模式先跑通流量;如果业务不能断,再在这两台机器上各装一个Keepalived做双机热备,两台互为备份。软件层面不花钱,ipvsadm 加 keepalived 两个包就够,真正的门槛在网卡参数和VIP处理上。

两台服务器LVS安装前先想清楚分工

很多人一上手就敲 yum install,结果装完发现两台机器谁都不肯接流量,问题不在软件,在架构,LVS本质是四层转发器,它自己不处理业务,所以两台服务器的角色必须先定死。

Linux懒人运维:lvs负载均衡搭建和部署
加载中
Linux懒人运维:lvs负载均衡搭建和部署

三种常见分工方式

  • 一台Director + 一台RS:最典型的两台起步方案,调度器只转发,业务全部压在后端,适合先验证连通性,但后端只有一台,没有负载可言。
  • 两台都做RS,其中一台兼任Director:LVS支持把VIP和业务绑在同一台机器上,小流量场景能省一台设备,代价是调度器一挂业务也跟着挂。
  • 两台都做Director,互为主备,RS放在别处:这是生产环境的常规形态,如果你手上真的只有两台,可以先把业务跑在备用机上,等第三台到位再横向扩。

业内专家指出,两台服务器部署LVS更多是验证和过渡,真正承载生产流量时,通常建议调度层至少2台、后端至少2台,形成最小可用集群。

系统与内核要确认的三件事

  1. 内核是否带IPVS模块,主流的 CentOS 7/8、Rocky、Ubuntu 20.04 以上内核都已内置,用 lsmod | grep ip_vs 看一眼,没加载就 modprobe ip_vs。
  2. 两台机器是否同网段,DR模式要求调度器和真实服务器在同一广播域,跨网段只能走NAT或TUN。
  3. VIP选哪个地址,VIP不能和任何一台机器的物理IP重复,否则ARP会打架。

两台服务器LVS-DR模式怎么配置

DR模式是两台服务器场景下最推荐的,因为它只改写目的MAC、不改IP包内容,真实服务器直接把响应回给客户端,调度器压力小。

第一步:装软件包

CentOS/Rocky 系:

yum install -y ipvsadm keepalived
systemctl enable --now keepalived

Ubuntu/Debian 系:

apt update && apt install -y ipvsadm keepalived

ipvsadm 是规则管理工具,keepalived 负责健康检查和VIP漂移,只装 ipvsadm 也能跑,但规则重启即丢,没人帮你做故障切换。

第二步:真实服务器上的ARP抑制

这一步是整个DR模式最容易翻车的地方,真实服务器必须“闭嘴”,不能对外宣称自己拥有VIP,否则客户端的请求会被它直接抢走。

cat >> /etc/sysctl.conf <<EOF
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
EOF
sysctl -p

接着把VIP绑到回环口,子网掩码必须写 255.255.255:

ip addr add 192.168.10.100/32 dev lo

顺便确认业务端口在监听:ss -lntp | grep 80。

第三步:调度器上加转发规则

ipvsadm -A -t 192.168.10.100:80 -s wrr
ipvsadm -a -t 192.168.10.100:80 -r 192.168.10.12:80 -g
ipvsadm -Ln

-g 表示DR模式,-s wrr 是加权轮询,两台机器调试阶段后端只有一台,先用 rr 也能验证通不通。

第四步:调度器上把VIP加上

ip addr add 192.168.10.100/24 dev eth0

然后从客户端 curl http://192.168.10.100,能返回后端页面就说明转发链路成立,如果超时,八成是真实服务器上的ARP参数没生效,或者VIP掩码写成了24位。

LVS和Nginx做负载均衡哪个适合两台服务器

这是搜索量很高的对比问题,两者不冲突,甚至经常一起用,但定位完全不同。

对比项 LVS Nginx
工作层次 四层(TCP/UDP) 七层(HTTP/HTTPS)
吞吐能力 强,内核态转发 中,用户态处理
规则灵活度 按IP端口转发,看不懂URL 可按域名、路径、Header分流
证书卸载 不支持 支持
配置难度 偏底层,要懂网络 配置文件直观
适合场景 大流量入口、数据库代理 网站入口、API网关

行业共识认为,两台服务器规模不大时,直接上Nginx做反向代理更省心;只有当单机连接数成为瓶颈、或者需要代理非HTTP协议时,LVS的价值才明显,实际部署中常见组合是:LVS在最前面做四层入口,后面挂两台Nginx做七层分发。

让LVS不宕机:Keepalived双机热备

两台服务器都装LVS时,Keepalived负责两件事:一是定时探测后端端口,挂了就摘掉;二是主备之间靠VRRP协议抢VIP。

keepalived.conf 的核心骨架

主调度器 /etc/keepalived/keepalived.conf:

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass lvs2026
    }
    virtual_ipaddress {
        192.168.10.100/24
    }
}
virtual_server 192.168.10.100 80 {
    delay_loop 6
    lb_algo wrr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
    real_server 192.168.10.12 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

备用机把 state 改成 BACKUP、priority 调成 90,其余保持一致,防火墙记得放行VRRP协议,firewall-cmd --add-protocol=vrrp --permanent 或直接开 ip protocol 112。

验证漂移是否真的生效

在主调度器上执行 systemctl stop keepalived,然后在备用机 ip addr | grep 192.168.10.100,能看到VIP出现即为成功,再把主节点拉起,它会按优先级把VIP抢回来,这一步必须做,不做等于没配。

简米云两台ECS装LVS要额外买负载均衡吗

这是云上用户问得最多的问题,答案是:技术上不需要,LVS装在ECS里就能跑,软件零成本;但你要接受几个现实约束。

云上部署的三个额外注意点

  • VIP不属于你的VPC,云平台不认你随便填的私网IP,必须用辅助私网IP功能申请一个弹性网卡地址,再绑到实例上。
  • 后端回包路径,DR模式要求真实服务器和客户端路由可达,云上安全组如果不放行,回包会被丢,TCP_CHECK 探活通过但业务不通,多半卡在这里。
  • 成本对比,自建LVS只花ECS和带宽的钱,一台入门规格月付几十到上百元不等;托管负载均衡按实例规格和流量计费,通常需要额外支出,但免去运维和故障排查,近年来的普遍做法是:日活不高、团队有运维能力就自建,业务波动大、不想半夜接告警就买托管。

上线前必须过的验证清单

  • ipvsadm -Ln 能看到virtual server和real server,状态不是 InAct
  • 后端机器 ss -lntp 端口在听,本机 curl 127.0.0.1:80 正常
  • 调度器 ipvsadm -Lnc 能看到ESTABLISHED连接
  • 停掉后端一次,看连接是否按预期被剔除、恢复后是否自动加回
  • 主备切换演练至少做一轮,记录切换耗时

关于两台服务器安装LVS的常见问答

两台服务器装LVS,必须用DR模式吗?

不是必须,但最推荐,NAT模式要调度器做地址转换,回包全部经过它,两台机器时调度器很容易成为瓶颈;TUN模式需要后端支持IP隧道,配置更重,同网段的两台机器用DR,配置少、性能好。

装完LVS后客户端访问VIP超时,先查什么?

按顺序查三处:真实服务器上的 arp_ignore/arp_announce 是否真写进了内核参数并 sysctl -p 生效;VIP是否绑在 lo 上且掩码为 /32;调度器上的转发规则是否带了 -g 参数,三类原因能覆盖绝大多数超时案例。

两台服务器能不能都当调度器又都跑业务?

可以,LVS允许VIP和真实服务共存于同一台机器,两台互为主备时也能各自承载业务,但这样一旦某台宕机,调度和业务会同时丢失一半容量,所以只适合内部系统或测试环境,不适合对外生产。

两台服务器装LVS的核心不是命令多难,而是角色划分、ARP抑制和VIP归属这三件事想清楚;把DR模式跑通、Keepalived切换验证完,剩下的就是按业务量逐步扩后端。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/lvs%e5%9c%a8%e4%b8%a4%e5%8f%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e4%b8%8a%e6%80%8e%e4%b9%88%e5%ae%89%e8%a3%85%ef%bc%8c%e8%b4%9f%e8%bd%bd%e5%9d%87%e8%a1%a1%e6%80%8e%e4%b9%88%e9%85%8d%e7%bd%ae/

赞 (0)
上一篇 2026年10月21日 15:10
下一篇 2026年10月21日 15:11

相关推荐

  • cf进游戏后连接服务器失败怎么办,是什么原因导致的?

    CF进游戏后连接服务器失败,先别急着重装游戏,按照网络排查、服务器状态、游戏文件、系统环境的顺序依次检查,多数情况都能解决,最快的修复方法是用官方修复工具配合重置网络,排查根因前先看这两种最常见情况CF进游戏后连接服务器失败,主要分两类,一类是大厅能进,选频道或进房间时报错,另一类是登录时直接卡在连接服务器界面……

    2026年8月27日
    1200
  • 什么是分布式缓存机制,分布式缓存如何实现高可用性?

    分布式缓存机制通过将高频访问数据存储在内存集群中,有效缓解了数据库的I/O压力,是构建高可用、高性能分布式系统的核心组件,Redis与Memcached的区别与选择在构建缓存层时,开发者面临的首要问题是如何在 Redis 和 Memcached 之间做出决策,虽然两者都属于内存数据库,但在数据结构支持、持久化能……

    2026年7月14日
    1900
  • 如何构建亿级搜索elasticsearch?elasticsearch集群搭建教程

    构建亿级Elasticsearch集群的核心在于分片策略优化、硬件资源隔离与自动化运维体系,而非单纯堆砌服务器数量,当数据量突破亿级大关时,传统的单机或小型集群架构往往会遭遇性能瓶颈,表现为查询延迟飙升、写入阻塞甚至节点宕机,对于正在经历业务爆发式增长的技术团队而言,如何平稳过渡到亿级搜索能力,是决定产品体验的……

    程序编程 2026年5月25日
    3800
  • 电脑打开hyper-v怎么连接服务器,具体操作步骤是什么?

    用电脑打开Hyper-V管理器,在左侧列表中右键点击“Hyper-V管理器”节点并选择“连接到服务器”,输入目标服务器的IP地址或主机名即可完成连接,Hyper-V连接到服务器前的准备工作在实际动手连接之前,有几项配置需要提前确认,很多朋友卡在这一步,不是操作不会,而是前置条件没满足,下面按优先级列出检查清单……

    程序编程 2026年10月22日
    100
  • AIoT如何与教育结合?AIoT在教育领域的应用案例

    AIoT通过物联网设备与人工智能算法的深度耦合,正在将传统教室升级为具备感知、分析、决策能力的智能教育空间,实现从“标准化教学”向“个性化育人”的根本性转变,想象一下,当学生走进教室的那一刻,灯光自动调节到最护眼的亮度,空调根据室内人数调整温度,而老师的讲台则实时显示着每位学生的专注度曲线和知识掌握盲区,这不再……

    2026年6月13日
    4600
  • GTA5线上模式怎么又一直连接不了服务器,是什么原因?

    GTA5线上模式一直连接不了服务器,多数情况下是由网络连接不稳定、R星服务器故障或平台验证问题导致的,按照以下步骤逐一排查,通常能解决绝大部分连接问题,gta5线上模式一直连接不了服务器?先检查网络网络环境是导致连接失败的首要因素,国内玩家在玩GTA5线上模式时,由于服务器位于海外,容易受到延迟、丢包和DNS解……

    2026年7月31日
    3300
  • CSTSERVER云服务器CN2线路低至$1.25/月是真的吗?云服务器租用推荐

    在2026年的云计算市场中,CSTSERVER凭借CN2优化线路和极具竞争力的价格策略,成为追求低延迟、高稳定性海外业务的首选方案,其裸金属服务器与云服务器的组合拳能有效解决跨国访问卡顿痛点,随着全球数字化进程的深入,企业对网络基础设施的要求已从单纯的“可用”转向“好用”与“极速”,特别是在跨境电商、游戏出海以……

    2026年7月5日
    11410
  • aspx里面加什么内容?aspx文件如何添加特定功能或代码?

    在ASP.NET Web Forms开发中,“aspx里面加”指的是在.aspx页面文件中添加各种元素、控件、代码或资源引用,以实现页面的功能、样式和交互,这是构建Web应用程序界面的核心环节,准确地说,“aspx里面加”的核心在于利用ASP.NET提供的声明性语法和服务器控件模型,在页面标记中高效地集成HTM……

    2026年2月3日
    14100
  • win10 wifi服务器失败咋回事,无线网络连不上怎么办?

    win10连WiFi提示“服务器失败”,九成情况不是服务器真挂了,而是系统网络配置或驱动握手出错,按本文顺序排查,多数人能自助解决,你的笔记本电脑右下角WiFi图标突然变成黄色感叹号,点开一看写着一句“服务器失败”,别着急,这不是你家的宽带欠费,也不是电信机房炸了,而是你的Windows 10和路由器之间“话没……

    2026年10月11日
    100
  • 服务器ecc内存价格是多少?服务器ecc内存报价清单

    当前服务器ECC内存价格正处于技术迭代与市场供需双重作用的波动期,整体价格走势趋于平民化,但高性能规格产品依然保持高溢价,对于企业采购决策者而言,最核心的结论是:不应仅关注单条内存的绝对低价,而应综合考量“纠错成本”与“业务停机风险”的性价比平衡, 在DDR4与DDR5世代交替的节点,选择具备高可靠性的ECC内……

    2026年4月4日
    15500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注