前面我们简要介绍了lvs负载均衡集群系统中的director控制种类,包括网络地址转换,直接路由和隧道三个方式。那么我们现在来分门别类地将每一种都仔细的叙述一下。
VS-NAT(基于网络地址转换,network address translation ,NAT)
下图为VS-NAT方式的拓补和工作流程示意图
VS-NAT是LVS最基本的方法,如果想要设置一个用于测试的LVS,这是一个最简单的方法。
当客户发出请求,lvs负载均衡中的director会将接受到的包的目标地址重写为某个real-server,并将其转发到real-server。Real-server的回复会发到director,director将回复包的源地址改写为VIP。
不像VS-DR和VS-TUN,real-server只需要一个功能tcpip栈。Real-server可以是任意操作系统,在real-server上也不必做什么配置修改(除了在路由表中,需要把real-server的默认网关设为lvs负载均衡中的director)。#p#
VS-DR(直接路由,direct routing,DR)
lvs负载均衡中的director接到来自client的请求包后,根据调度算法选择一个real-server,解析出此real-server的MAC地址,并且向此MAC发送包含一个IP datagram的链路层包。Real-server收到包后,恢复IP datagram,查找路由表后发现这个VIP就在本地(设备lo:0,non-arp),移交给端口监听器。因为Real-server收到从CIP->VIP的包,构造回复包时就是VIP->CIP。Real-server查找路由表,并通过到client的缺省gateway发送回复。回复不经过director。
在real-server上所需做的工作就是配置一个non-arping的lo:0设备。并且服务需要监听VIP的相应端口。
VS-DR方式吞吐量较大,支持的real-server数量较多。#p#
VS-Tun(隧道,tunnelling)
这种方式是基于VS-DR方式的,不同的只是lvs负载均衡中的director将包IPIP封装,然后转发到real-server。VS-TUN的real-servers相对于director可以远程;而且每个real-server都可以在单独的网络上,但需要在路由器上做工作,允许源地址为VIP的输出包。
配置方法和要求与VS-DR方式类似。只是需要将lo:0设备换为tunl0设备,其对应模块为ipip。
中软LVS服务内容
根据客户实际需求提供优化的LVS负载均衡解决方案,***限度地利用资源、提高性能。