《Centos系统——shell脚本实现LVS之DR模式实战》

LVS之DR模式实战

3台机器
DS:192.168.179.130
RS1:192.168.179.131
RS2:192.168.179.132
VIP:192.168.179.100 ——>三台机器上都需要配置VIP

DR上操作

环境准备:

1. 关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

2. 加载ip_vs模块

[root@localhost ~]# modprobe ip_vs -----加载内核模块
[root@localhost ~]# cat /proc/net/ip_vs -----查看当前ip_vs模块加载情况
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn

3. 安装管理软件ipvsadm

[root@localhost ~]# yum -y install ipvsadm -----安装管理软件ipvsadm,不需要启动

4. 使用shell实现DR操作

[root@localhost ~]# vim lvs_service.sh -----编辑脚本
#!/bin/bash
VIP=192.168.179.100
RS1=192.168.179.131
RS2=192.168.179.132

case $1 in
start)
     ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
     route add -host $VIP dev lo:0
     ipvsadm -A -t $VIP:80 -s rr
     ipvsadm -a -t $VIP:80 -r $RS1:80 -g
     ipvsadm -a -t $VIP:80 -r $RS2:80 -g
     ;;
stop)
     ifconfig lo:0 down
     route del $VIP
     ;;
*)
     echo "Usage: $0 {start | stop}"
     exit
esac
sh lvs_service.sh start -----执行脚本
[root@localhost ~]# ipvsadm -Ln -----查看是否成功
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.179.100:80 rr
  -> 192.168.179.131:80           Route   1      0          0         
  -> 192.168.179.132:80           Route   1      0          0  

RS1和RS2上操作(两台操作基本一致)

1. 关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

2. 安装httpd

[root@localhost ~]#yum -y install httpd -----安装apache服务

3. 修改web访问页面

[root@localhost ~]# echo "test1" > /var/www/html/index.html  -----因为要测试,需要保持两台服务器页面不一致
[root@localhost ~]# echo "test2" > /var/www/html/index.html  -----因为要测试,需要保持两台服务器页面不一致
[root@localhost ~]# systemctl restart httpd -----重启apache

在这里插入图片描述
在这里插入图片描述

4. 使用shell实现RS1和RS2操作

[root@localhost ~]# vim rs_services.sh -----编辑脚本

#!/bin/bash
VIP=192.168.179.100

case $1 in
start)
    ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
    route add -host $VIP dev lo:0
    echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
    echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
    echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
    sysctl -p
    ;;
stop)
   ifconfig lo:0 down
   route del $VIP
   echo "0" > /proc/sys/net/ipv4/conf/lo/arp_ignore
   echo "0" > /proc/sys/net/ipv4/conf/all/arp_ignore
   echo "0" > /proc/sys/net/ipv4/conf/lo/arp_announce
   echo "0" > /proc/sys/net/ipv4/conf/all/arp_announce
   sysctl -p
   ;;
*)
   echo "Usage: $0 {start | stop}"
   exit
esac
[root@localhost ~]# sh rs_services.sh start -----执行脚本

5. 登录网页验证

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值