ipvsadm如何开始使用?,ipvsadm怎么安装

ipvsadm是Linux内核中IPVS模块的管理工具,用于配置四层负载均衡规则,是LVS(Linux Virtual Server)的核心组件,能在内核态直接转发数据包,性能远高于同场景下的用户态代理工具。

ipvsadm是什么:内核态负载均衡的核心工具

IPVS(IP Virtual Server)内置于Linux内核,工作在TCP/UDP协议栈层面,ipvsadm是它的命令行管理接口,负责增删改查虚拟服务器(VIP)、真实服务器(RS)以及调度策略,与Nginx、HAProxy等七层代理相比,ipvsadm不解析应用层协议,只做报文的转发和改写,因此吞吐量极高,响应延迟极低。

IPTV接线及配置
加载中
IPTV接线及配置

行业共识认为,在纯四层分发场景下,ipvsadm的转发性能远优于常规用户态软件,单机承载百万级并发连接是可行的,这也是为什么电商、直播、金融等对稳定性要求极高的业务,普遍采用“LVS(ipvsadm)+ Keepalived”作为入口负载均衡层。

ipvsadm命令详解与安装配置教程

安装与基础环境检查

大多数Linux发行版默认未安装ipvsadm,需要手动操作,以CentOS/RHEL系为例:

yum install -y ipvsadm

Debian/Ubuntu系使用:

apt install -y ipvsadm

安装完成后,先确认内核是否加载了IPVS相关模块:

lsmod | grep ip_vs

若没有输出,手动加载:

modprobe ip_vs
modprobe ip_vs_rr
modprobe ip_vs_wrr
modprobe ip_vs_sh

查看当前内核支持的调度算法:

cat /etc/haproxy/../ipvsadm -h

更直接的方式是执行ipvsadm不带参数,若显示空列表则说明运行正常。

核心命令参数速览

ipvsadm的参数体系不复杂,熟练后五分钟内即可完成一套完整的负载均衡配置,常用命令如下:

  • 添加虚拟服务器ipvsadm -A -t 192.168.1.100:80 -s rr
    • -A 表示新增,-t 指定TCP协议和VIP端口,-s 指定调度算法(rr为轮询)。
  • 添加真实服务器ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.11:80 -g
    • -a 追加真实服务器,-r 指定RS地址,-g 使用DR模式,-m 为NAT模式,-i 为TUN模式。
  • 删除规则ipvsadm -D -t 192.168.1.100:80 删除整条虚拟服务器规则,ipvsadm -d -t 192.168.1.100:80 -r 192.168.1.11:80 仅移除某台RS。
  • 查看当前配置ipvsadm -L -n 以数字形式显示规则和连接状态,ipvsadm -L --stats 查看流量统计,

    ipvsadm如何开始使用?,ipvsadm怎么安装

    ipvsadm -L --rate 查看速率统计。

  • 清空所有规则ipvsadm -C
  • 保存规则ipvsadm-save > /etc/sysconfig/ipvsadm
  • 恢复规则ipvsadm-restore < /etc/sysconfig/ipvsadm

一段完整的配置流程示例如下:

# 定义一个VIP为192.168.1.100的HTTP虚拟服务,使用加权轮询
ipvsadm -A -t 192.168.1.100:80 -s wrr
# 添加三台后端真实服务器,权重分别为1、2、3
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.11:80 -g -w 1
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.12:80 -g -w 2
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.13:80 -g -w 3
# 查看结果
ipvsadm -L -n

注意,DR模式下需要确保真实服务器的lo接口绑定VIP并关闭ARP响应,否则回包会异常。

ipvsadm调度算法选型指南

静态与动态算法对比

ipvsadm内置十种调度算法,分为两大类,静态算法不关心后端实时负载,纯按预设规则分发;动态算法会参考当前连接数,如下表所示:

算法 类型 核心逻辑 适用场景
rr 静态 轮询,平均分配 后端性能一致时
wrr 静态 加权轮询 后端性能差异明显
sh 静态 源地址哈希 需要会话保持
dh 静态 目标地址哈希 缓存集群
lc 动态 最少连接 长连接服务
wlc 动态 加权最少连接 最常用,默认推荐
lblc 动态 基于最少连接+源地址 兼具会话保持
lblcr 动态 带复制的lblc 缓存数据库场景
sed 动态 最少期望延迟 响应时间差异大
nq 动态 永不排队 快速响应场景

场景选择建议

HTTP短连接服务多数情况下使用wrrwlc即可,如果后端服务器配置参差不齐,wrr配合合理的权重比rr效果更可控。

数据库读写分离Redis集群这类长连接应用,建议使用lcwlc,避免连接数堆积在某一台机器上。

需要会话保持的Web应用,若不想引入额外的Cookie机制,sh按源IP哈希是最直接的做法,但要注意,当某台RS宕机时,哈希到该机器的用户会全部受影响,此时可配合后端Session共享解决。

ipvsadm如何开始使用?,ipvsadm怎么安装

业内专家指出,调度算法本身没有绝对优劣,关键看业务模型,选错算法导致的连接倾斜,往往比流量突增更容易拖垮后端。

