博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LVS搭建负载均衡(二)DR模型
阅读量:6002 次
发布时间:2019-06-20

本文共 2430 字,大约阅读时间需要 8 分钟。

应用场景:LVS配置负载均衡方式之一:dr

 

测试环境

      

      

 

 

配置步骤

  1. 在主机lvs上安装ipvsadm

    ~]# yum install ipvsadm -y

    ~]# ipvsadm    //启动;该命令由ipvsadm软件生成

    ~]# lsmod |grep ip_vs  //查看有无输出,若有,代表成功

     

 

  2. 新建配置脚本

    ~]# vim lvs-dr.sh

#!/bin/bashVIP=138.138.82.222RIP1=138.138.82.12RIP2=138.138.82.13/etc/rc.d/init.d/functionscase "$1" instart)           echo "start LVS of DirectorServer DR"            /sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.0 up           /sbin/route add -host $VIP dev eth0:0           #echo "1" >/proc/sys/net/ipv4/ip_forward      ##说明:dr模式不必开启ip转发           /sbin/ipvsadm -C                    ##可先清空一下           /sbin/ipvsadm -A -t $VIP:80 -s rr          ##这里测试的rr:轮询算法           /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g           /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g           /sbin/ipvsadm       ;;stop)           echo "stop LVS of DirectorServer DR"            #echo "0" >/proc/sys/net/ipv4/ip_forward    ##说明:同上           /sbin/ipvsadm -C           /sbin/ifconfig eth0:0 down           ;;*)          echo "Usage: $0 {start|stop}"           exit 1esacexit 0

  保存,退出;

 

  3. 运行脚本

    ~]# sh lvs-dr.sh start    //启动,出现如下显示代表正常

     

 

   4. 配置后端的web服务器(两台Nginx,搭建略)

    在web端的操作总结起来两点:

    绑定VIP至lo接口

    抑制RS(Real Server,此处值得两台Nginx)的arp帧

#!/bin/bash VIP=138.138.82.222/etc/rc.d/init.d/functionscase "$1" instart)           echo "start LVS of RealServer DR"            /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up           /sbin/route add -host $VIP dev 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       ;;stop)           /sbin/ifconfig lo:0 down           echo "close LVS of RealServer DR"            echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore           echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce           echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore           echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce           ;;*)          echo "Usage: $0 {start|stop}"           exit 1esacexit 0

  保存,退出;

  在Nginx-a和Nginx-b上依次执行该脚本,可以查看下接口:

  ~]# ifconfig  或者  ~]# ip a

   

 

 

  5测试

    经测试,在lvs该主机上直接curl是不能获取页面的,这里在另外一台机器上执行以下测试命令:

    ~]# while true; do curl 138.138.82.222; sleep 1; done

     

 

结束.

 

转载于:https://www.cnblogs.com/ding2016/p/7220457.html

你可能感兴趣的文章
mac的git的21个客户端
查看>>
Django之form表单实例
查看>>
Spring Cloud自定义引导属性源
查看>>
[共通]手机端网页开发问题及解决方法整理
查看>>
我的友情链接
查看>>
${basePath}
查看>>
linux命令之uniq简单用法
查看>>
使用Eclipse调试Java程序的10个技巧
查看>>
Hive分桶表
查看>>
oracle10g 启动时报错:ORA-32004 ORA-19905
查看>>
思科分发列表过滤路由(RIP)动态路由协议篇
查看>>
可登录的用户数量是1.6万个,软件的性能得到充分的考验
查看>>
[实战]MVC5+EF6+MySql企业网盘实战(23)——文档列表
查看>>
[译] ES2018(ES9)的新特性
查看>>
Javascript基础复习 数据类型
查看>>
C# Selenium 破解腾讯滑动验证
查看>>
bom与dom的区别
查看>>
Matlab2012a下配置LibSVM—3.18
查看>>
Java生成-zipf分布的数据集(自定义倾斜度,用作spark data skew测试)
查看>>
修复CefSharp浏览器组件中文输入Bug
查看>>