lvs-DR

lvs-DR数据包流向分析

client向目标VIP发出请求。

DIR根据负载均衡算法一台active的RS(RIR1),将RIP1所在的网卡的mac地址作为目标的mac地址,发送到局域网里。

RIRI在局域网中的收到这个帧,拆开后发现目标(VIP)与本地匹配,于是你就会处理这个报文,随后重新封装报文,发送到局域网。

lvs-DR中ARP问题

1、如何让域名服务器不响应泛洪广播

防止网关路由发送ARP广播时调度器和节点服务都会进行响应导致ARP缓存表混乱,不对非本地物理网卡arp请求进行响应,因为vip是承载lo:0。

总结:为防止网关路由器发送ARP广播时调度器和节点都会进行响应,这会导致ARP缓存表混乱,不对非本地物理网卡的arp请求进行响应,因为VIP时承载lo:o。

命令arp ignore=1。

作用:控制系统在接收到ARP广播请求报文时,是否返回ARP响应报文。

1的作用:只响应目的IP地址接受网卡上的本地的ARP请求。

2、路由器根据ARP表项,会将新来的请求报文转发给RealServer,导致Director的VIP失效

arp announce =2

系统不使用响应数据包的源IP地址(VIP)来作为本机进行ARP请求报文的源IP地址,而使用发送报文的物理网卡IP地址作为ARP请求报文源IP地址,这样我们就可以防止网关路由器收到的源IP地址为VIP的ARP请求的报文后又更新ARP缓存表,导致外网再发送请求时,到达不了调度器。

注:在节点服务器上配置。

lvs-DR的特性

1、 Director Server和 Real Server必须在同一个物理网络中。

2、Real Server可以使用私有地址,也可以使用公网地址。如果使用公网地址,可以通过互联网对 RIP进行直接访问。

3、Director Server作为群集的访问入口,但不作为网关使用。

4、所有的请求报文经由Director Server,但回复响应报文不能经过 Director Server。

5、Real Server 的网关不允许指向 Director Server IP,即Real Server发送的数据包不允许经过DirectorServer。

6、 Real Servert上的lo接口配置VIP的IP地址。

优点:

负载均衡器只负责将请求包分给物理服务器,而物理服务器将应答包直接发送给用户。所以负载均衡器能处理很巨大的请求流量,这种方式,一台负载均衡能为超过100m物理服务器服务,负载均衡器不再是系统瓶颈,使用LVS-DR方式,如果你的负载均衡器拥有100M全双工网卡的话。就使用证LVS能达到1G吞吐量,基至更高。

缺点:

所有的调度器和节点服务器在同个广摇域,不支持异地容灾。

实验:

1.配置负载调度器

复制代码
systemctl stop firewalld.service
setenforce 0
modprobe ip_vs
cat /proc/net/ip_vs
yum -y install ipvsadm

配置虚拟 IP 地址

复制代码
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:0
复制代码
ifup ens33:0

调整 proc 响应参数

配置负载分配策略

复制代码
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm

ipvsadm -C
ipvsadm -A -t 192.168.11.180:80 -s rr
ipvsadm -a -t 192.168.11.180:80 -r 192.168.11.33:80 -g			
ipvsadm -a -t 192.168.11.180:80 -r 192.168.11.11:80 -g
ipvsadm-save > /etc/sysconfig/ipvsadm

2.配置节点服务器

复制代码
systemctl stop firewalld.service
setenforce 0

cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:0		

vim ifcfg-lo:0
DEVICE=lo:0
ONBOOT=yes
IPADDR=192.168.10.180
NETMASK=255.255.255.255		
复制代码
ifup lo:0
route add -host 192.168.10.180 dev lo:0

vim /etc/rc.local
/sbin/route add -host 192.168.10.180 dev lo:0
chmod +x /etc/rc.d/rc.local

调整内核的 ARP 响应参数以阻止更新 VIP 的 MAC 地址,避免发生冲突

复制代码
vim /etc/sysctl.conf
sysctl -p
复制代码
yum -y install nfs-utils rpcbind httpd
systemctl start rpcbind
systemctl start httpd

输入数据

复制代码
mount.nfs 192.168.11.55:/opt/kgc /var/www/html
echo 'this is kgc web!' > /var/www/html/index.html

mount.nfs 192.168.11.55:/opt/benet /var/www/html
echo 'this is benet web!' > /var/www/html/index.html

测试结果

相关推荐
路飞雪吖~几秒前
【Linux】共享内存
java·linux·服务器
宇钶宇夕39 分钟前
MODBUS RTU通信协议详解与调试指南
运维·程序人生·自动化
maomi_952642 分钟前
操作系统之EXT文件系统
linux·服务器
小羊Linux客栈3 小时前
自动化:批量文件重命名
运维·人工智能·python·自动化·游戏程序
伤不起bb4 小时前
MySQL 高可用
linux·运维·数据库·mysql·安全·高可用
whgjjim6 小时前
docker迅雷自定义端口号、登录用户名密码
运维·docker·容器
瀚高PG实验室9 小时前
连接指定数据库时提示not currently accepting connections
运维·数据库
QQ2740287569 小时前
Soundness Gitpod 部署教程
linux·运维·服务器·前端·chrome·web3
淡忘_cx9 小时前
【frp XTCP 穿透配置教程
运维
南方以南_9 小时前
Ubuntu操作合集
linux·运维·ubuntu