ipvsadm常见问题与实战排查

连接数查看与超时调整

有段时间线上反馈某些请求特别慢,排查后发现是ipvsadm的TCP超时设置过短,导致长连接被内核提前回收,查看超时参数:

ipvsadm -L --timeout

默认输出类似:

Timeout (tcp tcpfin udp): 900 120 300

意思是TCP空闲连接900秒回收,TCP FIN_WAIT状态120秒回收,UDP 300秒回收,若业务层有心跳保活,可适当调大:

ipvsadm --set 3600 120 300

持久连接配置

部分场景需要同一源IP在固定时间内始终分发到同一台RS,即使调度算法是rr,ipvsadm通过-p参数实现:

ipvsadm -A -t 192.168.1.100:80 -s rr -p 600

-p 600表示持久连接超时600秒,该参数在需要记录用户登录态、且后端未做Session共享时非常有用。

规则不生效的排查路径

配置完成后访问VIP不通,建议按以下顺序排查:

  1. 确认内核转发开关sysctl net.ipv4.ip_forward 需为1。
  2. 确认防火墙放行:iptables/firewalld是否拦截了VIP的流量。
  3. 确认RS回包路由:DR模式下RS的lo是否绑定VIP,且ARP抑制是否配置正确。
  4. 确认RS端口健康:在后端本机执行curl 127.0.0.1:端口验证服务正常。
  5. 查看ipvsadm连接表ipvsadm -L -n --stats,若连接数持续增长但RS无流量,大概率是转发模式配置错误。

ipvsadm与nginx在负载均衡场景下的区别

两者常被放在一起比较,但定位完全不同,ipvsadm是内核态四层转发,nginx是用户态七层代理,具体差异如下:

  • 性能:ipvsadm直接在内核空间处理报文,避免了用户态与内核态之间的拷贝,单机吞吐量通常比nginx高一个数量级。
  • 功能:nginx能基于URL、Header、Cookie做精细化路由,ipvsadm只能基于IP和端口。
  • 健康检查:nginx自带丰富的后端健康检查机制,ipvsadm本身不具备该能力,需要依赖Keepalived或第三方脚本实现。
  • 数据修改:nginx可以在转发时改写请求头、压缩响应,ipvsadm对报文内容不做任何修改。

实际架构中,两者通常不是替代关系而是配合关系,客户端流量先经过ipvsadm分发到多台nginx,再由nginx完成七层路由转发到后端应用集群,这种组合兼顾了四层的高性能和七层的灵活性。

ipvsadm如何开始使用?,ipvsadm怎么安装

ipvsadm的keepalived高可用配置要点

单台LVS调度器本身存在单点故障风险,生产环境必须搭配Keepalived实现主备切换,配置核心思路是:主备节点共享一个VIP,Keepalived通过VRRP协议检测对方存活,主节点故障时VIP自动漂移到备节点。

关键配置项包括:

  • virtual_ipaddress:指定VIP地址,需与ipvsadm中配置的VIP一致。
  • virtual_server 块内定义RS列表和调度算法,Keepalived会自动调用ipvsadm生成规则,无需手动执行ipvsadm -A
  • real_server 块内可配置HTTP_GETTCP_CHECK健康检查,这样后端RS宕机时,Keepalived会自动将其从ipvsadm规则中摘除。

一个简化的TCP健康检查配置示例:

