lvs持久连接适用于大部分调度算法。当某一种请求需要定向到一个real server 时,就要用到持久连接
一般应用到:ssl(http.https等),ftp。。
-p N
-p //表示此连接为持久连接
N //表示维持此持久连接的时间。默认6分钟。当超过这个时间后,如果网页还没有关掉,仍处于激活状态,重新复位时间为2分钟。
例子的拓扑图基本上都可以参照上次写的服务器群集的负载均衡的DR模型的拓扑图
持久连接的类型:
1.pcc 持久地客户端连接(0端口,0代表所有的端口)
在director上的配置
例子:
Ipvsadm -A -t 192.168.2.100:0 -s rr -p 360
Ipvsadm -a -t 192.168.2.100:0 -r 192.168.2.20 -g
Ipvsadm -a -t 192.168.2.100:0 -r 192.168.2.30 -g
配置完ipvsadm后察看情况
2.ppc(持久端口连接)
例子:
Ipvsadm -A -t 192.168.2.100:80 -s rr -p 360
Ipvsadm -A -t 192.169.2.100:22 -s rr -p 360
Ipvsadm -a -t 192.168.2.100:80 -r 192.168.2.20 -g
Ipvsadm -a -t 192.168.2.100:80 -r 192.168.2.30 -g
Ipvsadm -a -t 192.168.2.100:22 -r 192.168.2.10
当访问80端口定向到2.20和2..30,当访问ssh定向到2.10
3.Netfilter marked packets(防火墙标记的持久连接)
这种持久连接主要适用于由因亲关系的多端口协议
iptables -t mangle -A PREROUTING -i eth0 -p tcp -d 192.168.2.100 -m multiport --dport 80,443 -j MARK --set-mark 1 //把从eth0出来的到192.168.2.100去的目标端口为80,443的打上标签1
# ipvsadm -A -f 1 -s rr -p 360
# ipvsadm -a –f 1 -r 192.168.2.20 -g
# ipvsadm -a -f 1 -r 192.168.2.30 -g
4.ftp持久连接
ftp连接方式:主动连接和被动连接
21控制端口 20 数据端口 被动连接 是随机从1024---65000内选出一个 作为回应端口号,所以我们要限制被动连接回应端口的范围.如下:
vim /etc/vsftpd/vsftpd.conf
pasv_min_port = 10000
pasv_max_port = 12000
iptables -t mangle -A PREROUTING -i eth0 -p tcp -d 192.168.2.100 --dport 21 -j MARK --set-mark 1
iptables -t mangle -A PREROUTING -i eth0 -p tcp -d 192.168.2.100 --dport 10000:12000 -j MARK --set-mark 1
# ipvsadm -A -f 1 -s rr -p 360
# ipvsadm -a –f 1 -r 192.168.2.20 -g
# ipvsadm -a -f 1 -r 192.168.2.30 -g
5.过期的持久连接
这个不说了,现在没怎么用的着的。。。。。。
当然了,昨晚这些配置,别忘了启用相关的服务.
具体的测试部分没有贴出来,因为项目是以前做的,现在只是把步骤整理出来,望各位看官们不懂都可以提出来,大家一起讨论。