Linux LVS之持久连接

大纲

一、什么是持久连接

二、PCC示例

三、PPC示例

四、PNMPP示例



一、什么是持久连接

无论使用什么算法,LVS持久连接都能实现在一点时间内,将来自于同一个客户端请求派发至此前选定的realserver。
持久连接依赖于持久连接模板(内存缓冲区:记录每一个客户端及分配的realserver的映射关系),每个新的连接请求,无论客户端的连接状态无论是否断开,只要客户端曾经访问过,LVS就会在持久连接模板中记录信息.经常用于SSL,建立一个SSL连接,需要交换SSL密钥,当启用持久性连接时,只需要做一次验证即可。


持久连接模板查看

[root@Director ~]# ipvsadm -L -n -c
IPVS connection entries
pro expire state       source             virtual            destination
TCP 00:57  SYN_RECV    172.16.1.100:52035 172.16.1.110:80    172.16.1.103:80
TCP 00:57  SYN_RECV    172.16.1.100:52034 172.16.1.110:80    172.16.1.104:80

持久连接查看

[root@Director ~]# ipvsadm -L -n --persistent-conn
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port            Weight    PersistConn ActiveConn InActConn 
  -> RemoteAddress:Port
TCP  172.16.1.110:80 rr persistent 600
  -> 172.16.1.103:80              2         0           0          2         
  -> 172.16.1.104:80              1         1           0          4


二、PPC示例

PPC(Persistent Port Connections)

持久端口连接:将来自于同一个客户端对同一个集群服务的请求,始终定向至此前选定的RS,对某一特定端口服务实现持久

[root@Director ~]# ipvsadm -A -t 172.16.1.110:80 -s rr -p 600
[root@Director ~]# ipvsadm -a -t 172.16.1.110:80 -r 172.16.1.103 -g 
[root@Director ~]# ipvsadm -a -t 172.16.1.110:80 -r 172.16.1.104 -g

三、PCC示例

PCC(Persistent Client Connections)

持久客户端连接:将来自于同一个客户端对所有端口的请求,始终定向至此前选定的RS;把所有端口统统定义为集群服务,一律向RS转发,对所有端口服务实现持久

[root@Director ~]# ipvsadm -A -t 172.16.1.110:0 -s rr -p 600
[root@Director ~]# ipvsadm -a -t 172.16.1.110:0 -r 172.16.1.103 -g 
[root@Director ~]# ipvsadm -a -t 172.16.1.110:0 -r 172.16.1.103 -g

四、PNMPP示例

PNMPP(Persistent Netfilter Marked Packet Persistence)

持久防火墙标记连接:将来自于同一个客户端对同一个防火墙标记的集群服务的请求,始终定向至此前选定的RS;对某几个端口服务实现持久

[root@Director ~]# iptables -t mangle -A PREROUTING -d 172.16.1.110 -i eth0 -p tcp --dport 80 -j MARK --set-mark 10
[root@Director ~]# iptables -t mangle -A PREROUTING -d 172.16.1.110 -i eth0 -p tcp --dport 443 -j MARK --set-mark 10
[root@Director ~]# ipvsadm -A -f 10 -s rr -p 600
[root@Director ~]# ipvsadm -a -f 10 -r 172.16.1.103 -g 
[root@Director ~]# ipvsadm -a -f 10 -r 172.16.1.104 -g



你可能感兴趣的:(LVS,pcc,ppc)