ipvsadm命令用于在Linux内核中设置,维护或检测虚拟服务器表。Linux虚拟服务器可用于基于两个或更多节点的集群建立可伸缩网路服务。群集的主节点将服务恳求重定向到将实际执行服务的服务器主机集合。支持的功能包括两种合同(TCP和UDP),三种数据包转发方式(NAT,隧洞和直接路由),以及八种负载均衡算法(roundrobin,加权循环,最小连接linux服务器虚拟,加权最小连接,基于位置)最小连接,基于位置的最小连接,具有复制红旗linux系统下载,目标哈希和源哈希)。
句型格式:ipvsadm[参数]
常用参数:
-A/--add-service
添加一条新的虚拟服务
-E/--edit-service
编辑虚拟服务
-D/--delete-service
删掉虚拟服务
-C/--clear
去除所有的虚拟服务规则
-R/--restore
恢复虚拟服务规则
-S/--save
保存虚拟服务器规则
-a/--add-server
在一个虚拟服务中添加一个新的真实服务器
-e/--edit-server
编辑某个真实服务器
-d/--delete-server
删掉某个真实服务器
-L/-l/--list
显示内核中的虚拟服务规则
-Z/--zero
将转发消息的统计清零
--settcp/tcpfin/udp
配置三个超时时间(tcp/tcpfin/udp)
--start-daemon
启动同步守护进程。
--stop-daemon
停止同步守护进程
-h/--help
显示帮助信息
-t/--tcp-serviceservice-address
TCP合同的虚拟服务
-u/--udp-serviceservice-address
UDP合同的虚拟服务
-f/--fwmark-servicefwmark
说明是经过iptables标记过的服务类型。
-s/--schedulerscheduler
使用的调度算法,有这样几个选项rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,默认的调度算法是:wlc.
-p/--persistent[timeout]
持久稳固的服务。
-M/--netmask
指定顾客地址的子网网段
-r/--real-serverserver-address
真实的服务器
-g/--gatewaying
指定LVS的工作模式为直接路由模式
-i/--ipip
指定LVS的工作模式为隧洞模式
-m/--masquerading
指定LVS的工作模式为NAT模式
-w/--weightweight
真实服务器的残差
--mcast-interfaceinterface
指定组播的同步插口
-c/--connection
显示ipvs中目前存在的联接
-6:
假如fwmark用的是ipv6地址须要指定此选项。
参考实例
管理虚拟服务:
添加一个虚拟服务192.168.1.100:80linux操作系统版本,使用协程算法:
[root@xtuos.com ~]# ipvsadm -A -t 192.168.1.100:80 -s rr
更改虚拟服务的算法为加权协程:
[root@xtuos.com ~]# ipvsadm -E -t 192.168.1.100:80 -s wrr
删掉虚拟服务:
[root@xtuos.com ~]# ipvsadm -D -t 192.168.1.100:80
管理真实服务:
添加一个真实服务器192.168.1.123linux服务器虚拟,使用DR模式,权重2:
[root@xtuos.com ~]# ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.123 -g -w 2
更改真实服务器的权重:
[root@xtuos.com ~]# ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.123 -g -w 5
删掉真实服务器:
[root@xtuos.com ~]# ipvsadm -d -t 192.168.1.100:80 -r 192.168.1.123
查看统计:
查看当前配置的虚拟服务和各个RS的权重:
[root@xtuos.com ~]# ipvsadm -Ln
查看当前ipvs模块中记录的联接(可用于观察转发情况):
[root@xtuos.com ~]# ipvsadm -lnc
查看ipvs模块的转发情况统计:
[root@xtuos.com ~]# ipvsadm -Ln --stats | --rate