实验环境:fedora_server最新版本
1.查看内核是否支持ipvs
grep -i 'vs' /boot/config-3.17.4-301.fc21.i686+PAE
2.安装ipvsadm
yum install ipvsadm
3.ipvsadm命令
1、管理集群服务
1.添加:-Aipvsadm -A|E -t|u|f service-address
-t:tcp协议集群 -u:udp协议集群 -f:防火墙标记集群
2.修改:-E
3.删除:-Dipvsadm -D -t|u|f service-address
2、管理集群服务中的RealServer
1.添加:-aipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]
-r:RS的地址,NAT模型中,可用IP:PORT实现端口映射
-g:DR模型 -i:TUN模型 -m:NAT模型 -w:权重
2.修改:-e
3.删除:-dipvsadm -d -t|u|f service-address -r server-address
3.管理集群服务的查看
1.ipvsadm -L|l [options]
options:-n:数字格式显示
--stats 统计信息
--rate:统计速率
--timeout:显示tcp、tcpinfo、udp的会话超时时长
-c:连接客户端数量
4.情况计数器:ipvsadm -Z [-t|u|f service-address]
5.情况规则:ipvsadm -C
6.保存规则:
1.ipvsadm -S > /path/to/somefile
2.ipvsadm-save > /path/to/somefile
3.ipvsadm-restore < /path/to/somefile
4.lvs调度算法:
1. 固定调度
i. rr:轮叫
ii. wrr:加权轮叫
iii. sh:source hash,源地址hash(一定时间内,相同的源地址发往相同的主机)session affinity、 session sharing
iv. dh:对于同一个请求,发往同一个服务器(缓存服务器)
2. 动态调度(默认为wlc)
i. lc(least-connection)最少连接
1) active*256+inactive 谁的小,挑选谁
ii. wlc:加权最少连接
1) (active*256+inactive)/weight 谁的小,挑选谁
iii. sed:最短期望延迟
1) (active+1)*256/weight 谁的小,挑选谁
iv. nq:never queue(基于sed,不考虑incative)
v. lblc(locality-based least-connection)基于本地的最少连接
vi. lblcr:基于本地的带复制功能的最少连接(缓存共享对象,兄弟服务器)
尽可能调度到相同的服务器,只有新请求发送到最少的服务器,没有的话会去查询兄弟服务器