运维企业专题——LVS的DR模式搭建

LVS的DR模式

原理部分请看作者博文
https://blog.csdn.net/zhaoliang_Guo/article/details/96862679

准备工作
准备三个rhel7.3虚拟机,设置ip和hostname如下,并搭建好yum源

IPhostname
172.25.254.1server1
172.25.254.2server2
172.25.254.3server3
DR模式的搭建

1.把server1当作DS,现在server1上下载ipvsadm并配置

yum install ipvsadm -y

下载好后需要建下面这个文件,否则无法启动ipvsadm

touch /etc/sysconfig/ipvsadm

然后重新启动ipvsadm

systemctl start ipvsadm

配置ipvsadm的配置文件

vim /etc/sysconfig/ipvsadm-config 

 14 # Save current ipvs rules on restart.
 15 #   Value: yes|no,  default: no
 16 # Saves all ipvs rules to /etc/sysconfig/ipvsadm if ipvsadm gets
 17 # restarted.
 18 IPVS_SAVE_ON_RESTART="yes"
 19 

把18行的no改为yes,目的是让我们重新启动ipvsadm的时候,把写的策略保存进去
在这里插入图片描述
编写策略

[root@server1 ~]# ipvsadm -A -t 172.25.254.100:80 -s rr		此ip是vip(虚拟ip)
[root@server1 ~]# ipvsadm -a -t 172.25.254.100:80 -r 172.25.254.2:80 -g
[root@server1 ~]# ipvsadm -a -t 172.25.254.100:80 -r 172.25.254.3:80 -g
[root@server1 ~]# cat /etc/sysconfig/ipvsadm
[root@server1 ~]# systemctl restart ipvsadm.service 
[root@server1 ~]# cat /etc/sysconfig/ipvsadm
-A -t 172.25.254.100:80 -s rr
-a -t 172.25.254.100:80 -r 172.25.254.2:80 -g -w 1
-a -t 172.25.254.100:80 -r 172.25.254.3:80 -g -w 1

在这里插入图片描述
此时我们还需要添加vip,

ip addr add 172.25.254.100/24 dev eth0

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

  • 1.添加vip ###是为了回包

       ip addr add 172.25.254.100/24 dev eth0
    

    http在之前已经做过,把它启动

      [root@server2 ~]# cat /var/www/html/index.html 
      server2 www.gzl.com
      [root@server2 ~]# systemctl start httpd
    

在这里插入图片描述
在server3虚拟机

  • 添加vip

      [root@server3 ~]# ip addr add 172.25.254.100/24 dev eth0
      [root@server3 ~]# cat /var/www/html/index.html 
      server3 bbs.gzl.com
      [root@server3 ~]# systemctl start httpd
    

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

这样做好后仍然存在问题
因为DS和RS都有一个一样的ip,有可能client,直接访问到了rs,这是我们不想看到的
因为这样的话可能会受到DDOS攻击,也没有起到负载均衡的作用

所以我们的RS需要arptables来防止,如果RS上接受到访问vip的请求就拒绝掉
这样访问vip时只能有DS接受,可以通过vip转换为mac地址来调度RS
RS数据返回时,不会回包,直接返回给client,但返回时它的ip需要是vip所以需要转换一下

操作:
在server2和server3上安装arptables

yum install -y arptables.x86_64

安装好后,编写策略

[root@server2 ~]# arptables -A INPUT -d 172.25.254.100 -j DROP
[root@server2 ~]# arptables -A OUTPUT -s 172.25.254.100 -j mangle --mangle-ip-s 172.25.254.2

编写好后还需要将策略导入文件

[root@server2 ~]# arptables-save > /etc/sysconfig/arptables 
[root@server2 ~]# cat /etc/sysconfig/arptables 
*filter
:INPUT ACCEPT
:OUTPUT ACCEPT
:FORWARD ACCEPT
-A INPUT -j DROP -d 172.25.13.100 
-A OUTPUT -j mangle -s 172.25.0.100 --mangle-ip-s 172.25.13.2 

在这里插入图片描述
在server3上同样操作

[root@server3 conf.d]# arptables -A INPUT -d 172.25.13.100 -j DROP
[root@server3 conf.d]# arptables -A OUTPUT -s 172.25.0.100 -j mangle --mangle-ip-s 172.25.13.3
[root@server3 conf.d]# arptables-save > /etc/sysconfig/arptables
[root@server3 conf.d]# cat /etc/sysconfig/arptables 
*filter
:INPUT ACCEPT
:OUTPUT ACCEPT
:FORWARD ACCEPT
-A INPUT -j DROP -d 172.25.13.100 
-A OUTPUT -j mangle -s 172.25.0.100 --mangle-ip-s 172.25.13.3 

在这里插入图片描述
在真实主机上测试:

curl  172.25.254.100

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值