基于DR的LVS负载均衡模型搭建

理论知识参考
https://blog.csdn.net/weixin_40470303/article/details/80541639

一 环境搭建

在VM ware上创建3个centos 7的节点,并使用NAT模式与宿主机联网,因此,3个节点属于同一局域网。
安装虚拟机和用NAT模式联网可以参考这篇:
https://blog.csdn.net/babyxue/article/details/80970526
但需要注意博文中使用的是NAT模式而不是桥接模式,且只需要修改网卡配置即可。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
配置好了就可以用xshell等远程工具连上了
顺便把net-tools装上,就可以使用ifconfig等命令了,也正好测试下网络是否通了

yum install net-tools -y

NAT模式下,宿主机会生成一个VMnet8的虚拟网卡,VMware会生成一个网关,虚拟机所在局域网使用此网关与VMnet8的网卡通信,VMnet8的网卡再与互联网通信
VMnet8:
在这里插入图片描述
VMware nat模式下的网关
在这里插入图片描述
我这里VMnet8网卡使用192.168.153.1的地址,网关使用192.168.153.2的地址,虚拟机局域网使用192.168.153.0的网段,三个节点分别是100,101,102的静态ip
大致流程如下图
在这里插入图片描述在这里插入图片描述

二 DR模型搭建

首先,大致流程:

  • node1 做负载均衡服务器、node2,node3做realServer
  • node1需要有一个VIP(virtual ip),收到目标地址为VIP的数据包时,node1将其负载均衡转发出去
  • node2,node3也需要有VIP,否则无法收到这个数据包。同时这个VIP将隐藏起来不广播出去

设置node1

  1. 新增一个虚拟网卡,并设置vip
  2. 下载ipvsadm, Linux 自带LVS,在内核中叫做 ipvs模块 ,ipvsadm 就是用于操作ipvs内核的应用程序
    在这里插入图片描述
  3. 设置收到200的包时,通过轮询算法转发到101,102的ip上去。(由于101,102是在局域网内,所以自然会通过arp协议获取到node1,node2的mac地址了,node1和node2是可以收到包的)
    (-A的命令是设置200的包通过轮询算法转发,-a是设置每一个转发的节点)
    在这里插入图片描述

设置node2,node3

  1. 要想隐藏起VIP,需要修改内核。
    而修改内核只需要修改对应文件里的值
    对应文件就是arp_ignore和arp_announce,具体作用可以百度,修改其值arp_ignore为1,arp_announce为2
    可以查看一下原来的值:
    在这里插入图片描述
    注:内核文件无法通过vi命令修改,只能用echo的方式修改
    还需要修改all
    在这里插入图片描述
    在lo网卡上新增一个ip为vip,并且子网一定得是255.255.255.255(否则192.168.153.0网段的包也会被转发到lo网卡上了,远程连接直接就会断掉)
    在这里插入图片描述
  2. 安装httpd,httpd可以理解为一个小型的tomcat
    就不截图了,再分别修改index.html,可以通过不同的index.html分辨请求负载到哪一台real server
yum install httpd -y
service httpd start
vi   /var/www/html/index.html
from node2

验证

在这里插入图片描述
刷新一下 from node2
并且node2,node3 和 宿主机的浏览器建立了socket连接
在这里插入图片描述
附:arp_ignore和arp_announce的说明
在这里插入图片描述
2个配置搭配起来,就能实现隐藏起 lo网卡上的vip
参考 https://blog.51cto.com/ouziyou/1737626

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值