基于RedHat Linux 下LVS(Ftp/CIFS)

来源:互联网 发布:什么是网络中介 编辑:程序博客网 时间:2024/05/18 22:11
好久不来了,感觉羞愧。
特此贡献一篇几天刚做过的lvs集群方案文档!
--------------------------

1.1     方案内容

本负载均衡方案中应用了两种负载均衡技术:一、ApacheIBMIHS)代理转发(WAS集群);二LVSVS-DR)。

其中,客户端默认通过HttpServer访问网络存储应用服务,即客户端通过IE类浏览器访问使用网络存储应用服务,是通过Apache代理对两台应用节点做负载均衡转发访问。当客户端使用ftp工具或直接使用网络共享的方式访问网络存储应用服务时,是通过VS-DR实现对两台应用服务器做直接路由跳转访问。

1.1.1 负载均衡原理

通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。负载均衡是一种策略,它能让多台服务器或多条链路共同承担一些繁重的计算或I/O任务,从而以较低成本消除网络瓶颈,提高网络的灵活性和可靠性。

它主要完成以下任务:解决网络拥塞问题,服务就近提供,实现地理位置无关性 ;为用户提供更好的访问质量;提高服务器响应速度;提高服务器及其他资源的利用效率;避免了网络关键部位出现单点失效。

1.1.2 Apache代理技术原理

应用服务器中的集群环境,包含两个节点,分布在两台机器上,一台用于部署Deployement Manager,作为集中管理接口管理WAS集群成员;两台作为WAS集群成员,具体处理网络存储应用服务;一台作为Web服务器,用于接收用户请求,并通过plugin配置文件将负载均衡到WAS集群成员上,其中Web服务器主要用于代理转发用户的请求。

(WAS应用集群负载均衡结构图,用于Http访问请求方式。)

 

1.1.3 VS-DR技术原理

Linux虚拟服务器(Linux Virtual Server,即LVS)是建立在一个主控服务器(director)及若干真实服务器(real-server)所组成的集群之上。real-server负责实际提供服务,主控服务器根据指定的调度算法对real-server进行控制。而集群的结构对于用户来说是透明的,客户端只与单个的 IP(集群系统的虚拟IP)进行通信,也就是说从客户端的视角来看,这里只存在单个服务器。

Director接到来自client的请求包后,根据调度算法选择一个real-server,解析出此real-serverMAC地址,并且向此MAC发送包含一个IP datagram的链路层包。Real-server收到包后,恢复IP datagram,查找路由表后发现这个VIP就在本地(设备lo0non-arp),移交给端口监听器。因为Real-server收到从CIP- >VIP的包,构造回复包时就是VIP->CIPReal-server查找路由表,并通过到client的缺省gateway发送回复。回复不经过director

real-server上所需做的工作就是配置一个non-arpinglo0设备。并且服务需要监听VIP的相应端口。

VS-DR工作流程拓扑图,用于Ftp/CIFS访问请求方式。)

 

1.2     技术优点

ApacheIBMIHS)代理转发:主要用于Web客户端请求转发,占用系统资源小,能够即时释放占用系统的虚拟内存等资源。

VS-DR方式:吞吐量较大,支持的real-server数量较多。在负载均衡硬件上不存在负载瓶颈。

1.3     存在风险

1)、当前方案只是技术上的实现原理,还未经过应用测试,所以存在测试时间等不确定因素。

2)、暂未找到在同一台服务器中Apache代理请求服务和VS-DR的方式同时使用的成熟案例。

3)、浙大现场只有两台服务器,不能实现当前的方案。

4)、以上两种实现负载均衡的技术,在发生故障时,对于维护管理人员技能要求较高。

1.4     其他方案

       1)、最简单的是通过DNS,但只能实现简单的轮流分配,也不能处理故障。

       2)、通过硬件产品实现,常用的产品有RadwareF5Intel等。硬件产品实现的方式表现为:拓扑结构简单,易管理和稳定性好等。