ipvs工作在内核空间,而ipvsadm工作在用户空间,是负责管理集群服务编写规则的命令行工具
ipvsadm需要手动安装。
$ yum -y install ipvsadm
ipvsadm管理命令
一、管理集群服务
1)添加集群
ipvsadm -A -t|u|f service-address [-s scheduler]
2)修改集群
ipvsadm -E -t|u|f service-address [-s scheduler]
3)删除集群
ipvsadm -D -t|u|f service-address
参数解释:
-t TCP协议集群,如[IP:PORT];
-u UDP协议集群,如[IP:PORT];
-f FWM防火墙标记,如[MARK NUMBER];
-s 调度算法,如[rr|wrr|sh|dh|lc|wlc|lblc|lblcr];
使用示例:
添加一个VIP为172.29.32.205:80的集群,调度算法为wrr加权轮询;
$ ipvsadm -A -t 172.29.32.205:80 -s wrr
修改VIP的端口为8080;
$ ipvsadm -E -t 172.29.32.205:8080 -s wrr
删除集群;
$ ipvsadm -D -t 172.29.32.205:80
添加一个VIP为172.29.32.205:80的集群,调度算法为wrr加权轮询;
$ ipvsadm -A -t 172.29.32.205:80 -s wrr
修改VIP的端口为8080;
$ ipvsadm -E -t 172.29.32.205:8080 -s wrr
删除集群;
$ ipvsadm -D -t 172.29.32.205:80
二、管理集群中的RealServer
1)添加RealServer
ipvsadm -a -t|u|f service-address -r service-address [-g|-i|-m] [-w weight]
2)修改RealServer
ipvsadm -e -t|u|f service-address -r service-address [-g|-i|-m] [-w weight]
3)删除RealServer
ipvsadm -d -t|u|f service-address -r service-address
参数解释:
-t|u|f service-address #这个地址是前面创建好的集群服务;
-r service-address 定义RealServer地址,在NAT模式中可使用端口映射;
-g 表示使用DR模型;
-i 表示使用TUN模型;
-m 表示使用NAT模型;
-w 定义权重值,如果使用加权轮询,LVS会根据权限比例分配客户端连接请 求;
-p 定义tcp超时时间,默认为120秒;
--set 900 120 300 定义tcp/tcpfin/udp的超时时间,默认为900/120/300秒;
使用示例:
添加一条RealServer,地址为172.29.32.201:80,调度模式为DR,权重为5;
$ ipvsadm -a -t 172.29.32.205:80 -r 172.29.32.201:80 -g -w 5
修改RealServer条目的端口为8080;
$ ipvsadm -e -t 172.29.32.205:80 -r 172.29.32.201:8080 -g -w 5
删除RealServer条目;
$ ipvsadm -d -t 172.29.32.205:80 -r 172.29.32.201:80
添加一条RealServer,地址为172.29.32.201:80,调度模式为DR,权重为5;
$ ipvsadm -a -t 172.29.32.205:80 -r 172.29.32.201:80 -g -w 5
修改RealServer条目的端口为8080;
$ ipvsadm -e -t 172.29.32.205:80 -r 172.29.32.201:8080 -g -w 5
删除RealServer条目;
$ ipvsadm -d -t 172.29.32.205:80 -r 172.29.32.201:80
三、查看集群状态
查看集群状态,包含RealServer条目;
$ ipvsadm -L
显示为数字格式,但必须配合-L一块使用且-L必须在-n前面,也可以合并使用,如-Ln;
$ ipvsadm -Ln
显示当前连接数;
$ ipvsadm -Lnc
显示统计数据
$ ipvsadm -Ln --stats
显示速率;
$ ipvsadm -Ln --rate
显示tcp/tcpfin/udp的会话超时时长,默认是900、120/300;
$ ipvsadm -Ln --timeout
显示进程状态;
$ ipvsadm -Ln --daemon
对集群服务做排序默认升序;
$ ipvsadm -Ln --sort
四、清空所有集群服务
$ ipvsadm -C
五、导入导出ipvsadm规则
导出ipvs规则;
$ ipvsadm -S > /PATH
导入ipvs规则;
$ ipvsadm -R < /PATH
六、查看ipvsadm版本号
$ ipvsadm --version