LVS集群-DR模式-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
概念
LVS-DR模式也是最常用的lVS负载方式DR DIRECT ROUTING 直接路由模式
负载均衡器lVS调度器只负责请求和转发到后端的真实服务器但是影响结果由后端服务器直接转发给客户端不需要经过调度器处理减轻lVS调度器的负担提高了性能得出稳定性
简略图lVS-DR数据流向
lVS-DR模式的工作原理
- 客户端会发送请求到vip
- lVS的调度器接受请求之后根据算法选择一台真实的服务器请求转发到后端RS会把请求报文的目的mac地址修改成后端真实服务器的Mac地址转发
- 后端真实服务器接受请求处理完成之后由于后端 服务器直接把响应结果转发给客户端响应报文中的目的Mac地址修改成客户端的Mac地址直接把响应的报文转发发给客户端
- 调度器后端真实服务器都有vip地址调度器的地址和后端真实服务器在同一网段
详细的工作流程
它记住了双方的Mac地址可直接转发到后端客户端根据Mac地址来就那些转发数据包只能在同一网段转发
DR模式的特点
- 调度器的ip和真实服务器的IP必须在同一个物理网络中
- 真实的服务器的IP地址可以是私有地址也可以是工有地址。如果配置是公网通过互联网可直接访问PIP
- 调度器只作为入口但是不做网关需要把服务器的转发功能关闭
- 后端真实服务器的网关也不能指向调度器真实服务器的数据包不允许经过调度器
- 后端的真实服务器上基于LO接口配置vip的IP地址
复习一下ARP协议网络层协议将IP地址解析为物理Mac地址
ARP请求主机A和主机B
ARP的核心解决局域网内部电的通信IP地址和MAC地址的映射
DR模式的调度器和后端服务器都在一个网段中通过ARP请求实现局域网内部通信
常见的问题
问题一
由于调度器和后端真实的服务器都有相同的vip地址导致响应冲突ARP通信紊乱
对真实服务器进行处理真实服务器不响应针对vip的ARP的请求
Vip地址使用的LO的虚拟地址arp_ignore=1
后端的真实服务器只响应目的IP为本地IP也就是RIP后端服务器的真实IP地址ens33的网卡提供的地址
问题二
返回报文使用的源地址还是vip地址调度器也是vip怎么把响应返回到客户端不经过调度器呢
后端的真实服务器做一个内核参数的优化arp_announce=2 系统优化的意义系统不使用IP数据包的源地址来设置arp请求而是用真实的物理网卡
实验如何实现DR模式的负载均衡
Test1 20.0.0.51 调度器
Test2 20.0.0.52 web集群1
Test3 20.0.0.53 web集群2
Test4 NFS
Vip地址20.0.0.54
客户端随机选择
首先来到调度机
配置vip地址
关闭重定向的参数
调度器的内核优化
net.ipv4.ip_forward = 0
关闭服务器作为网关的转发功能
net.ipv4.conf.all.send_redirects = 0
控制是否发送ICMP的重定向消息禁止重定向
net.ipv4.conf.default.send_redirects = 0
禁止默认网络接口就是调度器的网卡发送ICMP的重定向消息
net.ipv4.conf.ens33.send_redirects = 0
指明网卡设备ens33不发送重定向消息
立即生效
先添加IP地址
添加web地址
配置共享服务
Test2 test3设置访问页面
Test2
Test3同样的操作
Test1配置
Ifconfig查看一下网卡设备
命令
route add -host 20.0.0.100 dev lo:0
把vip的地址绑定到lo:0,作为LVS的vip地址。标识告诉调度器进行转发请求的IP地址寻址
net.ipv4.conf.lo.arp_ignore = 1
#设置lo接口忽略来自任何接口的ARP请求
net.ipv4.conf.lo.arp_announce = 2
设置lo接口仅会响应本地的IP地址其他的接口ARP请求全部忽略
net.ipv4.conf.all.arp_ignore = 1
所有接口忽略来自任务接口的ARP请求
net.ipv4.conf.all.arp_announce = 2
# 所有接口仅会响应本地的IP地址的ARP请求其他的接口的ARP请求全部忽略
Test3同样的配置
拿共享服务器访问vip地址
Vip地址只做一件事情代理地址标识地址转发地址还有高可用功能
负载均衡算法
修改VIP的调度算法
ipvsadm -E -t 20.0.0.100:80 -s wrr
修改策略的轮训算法
例如
修改
指向后端的真实服务器
Forward负载均恒算法和负载均衡方式。Route就是DR模式
Weight后端服务器的轮训权重
ActiveConn:活跃连接表示调度器正在处理的活动连接数 这些连接正在进行传输数据或者正在进行交互
InActCoon:表示当前处于非活动状态的连接数已经建立连接但是目前没有数据传输第二个连接处于的等待状态
修改策略的轮询权重
ipvsadm -e -t 20.0.0.100:80 -r 20.0.0.52:80 -w 3
一定要先保存再重启
总结
LVS负载均衡的工作方式NAT DR最常用 TUN
NAT模式优点配置简单
缺点性能瓶颈
真实服务器所有支持所有
支持的网络模式私网
后端服务器数量low10-20
DR模式优点性能最好响应最好不用经过调度器直接到后端
缺点调度服务器和后端真实服务器不能跨网段
真实服务器NO-ARP 请求只能到真实服务器
支持的网络后端服务器即可以是内网也可以是外网
真实服务器数量100台
Tun模式很少用因为收费