LVS的三种工作模式

转自:http://xuchengji.blog.51cto.com/160472/324526

LVS介绍
1.LVS系统结构与特点
使用LVS架设的服务器集群系统从体系结构上看是透明的,最终用户只感觉到一个虚拟服务器.物理服务器之间可以通过高速的LAN或分布在各地的WAN相连。最前端是负载均衡器,它负责将各种服务请求分发给后面的物理服务器,让整个集群表现得象一个服务于同一IP地址的虚拟服务器。
LVS集群系统具有良好的可扩展性和高可用性。
可扩展性是指,LVS集群建立后,可以很容易地根据实际的需要增加或减少物理服务器。而高可用性是指当检测到服务器节点或服务进程出错、失效时,集群系统能够自动进行适当的重新调整系统。
 
2.LVS是如何工作的
 
Linux Virtual Server的主要是在负载均衡器上实现的,负载均衡器是一台加了LVS Patch的2.2.x版内核的Linux系统。LVS Patch可以通过重新编译内核的方法加入内核,也可以当作一个动态的模块插入现在的内核中。
负载均衡器可以运行在以下三种模式下中的一种或几种: 1)Virtual Server via NAT(VS-NAT):用地址翻译实现虚拟服务器;2)Virtual Server via IP Tunneling (VS-TUN):用IP隧道技术实现虚拟服务器;3)Virtual Server via Direct Routing(VS-DR):用直接路由技术实现虚拟服务器。
另外,还需要根据LVS应用对物理服务器进行恰当的配置。
以下将分别讲述一下三种模式的工作原理和优缺点。
2.1.Virtual server via NAT(VS-NAT)
Virtual Server via NAT方法的最大优点是集群中的物理服务器可以使用任何支持TCP/IP操作系统,物理服务器可以分配Internet的保留私有地址,只有负载均衡器需要一个合法的IP地址。
这种实现方法的最大的缺点是扩展性有限。当服务器节点(普通PC服务器)数据增长到20个或更多时,负载均衡器将成为整个系统的瓶颈,因为 所有的请求包和应答包都需要经过负载均衡器再生。假使TCP包的平均长度是536字节的话,平均包再生延迟时间大约为60us(在Pentium处理器上计算的,采用更快的处理器将使得这个延迟时间变短),负载均衡器的最大容许能力为8.93M/s,假定每台物理服务器的平台容许能力为400K/s来计算,负责均衡器能为22台物理服务器计算。
Virtual Server via NAT能够满足许多服务器的服务性能需求。即使是是负载均衡器成为整个系统的瓶颈,如果是这样也有两种方法来解决它。一种是混合处理,另一种是采用Virtual Server via IP tunneling或Virtual Server via direct routing。如果采用混合处理的方法,将需要许多同属单一的RR DNS域。你采用Virtual Server via IP tunneling或Virtual Server via direct routing以获得更好的可扩展性。也可以嵌套使用负载均衡器,在最前端的是VS-Tunneling或VS-Drouting的负载均衡器,然后后面采用VS-NAT的负载均衡器。
2.2.Virtual server via IP tunneling(VS-TUN)
采用VS-NAT方式,请求与应答包都需要经过负载均衡器,那么当服务器节点增长到20个或更多时,这个负载均衡器就可能成为新的瓶颈。我们发现,许多Internet服务(例如WEB服务器)的请求包很短小,而应答包通常很大。
而使用VS-TUN方式的话,负载均衡器只负责 将请求包分发给物理服务器,而物理服务器将应答包直接发给用户。所以,负载均衡器能处理很巨大的请求量,这种方式,一台负载均衡能为超过100台的物理服务器服务,负载均衡器不再是系统的瓶颈。使用VS-TUN方式,如果你的负载均衡器拥有100M的全双工网卡的话,就能使得整个Virtual Server能达到1G的吞吐量。
IP tunneling(IP隧道)能够用于架构一个高性能的virtual server,非常适合构建virtual proxy server,因为当代理服务器收到了请求,能够让最终用户直接与服务器联系。
但是, 这种方式需要所有的服务器支持IP Tunneling(IP Encapsulation)协议,我仅在Linux系统上实现了这个,如果你能让其它操作系统支持,还在探索之中。
2.3.Virtual Server via Direct Routing(VS-DR)
就象VS-TUN一下, 在VS-DR方式下,负载均衡器也只是分发请求,应答包通过单独的路由方法返回给客户端。这种方式能够大大提高Virtual Server的可扩展性。与VS-TUN相比, VS-DR这种实现方式不需要隧道结构,但它要求负载均衡器的网卡必须与物理网卡在一个物理段上。
而且VS-DR模式,可以使用大多数操作系统做为物理服务器,其中包括:Linux 2.0.36、2.2.9、2.2.10、2.2.12;Solaris 2.5.1、2.6、2.7;FreeBSD 3.1、3.2、3.3;NT4.0无需打补丁;IRIX 6.5;HPUX11等
 
 
以下来源于:Tool哥的LVS教程

lvs三种工作模式比较


LVS(Linux Virtual Server)是一个用于构建高性能、高可用性的服务器集群的软件。它支持四种工作模式,它们是: 1. NAT模式(Network Address Translation):在NAT模式下,负载均衡器将客户端请求的源IP地址和端口转换为负载均衡器自身的IP地址和端口,并将请求转发给后端服务器。这种模式适用于需要隐藏后端服务器真实IP地址的场景。 2. IP隧道模式(Tunneling):在IP隧道模式下,负载均衡器将客户端请求封装在一个新的IP包中,并将该包的目的IP地址设置为后端服务器的IP地址,然后将请求发送给后端服务器。该模式适用于需要直接将请求发送给后端服务器的场景。 3. DR模式(Direct Routing):在DR模式下,负载均衡器将客户端请求的目标MAC地址设置为后端服务器的MAC地址,并将请求转发给后端服务器。后端服务器处理完请求后,直接发送响应给客户端,不经过负载均衡器。这种模式适用于后端服务器负载均衡器在同一子网内的场景。 4. TUN模式(Routing):在TUN模式下,负载均衡器将客户端请求封装在一个新的IP包中,并将该包的目标IP地址设置为后端服务器的IP地址,然后将请求发送给后端服务器。后端服务器处理完请求后,将响应发送给负载均衡器,再由负载均衡器发送给客户端。这种模式适用于后端服务器负载均衡器在不同子网内的场景。 这些工作模式的选择取决于具体的应用场景和网络架构需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值