4232342 发表于 2016-5-4 09:21:49

LVS(dr)模式部署指南

由于DR模式中,VS/DR只负责数据的转发,而数据的返回则是由后端服务器直接返回给客户端,从而降低了VS/DR的负载,所以DR模式是大多数公司的第一选择。
以下是DR模式的官方网络拓扑:


从上图可以看中,后端服务器与dr之间,必须处于同一物理网段。但是根据TCP层的协议,如果数据包是客户端传向VIP的,那么客户端收到的也必须是VIP地址,所以在配置LVS后端服务器的时候,也需要配置VIP。而仅仅配置VIP也不能满足负载均衡本身的要求(在有任意一台服务器宕机时,另外的服务器可以随时托管业务),假如有任意的一台后端服务器宕机,VIP返回时,会同时携带其ARP信息致客户端,因此,在配置的时候也需要忽略ARP的返回才可以避免出现问题(具体配置可参考Linux调优-网络调优章节)。
LVS的部署需要以下条件支持:
Director Server服务端:
    安装包:
      ipvsadm:通过yum info ipvsadm(官方源)可以查看到其安装包的相关信息(如版本,大小等),通过yum install ipvsadm即可。
    转发开启:
      net.ipv4.ip_forward = 1 (配置/etc/sysctl.conf后,执行sysctl -p启用参数)
    配置文件:
      修改/etc/sysconfig/ipvsadm,加入restart和stop时保存已配置或修改的功能,以防配置后没有save导致配置丢失
      IPVS_SAVE_ON_STOP="yes"
      IPVS_SAVE_ON_RESTART="yes"
    VIP配置:
      ifconfig eth0:0 VIP broadcast VIP netmask 255.255.255.255 up    #配置VIP网卡
      route add -host VIP dev eth0:0    #配置VIP的路由
      ipvsadm -A -t VIP:80 -s wrr -p 3   
            -A:添加一个虚拟服务
            -t:指定为TCP服务,对外提供VIP的80端口进行服务,如果需要配置NAT,也是配置VIP的相应端口
            -s:调度方法,这里的wrr是指加权轮询。具体的可支持方法可以参考man手册
            -p:指定服务器持久性会话的超时时长,默认为300s
      ipvsadm -a -t VIP:80 -r RIP1:80 -g -w 1
            -a:添加一个后端服务器
            -t:指定其占用的VIP以及VIP的端口
            -r:指定后端服务器的RIP和应用端口
            -g:使用指定的网关
            -w:权重值
      ipvsadm -a -t VIP:80 -r RIP2:80 -g -w 1
RS客户端配置:
    ARP返回忽略,返回地址改变为可与客户端通信的地址(announce为通告模式):
      net.ipv4.conf.default.arp_announce = 2
      net.ipv4.conf.all.arp_announce = 2
      net.ipv4.conf.default.arp_ignore = 1
      net.ipv4.conf.all.arp_ignore = 1
    配置VIP网卡:
    ifconfig lo:0 VIP netmask 255.255.255.255 broadcast VIP
    route add -host VIP dev lo:0


页: [1]
查看完整版本: LVS(dr)模式部署指南