virtual_server 192.168.1.100 80 {
    delay_loop 6
    lb_algo wrr
    lb_kind DR
    protocol TCP
    real_server 192.168.1.11 80 {
        weight 1
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

注意,Keepalived接管后,不要再手动执行ipvsadm命令修改规则,否则主备切换时配置可能被覆盖。

关于ipvsadm调度算法和conntrack关联的常见问题解答

问题:ipvsadm如何查看当前活跃连接数?

执行ipvsadm -L -n --stats可以查看每台RS的活跃连接数(ActiveConn)和非活跃连接数(InactConn),活跃连接指当前正在传输数据的连接,非活跃连接指已建立但空闲的连接,若InactConn持续偏高,说明后端应用处理完请求后未及时关闭连接,需检查应用层的连接池设置。

问题:ipvsadm在华为云和简米云这类云环境上能用吗?

云厂商的负载均衡产品(如简米云SLB、华为云ELB)底层也基于类似LVS的技术实现,但普通云服务器默认禁用了IPVS模块的某些操作权限,若坚持自建,需确认云安全组是否放行VIP流量,且云服务器的网卡是否支持绑定辅助私网IP,多数情况下,云平台自带的负载均衡服务比自建ipvsadm更省心,因为其健康检查、弹性伸缩和DDoS防护能力是开箱即用的。

问题:ipvsadm规则重启后丢失怎么办?

使用ipvsadm-save > /etc/sysconfig/ipvsadm保存规则,并在系统服务中启用ipvsadm自启动,以systemd为例,执行systemctl enable ipvsadm即可,若分发规则完全由Keepalived管理,则无需手动保存,Keepalived启动时会自动重建虚拟服务器和RS列表。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/556841.html

(0)
if函数在Excel中是什么意思,具体怎么用
上一篇 2026年8月8日 13:28
IIS部署安装的具体步骤是什么,有哪些注意事项
下一篇 2026年8月8日 13:30

相关推荐

  • 服务器按时租赁靠谱吗?云服务器按小时计费

    服务器按时租赁的核心优势在于灵活性与成本可控,适合业务波动大或处于测试阶段的用户,通过按需付费模式,您只需为实际使用的计算资源买单,无需承担长期闲置的沉没成本,为什么选择按时租赁而非包年包月?在云计算市场日益成熟的今天,传统的包年包月模式虽然单价看似更低,但对于许多中小企业、初创团队以及临时性项目来说,这种“一……

    2026年7月7日
    15900
  • 国内服务器哪个品牌好?国内知名服务器品牌排行

    国内知名服务器品牌在稳定性、售后响应速度及合规性上已形成明确梯队,企业选型时应优先考量华为、浪潮、新华三及联想,具体选择需依据业务负载类型与预算规模进行匹配,服务器作为数字基础设施的核心载体,其性能表现直接决定了企业业务的连续性,对于国内用户而言,选择本土知名品牌不仅意味着更低的延迟和更优的本地化服务,更关乎数……

    2026年7月6日
    18600
  • idc分销系统分销设置如何配置,有哪些注意事项?

    IDC分销系统的核心在于分销设置,它直接决定了资源利用率、代理商留存率和最终盈利水平,合理的策略并非简单放权,而是通过精细化规则实现自动化管理与风险控制,idc分销系统分销设置怎么做才合理——核心要点拆解很多新手拿到分销系统后,第一反应就是先把给下游的折扣拉满,希望用低价吸引代理,这种做法在初期或许能带来几个客……

    2026年8月6日
    100
  • IC方案监控电源POE电源异常如何解决?,是什么原因

    ALM-303046672 POE电源异常告警意味着设备上的POE供电模块检测到异常状态,常见原因为电源模块故障、功率过载或温度过高,需按告警级别分级处理,核心操作是优先保障业务端口供电并尽快更换故障电源模块,ALM-303046672 POE电源异常怎么处理:先分清告警级别POE供电异常在实际组网中并不少见……

    2026年8月8日
    100
  • 服务器IP真的可以买吗,哪里能买到干净的服务器IP?

    服务器IP可以买吗”的深度解析简单直接的回答是:可以,但你购买的本质通常是“使用权(租用)”而非“所有权”,在互联网基础设施领域,IP地址(尤其是IPv4)是稀缺资源,普通用户和企业通过不同方式获取IP,其逻辑和成本大不相同, 常见的“购买”方式根据你的需求深度,获取IP的方式主要分为以下三种:随云服务器/VP……

    2026年7月14日
    1200
  • flash网站制作怎么做?flash网站制作教程

    Flash 网站制作”,首先需要明确一个极其重要的技术现状:Adobe Flash Player 已于 2020 年 12 月 31 日正式停止支持,所有主流浏览器(Chrome, Firefox, Edge, Safari 等)均已禁用 Flash 插件,现在制作新的网站,绝对不应该使用 Flash (.sw……

    2026年7月10日
    16600
  • 发会员提醒短信的便宜系统哪家好?,多少钱?

    发会员提醒短信的便宜系统,核心在于选择按量付费的云短信平台,这样就能在控制成本的同时保证发送效率,适合大多数中小型业务,发会员提醒短信的便宜系统怎么选?关注价格模式:按量付费 vs 包月套餐选择发会员提醒短信的便宜系统,价格模式是首要考量,按量付费模式没有固定成本,你只需为发送的短信付费,适合发送量波动大的业务……

    2026年7月28日
    200
  • 负载均衡服务等级协议是什么?SLA保障机制详解

    负载均衡服务等级协议(SLA)的核心在于承诺可用性、性能指标及违约赔偿,选择时需重点对比不同云厂商在跨区域容灾、故障恢复时间及赔付比例上的具体条款,在云计算的生态系统中,负载均衡(Load Balancer, SLB)就像交通指挥塔,决定了流量能否顺畅抵达后端服务器,对于企业而言,SLA不仅仅是一纸合同,更是业……

    2026年7月9日
    5800
  • IIS FTP服务器如何快速构建FTP站点?,怎么设置

    在Windows Server 2019上通过IIS快速构建FTP站点,无需第三方工具,仅需安装IIS的FTP服务并完成基础配置,即可实现稳定、安全的文件共享,IIS FTP服务器搭建教程:Windows 2019环境准备搭建之前,先确认系统补丁已更新,IIS的FTP组件作为Windows Server 201……

    2026年8月3日
    400
  • io域名要求_Cache/IO

    .io域名注册要求主要集中在实名认证和合规使用上,而Cache/IO(缓存与输入输出)配置直接关系到网站访问速度和稳定性,是注册后必须优化的关键环节,io域名注册要求与实名认证规则注册.io域名并不复杂,但国内用户需要特别注意实名认证环节,大多数主流注册商都支持个人或企业直接注册,不限制国籍和地域,如果通过国内……

    2026年8月6日
    000

发表回复

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