zoukankan      html  css  js  c++  java
  • lvs dr 模型配置详解

    前期准备:

    两台服务器 note01(lvs服务器) note02(real sever)

    1 首先在note01配置子网卡:

    ifconfig eth0:2 192.168.64.100/24

       :2意思是eth0的子接口,随便一个数字就可以,/24意为 255.255.255.0的另一种写法 也可以写成netmask 255.255.255.0

    2 配置note01 转发方式:

    echo 1 > /proc/sys/net/ipv4/ip_forward

       默认为0 意思为如果没有对应请求的IP,会将数据包丢弃,1为不会丢弃,而是通过路由来去转发请求。

    3 配置note02(real sever) 的响应,通告级别,禁止响应对VIP的ARP广播请求

    echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
    
    echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

    4 配置note02 的环回IP:

    ifconfig lo:5 192.168.64.100 netmask 255.255.255.255

      注意,这里:5与上边一样,可以随便写,但是后边必须写成netmask 255.255.255.255

    这里为什么是4个255?  因为网关192.168.64.0 是通过IP和 这个掩码进行云算计算出来的,如果这里也写成3个255,就会出现两个192.168.64.0,而lo环回接口要比eth0接口更为接近os内核,所以请求不会返回,而是直接进入环回接口,所以客户端可以发送请求,但是不会收到响应。

    第3 4 步顺序一定一定一定不能颠倒,否则还没有配置好接口就已经通告出去了,就不会起作用。

    5 为了检验lvs,我使用httpd服务进行一个简单验证,真实情况肯定就是在realsever上开启项目啦!

    在note02 上执行

    yum install httpd -y

    安装httpd服务

    进入目录/var/www/html

    cd /var/www/html
    
    vi index.html

    在index.html中写入from 192.168.64.134(note02的真实IP)进行验证

    执行命令

    service httpd start

    客户端验证:rip:80 可以正常显示

          vip:80不能正常显示

    6

    配置lvs vip note01

    yum install ipvsadm -y
    ipvsadm -A -t 192.168.64.100:80 -s rr 

    // rr为轮询机制 如果配置多台realsever 则请求平均分配 -t 基于tcp协议

    ipvsadm -a -t 192.168.64.100:80 -r 192.168.64.134 -g

     //-g :dr 模型 -t基于tcp协议

    ipvsadm -ln

    7

    浏览器刷新,访问vip:

    ipvsadm -lnc

     //查看note01 会有很多记录  (偷窥)

    netstat -natp

     //查看note01 没有记录 (说明请求直接跳过lvs 之后客户端会直接与realserver建立连接)

    如果能正常访问 则说明配置lvs成功,其实lvs就相当于一个路由的功能

  • 相关阅读:
    12.10
    4.06Android使用EditText小技巧汇总
    4.05
    4.04Android学习
    4.03Android学习
    4.02Android学习
    4.01Android学习
    3.31构建之法读后感3
    3.30Android学习
    3.29Android学习
  • 原文地址:https://www.cnblogs.com/fengwenzhee/p/10520517.html
Copyright © 2011-2022 走看看