zoukankan      html  css  js  c++  java
  • LVS-DR 模式

    环境:

    nat  网卡   192.168.10.0/24  网段

    仅主机 网卡    10.0.0.0/8   网段

    client  192.168.10.10/24     客户端

    route  192.168.10.20/24  10.0.0.10/8 路由器

    dr   10.0.0.40/8      LVS-DR 服务器

    rs1   10.0.0.20/8      httpd 服务器

    rs2   10.0.0.30/8      httpd 服务器

    配置 client 环境

    配置 IP 地址

     

    配置 route

    1、配置 IP地址

     

     

    2、配置路由转发

     

    配置 lvs dr 环境

    1、配置 IP 地址

     

    2、安装用户空间的命令行工具

     

    3、编写 dr 脚本

     

    #!/bin/bash
    vip='10.0.0.100'
    iface='lo:1'
    mask='255.255.255.255'
    port='80'
    rs1='10.0.0.20'
    rs2='10.0.0.30'
    scheduler='wrr'
    type='-g'
    rpm -q ipvsadm &> /dev/null || yum -y install ipvsadm &> /dev/null
    
    case $1 in
    start)
        ifconfig $iface $vip netmask $mask #broadcast $vip up
        iptables -F
    
        ipvsadm -A -t ${vip}:${port} -s $scheduler
        ipvsadm -a -t ${vip}:${port} -r ${rs1} $type -w 1
        ipvsadm -a -t ${vip}:${port} -r ${rs2} $type -w 1
        echo "The VS Server is Ready!"
        ;;
    stop)
        ipvsadm -C
        ifconfig $iface down
        echo "The VS Server is Canceled!"
        ;;
    *)
        echo "Usage: $(basename $0) start|stop"
        exit 1
        ;;
    esac

    配置 httpd 服务器 rs1

    1、配置 IP 地址

     

    2、安装 httpd 服务

     

    3、编写 rs1 脚本

     

    #!/bin/bash
    vip=10.0.0.100
    mask='255.255.255.255'
    dev=lo:1
    rpm -q httpd &> /dev/null || yum -y install httpd &>/dev/null
    service httpd start &> /dev/null && echo "The httpd Server is Ready!"
    echo "<h1>`hostname`</h1>" > /var/www/html/index.html
    
    case $1 in
    start)
        echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
        ifconfig $dev $vip netmask $mask #broadcast $vip up
        #route add -host $vip dev $dev
        echo "The RS Server is Ready!"
        ;;
    stop)
        ifconfig $dev down
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
        echo "The RS Server is Canceled!"
        ;;
    *)
        echo "Usage: $(basename $0) start|stop"
        exit 1
        ;;
    esac

    配置 httpd 服务器 rs2

    1、配置 IP 地址

     

    2、安装 httpd 服务

     

     

    3、编写 rs2 脚本

     

    #!/bin/bash
    vip=10.0.0.100
    mask='255.255.255.255'
    dev=lo:1
    rpm -q httpd &> /dev/null || yum -y install httpd &>/dev/null
    service httpd start &> /dev/null && echo "The httpd Server is Ready!"
    echo "<h1>`hostname`</h1>" > /var/www/html/index.html
    
    case $1 in
    start)
        echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
        ifconfig $dev $vip netmask $mask #broadcast $vip up
        #route add -host $vip dev $dev
        echo "The RS Server is Ready!"
        ;;
    stop)
        ifconfig $dev down
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
        echo "The RS Server is Canceled!"
        ;;
    *)
        echo "Usage: $(basename $0) start|stop"
        exit 1
        ;;
    esac

    使用 client 分别访问 rs1 和 rs2 进行测试

     

    再次使用 client 通过 VIP 进行访问,负载均衡效果实现

     

     
  • 相关阅读:
    Altium Designer的PCB定位槽制作
    J-LINK V8固件烧录指导
    简单实用的双向电平转换电路(3.3v-5v)
    Altium Designer 文档信息设置以及模板制作
    第十周作业
    第九周作业
    第8周作业作业
    第七周作业
    linux作业
    马哥教育第一阶段考试(月考)
  • 原文地址:https://www.cnblogs.com/d1anlong/p/11869491.html
Copyright © 2011-2022 走看看