lvs命令介绍

华子目录

lvs命令介绍

lvs软件ipvsadm相关信息

  • 程序包:ipvsadm
  • 服务名:ipvsadm.service
  • 主程序:/usr/sbin/ipvsadm
  • 规则保存工具:/usr/sbin/ipvsadm-save
  • 规则重载工具:/usr/sbin/ipvsadm-restore
  • 配置文件:/etc/sysconfig/ipvsadm-config
  • ipvs调度规则文件/etc/sysconfig/ipvsadm

ipvsadm命令

核心功能

  • lvs集群服务器管理:增、删、改
  • 集群服务中对RS服务器的管理增、删、改`
  • 规则查看

lvs集群中的增删改

管理集群服务lvs中的增删改

增加
  • -A添加
bash 复制代码
[root@lvs ~]# ipvsadm -A -t(tcp)|-u(udp)|-f(防护墙标签) \
> service-address (lvs集群地址) \
> [-s scheduler (调度算法)] \
> [-p [timeout]] 
单个删除
  • -D删除
bash 复制代码
#删除单个规则
[root@lvs ~]# ipvsadm -D -t|-u|-f service-address
全部删除
  • -C全部删除
bash 复制代码
[root@lvs ~]# ipvsadm --C   #清空所有规则
清空计数器
bash 复制代码
[root@lvs ~]# ipvsadm -Z [-t|u|f service-address]   #清空指定的计数器数据
[root@lvs ~]# ipvsadm -Z     #清空所有的计数器数据
修改
  • -E删除
bash 复制代码
[root@lvs ~]# ipvsadm -E -t(tcp)|-u(udp)|-f(防护墙标签) \
> service-address (lvs集群地址) \
> [-s scheduler (调度算法)] \
> [-p [timeout]] 
参数 说明
-A 添加
-E 修改
-D 删除
-t tcp服务
-u udp服务
-s 指定调度算法,默认为WLC。注意:rr调度算法对权重不生效,wrr算法对权重生效
-p 设置持久连接超时,持久连接可以理解为在同一个时间段同一个来源的请求调度到同一Realserver
-f firewall mask 火墙标记,是一个数字
-S 保存规则,等同于ipvsadm-save
-R 重载,等同于ipvsadm-restore
实例
bash 复制代码
[root@lvs ~]# ipvsadm -A -t 172.25.254.100:80 -s rr
[root@lvs ~]# ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.10:80 -m
[root@lvs ~]# ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.20:80 -m

[root@lvs ~]# ipvsadm -A -t 172.25.254.200:80 -s wrr
[root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.10:80 -m
[root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.20:80 -m

[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.25.254.100:80 rr
  -> 192.168.0.10:80              Masq    1      0          0
  -> 192.168.0.20:80              Masq    1      0          0
TCP  172.25.254.200:80 wrr
  -> 192.168.0.10:80              Masq    1      0          0
  -> 192.168.0.20:80              Masq    1      0          0


[root@lvs ~]# ipvsadm -Ln --rate
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  172.25.254.100:80                   0        1        1       63      100
  -> 192.168.0.10:80                     0        1        0       36       57
  -> 192.168.0.20:80                     0        0        0       27       43
TCP  172.25.254.200:80                   0        0        0        0        0
  -> 192.168.0.10:80                     0        0        0        0        0
  -> 192.168.0.20:80                     0        0        0        0        0



[root@lvs ~]# ipvsadm -Ln --rate
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  172.25.254.100:80                   0        1        1       63      100
  -> 192.168.0.10:80                     0        1        0       36       57
  -> 192.168.0.20:80                     0        0        0       27       43



[root@lvs ~]# ipvsadm -Z    #清空计数器
[root@lvs ~]# ipvsadm -Ln --rate
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  172.25.254.100:80                   0        0        0        0        0
  -> 192.168.0.10:80                     0        0        0        0        0
  -> 192.168.0.20:80                     0        0        0        0        0
  • 删除172.25.254.200
bash 复制代码
[root@lvs ~]# ipvsadm -D -t 172.25.254.200:80
[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.25.254.100:80 rr
  -> 192.168.0.10:80              Masq    1      0          1
  -> 192.168.0.20:80              Masq    1      0          1
  • 删除防火墙标记
bash 复制代码
[root@lvs ~]# ipvsadm -D -f 66
  • 修改调度算法
bash 复制代码
[root@lvs ~]# ipvsadm -E -t 172.25.254.100:80 -s wrr
[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.25.254.100:80 wrr
  -> 192.168.0.10:80              Masq    1      0          0
  -> 192.168.0.20:80              Masq    1      0          0
  • 清空全部规则
bash 复制代码
[root@lvs ~]# ipvsadm -C
[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  • ipvsadm-save等同于ipvsadm -S
bash 复制代码
[root@lvs ~]# ipvsadm -S
-A -t lvs:http -s rr
-a -t lvs:http -r 192.168.0.10:http -m -w 1
-a -t lvs:http -r 192.168.0.20:http -m -w 1
[root@lvs ~]# cat /etc/sysconfig/ipvsadm
[root@lvs ~]#
[root@lvs ~]# ipvsadm-save
-A -t lvs:http -s rr
-a -t lvs:http -r 192.168.0.10:http -m -w 1
-a -t lvs:http -r 192.168.0.20:http -m -w 1
[root@lvs ~]# cat /etc/sysconfig/ipvsadm
[root@lvs ~]#
  • 保存规则
  • ipvsadm -S等同于ipvsadm-save
bash 复制代码
[root@lvs ~]# ipvsadm -S > /etc/sysconfig/ipvsadm
[root@lvs ~]# cat /etc/sysconfig/ipvsadm
-A -t lvs:http -s rr
-a -t lvs:http -r 192.168.0.10:http -m -w 1
-a -t lvs:http -r 192.168.0.20:http -m -w 1

#或者-n快速简单保存
[root@lvs ~]# ipvsadm -S -n > /etc/sysconfig/ipvsadm
[root@lvs ~]# cat /etc/sysconfig/ipvsadm
-A -t 172.25.254.100:80 -s rr
-a -t 172.25.254.100:80 -r 192.168.0.10:80 -m -w 1
-a -t 172.25.254.100:80 -r 192.168.0.20:80 -m -w 1
  • 恢复策略(前提是:/etc/sysconfig/ipvsadm文件中记录着策略)(所以-A添加的策略在内存中保存,-C删除了内存中的策略,通过ipvsadm -Ripvsadm-restore命令进行恢复)
bash 复制代码
[root@lvs ~]# ipvsadm -C   #先清空
[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn

[root@lvs ~]# ipvsadm -R < /etc/sysconfig/ipvsadm

[root@lvs ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.25.254.100:80 rr
  -> 192.168.0.10:80              Masq    1      0          0
  -> 192.168.0.20:80              Masq    1      0          0

管理集群中RS增删改

增加
  • -a添加
bash 复制代码
[root@lvs ~]# ipvsadm -a -t(tcp)|-u(udp)|-f(防火墙标签) service-address (lvs集群地址) \
> -r server-address(RS的地址) [-g | -i| -m] (工作模式) \
> [-w weight](权重)
删除
  • -d删除
bash 复制代码
[root@lvs ~]# ipvsadm -d -t|-u|-f service-address -r server-address 
修改
  • -e修改
bash 复制代码
[root@lvs ~]# ipvsadm -e -t(tcp)|-u(udp)|-f(防火墙标签) service-address (lvs集群地址) \
> -r server-address(RS的地址) [-g | -i| -m] (工作模式) \
> [-w weight](权重)
参数 说明
-a 添加real server
-e 更改real server
-t tcp协议
-u udp协议
-f 防火墙标签,是一个数字
-r real server地址
-g 直连路由模式
-i ip隧道模式
-m nat模式
-w 设置权重
-Z 清空计数器
-C 清空lvs策略
-L 查看lvs策略
-n 不做解析
--rate 输出速率信息
相关推荐
xuanzdhc2 小时前
Linux 基础IO
linux·运维·服务器
愚润求学2 小时前
【Linux】网络基础
linux·运维·网络
bantinghy2 小时前
Linux进程单例模式运行
linux·服务器·单例模式
小和尚同志3 小时前
29.4k!使用 1Panel 来管理你的服务器吧
linux·运维
帽儿山的枪手3 小时前
为什么Linux需要3种NAT地址转换?一探究竟
linux·网络协议·安全
shadon1789 天前
回答 如何通过inode client的SSLVPN登录之后,访问需要通过域名才能打开的服务
linux
AWS官方合作商9 天前
AWS ACM 重磅上线:公有 SSL/TLS 证书现可导出,突破 AWS 边界! (突出新功能的重要性和突破性)
服务器·https·ssl·aws
小米里的大麦9 天前
014 Linux 2.6内核进程调度队列(了解)
linux·运维·驱动开发
程序员的世界你不懂9 天前
Appium+python自动化(三十)yaml配置数据隔离
运维·appium·自动化
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器