ipvsadm 用法

本文详细介绍了ipvsadm命令的使用方法及各项参数含义。包括如何添加、编辑、删除虚拟服务,以及如何管理真实服务器等操作。此外还介绍了连接同步守护程序的启动与停止方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[root @ localhost ipvsadm]#ipvsadm -h
ipvsadm v1.24 2005/12/10(用popt和IPVS v1.2.1编译)
用法:
ipvsadm -A | E -t | u | f服务地址[-s调度程序] [-p [超时]] [-M网络掩码]
ipvsadm -D -t | u | f服务地址
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a | e -t | u | f服务地址-r服务器地址[options]
ipvsadm -d -t | u | f服务地址-r服务器地址
ipvsadm -L | l [options]
ipvsadm -Z [-t | u | f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface] [--syncid sid]
ipvsadm --stop-daemon状态
ipvsadm -h

命令:
允许长或短选项。
--add-service -A添加具有选项的虚拟服务
--edit-service -E使用选项编辑虚拟服务
--delete-service -D删除虚拟服务
--clear -C清除整个表
--restore -R从stdin恢复规则
--save -S将规则保存到stdout
--add-server -a添加带有选项的实服务器
--edit-server -e编辑带有选项的实服务器
--delete-server -d删除真实服务器
--list -L | -l列出表
--zero -Z零计数器在服务或所有服务
--set tcp tcpfin udp设置连接超时值
--start-daemon启动连接同步守护程序
--stop-daemon停止连接同步守护程序
--help -h显示此帮助消息

选项:
--tcp-service -t service-address service-address是host [:port]
--udp-service -u service-address service-address是host [:port]
--fwmark-service -f fwmark fwmark是一个大于零的整数
--scheduler -s调度程序rr | wrr | lc | wlc | lblc | lblcr | dh | sh | sed | nq,
默认调度程序是wlc。
--persistent -p [timeout]持久服务
--netmask -M netmask持久粒度掩码
--real-server -r服务器地址服务器地址是主机(和端口)
--gatewaying -g网关(直接路由)(默认)
--ipip -i ipip encapsulation(tunneling)
--masquerading -m伪装(NAT)
--weight -w实服务器的权重
--u-threshold -x连接的阈值上限阈值
--l-threshold -y lthreshold连接的下限阈值
--mcast-interface接口用于连接同步的组播接口
--syncid sid syncid用于连接同步(默认值= 255)
--connection -c当前IPVS连接的输出

  • 超时输出超时(tcp tcpfin udp)
    --daemon输出守护进程信息
  • 统计信息的统计输出
  • 速率信息的速率输出
    --exact展开数字(显示精确值)
  • 阈值输出阈值信息
    --persistent-conn输出持久连接信息
  • 服务/服务器条目的排序输出
    --numeric -n地址和端口的数字输出

--add-service -A添加具有选项的虚拟服务
在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器
--edit-service -E使用选项编辑虚拟服务
编辑内核虚拟服务器
--delete-service -D删除虚拟服务
删除内核虚拟服务器表中的一条虚拟服务器记录
--clear -C清除整个表
清除内核虚拟服务器表中的所有记录
--restore -R从stdin恢复规则
恢复虚拟服务器规则
--save -S将规则保存到stdout
保存虚拟服务器规则,输出为-R选项可读的格式
--add-server -a添加带有选项的实服务器
在内核虚拟服务器表的一条记录里添加一条新的真实服务器
--edit-server -e编辑带有选项的实服务器
编辑一条虚拟服务器记录中的某条真实服务器记录
--delete-server -d删除真实服务器
删除一条虚拟服务器记录中的某条真实服务器记录
--list -L | -l列出表
显示内核虚拟服务器表
--zero -Z零计数器在服务或所有服务
虚拟服务表计数器清零
--set tcp tcpfin udp设置连接超时值
设置连接超时值
--start-daemon启动连接同步守护程序
启动同步守护进程。他后面可以是主或备份,用来说明LVS路由器是主或备份。在这个功能上也可以采用keepalived的VRRP功能。
--stop-daemon停止连接同步守护程序
停止同步守护进程
--help -h显示此帮助消息
显示帮助信息

选项:

--tcp-service -t service-address service-address是host [:port]
说明虚拟服务器提供的是tcp的服务[vip:port]或[real-server-ip:port]
--udp-service -u service-address service-address是host [:port]
说明虚拟服务器提供的是udp的服务[vip:port]或[real-server-ip:port]
--fwmark-service -f fwmark fwmark是一个大于零的整数
说明是经过iptables标记过的服务类型。
--scheduler -s调度程序rr | wrr | lc | wlc | lblc | lblcr | dh | sh | sed | nq之一,默认调度程序是wlc。
使用的调度算法,有这样几个选项,默认的调度算法是:wlc。
--persistent -p [timeout]持久服务
持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理.timeout的默认值为300秒
--netmask -M netmask持久粒度掩码

