一 安装IPVS
可通过源码安装或yum安装,源码包如下:
http://www.linuxvirtualserver.org/software/ipvs.html
[root@lvsmaster ~]# yum -y install ipvsadm
二 IPVS常用命令
[root@lvsmaster ~]# ipvsadm --help
ipvsadm v1.26 2008/5/15 (compiled with popt and IPVS v1.2.1)
Usage:
ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask] [--pe persistence_engine]
ipvsadm -D -t|u|f service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address -r server-address [options]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface] [--syncid sid]
ipvsadm --stop-daemon state
ipvsadm -h
含义:
f service-address -r server-address
第一个service-address:虚拟服务器的IP地址;第二个server-address:Real Server的IP地址。
scheduler:用于指定调度算法。
三 命令选项
ipvsadm命令参数选项详细含义如下所示:
-A (--add-service):在内核的虚拟服务器列表中添加一条新的虚拟IP记录。也就是增加一台新的虚拟服务器。虚拟IP也就是虚拟服务器的IP地址。
-E (--edit-service):编辑内核虚拟服务器列表中的一条虚拟服务器记录
-D (--delete-service):删除内核虚拟服务器列表中的一条虚拟服务器记录
-C (--clear):清除内核虚拟服务器列表中的所有规则
-R (--restore):恢复虚拟服务器规则
-S (--save):保存虚拟服务器规则,输出为-R 选项可读的格式
-a (--add-server):在内核虚拟服务器列表的一条记录里添加一条新的Real Server记录。也就是在一个虚拟服务器中增加一台新的Real Server
-e (--edit-server):编辑一条虚拟服务器记录中的某条Real Server记录
-d (--delete-server):删除一条虚拟服务器记录中的某条Real Server记录
-L|-l –list:显示内核中虚拟服务器列表
-Z (--zero):虚拟服务器列表计数器清零(清空当前的连接数量等)
--set tcp tcpfin udp:设置连接超时值
-t:说明虚拟服务器提供的是tcp服务,此选项后面跟如下格式:
[virtual-service-address:port] or [real-server-ip:port]
-u:说明虚拟服务器提供的是udp服务,此选项后面跟如下格式:
[virtual-service-address:port] or [real-server-ip:port]
-f fwmark:说明是经过iptables标记过的服务类型
-s:此选项后面跟LVS使用的调度算法,常见算法有:: rr|wrr|lc|wlc|lblc|lblcr|dh|sh,默认的调度算法是: wlc
-p [timeout]:在某个Real Server上持续的服务时间。也就是说来自同一个用户的多次请求,将被同一个Real Server处理。此参数一般用于有动态请求的操作中,timeout 的默认值为360 分钟。例如:-p 600,表示持续服务时间为600分钟。
-r:指定Real Server的IP地址,此选项后面跟如下格式:[real-server-ip:port]
-g (--gatewaying):指定LVS 的工作模式为直接路由模式(此模式是LVS 默认工作模式)
-i (-ipip):指定LVS 的工作模式为隧道模式
-m (--masquerading):指定LVS 的工作模式为NAT模式
-w (--weight) weight:指定Real Server的权值
-c (--connection)::显示LVS目前的连接信息 如:ipvsadm -L -c
-L --timeout:显示“tcp tcpfin udp”的timeout值,如:ipvsadm -L --timeout
-L --daemon:显示同步守护进程状态,例如:ipvsadm -L –daemon
-L --stats:显示统计信息,例如:ipvsadm -L –stats
-L --rate:显示速率信息,例如:ipvsadm -L --rate
-L --sort:对虚拟服务器和真实服务器排序输出,例如:ipvsadm -L --sort
注意: 保存添加的虚拟ip记录和ipvsadm的规则可以使用service ipvsadm save,还可以用-S或--save。清除所有记录和规则除了使用-C,还以使用--clear。
三 示例
ipvsadm -A -t 192.168.10.200:800 -s rr -p 600
表示在内核的虚拟服务器列表中添加一条IP为192.168.10.200的虚拟服务器,并且指定此虚拟服务器的服务端口为80,其调度策略为轮询模式,并且每个Real Server上的持续时间为600秒。
ipvsadm -a -t 192.168.10.10:800 -r 192.168.10.100:80 -g
表示在IP地位为192.168.10.10的虚拟服务器上添加一条新的Real Server记录,且虚拟服务器的工作模式为直接路由模式。