0
点赞
收藏
分享

微信扫一扫

ipvsadm命令详解

ipvsadm命令详解

ipvsadm是ipvs的管理器,需要yum安装。

LVS 相关软件

程序包:ipvsadm Unit File: ipvsadm.service

主程序:/usr/sbin/ipvsadm

规则保存工具:/usr/sbin/ipvsadm-save

规则重载工具:/usr/sbin/ipvsadm-restore

配置文件:/etc/sysconfig/ipvsadm-config

ipvs调度规则文件:/etc/sysconfig/ipvsadm

ipvsadm 命令

ipvsadm核心功能:

1、集群服务管理:增、删、改

2、集群服务的RS管理:增、删、改

3、查看`

ipvsadm 工具用法:

#管理集群服务

ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask]

[--pe persistence_engine] [-b sched-flags]

ipvsadm -D -t|u|f service-address #删除

ipvsadm –C #清空

ipvsadm –R #重载,相当于ipvsadm-restore

ipvsadm -S [-n] #保存,相当于ipvsadm-save

#管理集群中的RS

ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]

ipvsadm -d -t|u|f service-address -r server-address

ipvsadm -L|l [options]

ipvsadm -Z [-t|u|f service-address]


管理集群服务:增、改、删 增、修改:

ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]


删除:

ipvsadm -D -t|u|f service-address


service-address:

-t|u|f:

-t: TCP协议的端口,VIP:TCP_PORT

-u: UDP协议的端口,VIP:UDP_PORT

-f:firewall MARK,标记,一个数字

[-s scheduler]:指定集群的调度算法,默认为wlc

ipvsadm


管理集群上的RS:增、改、删 增、改:

ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]


删:

ipvsadm -d -t|u|f service-address -r server-address


server-address:

rip[:port] 如省略port,不作端口映射

选项:

lvs类型:

-g: gateway, dr类型,默认

-i: ipip, tun类型

-m: masquerade, nat类型

-w weight:权重


清空定义的所有内容:

ipvsadm -C


清空计数器:

ipvsadm -Z [-t|u|f service-address]


查看:

ipvsadm -L|l [options]


--numeric, -n:以数字形式输出地址和端口号

--exact:扩展信息,精确值

--connection,-c:当前IPVS连接输出

--stats:统计信息

--rate :输出速率信息


ipvs规则:

/proc/net/ip_vs


ipvs连接:

/proc/net/ip_vs_conn


保存:建议保存至/etc/sysconfig/ipvsadm

ipvsadm-save > /PATH/TO/IPVSADM_FILE

ipvsadm -S > /PATH/TO/IPVSADM_FILE

systemctl stop ipvsadm.service #会自动保存规则至/etc/sysconfig/ipvsadm


重载:

ipvsadm-restore < /PATH/FROM/IPVSADM_FILE

systemctl start ipvsadm.service #会自动加载/etc/sysconfig/ipvsadm中规则


防火墙标记


FWM:FireWall Mark MARK target 可用于给特定的报文打标记 --set-mark value 其中:value 可为0xffff格式,表示十六进制数字 借助于防火墙标记来分类报文,而后基于标记定义集群服务;可将多个不同的应用使用同一个集群服务 进行调度 实现方法: 在Director主机打标记:

iptables -t mangle -A PREROUTING -d $vip -p $proto -m multiport --dports

$port1,$port2,… -j MARK --set-mark NUMBER


在Director主机基于标记定义集群服务:

ipvsadm -A -f NUMBER [options]


范例:

[root@lvs ~]#iptables -t mangle -A PREROUTING -d 172.16.0.100 -p tcp -m

multiport --dports 80,443 -j MARK --set-mark 10

[root@lvs ~]#ipvsadm -C

[root@lvs ~]#ipvsadm -A -f 10 -s rr

[root@lvs ~]#ipvsadm -a -f 10 -r 10.0.0.7 -g

[root@lvs ~]#ipvsadm -a -f 10 -r 10.0.0.17 -g

[root@lvs ~]#ipvsadm -Ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

FWM 10 rr

-> 10.0.0.7:0 Route 1 0 0

-> 10.0.0.17:0 Route 1 0 0

[root@lvs ~]#cat /proc/net/ip_vs

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

FWM 0000000A rr

-> 0A000011:0000 Route 1 0 9

-> 0A000007:0000 Route 1 0 9


范例:

[root@lvs ~]#ipvsadm -A -f 10

[root@lvs ~]#ipvsadm -a -f 10 -r 10.0.0.7 -g

[root@lvs ~]#ipvsadm -a -f 10 -r 10.0.0.17 -g

[root@lvs ~]#ipvsadm -Ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

FWM 10 wlc

-> 10.0.0.7:0 Route 1 0 0

-> 10.0.0.17:0 Route 1 0 0


[root@LVS ~]#cat /proc/net/ip_vs

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

TCP AC14C8C8:0050 rr

-> 0A000011:0050 Masq 1 0 0

-> 0A000007:0050 Masq 1 0 0


LVS 持久连接


session 绑定:对共享同一组RS的多个集群服务,需要统一进行绑定,lvs sh算法无法实现 持久连接( lvs persistence )模板:实现无论使用任何调度算法,在一段时间内(默认360s ),能够 实现将来自同一个地址的请求始终发往同一个RS


ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]


持久连接实现方式:

1、每端口持久(PPC):每个端口定义为一个集群服务,每集群服务单独调度

2、每防火墙标记持久(PFWMC):基于防火墙标记定义集群服务;可实现将多个端口上的应用统一调度,即所谓的port Affinity

3、每客户端持久(PCC):基于0端口(表示所有服务)定义集群服务,即将客户端对所有应用的请求都调度至后端主机,必须定义为持久模式


范例:

[root@lvs ~]#ipvsadm -E -f 10 -p

[root@lvs ~]#ipvsadm -Ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

FWM 10 wlc persistent 360

-> 10.0.0.7:0 Route 1 0 15

-> 10.0.0.17:0 Route 1 0 7

[root@lvs ~]#ipvsadm -E -f 10 -p 3600

[root@lvs ~]#ipvsadm -Ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

FWM 10 wlc persistent 3600

-> 10.0.0.7:0 Route 1 0 79

-> 10.0.0.17:0 Route 1 0 7


[root@lvs ~]#cat /proc/net/ip_vs_conn

Pro FromIP FPrt ToIP TPrt DestIP DPrt State Expires PEName PEData

TCP C0A80006 C816 AC100064 01BB 0A000011 01BB FIN_WAIT 67

TCP C0A80006 C812 AC100064 01BB 0A000011 01BB FIN_WAIT 67

TCP C0A80006 9A36 AC100064 0050 0A000011 0050 FIN_WAIT 65

TCP C0A80006 C806 AC100064 01BB 0A000011 01BB FIN_WAIT 65

TCP C0A80006 9A3E AC100064 0050 0A000011 0050 FIN_WAIT 66

TCP C0A80006 C81A AC100064 01BB 0A000011 01BB FIN_WAIT 67

TCP C0A80006 C80A AC100064 01BB 0A000011 01BB FIN_WAIT 66

TCP C0A80006 9A3A AC100064 0050 0A000011 0050 FIN_WAIT 66

TCP C0A80006 9A4E AC100064 0050 0A000011 0050 FIN_WAIT 68

TCP C0A80006 9A42 AC100064 0050 0A000011 0050 FIN_WAIT 67

TCP C0A80006 9A46 AC100064 0050 0A000011 0050 FIN_WAIT 67

TCP C0A80006 C81E AC100064 01BB 0A000011 01BB FIN_WAIT 68

IP C0A80006 0000 0000000A 0000 0A000011 0000 NONE 948

TCP C0A80006 C80E AC100064 01BB 0A000011 01BB FIN_WAIT 66

TCP C0A80006 9A4A AC100064 0050 0A000011 0050 FIN_WAIT 67


[root@lvs ~]#ipvsadm -Lnc

IPVS connection entries

pro expire state source virtual destination

TCP 00:46 FIN_WAIT 192.168.0.6:51222 172.16.0.100:443 10.0.0.17:443

TCP 00:46 FIN_WAIT 192.168.0.6:51218 172.16.0.100:443 10.0.0.17:443

TCP 00:45 FIN_WAIT 192.168.0.6:39478 172.16.0.100:80 10.0.0.17:80

TCP 00:45 FIN_WAIT 192.168.0.6:51206 172.16.0.100:443 10.0.0.17:443

TCP 00:46 FIN_WAIT 192.168.0.6:39486 172.16.0.100:80 10.0.0.17:80

TCP 00:47 FIN_WAIT 192.168.0.6:51226 172.16.0.100:443 10.0.0.17:443

TCP 00:45 FIN_WAIT 192.168.0.6:51210 172.16.0.100:443 10.0.0.17:443

TCP 00:45 FIN_WAIT 192.168.0.6:39482 172.16.0.100:80 10.0.0.17:80

TCP 00:47 FIN_WAIT 192.168.0.6:39502 172.16.0.100:80 10.0.0.17:80

TCP 00:46 FIN_WAIT 192.168.0.6:39490 172.16.0.100:80 10.0.0.17:80

TCP 00:46 FIN_WAIT 192.168.0.6:39494 172.16.0.100:80 10.0.0.17:80

TCP 00:47 FIN_WAIT 192.168.0.6:51230 172.16.0.100:443 10.0.0.17:443

IP 15:27 NONE 192.168.0.6:0 0.0.0.10:0 10.0.0.17:0

TCP 00:46 FIN_WAIT 192.168.0.6:51214 172.16.0.100:443 10.0.0.17:443

TCP 00:47 FIN_WAIT 192.168.0.6:39498 172.16.0.100:80 10.0.0.17:80


举报

相关推荐

0 条评论