龍子 发表于 2019-1-5 07:22:34

LVS之DR模式

  DR(调度器将请求来的数据包的目标mac地址改为real server的mac地址,返回的时候也不经过调度器,直接返回给客户端)
  

  每个real server 都要有公网ip
  

  

  配置要求三台机器
  每个网卡都要配置公网ip
  LVS/DR 配置
  三台机器:
  director(eth0192.168.1.123, vip eth0:0: 192.168.1.128)
  real server1(eth0 rip: 192.1.122, vip lo:0: 192.168.1.128)
  real server2(eth0 rip: 192.168.1.124, vip lo:0: 192.168.1.128)
  Director 上 vim /usr/local/sbin/lvs_dr.sh //增加
  

  #! /bin/bash
  echo 1 > /proc/sys/net/ipv4/ip_forward
  ipv=/sbin/ipvsadm
  vip=192.168.1.128
  rs1=192.168.1.122
  rs2=192.168.1.124
  ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up
  route add -host $vip dev eth0:0
  $ipv -C
  $ipv -A -t $vip:80 -s rr 增加dir -s算法
  $ipv -a -t $vip:80 -r $rs1:80 -g -w 1 增加rs
  $ipv -a -t $vip:80 -r $rs2:80 -g -w 1 -g是dr模式 -m是net模式
  

  

  两台rs上:vim /usr/local/sbin/lvs_dr_rs.sh
  #! /bin/bash
  vip=192.168.1.128
  ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
  route add -host $vip lo:0
  echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
  echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
  echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
  然后director上执行: bash /usr/local/sbin/lvs_dr.sh
  两台rs上执行: bash /usr/local/sbin/lvs_dr_rs.sh
  Windows下浏览器测试访问
  测试的时候要用vip 192.168.1.128
  curl 192.168.1.128
  




页: [1]
查看完整版本: LVS之DR模式