`
gaojingsong
  • 浏览: 1211854 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【LVS之DR模式】

阅读更多

官方的原理说明:Director接收用户的请求,然后根据负载均衡算法选取一台realserver,将包转发过去,最后由realserver直接回复给用户。

 

请求由LVS接受,由真实提供服务的服务器(RealServer, RS)直接返回给用户,返回的时候不经过LVS。

 

LVS-DR is based on IBM's NetDispatcher. The NetDispatcher sits in front of a set of webservers, which appear as one webserver to the clients. The NetDispatcher served http for the Atlanta and the Sydney Olympic games and for the chess match between Kasparov and Deep Blue.

 

When the packet CIP->VIP arrives at the director it is put into the OUTPUT chain as a layer 2 packet with dest = MAC address of the realserver. This bypasses the routing problem of a packet with dest = VIP, where the VIP is local to the director. When the packet arrives at the realserver, which finds the packet addressed to an IP local to the realserver (the VIP).



 

 

DR模式下需要LVS和绑定同一个VIP(RS通过将VIP绑定在loopback实现)。

 

一个请求过来时,LVS只需要将网络帧的MAC地址修改为某一台RS的MAC,该包就会被转发到相应的RS处理,注意此时的源IP和目标IP都没变,LVS只是做了一下移花接木。

 

RS收到LVS转发来的包,链路层发现MAC是自己的,到上面的网络层,发现IP也是自己的,于是这个包被合法地接受,RS感知不到前面有LVS的存在。

 

而当RS返回响应时,只要直接向源IP(即用户的IP)返回即可,不再经过LVS。

DR模式是性能最好的一种模式。

 

1. ARP广播会产生的问题

当客户端发起访问VIP 对应的域名的请求时,根据网络通信原理会产生ARP 广播,因为负载均衡器和真实的服务器在同一网络并且VIP设置在集群中的每个节点上,此时集群内的真实服务器会尝试回答来自客户端计算机的查找VIP的ARP广播,这就会产生问题,大家都说我是"VIP"。

 

2. 为了达到负载均衡的目的,必须想法办让真实服务器忽略来自客户端计算机的ARP广播请求

虚拟ip地址的广播地址是它本身,子网掩码是255.255.255.255。 为什么要这样呢?因为有若干机器要使用同一个ip地址,

用本身做广播地址和把子网掩码设成4个255就不会造成ip地址冲突了,否则lvs将不能正常转发访问请求。

 

 

LVS负载均衡原理:

    访问集群服务的请求都要先到达Director,由Director根据调度算法。把访问集群服务的请求均衡到后端的RealServer.

根据上述分析,要做下述一些配置:

1、请求报文流入

 因为,我们的 Directory、Realserver1、Realserver2 都配置有VIP地址,所以基于本地通讯的原理

       和LVS负载均衡的工作原理考虑:

 目的:要控制路由器把用户请求访问集群服务的数据报文只送到Director,

       不会把数据报文送到 RealServer.

 手段:通过控制无论任何时候路由器的ARP缓存中:VIP对应的MAC地址都是Director的VIP地址所在的

       网卡的MAC地址。这样保证路由器一定会把数据报文送到Director

 方法

   A)、在路由器做静态地址绑定:

   B)、aprtables,阻止路由器发送的ARP地址解析请求(请求VIP对应的MAC)进入RealServer

   C)、修改ReserServer主机的内核参数,将RS上的VIP配置在lo接口的别名上,并限制其不能响应

        对VIP地址解析请求,也不能把MAC地址通告出去。

LVS的dr模型,Director通过修改请求访问集群服务的报文的MAC地址实现把数据报文分发到后端的RealServer.

 所以,要保证Director能够基于MAC地址与后端的RealServer进行通信。

 方法:Director与RealServer在同一个物理网络。



 

2、响应报文流出

当RealServer 构建完响应报文之后,直接把报文送给客户端。

 因为,客户端请求的是VIP,所以,RealServer 构建的响应的数据报文的源IP是CIP(10.10.0.1)目标IP是VIP(172.10.0.9),客户端才会接收。

 所以,在RealServer中通过主机路由指定使用配置在lo:0的VIP对响应的数据报文进行封装。再通过eth0把响应的数据报文送达客户端。

由于RealServer的RIP是私有网络,不能把数据报文送达客户端。所以给RealServer指定一个默认网关,RealServer把不属于本网络的数据报文发给默认网关由默认网关把数据报文送达客户端。

  • 大小: 25 KB
  • 大小: 239.6 KB
0
0
分享到:
评论

相关推荐

    掌握LVS-DR模式原理、流程特点及搭建.doc

    LVS-DR 模式原理、流程特点及搭建 LVS-DR 模式是 Load Balancer 的一种实现方式,它可以将incoming请求分配到多个 Real Server 上,以提高系统的可用性和性能。LVS-DR 模式的核心思想是使用 Director 服务器来分配...

    linux lvs 的DR 模式

    ### Linux LVS的DR模式详解 #### 一、概述 Linux Virtual Server (LVS) 是一个基于 Linux 内核的高性能负载均衡解决方案,它能够通过调度算法将客户端请求分发到多个后端服务器(Real Server),从而实现负载均衡...

    LVS/NAT与LVS/DR模式集群的概述与配置

    ### LVS/NAT与LVS/DR模式集群的概述与配置 #### 一、集群及其重要性 **集群**的概念是指一组通过高速网络互连的计算单元,它们以单一系统的模式进行管理,对外提供一致的服务体验。集群技术的核心优势在于其能够...

    Redhat Linux 6 操作系统LVS_DR模式配置

    Redhat Linux 6 操作系统LVS_DR模式配置的详细文档,按照文档的部署和配置可实现 LVS_DR模式的负载均衡。

    LVS-DR详述文档

    ### LVS-DR模式详解及配置 #### 一、引言 LVS(Linux Virtual Server)是一种基于Linux内核的高性能负载均衡解决方案,它能够通过不同的工作模式来实现对后端真实服务器(Real Server)的负载分发。本文将重点介绍...

    8.1: 集群及LVS简介 、 LVS-NAT集群 、 LVS-DR集群 、 总结与答疑.docx

    例如,使用ipvsadm -e命令可以修改LVS集群规则的模式,将其改为DR模式。 1.5 小结 LVS是Linux虚拟服务器的缩写,主要用于实现服务器集群和负载均衡。LVS提供了两种集群模式:LVS-NAT集群和LVS-DR集群。通过使用...

    lvs DR模式总结详细笔记文档

    LVS DR 模式总结详细笔记文档 LVS(Linux Virtual Server)是一种基于 Linux 的负载均衡解决方案,能够将incoming请求分布到多个后端服务器上,以提高系统的可扩展性和高可用性。在 DR 模式下,LVS 可以与 ...

    Keepalived + LVS(DR) 高可用负载均衡集群

    而LVS是一种在Linux操作系统下实现的高性能虚拟服务器技术,DR模式是其工作模式之一,它通过直接路由的方式,将客户端的请求直接发送到实际的服务节点,避免了网络层的额外负载。 【详细说明】: 1. Keepalived的...

    LVS三种模式配置总结

    LVS架构中有三种模式:LVS-DR、LVS-NAT和LVS-TUN,本文将对这三种模式进行详细的配置总结。 LVS-DR 模式 LVS-DR 模式(Direct Routing)是一种基于直接路由的负载均衡模式。在这种模式下,Director Server和Real ...

    RedHat6.5安装配置LVS-DR

    LVS-DR模式是一种心跳线同步的负载均衡解决方案,通过直接路由的方式将客户端请求转发到后端的真实服务器,从而实现负载分担和故障切换。 **安装前准备** 1. 确保你的Red Hat 6.5系统已经更新至最新版本,可以通过...

    LVS-DR+Nginx+Apache集群搭建

    **LVS-DR模式** LVS-DR模式是一种基于MAC地址的负载均衡方式,工作在网络层。在该模式下,Director服务器通过修改返回给客户端的数据包的目标MAC地址,将请求直接转发到Real Server,无需经过Director处理数据。...

    LVS-DR集群.doc

    LVS支持三种常见的工作模式:NAT模式、DR模式(Direct Routing模式)和IP Tunneling模式。本文将重点介绍LVS通过DR模式实现后台网站服务的代理。 在DR模式下,LVS作为负载均衡器,它并不修改数据包的源或目标IP地址...

    LVS-DR+keepalive+ldirectord构建高可用负载均衡群集试验手册

    - **工作原理**:在DR模式下,所有服务器(包括负载均衡器和真实服务器)都必须位于同一物理网络中,并且拥有相同网络掩码的IP地址。客户端的请求被路由到负载均衡器的真实IP地址,负载均衡器根据调度算法选择一个...

    实验2 LVS DR模式实现负载均衡.md

    实验2 LVS DR模式实现负载均衡.md

    LVS-DR安装文档及安装介质

    LVS-DR模式下,系统主要分为两部分:前端调度器(Director)和后端真实服务器(Real Server)。Director负责接收客户端的请求,根据负载均衡策略将请求转发到Real Server处理。客户端的数据包直接发送到Real Server...

    LVS VS-DR报文过程分析

    在VS-DR模式下,客户端的请求直接发送到真实服务器,而LVS调度器仅作为数据包转发的角色存在。接下来,我们将深入探讨VS-DR模式下的报文处理过程。 首先,了解RIP(Real IP)的概念。在LVS系统中,RIP是指LVS调度器...

Global site tag (gtag.js) - Google Analytics