LVS三种模型及其各自的特点:
NAT模型:
1、RS跟Director在同一子网
2、RIP使用私有地址,仅用于本地通信
3、Director工作在Clients和RS中间,负责处理进出的全部报文
4、RS网关要指向DIP
5、可以实现端口映射
6、RS可以是任何操作系统
7、Director在较大规模应用中会成为性能瓶颈
DR模型:
1、RS跟Director必须在同一物理网上 (VIP必须是公网地址)
2、RIP可以使用公网地址
3、Director仅处理请求报文
4、RS的网关不能指向DIP
5、不能使使用端口映射
6、大多数OS都可以用于RS
7、DR模型的Director能够处理比NAT模型多得多的请求
TUN模型(隧道模型):
1、RS跟Director不必在同一物理网络中
2、RIP一定不能使用私有地址
3、Director仅处理请求报文
4、响应报文不能经过Director
5、不能使用端口映射
6、仅允许支持隧道协议的OS用于RS
 
DR模型配置:(做实验时所有地址要在一个网段内,否则需要添加路由设备)
实验所用地址:
VIP:192.168.0.254(配置在网卡别名上)
RIP1:192.168.0.9(配置在lo别名上)
RIP2:192.168.0.10
 director上的配置:
  [root@localhost ~]# ifconfig eth0:1 192.168.0.254 broadcast 192.168.0.254 netmask 255.255.255.255
  [root@localhost ~]# route add -host 192.168.0.254 dev eth0:1 定义哪个地址接受的请求必须以该地址为源地址响应
  [root@localhost ~]# sysctl -w net.ipv4.ip_forward=1打开路由转发功能
  [root@localhost ~]# cat /proc/sys/net/ipv4/ip_forward 查看路由转发是否打开
   配置ipvsadm:
  [root@localhost ~]# ipvsadm -A -t 192.168.0.254:80 -s rr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.9 -g (-g 可以省略,默认就为DR模型)
  [root@localhost ~]# ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.10 -g
  [root@localhost ~]# ipvsadm -L -n查看规则
  [root@localhost ~]# service ipvsadm save 保存ipvsadm配置
 real server上的配置:
  [root@bogon ~]# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
  [root@bogon ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
  [root@bogon ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
  [root@bogon ~]# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
  [root@localhost ~]# ifconfig lo:0 192.168.0.254 broadcast 192.168.0.254 netmask 255.255.255.255
  [root@localhost ~]# route add -host 192.168.0.254 dev lo:0
在浏览器中输入http://192.168.0.254可以验证配置是否正常
 
 
NAT模型配置:
 VIP:192.168.0.8 
 DIP:192.168.100.10
 RS1:192.168.100.11
 RS2:192.168.100.12
 director:
  [root@localhost ~]# grep -i "vs" /boot/config-2.6.18-308.el5 查看内核是否支持ipvs
  [root@localhost ~]# yum -y install ipvsadm 安装ipvsadm
  [root@localhost ~]# sysctl -w net.ipv4.ip_forward=1 打开路由转发
  [root@localhost ~]# ipvsadm -A -t 192.168.0.8:80 -s rr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.8:80 -r 192.168.100.11 -m(如果使用端口映射,在RIP后加映射的端口,否则可以不加,默认和VIP端口一样)
  [root@localhost ~]# ipvsadm -a -t 192.168.0.8:80 -r 192.168.100.12 -m 
 支持权重的NAT配置:
 示例:
  [root@localhost ~]# ipvsadm -A -t 192.168.0.6:80 -s wrr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.6:80 -r 192.168.100.2 -w 3 -m
  [root@localhost ~]# ipvsadm -a -t 192.168.0.6:80 -r 192.168.100.3 -w 3 -m
在realserver上的配置同DR模型,请参考DR模型的配置
 
 
LVS持久连接类型:
 PCC 持久客户端连接,将同一个客户端的所有服务请求都定义到一个RS上
 PPC 只持久一种服务连接
 PFWM 持久防火墙标记,将指定的数种服务定义到一个RS上
 
 LVS持久连接的实现:

  在DR模型的基础上修改ipvs即可:
   [root@localhost ~]# ipvsadm -E -t 192.168.0.6:80 -s rr -p(PPC类型)
  
  使用PCC:
   将VIP后的端口号改为0即可
    例如:[root@localhost ~]# ipvsadm -A -t 192.168.0.6:0 -s wrr -p 使用持久连接模型时后面必须加-p
    
 PFWM的配置:
  [root@localhost ~]# iptables -t mangle -A PREROUTING -d 192.168.0.66 -p tcp --dport 80 -j MARK --set-mark 1
  [root@localhost ~]# iptables -t mangle -A PREROUTING -d 192.168.0.66 -p tcp --dport 443 -j MARK --set-mark 1
  [root@localhost ~]# ipvsadm -A -f 1 -s rr
  [root@localhost ~]# ipvsadm -a -f 1 -r 192.168.0.2 -g
  [root@localhost ~]# ipvsadm -a -f 1 -r 192.168.0.3 -g
  [root@localhost ~]# ipvsadm -E -f 1 -s rr -p 修改为长连接
 
隧道模型配置和DR模型配置方法类似,但director和realserver可以再不同的网络,且RIP必须使用公网地址,配置方法请参照DR模型的配置
 
以上内容为个人实验大致步骤,仅供参考