11.4.1 LVS-DR
2024-10-20 11:54:07
Virtual Server via Direct Routing(VS-DR):
用直接路由技术实现虚拟服务器。当参与集群的计算机和作为控制管理的计算机在同一个网段时可以用此方法,控制管理的计算机接收到请求包时直接送到参与集群的节点。直接路由模式比较特别,很难说和什么方面相似,前种模式基本上都是工作在网络层上(三层),而直接路由模式则应该是工作在数据链路层上(二层)。
工作原理:
DR和REAL SERVER都使用同一个IP对外服务。但只有DR对ARP请求进行响应,所有REAL SERVER对本身这个IP的ARP请求保持静默。也就是说,网关会把对这个服务IP的请求全部定向给DR,而DR收到数据包后根据调度算法,找出对应的 REAL SERVER,把目的MAC地址改为REAL SERVER的MAC并发给这台REALSERVER。这时REAL SERVER收到这个数据包,则等于直接从客户端收到这个数据包无异,处理后直接返回给客户端。由于DR要对二层包头进行改换,所以DR和REAL SERVER之间必须在一个广播域,也可以简单的理解为在同一台交换机上。
LVS负载均衡DR工作流程
(1) 当用户请求到达Director Server,此时请求的数据报文会先到内核空间的PREROUTING链。 此时报文的源IP为CIP,目标IP为VIP
(2) PREROUTING检查发现数据包的目标IP是本机,将数据包送至INPUT链
(3) IPVS比对数据包请求的服务是否为集群服务,若是,将请求报文中的源MAC地址修改为DIP的MAC地址,将目标MAC地址修改RIP的MAC地址,然后将数据包发至POSTROUTING链。 此时的源IP和目的IP均未修改,仅修改了源MAC地址为DIP的MAC地址,目标MAC地址为RIP的MAC地址
(4) 由于DS和RS在同一个网络中,所以是通过二层来传输。POSTROUTING链检查目标MAC地址为RIP的MAC地址,那么此时数据包将会发至Real Server。
(5) RS发现请求报文的MAC地址是自己的MAC地址,就接收此报文。处理完成之后,将响应报文通过lo接口传送给eth0网卡然后向外发出。 此时的源IP地址为VIP,目标IP为CIP
(6) 响应报文最终送达至客户端
LVS负载均衡DR特点:
1、保证前端路由将目标地址为VIP报文统统发给Director Server,而不是RS
2、RS可以使用私有地址;也可以是公网地址,如果使用公网地址,此时可以通过互联网对RIP进行直接访问
3、RS跟Director Server必须在同一个物理网络中
4、所有的请求报文经由Director Server,但响应报文必须不能经过Director Server
5、不支持地址转换,也不支持端口映射
6、RS可以是大多数常见的操作系统
7、RS的网关绝不允许指向DIP(因为我们不允许他经过director)
8、RS上的lo接口配置VIP的IP地址
最新文章
- CRL快速开发框架系列教程八(使用CRL.Package)
- android两种基本联网方式与一种第三方开源项目的使用
- 4.3.5 使用Http:// (Https://)协议连接到ActiveMQ 2015年9月28日
- PagerHelper-分页类
- centos nc命令安装
- JavaBean-DAO模式
- android webview web里面的数据透传到java以及java的数据透传到web
- Isilon OneFS Simulator Install Guide
- 安装Sass的一些注意事项
- 使用spring-amqp结合使用rabbitmq
- # MongoDB学习笔记(持续更新)
- 使用ICE进程间通信时,IP和端口的选择
- [Head First Python]1. 初始python-人人都爱列表
- 如何开发auto complete 智能提示功能
- 《C++ Primer》之重载操作符与转换(中)
- DataTable的名称要后设置
- Bzoj4916: 神犇和蒟蒻
- RubyGems系列之RubyGems初识
- C点滴成海------Ubuntu怎么运行C语言
- 递归获取包下的class文件