--real-server -r服务器地址服务器地址是主机(和端口)
真实的服务器[Real-Server:port]
--gatewaying -g网关(直接路由)(默认)
指LVS的工作模式为直接路由模式(也称LVS默认的模式
--ipip -i ipip encapsulation(tunneling)
指定LVS的工作模式为隧道模式
--masquerading -m伪装(NAT)
指定LVS的工作模式为NAT模式
--weight -w实服务器的权重
真实服务器的权值
--u-threshold -x连接的阈值上限阈值

--l-threshold -y lthreshold连接的下限阈值

--mcast-interface接口用于连接同步的组播接口
指定组播的同步接口
--syncid sid syncid用于连接同步(默认值= 255)

--connection -c当前IPVS连接的输出
显示LVS目前的连接如:ipvsadm -L -c

  • 超时输出超时(tcp tcpfin udp)
    显示tcp tcpfin udp的超时值如:ipvsadm -L --timeout
    --daemon输出守护进程信息
    显示同步守护进程状态
  • 统计信息的统计输出
    显示统计信息
  • 速率信息的速率输出
    显示速率信息
  • 阈值输出阈值信息

    --persistent-conn输出持久连接信息

  • 服务/服务器条目的排序输出
    对虚拟服务器和真实服务器排序输出
    --ops -O单分组调度

    --numeric -n地址和端口的数字输出
    输出IP地址和端口的数字形式

停止同步守护进程-h -help帮助显示信息其他的选项对话:-t -tcp-service服务地址说明虚拟服务器提供的是TCP的服务[VIP:端口]或[实时服务器IP:端口] -u -udp-service服务地址说明虚拟服务器提供的是UDP的服务[VIP:端口]或[实时服务器IP:端口] -f -fwmark服务fwmark说明是经过iptables的 。标记过的服务类型-s -scheduler scheduler使用的调度算法,有这样几个选项rr | wrr | lc | wlc | lblc | lblcr | dh | sh | sed | nq,默认的调度算法是:wlc。-p -persistent [超时]持久稳固的服务。选项对话这个意思的的英文来自同一个客户的多次请求,将被同一台真实的服务器处理.timeout的默认值为300秒。-M -netmask子网掩码持续粒度掩码-r-real-server server-address真实的服务器[Real-Server:

-numeric -n输出IP地址和端口的数字形式

--stat选项是统计自那条转发规则生效以来的包
Conns(connections scheduled)已经转发过的连接数
InPkts(incoming packets)入包个数
OutPkts(outgoing packets)出包个数

  1. InBytes(传入字节)入流量(字节)
  2. OutBytes(outgoing bytes)出流量(字节)

--rate选项是显示速率信息
CPS(current connection rate)每秒连接数

  1. InPPS(当前包速率)每秒的入包个数
    OutPPS(当前输出包速率)每秒的出包个数
  2. InBPS(字节速率)每秒入流量(字节)
  3. OutBPS(current out byte rate)每秒入流量(字节)

转载于:https://blog.51cto.com/13773584/2134339

### IPVSADM 使用指南 `ipvsadm` 是用于管理配置 Linux 虚拟服务器(LVS)的工具,支持多种负载均衡算法转发方法。以下是 `ipvsadm` 的基本命令结构及其常见用途: #### 基本语法 ```bash ipvsadm [-A|-E|-D] [-t|u|f] {service-address} [-s scheduler] ... ``` - `-A`: 添加虚拟服务。 - `-E`: 修改现有虚拟服务。 - `-D`: 删除虚拟服务。 #### 创建虚拟服务 创建一个 TCP 类型的服务并指定调度算法: ```bash ipvsadm -A -t 192.168.1.1:80 -s rr ``` 此命令添加了一个监听地址为 `192.168.1.1` 端口为 `80` 的 TCP 虚拟服务,使用轮询(Round Robin, RR)作为调度算法[^1]。 #### 添加真实服务器 向虚拟服务添加后端的真实服务器,并设置权重: ```bash ipvsadm -a -t 192.168.1.1:80 -r 192.168.1.2:80 -m -w 1 ``` 该命令将真实服务器 `192.168.1.2:80` 添加到虚拟服务中,采用 NAT 模式的流量转发方式 (`-m`) 并赋予其权重值为 `1`[^1]。 #### 列出当前配置 查看现有的虚拟服务及其实例列表: ```bash ipvsadm -Ln ``` 通过此命令可以清晰地看到所有的虚拟服务以及它们对应的真实服务器信息[^1]。 #### 清空所有规则 如果需要清空所有已定义的规则,则可执行如下指令: ```bash ipvsadm -C ``` 这会清除掉之前设定的所有条目,但不会影响正在运行中的连接状态[^1]。 --- ### Keepalived 中集成 IPVSADM 配置实例 当与 Keepalived 结合时,通常会在 `/etc/keepalived/keepalived.conf` 文件里写入具体的 ipvsadm 规则。下面是一个简单的例子展示如何在主备高可用架构下利用 keepalived 自动加载这些规则: **主服务器配置** ```plaintext vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 authentication { auth_type PASS auth_pass mypassword } notify_master "/usr/local/bin/ipvs.sh start" } virtual_server 192.168.1.1 80 { delay_loop 6 lb_algo rr lb_kind NAT persistence_timeout 50 real_server 192.168.1.2 80 { weight 1 HTTP_GET { url { path / status_code 200 } connect_port 80 connect_timeout 3 } } } ``` **脚本 ipvs.sh (start)** 为了确保启动时能够正确初始化 ipvsadm 设置,在通知脚本中调用相应命令即可完成自动化部署过程[^2]: ```bash #!/bin/bash case "$1" in start) ipvsadm -A -t 192.168.1.1:80 -s rr ipvsadm -a -t 192.168.1.1:80 -r 192.168.1.2:80 -m -w 1 ;; esac exit 0 ``` --- ### 注意事项 在实际应用前还需要注意以下几点: - **内核版本验证**: 确保操作系统内核版本满足最低要求(>=5.4),并通过 `uname -r` 进行确认[^3]。 - **模块加载**: 如果发现某些功能不可用,请检查是否已经成功加载 TOA 或其他必要模块。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值