ipvsadm命令 – linux 虚拟服务器管理

566次阅读
没有评论

ipvsadm 命令用于在 Linux 内核中设置,维护或检查虚拟服务器表。Linux 虚拟服务器可用于基于两个或更多节点的集群构建可伸缩网络服务。群集的主节点将服务请求重定向到将实际执行服务的服务器主机集合。支持的功能包括两种协议(TCP 和 UDP),三种数据包转发方法(NAT,隧道和直接路由),以及八种负载均衡算法(roundrobin,加权循环,最小连接,加权最小连接,基于位置)最小连接,基于位置的最小连接,具有复制,目标哈希和源哈希)。

语法格式: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 将转发消息的统计清零
–set tcp/tcpfin/udp 配置三个超时时间(tcp/tcpfin/udp)
–start-daemon 启动同步守护进程。
–stop-daemon 停止同步守护进程  
-h/–help 显示帮助信息
-t/–tcp-service service-address TCP 协议的虚拟服务
-u/–udp-service service-address UDP 协议的虚拟服务
-f/–fwmark-service fwmark 说明是经过 iptables 标记过的服务类型。
-s/–scheduler scheduler 使用的调度算法,有这样几个选项 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-interface interface 指定组播的同步接口  
-c/–connection 显示 ipvs 中目前存在的连接
-6: 如果 fwmark 用的是 ipv6 地址需要指定此选项。

参考实例

管理虚拟服务:

添加一个虚拟服务 192.168.1.100:80,使用轮询算法:

[root@linuxvip ~]# ipvsadm -A -t 192.168.1.100:80 -s rr

修改虚拟服务的算法为加权轮询:

[root@linuxvip ~]# ipvsadm -E -t 192.168.1.100:80 -s wrr

删除虚拟服务:

[root@linuxvip ~]# ipvsadm -D -t 192.168.1.100:80

管理真实服务:

添加一个真实服务器 192.168.1.123,使用 DR 模式,权重 2:

[root@linuxvip ~]# ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.123 -g -w 2

修改真实服务器的权重:

[root@linuxvip ~]# ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.123 -g -w 5

删除真实服务器:

[root@linuxvip ~]# ipvsadm -d -t 192.168.1.100:80 -r 192.168.1.123

查看统计:

查看当前配置的虚拟服务和各个 RS 的权重:

[root@linuxvip ~]# ipvsadm -Ln

查看当前 ipvs 模块中记录的连接(可用于观察转发情况):

[root@linuxvip ~]# ipvsadm -lnc

查看 ipvs 模块的转发情况统计:

[root@linuxvip ~]# ipvsadm -Ln --stats | --rate

正文完