热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

环境介绍一台windows名为W1,三台虚拟机分别为LVS-Server,Real-Web-Server1,Real-Web-Serve

环境介绍


  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模式)


总结

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

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


推荐阅读
  • 护墙_搭建LVS负载均衡NAT和DR模式
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了搭建LVS负载均衡NAT和DR模式相关的知识,希望对你有一定的参考价值。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
  • Linux系统高级网络配置:链路聚合
    链路聚合网卡的链路聚合就是将多块网卡连接起来,当一块网卡损坏,网络依旧可以正常运行,可以有效的防止因为网卡损坏带来的损失,同 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • php网站设计实验报告,php网站开发实训报告
    本文目录一览:1、php动态网站设计的关键技术有哪些软件,及搭建步骤需要哪些页面,分别完成 ... [详细]
  • LVS服务器集群系统
    LVS介绍LVS:LinuxVirtualServer,负载调度器,内核集成,章文嵩(花名正明),阿里的四层SLB(ServerLoadBalance)是基于LVS+keepali ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • [翻译]微服务设计模式5. 服务发现服务端服务发现
    服务之间需要互相调用,在单体架构中,服务之间的互相调用直接通过编程语言层面的方法调用就搞定了。在传统的分布式应用的部署中,服务地 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了SpringCloudRibbon部分源码相关的知识,希望对你有一定的参考价值。1:ribbon是提供通过servi ... [详细]
  • 之前项目在windows2003服务器上设置定时任务,每天执行。现在把项目移植到linux系统。也要在linux系统上设置计划任务。但是之前我从来没有做过。所以多得不 ... [详细]
  • 阿里云服务器iis设置方法与上千种Linux桌面版本相比,Linux服务器只有可怜的十几种。但想要选对适合你的企业需要的仍然不是件容易的事情,选Linux服务器首先要 ... [详细]
author-avatar
手机用户2502870457
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有