LVS负载均衡-三种模式(Dr模式)

环境介绍
  1. 一台windows名为W1,三台虚拟机分别为LVS-Server,Real-Web-Server1,Real-Web-Server2
  2. 模拟W1为外网客户端,访问LVS-Server服务器,LVS-Server请求响应分发给两台真实的WEB服务器Real-Web-Server1,Real-Web-Server2。
  3. LVS-Server、LVS-Server、Real-Web-Server1、Real-Web-Server2的eth0网卡为均选择为同一网卡。
搭建步骤
  1. IP设置
    W1的虚拟网卡Vmware1IP设置为200.168.10.4,子网掩码255.255.255.0
    LVS-Server设置双IP,eth0 eth0:0,eth0的IP设置为200.168.10.1,子网掩码255.255.255.0,eth0:0的IP设置为200.168.10.10,子网掩码255.255.255.255并添加路由 route add -host 200.168.10.10 dev eth0:0
    Real-Web-Server1的IP设置为200.168.10.2,子网掩码255.255.255.0,在回环网卡lo设置IP:200.168.10.10 ,子网掩码255.255.255.255,并添加路由 route add -host 200.168.10.10 dev lo0:0
    Real-Web-Server1的IP设置为200.168.10.3,子网掩码255.255.255.0,在回环网卡lo设置IP:200.168.10.10 ,子网掩码255.255.255.255,并添加路由 route add -host 200.168.10.10 dev lo0:0
    // LVS-Server IP设置
    # ifconfig eth0 200.168.10.1 netmask 255.255.255.0
    # ifconfig eth0:0 200.168.10.10 netmask 255.255.255.255
    // 添加路由
    # route add -host 200.168.10.10 dev eth0:0
    // Real-Web-Server1  IP设置
    # ifconfig eth0 200.168.10.2 netmask 255.255.255.0
    # ifconfig lo:0 200.168.10.10 netmask 255.255.255.255
    // 添加路由
    # route add -host 200.168.10.10 dev lo:0
    // Real-Web-Server2  IP设置
    # ifconfig eth0 200.168.10.3 netmask 255.255.255.0
    # ifconfig lo:0 200.168.10.10 netmask 255.255.255.255
    // 添加路由
    # route add -host 200.168.10.10 dev lo:0
    
    也可以通过修改配置文件设置,这里就不一一介绍,可查看相关资料设置。
  2. 关闭虚拟机的防火墙,以防影响服务器的响应。
    # service network status
    # service network stop
    
  3. LVS-Server服务器脚本设置
    开启路由功能:echo 1 >/proc/sys/net/ipv4/ip_forward
    编写shell脚本 lvs.sh
    #!/bin/bash
    #lsv.sh
    #清除LVS-Server调度表中的所有记录
    ipvsadm -C
    #增加一个带有调度算法的转换表,-rr 轮叫模式
    ipvsadm -At 200.168.10.10:80 -s rr
    #增加轮叫的服务器 -g dr模式
    ipvsadm -at 200.168.10.10:80 -r 200.168.10.2:80 -g
    ipvsadm -at 200.168.10.10:80 -r 200.168.10.3:80 -g
    
    给shell脚本设置执行权限 #chmod a+x lvs.sh
  4. Real-Web-Server1,Real-Web-Server2服务器脚本设置
    #!/bin/bash
    #arp.sh
    echo 1 >/pro/sys/net/ipv4/conf/lo/arp_ignore
    echo 1 >/pro/sys/net/ipv4/conf/lo/arp_announce
    echo 2 >/pro/sys/net/ipv4/conf/all/arp_ignore
    echo 2 >/pro/sys/net/ipv4/conf/all/arp_announce
    
    给shell脚本设置执行权限 #chmod a+x arp.sh
    为方便测试,给Real-Web-Server1,Real-Web-Server2两台服务器的网站根目录编写不同的页面,我写的是各自服务器的ip。
    Real-Web-Server1网站根目录编写页面index.html,内容为200.168.10.2
    Real-Web-Server2网站根目录编写页面index.html,内容为200.168.10.3
  5. 运行脚本
    运行LVS-Server服务器上的lvs.sh脚本
    运行Real-Web-Server1服务器上的arp.sh脚本
    运行Real-Web-Server2服务器上的arp.sh脚本
  6. 在W1的浏览器上访问200.168.10.10
    每隔五秒左右刷新,页面呈现不同的IP,则设置成功。

如果没有出现理想效果,请检查 1.各服务器防火墙是否处于关闭状。2.web服务是否开启。3.W1、LVS-Server,Real-Web-Server1,Real-Web-Server2之间能否ping通。4.检查各服务器的IP是否设置正确。

相关资料:
LVS负载均衡(LVS简介、三种工作模式、十种调度算法)
linux安装ipvsadm-1.24
LVS负载均衡-三种模式(Nat模式)

总结

如果您对这个文章有任何异议,那么请在文章评论处写上你的评论。
愿大家都能在编程这条路,越走越远。

拥有诚实,就舍弃了虚伪;拥有充实,就舍弃了无聊;拥有踏实,就舍弃了浮躁。不论是有意的丢弃,还是意外的失去,只要曾经真实的拥有,在一些时候,大度的舍弃不也是一种境界吗?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值