LVS系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html
<http://www.cnblogs.com/f-ck-need-u/p/7576137.html#lvs>

<>

1.使用ipvsadm

ipvsadm是ipvs的命令行管理工具,可以定义、删除、查看virtual service和Real Server的属性。

<>

1.1 安装ipvsadm

可以直接yum安装。以下是编译安装ipvsadm的过程,对于内核版本2.6.xx,需要安装的ipvsadm版本要大于1.24。
# 下载ipvsadm wget
http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz -P
/tmp cd /tmp# 安装依赖包 yum -y install libnl* popt* # 安装ipvsadm,注意不需要./configure
tar xf ipvsadm-1.26.tar.gz cd ipvsadm-1.26 make && make install
编译安装完之后,会在/etc/init.d/ (CentOS6)或/usr/lib/systemd/system/
(CentOS7)目录下自动生成ipvsadm服务管理脚本,这和一般的编译不一样,比较人性化。

安装ipvsadm后,生成以下文件。
[[email protected] ~]# rpm -ql ipvsadm /etc/sysconfig/ipvsadm-config
/usr/lib/systemd/system/ipvsadm.service /usr/sbin/ipvsadm # ipvs规则管理工具
/usr/sbin/ipvsadm-restore # ipvs规则恢复工具 /usr/sbin/ipvsadm-save # ipvs规则保存工具 /usr/
share/doc/ipvsadm-1.27 /usr/share/doc/ipvsadm-1.27/README /usr/share
/man/man8/ipvsadm-restore.8.gz /usr/share/man/man8/ipvsadm-save.8.gz /usr/share
/man/man8/ipvsadm.8.gz
<>

1.2 ipvsadm语法

使用ipvsadm --help可以查看使用方法。ipvs的更多功能以及ipvsadm的更详细用法,请man ipvsadm
ipvsadm的选项中,大写选项管理虚拟服务virtual service,小写选项管理关联了虚拟服务的真实服务器RealServer,"-L"和"-l"
除外,它们同义。 (1).管理virtual services: 添加:-A -t|u|f service-address [-s scheduler]
-t:tcp协议的集群 -u:udp协议的集群 service-address格式为IP:PORT-f:firewall-mark防火墙标记
service-address:a numfor mark -s:调度算法 修改:-E -t|u|f service-address [-s
scheduler] 和-A使用方法一样 删除:-D -t|u|f service-address 示例:# ipvsadm -A -t
172.16.10.20:80 -s rr (对外的地址,也就是VIP) (2).管理virtual service中的RealServer: 添加:-a
-t|u|f service-address -r server-address [-g|i|m] [-w weight] -t|u|f
service-address:指定Real server所绑定的virtual service -r
server-address:某RS地址,在NAT模型中,可IP:PORT实现端口映射,即端口无需等于VIP对应的port
-g|i|m:指定lvs的类型,有三种: -g:gataway即DR类型(默认的模型) -i:--ipip,即TUN类型
-m:masquerade地址伪装即NAT -w:指定权重(需要调度算法支持权重) 修改:-e和-a用法一样 删除:-d -t|u|f
service-address -r server-address表示从哪个virtual service中删除哪个realserver 示例:#
ipvsadm -a -t 172.16.10.20:80 -r 192.168.100.9 -m # ipvsadm -a -t
172.16.10.20:80 -r 192.168.100.10 -m (3).查看: -L或者-l:列出状态信息,配合以下选项用于显示更精确数据
-n:只显示数字格式,不反解IP地址和端口 --stats:显示统计信息 --rate:显示速率信息(每秒的值)
--timeout:显示tcp/tcpfin/udp的会话超时时间长度 --daemon:显示进程状态和多播端口(不太用)
--sort:对-n列出来的进行排序(按协议、IP、端口号升序排序) -c:显示当前ipvs的连接状况(不能和stats选项同用) (4).其他项:
-Z:清空统计数据 -C:删除一个或所有virtual service,连同与之绑定的real server也删除 -S:保存规则 ipvsadm -S >
/path/to/somefile 或者使用ipvsadm-save > /path/to/somefile -R:载入规则 ipvsadm -R <
/path/to/somefile 或者使用ipvsadm-restore < /path/to/somefile service ipvsadm save
service ipvsadm restore