LVS-DR实现web调度模式

来源:互联网 发布:北京国税开票软件下载 编辑:程序博客网 时间:2024/06/03 16:54

 实现LVS-DR调度web模式

  • 拓扑环境

image

网络环境

RS1       RIP 192.168.198.138/24    VIP 192.168.198.100/32    GW  192.168.198.130RS2     RIP 192.168.198.132/24    VIP 192.168.198.100/32    GW  192.168.198.130VS    DIP 192.168.198.128/24    VIP 192.168.198.100/32    GW  192.168.198.130    route     192.168.198.130/24    172.16.253.166/16Client     172.16.254.150/16    GW 172.16.253.166RS1,RS2的网关指向192.168.198.130

RS1

[root@RS1 html]# route del default gw 192.168.198.128[root@RS1 html]# route add default gw 192.168.198.130[root@RS1 ~]# iptables -F[root@RS1 ~]# yum -y install httpd[root@RS1 ~]# vim /var/www/html/index.html     welcome to RS1[root@RS1 ~]# service httpd start

RS2

[root@RS2 network-scripts]# route add -net 172.16.0.0/16 gw 192.168.198.130[root@RS2 network-scripts]# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface172.16.0.0      192.168.198.130 255.255.0.0     UG    0      0        0 ens34192.168.198.0   0.0.0.0         255.255.255.0   U     100    0        0 ens34[root@RS2 ~]# iptables -F[root@RS2 ~]# yum -y install httpd[root@RS2 ~]# vim /var/www/html/index.html     welcome to RS2[root@RS2 ~]# systemctl start httpd 

VS

添加网关路由信息[root@VS ~]# route add default gw 192.168.198.130[root@VS ~]# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface0.0.0.0         192.168.198.130 0.0.0.0         UG    0      0        0 ens34192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0192.168.198.0   0.0.0.0         255.255.255.0   U     100    0        0 ens34[root@VS ~]# vim lvs_dr.sh#! /bin/bashvip=192.168.198.100server=$vip:80rip1=192.168.198.138rip2=192.168.198.132sch=wlcdev=ens34:1   \\绑定网卡ens34case $1 instart)    ifconfig $dev $vip/32 broadcast $vip  \\绑定vip到ens34网卡上    iptables -F    ipvsadm -A -t $server -s $sch    ipvsadm -a -t $server -r $rip1 -g -w 3    ipvsadm -a -t $server -r $rip2 -g -w 1    ;;stop)    ipvsadm -C    ipconfig $dev down    ;;*)    echo "Usage:$(basename $0) start|stop"    exit 1    ;;esac[root@danran ~]# bash lvs_dr.sh start[root@danran ~]# ipvsadm -LnIP Virtual Server version 1.2.1 (size=4096)Prot LocalAddress:Port Scheduler Flags  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn  TCP  192.168.198.100:80 wlc  -> 192.168.198.132:80           Route   1      0          0           -> 192.168.198.138:80           Route   3      0          0     

添加RS1和RS2的VIP

dr_vip_rs.sh 为添加RS服务端VIP地址的脚本[root@RS1 ~]# vim dr_vip_rs.sh #!/bin/bash#vip=192.168.198.100mask='255.255.255.255'dev=lo:1case $1 instart)   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 "VS 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 "VS server is Cancel"   ;;*)   echo "Usage $(basename $0) start|stop"   exit 1   ;;esac   [root@RS1 ~]# bash dr_vip_rs.sh startVS server is Ready [root@RS2 ~]# bash dr_vip_rs.sh startVS server is Ready 

client

添加路由[root@danran ~]# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth00.0.0.0         172.16.0.1      0.0.0.0         UG    0      0        0 eth0[root@danran ~]# route del default gw 172.16.0.1 [root@danran ~]# route add default gw 172.16.253.166 \\添加默认路由[root@danran ~]# route -nKernel IP routing tableDestination     Gateway         Genmask         Flags Metric Ref    Use Iface169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth00.0.0.0         172.16.253.166  0.0.0.0         UG    0      0        0 eth0测试  [root@danran ~]# for i in {1..10};do curl --connect-timeout 1 192.168.198.100 ;sleep 1;done      welcome to RS2welcome to RS1welcome to RS1welcome to RS1welcome to RS2welcome to RS1welcome to RS1welcome to RS1welcome to RS2welcome to RS1
原创粉丝点击